/* Atlas dashboard navigation — compact bubble treatment.
   Scoped to the dashboard sidebar so public pages and content cards are untouched. */

.dashboard-sidebar {
    padding: .62rem;
    gap: .42rem;
    border: 1px solid rgba(31, 82, 68, .12);
    border-radius: 24px;
    background:
        radial-gradient(circle at 18% 0%, rgba(221, 235, 227, .72), transparent 44%),
        rgba(255, 253, 248, .72);
    box-shadow: 0 18px 42px rgba(36, 57, 49, .07);
    backdrop-filter: blur(8px);
}

.dashboard-sidebar a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: .66rem .92rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: rgba(255, 255, 255, .38);
    color: #5f6e68;
    line-height: 1.18;
    white-space: nowrap;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55);
    transition:
        transform .18s ease,
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}

.dashboard-sidebar a:hover {
    transform: translateX(2px);
    border-color: rgba(31, 82, 68, .14);
    background: rgba(255, 255, 255, .88);
    color: var(--forest);
    box-shadow: 0 8px 20px rgba(32, 56, 47, .07);
}

.dashboard-sidebar a.is-active {
    border-color: rgba(31, 82, 68, .16);
    background: linear-gradient(135deg, #d7e8df 0%, #edf4ef 100%);
    color: var(--forest);
    font-weight: 800;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, .45),
        0 9px 22px rgba(35, 76, 64, .08);
}

.dashboard-sidebar .sidebar-logout {
    justify-content: center;
    margin-top: .58rem;
    border-color: rgba(151, 75, 75, .10);
    background: rgba(255, 247, 245, .72);
    color: var(--rose);
}

.dashboard-sidebar .sidebar-logout:hover {
    border-color: rgba(151, 75, 75, .18);
    background: #fff7f5;
    color: var(--rose);
}

@media (max-width: 980px) {
    .dashboard-sidebar {
        display: flex;
        position: static;
        gap: .44rem;
        padding: .5rem;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
        scroll-snap-type: x proximity;
    }

    .dashboard-sidebar a {
        flex: 0 0 auto;
        min-height: 42px;
        padding: .62rem .88rem;
        scroll-snap-align: start;
    }

    .dashboard-sidebar a:hover {
        transform: none;
    }

    .dashboard-sidebar .sidebar-logout {
        margin-top: 0;
    }
}

@media (max-width: 720px) {
    .dashboard-sidebar {
        margin-inline: -.2rem;
        border-radius: 20px;
        box-shadow: 0 12px 28px rgba(36, 57, 49, .06);
    }

    .dashboard-sidebar a {
        min-height: 40px;
        padding: .58rem .8rem;
        font-size: .94rem;
    }
}
