/* Shared public and sign-in navigation, including narrow phone screens. */
.skip-link {
    position: fixed;
    top: 8px;
    left: 8px;
    z-index: 10000;
    padding: 12px 16px;
    border-radius: 8px;
    background: var(--panel, #fff);
    color: var(--text, #111);
    transform: translateY(-200%);
}
@media (max-width: 600px) {
    .topbar__actions .theme-switch, .auth-actions .theme-switch {
        width: 44px;
        min-width: 44px;
        height: 44px;
        justify-content: center;
        padding: 8px;
    }
    .topbar__actions .theme-switch__track, .auth-actions .theme-switch__track,
    .topbar__actions .theme-switch__moon, .auth-actions .theme-switch__moon {
        display: none;
    }
}
.skip-link:focus { transform: translateY(0); }
.topbar__actions .btn, .auth-actions .btn { white-space: nowrap; }
.topbar__actions .user-pill, .auth-actions .user-pill {
    min-width: 0;
    overflow-wrap: anywhere;
}
@media (max-width: 1000px) {
    .topbar__inner, .auth-topbar-inner { flex-wrap: wrap; }
    .topbar-nav, .auth-nav {
        display: flex;
        order: 3;
        flex: 0 0 100%;
        min-width: 0;
        gap: 4px;
        overflow-x: auto;
        white-space: nowrap;
        padding: 4px 0;
    }
    .topbar-nav a, .auth-nav a {
        flex: 0 0 auto;
        padding: 12px 10px;
    }
    .topbar__actions, .auth-actions {
        margin-left: auto;
        flex-wrap: wrap;
        max-width: 100%;
        gap: 8px;
    }
}
@media (max-width: 600px) {
    .topbar__actions .theme-switch__sun, .auth-actions .theme-switch__sun { opacity: 1; }
}
