/* ==========================================================================
   NOTE PANEL (left) - Component Styles
   ========================================================================== */

/* --- Note Base --- */
.note-base {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* --- State Visibility --- */
#note-hidden {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
    transition: opacity 200ms ease-out, transform 200ms ease-out;
    transition-delay: 200ms;
    /* Wait for visible to fade out first when returning */
}

#note-visible {
    opacity: 0;
    pointer-events: none;
    transform: scale(0.96);
    transition: opacity 200ms ease-out, transform 200ms ease-out;
    transition-delay: 0ms;
    /* Fade out immediately when hiding note */
}

#note-panel.show-note #note-hidden {
    opacity: 0;
    pointer-events: none;
    transform: scale(0.96);
    transition-delay: 0ms;
    /* Fade out immediately */
}

#note-panel.show-note #note-visible {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
    transition-delay: 200ms;
    /* Wait for hidden to fade out first */
}

/* --- Note Content --- */
.note-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

/* --- Note Logo --- */
.note-logo {
    position: relative;
    width: 430px;
    height: 380px;
    max-width: 80vw;
    max-height: 80vh;
    margin-bottom: 2rem;
    background-image: url('../public/images/logo.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* --- Note Button --- */
.note-button {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(360px, 90vw);
    height: 70px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    background: rgba(0, 0, 0, 0.0);
    color: var(--color-dark);
    border: 1.8px solid var(--color-dark);
    border-radius: 5px;
    font-family: 'Inter', sans-serif;
    font-weight: 300;
    font-size: clamp(1rem, 1.1vw, 1.125rem);
    letter-spacing: 0.01em;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    transition: background-color 0.2s ease-out, border-color 0.2s ease-out, transform 0.05s ease-out;
}

.note-button:hover {
    background: var(--color-dark);
    border-color: var(--color-white);
    color: var(--color-white);
}

.note-button:active {
    box-shadow: inset 2px 6px 10px rgba(226, 222, 217, 0.5);
}

/* --- Note Card --- */
.note-card {
    max-width: 650px;
    margin: 0 2rem;
    color: var(--color-dark);
    font-family: 'Inter', sans-serif;
    font-weight: 300;
    line-height: 1.6;
    font-size: clamp(1rem, 1.1vw, 1.175rem);
    position: relative;
}

.note-card p {
    margin: 0 0 0.8rem 0;
}

.note-mark {
    position: absolute;
    right: 0;
    bottom: -5rem;
    width: 84px;
    height: auto;
    opacity: 0.85;
}

/* --- Mobile Scroll Indicator --- */
.scroll-indicator-note {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(env(safe-area-inset-bottom, 0px) + 15vh);
    display: none;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    color: var(--color-dark);
    z-index: 2;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.scroll-label-note {
    font-family: inherit;
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0.18em;
    line-height: 1;
    text-transform: uppercase;
    color: var(--color-dark);
    opacity: 0.9;
}

.scroll-arrow-note {
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 12px solid var(--color-dark);
}

/* --- Mobile Layout (≤820px) --- */
@media (max-width: 820px) {
    .note-base {
        align-items: flex-start;
        padding-top: 5vh;
    }

    .note-card {
        margin: 1rem 2rem;
    }

    .scroll-indicator-note {
        display: inline-flex;
        transition: opacity 200ms ease-out;
        transition-delay: 200ms;
    }

    #note-panel.show-note .scroll-indicator-note {
        opacity: 0;
        pointer-events: none;
        transition-delay: 0ms;
    }

    .note-button:hover {
        background: transparent;
        border-color: inherit;
        color: inherit;
    }

    .note-button:active {
        background: transparent;
        border-color: inherit;
        color: inherit;
    }

    .note-logo {
        max-width: 75vw;
    }

    .note-button {
        width: min(360px, 80vw);
        height: 60px;
    }
}