/* CSS RESET */

/* system font stack by css-tricks*/
body {
    font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif,
        'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

* {
    margin: 0;
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

input,
button,
textarea,
select {
    font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

#root,
#__next {
    isolation: isolate;
}

/* MAIN STYLES */

html {
    font-size: 1rem;
}
:root {
    --bg-light: hsl(0, 0%, 20%);
    --bg: hsl(0, 0%, 10%);
    --bg-dark: hsl(0, 0%, 0%);
    --font-color: hsl(0, 0%, 95%);
    --font-color-muted: hsl(0, 0%, 70%);
    --font-color-location: hsl(75, 94%, 57%);
    --font-color-hover: hsl(0, 0%, 20%);
    --border-color: hsl(0, 0%, 30%);
}

body {
    display: flex;
    flex-direction: column;
}

.page {
    font-family: 'Inter', sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    background-color: var(--bg-dark);
    color: var(--font-color);
    min-height: 97vh;
    display: flex;
}

.profile-card {
    max-width: 40ch;
    margin: auto;
    text-align: center;
    background-color: var(--bg);
    padding: 1.5em 2.2em;
    border-radius: 10px;
    box-shadow: 3px 4px var(--border-color);
}

.about > * {
    padding: 1em 0em;
}

.about > img {
    border-radius: 100%;
    max-width: 35%;
    margin: auto;
}

.about .profile-location {
    color: var(--font-color-location);
    font-weight: bold;
}

.socials {
    display: flex;
    flex-direction: column;
}

.social-link {
    margin: 0.5em 0em;
    padding: 0.75em;
    background-color: var(--bg-light);
    color: inherit;
    border-radius: 10px;
    cursor: pointer;
    font-weight: bold;
    border: 0;
    box-shadow: 2.2px 3px var(--border-color);
}

.social-link:hover {
    background-color: var(--font-color-location);
    color: var(--font-color-hover);
}

.social-link > a {
    text-decoration: none;
    color: inherit;
}

.attribution {
    font-size: 0.8rem;
    text-align: center;
    background-color: var(--bg-dark);
    color: var(--font-color-muted);
    height: 3vh;
}

.attribution a {
    color: var(--font-color);
    text-decoration: none;
    font-weight: bold;
    transition: all 0.2s ease-in;
}

.attribution a:hover {
    text-decoration: underline;
    color: var(--font-color-location);
}

body.light {
    --bg-light: hsl(0, 0%, 100%);
    --bg: hsl(0, 0%, 90%);
    --bg-dark: hsl(0, 0%, 80%);
    --font-color: hsl(0, 0%, 10%);
    --font-color-muted: hsl(0, 0%, 30%);
    --font-color-location: hsl(75, 50%, 40%);
    --font-color-hover: hsl(0, 0%, 10%);
    --border-color: hsl(0, 0%, 70%);
}
