@import "reset.css";

/* --- COLORS -- */

:root {
    --clr-lighter:       #e2e8f0;
    --clr-light:         #cbd5e1;
    --clr-mid:           #94a3b8;
    --clr-dark:          #0f172a;
    --clr-darker:        #020617;
}

body[data-theme="dark"] {
    background: var(--clr-darker);
    color: var(--clr-light);

    --clr-primary: #67e8f9;
}

body[data-theme="light"] {
    background: var(--clr-light);
    color: var(--clr-darker);

    --clr-primary:  #0e7490;
}

/* --- FONTS --- */

@font-face {
    font-family: "IBM_Plex_Mono";
    src: url("/assets/fonts/IBM_Plex_Mono/IBM_Plex_Mono_Regular.ttf");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "IBM_Plex_Mono";
    src: url("/assets/fonts/IBM_Plex_Mono/IBM_Plex_Mono_Bold.ttf");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "IBM_Plex_Sans";
    src: url("/assets/fonts/IBM_Plex_Sans/IBM_Plex_Sans_Regular.ttf");
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "IBM_Plex_Sans";
    src: url("/assets/fonts/IBM_Plex_Sans/IBM_Plex_Sans_Bold.ttf");
    font-weight: 700;
    font-display: swap;
}

.font-mono-400 {
    font-family: "IBM_Plex_Mono";
    font-weight: 400;
}

.font-mono-700 {
    font-family: "IBM_Plex_Mono";
    font-weight: 700;
}

.font-mono {
    font-family: "IBM_Plex_Mono";
}

.font-sans-400 {
    font-family: "IBM_Plex_Sans";
    font-weight: 400;
}

.font-sans-700 {
    font-family: "IBM_Plex_Sans";
    font-weight: 700;
}

.font-sans {
    font-family: "IBM_Plex_Sans";
}

.font-400 {
    font-weight: 400;
}

.font-700 {
    font-weight: 700;
}

/* --- Styles --- */

button {
    background: transparent;
    border: none;
    color: inherit;
}

body {
    transition: background 130ms linear, color 130ms linear;
    font-family: "IBM_Plex_Sans", Optima, Candara, 'Noto Sans', source-sans-pro, sans-serif;
}

p {
    font-size: 1.3rem;
    padding-top: 20px;
    line-height: 2rem;
}

a, a:visited {
    color: inherit;
    text-decoration: none;
}

.section-heading {
    font-size: 2.3rem;
}

.content {
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 4rem;

    section {
        max-width: 900px;
        width: 100%;
    }
}

.no-pad {
    padding: 0;
}

@media (max-width: 768px) {
    body {
        padding: 1rem;
    }
}

@media (min-width: 768px) {
    body {
        padding: 2rem;
    }
}

