/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */


/* Document wide */
html {
    cursor: default;

    ::selection {
        background-color: transparent;
    }
}

/* Header */
header {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    padding: 1rem;
    z-index: 10;
    position: fixed;
    top: 0;
    width: 100%;

    nav {
        grid-column: span 2;
    }

    .information-toggle {
        grid-column: span 2;
    }

    @media (width <= 600px) {
        grid-template-columns: 1fr 1fr;

        nav {
            position: absolute;
            top: 4rem;
            left: 1rem;
        }

        .information-toggle {
            grid-column: span 1;
        }
    }
}

/* Site title: a button so it's keyboard reachable, styled as plain text. */
.home-button {
    font: inherit;
    color: inherit;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
}

/* Button */
.button {
    cursor: pointer;
    padding: 0.35rem 0.75rem 0.3rem 0.75rem;
    border-radius: 2rem;
    background-color: var(--white-background);
    border: var(--border);
    backdrop-filter: blur(50px);
    font: inherit;
    color: inherit;
    transition: border-color 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;

    svg {
        height: 1.1rem;
        width: auto;
        margin-top: -0.075rem;
    }

    &:hover {
        border-color: black;
    }

    &.large {
        padding: 0.75rem 1.5rem;
    }
}

.button.is-active {
    background-color: black;
    color: white;
    border-color: black;
}

.buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

/* Overlay */
.noise {
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0.5;
    width: 100%;
    height: 100%;
    z-index: 500;
    pointer-events: none;
    background-image: url("/assets/noise-d48c8ef0.png");
    background-size: 100px;
}

/* Flex */
.flex-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}