/**
 * iOS 26 / macOS Tahoe 26 — Liquid Glass layer
 * Loaded last; overrides opaque surfaces in mobile-floor / premium where needed.
 */

:root {
    --lg-fill: rgba(255, 255, 255, 0.56);
    --lg-fill-elevated: rgba(255, 255, 255, 0.78);
    --lg-fill-muted: rgba(255, 255, 255, 0.38);
    --lg-fill-dark: rgba(15, 23, 42, 0.62);
    --lg-fill-dark-elevated: rgba(30, 41, 59, 0.82);
    --lg-stroke: rgba(255, 255, 255, 0.72);
    --lg-stroke-soft: rgba(255, 255, 255, 0.42);
    --lg-stroke-dark: rgba(148, 163, 184, 0.24);
    --lg-blur: blur(40px) saturate(190%);
    --lg-blur-chrome: blur(48px) saturate(200%);
    --lg-blur-light: blur(24px) saturate(165%);
    --lg-specular: linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.72) 0%,
        rgba(255, 255, 255, 0.12) 36%,
        transparent 52%,
        rgba(255, 255, 255, 0.08) 100%
    );
    --lg-specular-dark: linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.14) 0%,
        transparent 42%,
        rgba(255, 255, 255, 0.04) 100%
    );
    --lg-shadow:
        0 4px 28px rgba(148, 163, 184, 0.14),
        0 1px 0 rgba(255, 255, 255, 0.88) inset,
        0 0 0 1px rgba(255, 255, 255, 0.38) inset;
    --lg-shadow-dark:
        0 8px 32px rgba(0, 0, 0, 0.35),
        0 1px 0 rgba(255, 255, 255, 0.08) inset;
    --lg-spring: cubic-bezier(0.34, 1.45, 0.64, 1);
}

/* ── Specular highlight mixin (class + key surfaces) ── */
.lg-surface,
.mobile-floor-shell .mf-card,
.mobile-floor-shell .mf-kpi,
.mobile-floor-shell .mf-counter-card,
.mobile-floor-shell .mf-counter-now,
.mobile-floor-shell .mf-counter-snapshot,
.front-light .intel-card,
.front-light .roster-card.premium-card,
.front-counter-strip,
.admin-theme .panel,
.admin-theme .dash-stat {
    position: relative;
    overflow: hidden;
}

.lg-surface::before,
.mobile-floor-shell .mf-card::before,
.mobile-floor-shell .mf-kpi::before,
.mobile-floor-shell .mf-counter-card::before,
.mobile-floor-shell .mf-counter-now::before,
.mobile-floor-shell .mf-counter-snapshot::before,
.front-light .intel-card::before,
.front-light .roster-card.premium-card::before,
.front-counter-strip::before,
.admin-theme .panel::before,
.admin-theme .dash-stat::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: var(--lg-specular);
    pointer-events: none;
    z-index: 2;
}

/* ═══════════════════════════════════════════════════════
   MOBILE — transparent shell, glass surfaces
   ═══════════════════════════════════════════════════════ */
.mobile-floor-shell {
    --mf-bg: transparent;
    --mf-surface: var(--lg-fill-elevated);
    --mf-border: var(--lg-stroke-soft);
    --mf-shadow: var(--lg-shadow);
    --mf-green-bg: rgba(209, 250, 229, 0.48);
    --mf-orange-bg: rgba(255, 237, 213, 0.48);
    --mf-amber-bg: rgba(254, 243, 199, 0.48);
    --mf-blue-bg: rgba(224, 242, 254, 0.52);
    --mf-slate-bg: rgba(248, 250, 252, 0.45);
    background: transparent !important;
}

.mobile-floor-shell .loading-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke) !important;
    box-shadow: var(--lg-shadow) !important;
}

.mobile-floor-shell .mf-header {
    background: rgba(255, 255, 255, 0.42) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border-bottom-color: var(--lg-stroke-soft) !important;
    box-shadow: 0 4px 30px rgba(148, 163, 184, 0.1);
    overflow: hidden;
    contain: layout style;
    transform: translateZ(0);
    transition:
        padding 0.28s var(--lg-spring),
        box-shadow 0.28s var(--lg-spring),
        background 0.28s ease;
}

.mobile-floor-shell .mf-header.mf-header--scrolled {
    background: rgba(255, 255, 255, 0.58) !important;
    box-shadow: 0 6px 28px rgba(148, 163, 184, 0.14);
}

/* iOS 26 — scroll-shrink chrome (tab bar stays, chrome compacts) */
.mobile-floor-shell .mf-header-row,
.mobile-floor-shell .mf-summary-slot,
.mobile-floor-shell .mf-recent-dates {
    transition:
        max-height 0.28s var(--lg-spring),
        opacity 0.22s var(--lg-spring),
        margin 0.24s var(--lg-spring);
}

.mobile-floor-shell .mf-header.mf-header--compact {
    padding-top: calc(0.22rem + env(safe-area-inset-top, 0px));
    padding-bottom: 0.28rem;
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-header-row {
    max-height: 2.75rem;
    margin-bottom: 0.2rem;
    justify-content: flex-end;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-date-trigger,
.mobile-floor-shell .mf-header.mf-header--compact .mf-sync-badge {
    max-height: 0;
    opacity: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-summary-slot:not(.hidden) {
    max-height: 0;
    opacity: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    pointer-events: none;
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-recent-dates:not(.hidden) {
    max-height: 0;
    opacity: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    pointer-events: none;
}

.mobile-floor-shell .mf-header-toolbar {
    padding: 0.14rem;
    border-radius: 14px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft);
    box-shadow: inset 0 1px 2px rgba(148, 163, 184, 0.06);
}

.mobile-floor-shell .mf-header-toolbar .mf-icon-btn {
    background: transparent;
    border: none;
}

.mobile-floor-shell .mf-header-toolbar .mf-icon-btn:active {
    background: rgba(255, 255, 255, 0.45);
}

.mobile-floor-shell .mf-toolbar-chip {
    font-family: var(--font-display);
    background: rgba(224, 242, 254, 0.72);
    border: 1px solid rgba(125, 211, 252, 0.45);
}

.mobile-floor-shell .mf-date-chevron {
    opacity: 0.55;
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-compact-date {
    color: var(--lg-text-secondary);
    border-right-color: var(--lg-stroke-soft);
}

.mobile-floor-shell .mf-tabs {
    padding: 0.2rem;
    border-radius: 16px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    box-shadow: inset 0 1px 3px rgba(148, 163, 184, 0.08);
    transition: transform 0.32s var(--lg-spring), margin 0.28s var(--lg-spring);
}

.mobile-floor-shell .mf-header.mf-header--compact .mf-tabs {
    margin-top: 0;
    transform: none;
}

.mobile-floor-shell .mf-tab {
    border-radius: 13px;
    transition: all 0.28s var(--lg-spring);
}

.mobile-floor-shell .mf-tab--active {
    background: transparent !important;
    color: var(--mf-text);
    box-shadow: none !important;
    transform: none;
}

body.mf-counter-tab .mobile-floor-shell .mf-tab--counter.mf-tab--active {
    background: linear-gradient(135deg, rgba(239, 246, 255, 0.95), rgba(219, 234, 254, 0.88)) !important;
    color: #1d4ed8;
}

.mobile-floor-shell .mf-icon-btn {
    background: var(--lg-fill);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke);
    box-shadow: 0 2px 10px rgba(148, 163, 184, 0.1);
    transition: transform 0.22s var(--lg-spring), background 0.2s ease;
}

.mobile-floor-shell .mf-icon-btn:active {
    transform: scale(0.9);
}

.mobile-floor-shell .mf-card,
.mobile-floor-shell .mf-counter-card,
.mobile-floor-shell .mf-counter-now,
.mobile-floor-shell .mf-counter-snapshot {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke) !important;
    box-shadow: var(--lg-shadow) !important;
}

.mobile-floor-shell .mf-kpi {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.mobile-floor-shell .mf-alert {
    background: var(--lg-fill-elevated);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke);
}

.mobile-floor-shell .mf-sheet-panel {
    background: rgba(255, 255, 255, 0.78) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border-top-color: var(--lg-stroke) !important;
}

.mobile-floor-shell .mf-counter-end-label {
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.mobile-floor-shell .mf-card-body,
.mobile-floor-shell .mf-counter-card-body,
.mobile-floor-shell .mf-counter-now-inner,
.mobile-floor-shell .mf-kpi-row,
.mobile-floor-shell .mf-card-top-row {
    position: relative;
    z-index: 3;
}

/* ═══════════════════════════════════════════════════════
   FRONT — light + kiosk adaptive glass
   ═══════════════════════════════════════════════════════ */
.front-shell.front-light {
    background: transparent !important;
}

.front-light .front-header {
    background: rgba(255, 255, 255, 0.55) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border-bottom-color: var(--lg-stroke-soft) !important;
    box-shadow: 0 4px 30px rgba(148, 163, 184, 0.1);
}

.front-light .front-counter-strip {
    background: linear-gradient(135deg, rgba(239, 246, 255, 0.62), rgba(248, 250, 252, 0.52)) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: rgba(191, 219, 254, 0.55) !important;
    box-shadow: var(--lg-shadow);
}

.front-light .front-counter-body .mf-counter-now,
.front-light .front-counter-body .mf-counter-snapshot {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
}

.front-light .break-alert--sticky {
    background: linear-gradient(90deg, rgba(255, 247, 237, 0.82), rgba(255, 237, 213, 0.75));
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

/* Kiosk — dark adaptive glass */
.theme-nova.front-shell .front-header {
    background: rgba(10, 14, 23, 0.72) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border-bottom-color: rgba(56, 189, 248, 0.18) !important;
}

.theme-nova .front-counter-strip {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.72), rgba(15, 23, 42, 0.78)) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: rgba(56, 189, 248, 0.22) !important;
    box-shadow: var(--lg-shadow-dark);
}

.theme-nova .front-counter-strip::before {
    background: var(--lg-specular-dark);
}

.theme-nova .front-counter-body .mf-counter-now,
.theme-nova .front-counter-body .mf-counter-snapshot {
    background: var(--lg-fill-dark-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-dark) !important;
    box-shadow: var(--lg-shadow-dark);
}

.theme-nova .front-counter-body .mf-counter-now::before,
.theme-nova .front-counter-body .mf-counter-snapshot::before {
    background: var(--lg-specular-dark);
}

.theme-nova .front-shell .intel-card {
    background: linear-gradient(160deg, rgba(30, 41, 59, 0.72), rgba(15, 23, 42, 0.82)) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-dark) !important;
}

.theme-nova .front-shell .intel-card::before {
    background: var(--lg-specular-dark);
}

.theme-nova .front-shell .roster-card.premium-card {
    background: linear-gradient(160deg, rgba(30, 45, 69, 0.78), rgba(20, 31, 51, 0.85)) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-dark) !important;
}

.theme-nova .front-shell .roster-card.premium-card::before {
    background: var(--lg-specular-dark);
}

.theme-nova .break-alert--sticky {
    background: linear-gradient(90deg, rgba(67, 20, 7, 0.82), rgba(124, 45, 18, 0.78)) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

/* ═══════════════════════════════════════════════════════
   ADMIN — macOS Tahoe translucent chrome
   ═══════════════════════════════════════════════════════ */
.admin-theme .admin-shell {
    background:
        radial-gradient(ellipse 80% 60% at 0% 0%, rgba(224, 242, 254, 0.55), transparent 55%),
        radial-gradient(ellipse 60% 50% at 100% 0%, rgba(237, 233, 254, 0.45), transparent 50%),
        var(--nv-body, #f4f6fa);
}

.admin-theme .admin-sidebar {
    background: rgba(30, 41, 59, 0.68) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 4px 0 32px rgba(15, 23, 42, 0.14) !important;
}

.admin-theme .admin-nav-btn {
    border-radius: 12px;
    transition: background 0.2s var(--lg-spring), transform 0.2s var(--lg-spring), box-shadow 0.2s ease;
}

.admin-theme .admin-nav-btn.admin-nav-active {
    background: rgba(255, 255, 255, 0.22) !important;
    color: #f8fafc !important;
    box-shadow:
        0 4px 16px rgba(0, 0, 0, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.35) inset !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.admin-theme .admin-topbar {
    background: rgba(255, 255, 255, 0.58) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border-bottom: 1px solid var(--lg-stroke-soft) !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65);
}

.admin-theme .admin-toolbar-group {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light) !important;
    -webkit-backdrop-filter: var(--lg-blur-light) !important;
    border: 1px solid var(--lg-stroke) !important;
    box-shadow: var(--lg-shadow);
    border-radius: 16px;
    transition: transform 0.22s var(--lg-spring), box-shadow 0.22s ease;
}

.admin-theme .admin-toolbar-group:hover {
    transform: translateY(-1px);
    box-shadow: var(--lg-shadow), 0 8px 24px rgba(148, 163, 184, 0.1);
}

.admin-theme .panel {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

.admin-theme .dash-stat {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .settings-tab-bar {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
}

.admin-theme .settings-tab--active {
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 2px 12px rgba(148, 163, 184, 0.12);
}

.admin-theme .workflow-stepper-item {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

/* ═══════════════════════════════════════════════════════
   Accessibility — reduced transparency (Apple HIG)
   ═══════════════════════════════════════════════════════ */
@media (prefers-reduced-transparency: reduce) {
    .mobile-floor-shell .mf-header,
    .mobile-floor-shell .mf-card,
    .mobile-floor-shell .mf-counter-card,
    .mobile-floor-shell .mf-counter-now,
    .mobile-floor-shell .mf-kpi,
    .front-light .front-header,
    .theme-nova .front-counter-strip,
    .admin-theme .admin-sidebar,
    .admin-theme .admin-topbar,
    .admin-theme .panel {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        background: rgba(255, 255, 255, 0.96) !important;
    }

    .admin-theme .admin-sidebar {
        background: #1e293b !important;
    }

    .theme-nova .front-counter-strip,
    .theme-nova .front-shell .intel-card,
    .theme-nova .front-shell .roster-card.premium-card {
        background: #1e293b !important;
    }

    .lg-surface::before,
    .mobile-floor-shell .mf-card::before,
    .mobile-floor-shell .mf-counter-card::before,
    .front-counter-strip::before,
    .admin-theme .panel::before {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-floor-shell .mf-header,
    .mobile-floor-shell .mf-header-row,
    .mobile-floor-shell .mf-summary-slot,
    .mobile-floor-shell .mf-tabs,
    .mobile-floor-shell .mf-tab,
    .admin-theme .admin-toolbar-group,
    .lg-tab-thumb,
    .lg-list-morph {
        transition-duration: 0.01ms !important;
        animation: none !important;
    }

    .mobile-floor-shell .mf-header.mf-header--compact .mf-tabs {
        transform: none;
    }

    .mf-list--tab-exit,
    .lg-list-morph {
        filter: none !important;
    }
}

/* ═══════════════════════════════════════════════════════
   GLASS TAB MORPH — sliding thumb (iOS 26 segmented)
   ═══════════════════════════════════════════════════════ */
.lg-tabs {
    position: relative;
    isolation: isolate;
}

.lg-tab-thumb {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid rgba(255, 255, 255, 0.85);
    box-shadow:
        0 4px 16px rgba(148, 163, 184, 0.16),
        0 1px 0 rgba(255, 255, 255, 0.95) inset,
        0 0 0 1px rgba(255, 255, 255, 0.45) inset;
    transition:
        transform 0.44s var(--lg-spring),
        width 0.36s var(--lg-spring),
        height 0.28s var(--lg-spring),
        opacity 0.2s ease;
    z-index: 0;
    pointer-events: none;
    will-change: transform, width;
}

.lg-tab-thumb--hidden {
    opacity: 0;
}

.lg-tabs .mf-tab,
.lg-tabs .settings-tab,
.lg-tabs .roster-brand-tab,
.lg-tabs .import-tab,
.lg-tabs .dp-tab,
.lg-tabs .front-brand-opt,
.lg-tabs .front-date-chip,
.lg-tabs .front-sort-opt,
.lg-tabs .ai-review-brand-tab {
    position: relative;
    z-index: 1;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.lg-tabs .mf-tab--active,
.lg-tabs .settings-tab--active,
.lg-tabs .roster-brand-tab--on,
.lg-tabs .ai-review-brand-tab--on,
.lg-tabs .import-tab.import-tab-active,
.lg-tabs .dp-tab--active,
.lg-tabs .front-brand-opt--on,
.lg-tabs .front-date-chip--on,
.lg-tabs .front-sort-opt--on {
    background: transparent !important;
    color: #0f172a !important;
    font-weight: 700;
    box-shadow: none !important;
    border-bottom-color: transparent !important;
}

/* Content crossfade + blur morph on tab switch */
.mf-list--tab-exit {
    opacity: 0;
    filter: blur(5px);
    transform: translateY(8px) scale(0.988);
}

.lg-list-morph {
    animation: lg-list-morph-in 0.42s var(--lg-spring) both;
}

@keyframes lg-list-morph-in {
    from {
        opacity: 0;
        filter: blur(8px);
        transform: translateY(14px) scale(0.984);
    }
    to {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0) scale(1);
    }
}

/* Settings / import tab bars — glass track */
.admin-theme .settings-tab-bar.lg-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.25rem;
    margin-bottom: 1rem;
    padding: 0.22rem;
    border-bottom: none;
    border-radius: 16px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    overflow-x: auto;
}

.admin-theme .settings-tab-bar .settings-tab {
    border: none;
    background: transparent;
    border-radius: 12px;
    padding: 0.4rem 0.85rem;
    flex-shrink: 0;
    white-space: nowrap;
    color: var(--nv-muted, #64748b);
    transition: color 0.2s ease;
}

.admin-theme .settings-tab-bar .settings-tab--active {
    color: var(--nv-text, #0f172a);
    font-weight: 700;
}

.admin-theme .roster-brand-tabs.lg-tabs {
    display: flex;
    gap: 0.25rem;
    padding: 0.2rem;
    border-radius: 16px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
}

.admin-theme .roster-brand-tabs .roster-brand-tab {
    flex: 1;
    border: none;
    background: transparent;
    border-radius: 12px;
    padding: 0.5rem 0.75rem;
    transition: color 0.2s ease;
}

.admin-theme .roster-brand-tabs .roster-brand-tab--on {
    color: var(--nv-text, #0f172a);
    font-weight: 700;
}

/* ═══════════════════════════════════════════════════════
   ADMIN — forms, tables, dialogs, roster surfaces
   ═══════════════════════════════════════════════════════ */
.admin-theme .input,
.admin-theme .select,
.admin-theme textarea.input {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

.admin-theme .input:focus,
.admin-theme .select:focus,
.admin-theme textarea.input:focus {
    background: var(--lg-fill-elevated) !important;
    border-color: var(--nv-accent, #3b82f6) !important;
}

.admin-theme .roster-card.premium-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

.admin-theme .roster-card.premium-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: var(--lg-specular);
    pointer-events: none;
    z-index: 0;
}

.admin-theme .roster-card.premium-card > * {
    position: relative;
    z-index: 1;
}

.admin-theme .break-row {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .dropzone {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .dropzone:hover,
.admin-theme .dropzone.dragover,
.admin-theme .dropzone.has-file {
    background: var(--lg-fill) !important;
}

.admin-theme .dept-stats-table thead th {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .dept-stats-table tbody tr:nth-child(even) td {
    background: rgba(255, 255, 255, 0.28);
}

.admin-theme .dept-stats-table .dept-stat-hit {
    background: rgba(219, 234, 254, 0.55) !important;
}

.admin-theme .import-tabs {
    display: flex;
    gap: 0.25rem;
    padding: 0.2rem;
    margin-bottom: 1.25rem;
    border-bottom: none;
    border-radius: 16px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
}

.admin-theme .import-tabs .import-tab {
    flex: 1;
    border: none;
    border-radius: 12px;
    margin-bottom: 0;
    border-bottom: none !important;
    text-align: center;
    justify-content: center;
}

.admin-theme .import-tabs .import-tab.import-tab-active {
    color: var(--nv-accent, #3b82f6);
    font-weight: 700;
}

.admin-theme .app-dialog {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border: 1px solid var(--lg-stroke);
    box-shadow: var(--lg-shadow);
}

.admin-theme .app-dialog::backdrop {
    background: rgba(15, 23, 42, 0.35);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.admin-theme .app-choose-option {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
    border-radius: 14px;
    transition: transform 0.2s var(--lg-spring), border-color 0.15s ease, background 0.15s ease;
}

.admin-theme .app-choose-option:hover,
.admin-theme .app-choose-option:focus-visible {
    background: var(--lg-fill-elevated) !important;
    border-color: rgba(59, 130, 246, 0.45) !important;
    transform: scale(1.01);
}

.admin-theme .data-chip {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .admin-main table {
    border-collapse: separate;
    border-spacing: 0;
}

.admin-theme .admin-main table th {
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .admin-main table tbody tr:hover td {
    background: rgba(255, 255, 255, 0.35);
}

/* ═══════════════════════════════════════════════════════
   BATCH E–I — remaining glass surfaces
   ═══════════════════════════════════════════════════════ */

.admin-theme #roster-brand-tabs.lg-tabs {
    display: flex;
    gap: 0.25rem;
    padding: 0.2rem;
    border-radius: 16px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    flex-wrap: nowrap;
}

.admin-theme #roster-brand-tabs .roster-brand-tab {
    flex: 1;
    min-width: 0;
    border: none !important;
    border-radius: 12px;
    padding: 0.5rem 0.75rem;
    background: transparent !important;
    font-size: 0.8125rem;
}

.admin-theme #roster-brand-tabs .roster-brand-tab--on {
    color: var(--nv-text, #0f172a) !important;
    font-weight: 700;
    background: transparent !important;
}

.mobile-floor-shell .mf-kpi--counter-now {
    background: rgba(219, 234, 254, 0.55) !important;
    border-color: rgba(147, 197, 253, 0.55) !important;
}

.mobile-floor-shell .mf-kpi--counter-next {
    background: rgba(254, 243, 199, 0.55) !important;
    border-color: rgba(252, 211, 77, 0.55) !important;
}

.mobile-floor-shell .mf-kpi--counter-left {
    background: rgba(241, 245, 249, 0.55) !important;
    border-color: var(--lg-stroke-soft) !important;
}

.mobile-floor-shell .mf-alert {
    background: rgba(255, 247, 237, 0.72) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: rgba(253, 186, 116, 0.55) !important;
}

.mobile-floor-shell .mf-alert-chip {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.mobile-floor-shell .mf-counter-cover-card {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.front-light .front-date-chips,
.front-light .front-sort-switch {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.front-light .front-date-chip--on,
.front-light .front-sort-opt--on {
    background: transparent !important;
    box-shadow: none !important;
}

.front-light .front-more-menu {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow);
}

.front-light .break-alert-chip {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.front-light .mf-sheet-panel,
.front-shell .mf-sheet-panel {
    background: rgba(255, 255, 255, 0.78) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
}

.front-light .mf-edit-row,
.front-light .mf-edit-end-auto,
.front-light .mf-sheet-changes li {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .snap-versions-list {
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .snap-version-row {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .snap-version-item:first-child .snap-version-row {
    background: linear-gradient(90deg, rgba(224, 242, 254, 0.65), var(--lg-fill) 58%) !important;
}

.admin-theme .snap-version-item:hover .snap-version-row {
    background: var(--lg-fill-elevated) !important;
}

.admin-theme .snap-preview-area {
    background: rgba(248, 250, 252, 0.45);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .snap-staff-table thead th {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .ai-review-dialog {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

.admin-theme .ai-review-dialog::backdrop {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.admin-theme .ai-review-finding {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .day-print-dialog {
    background: var(--lg-fill-elevated) !important;
    /* Never blur Day Print — print/PDF capture must stay sharp. */
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

.admin-theme .day-print-dialog::backdrop {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.admin-theme .day-print-tabs.lg-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.25rem;
    padding: 0.2rem;
    margin-bottom: 0;
    border-radius: 14px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}

.admin-theme .day-print-tabs .dp-tab {
    border: none !important;
    border-radius: 10px;
    padding: 0.4rem 0.85rem;
    font-weight: 600;
    background: transparent !important;
    color: #64748b;
}

.admin-theme .day-print-tabs .dp-tab--active {
    color: #0f172a !important;
    font-weight: 700;
}

.admin-theme .day-print-form,
.admin-theme .day-print-ai-panel {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    border-radius: 14px;
}

.admin-theme .day-print-preview,
.admin-theme .dp-a4-frame {
    background: #fff !important;
    backdrop-filter: none !important;
}

.admin-theme thead th,
.admin-theme table thead th {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme tbody tr:hover,
.admin-theme tbody tr:hover td {
    background: rgba(255, 255, 255, 0.32) !important;
}

.admin-theme .dept-stats-panel {
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    border-radius: 16px;
    padding: 0.75rem;
}

.admin-theme .learning-rec {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .learning-weekday-cell {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .admin-bottom-nav {
    background: rgba(255, 255, 255, 0.62) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
}

@media (max-width: 767px) {
    .admin-theme .admin-topbar {
        background: rgba(255, 255, 255, 0.58) !important;
        backdrop-filter: var(--lg-blur-chrome) !important;
        -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    }
}

/* ═══════════════════════════════════════════════════════
   BATCH J–N — remaining glass surfaces
   ═══════════════════════════════════════════════════════ */

/* J — standalone import page */
.import-page-shell .import-page-card {
    max-width: 32rem;
    width: 100%;
}

.import-page-shell .import-form-panel,
.import-page-shell .import-providers-panel {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

.import-page-shell .import-status {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
}

.import-page-shell .import-status--ok {
    background: rgba(209, 250, 229, 0.55) !important;
    border-color: rgba(52, 211, 153, 0.45) !important;
    color: #065f46;
}

.import-page-shell .import-status--err {
    background: rgba(254, 226, 226, 0.55) !important;
    border-color: rgba(248, 113, 113, 0.45) !important;
    color: #991b1b;
}

.import-page-shell .import-results-json {
    background: rgba(15, 23, 42, 0.88) !important;
    color: #86efac;
    border: 1px solid rgba(148, 163, 184, 0.25);
}

/* K — Front brand / date / sort glass morph tracks */
.front-light .front-brand-switch.lg-tabs,
.front-light .front-date-chips.lg-tabs,
.front-light .front-sort-switch.lg-tabs {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow);
}

.front-light .front-brand-switch-thumb {
    display: none !important;
}

.front-light .front-brand-switch.lg-tabs {
    background: var(--lg-fill-muted) !important;
    box-shadow: var(--lg-shadow);
}

.front-light .front-brand-switch[data-active="briscoes"] .front-brand-switch-thumb {
    transform: none;
}

.front-light .front-header,
.front-light .front-header-inner {
    background: transparent !important;
}

.front-light .front-brand-row {
    background: transparent;
}

.front-light .roster-card.on-break-now {
    border-color: rgba(253, 186, 116, 0.65) !important;
    background: linear-gradient(
        160deg,
        rgba(255, 247, 237, 0.72) 0%,
        rgba(255, 255, 255, 0.58) 55%
    ) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    box-shadow: var(--lg-shadow);
}

.front-light .roster-card.on-break-now::before {
    background: var(--lg-specular);
}

.front-light .loading-overlay,
.front-shell .loading-overlay {
    background: rgba(248, 250, 252, 0.45) !important;
    backdrop-filter: blur(12px) saturate(140%);
    -webkit-backdrop-filter: blur(12px) saturate(140%);
}

.front-light .loading-card,
.admin-theme .loading-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border: 1px solid var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow) !important;
}

/* L — summary bars, webhooks, autosave, notify */
.admin-theme .brand-summary-bar-inner,
#import-brand-summary.brand-summary-bar .brand-summary-bar-inner {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
    box-shadow: var(--lg-shadow);
}

.admin-theme .brand-summary-chip--rebel {
    background: rgba(255, 241, 242, 0.55) !important;
    border-color: rgba(254, 205, 211, 0.65) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .brand-summary-chip--briscoes {
    background: rgba(239, 246, 255, 0.55) !important;
    border-color: rgba(191, 219, 254, 0.65) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .webhook-status-card {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .webhook-status-card.status-ok {
    background: rgba(209, 250, 229, 0.48) !important;
    border-color: rgba(52, 211, 153, 0.45) !important;
}

.admin-theme .import-method-intro {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .security-banner {
    background: rgba(254, 242, 242, 0.62) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-bottom-color: rgba(254, 202, 202, 0.55) !important;
}

.admin-theme .autosave-pending,
.autosave-pending {
    background: rgba(254, 243, 199, 0.58) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .autosave-saving,
.autosave-saving {
    background: rgba(239, 246, 255, 0.58) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .autosave-saved,
.autosave-saved {
    background: rgba(209, 250, 229, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .autosave-error,
.autosave-error {
    background: rgba(254, 226, 226, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.publish-sync-banner {
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.publish-sync-warn {
    background: rgba(254, 243, 199, 0.62) !important;
    border-color: rgba(252, 211, 77, 0.55) !important;
}

.publish-sync-ok {
    background: rgba(209, 250, 229, 0.55) !important;
    border-color: rgba(52, 211, 153, 0.45) !important;
}

.mobile-floor-shell .mf-notify-modal {
    background: rgba(15, 23, 42, 0.35) !important;
    backdrop-filter: blur(16px) saturate(150%);
    -webkit-backdrop-filter: blur(16px) saturate(150%);
}

.mobile-floor-shell .mf-notify-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border: 1px solid var(--lg-stroke);
    box-shadow: var(--lg-shadow);
}

.mobile-floor-shell .mf-notify-preview {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.mobile-floor-shell .mf-skeleton,
.admin-theme .skeleton-card,
.admin-loading-skeleton .skeleton-card {
    background: linear-gradient(
        90deg,
        rgba(226, 232, 240, 0.45) 25%,
        rgba(248, 250, 252, 0.65) 50%,
        rgba(226, 232, 240, 0.45) 75%
    ) !important;
    background-size: 200% 100%;
    border: 1px solid var(--lg-stroke-soft);
}

.mobile-floor-shell .mf-test-banner,
.mf-test-banner {
    background: rgba(237, 233, 254, 0.62) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: rgba(167, 139, 250, 0.45) !important;
}

.mobile-floor-shell .mf-counter-tl-seg--active {
    background: rgba(219, 234, 254, 0.42) !important;
    border-radius: 12px;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

/* M — AI Review brand tabs */
.admin-theme .ai-review-brand-tabs.lg-tabs {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    padding: 0.22rem;
    border-radius: 14px;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
}

.admin-theme .ai-review-brand-tabs .ai-review-brand-tab {
    border: none !important;
    border-radius: 10px;
    padding: 0.35rem 0.85rem;
    font-weight: 700;
    font-size: 0.8125rem;
    cursor: pointer;
    background: transparent !important;
}

.admin-theme .ai-review-brand-tabs .roster-brand-tab--on[data-brand-tab="rebel"] {
    color: #be123c;
}

.admin-theme .ai-review-brand-tabs .roster-brand-tab--on[data-brand-tab="briscoes"] {
    color: #1d4ed8;
}

.admin-theme .roster-brand-tabs.lg-tabs .roster-brand-tab--on[data-brand-tab="rebel"],
.admin-theme #roster-brand-tabs.lg-tabs .roster-brand-tab--on[data-brand-tab="rebel"] {
    color: #be123c;
}

.admin-theme .roster-brand-tabs.lg-tabs .roster-brand-tab--on[data-brand-tab="briscoes"],
.admin-theme #roster-brand-tabs.lg-tabs .roster-brand-tab--on[data-brand-tab="briscoes"] {
    color: #1d4ed8;
}

/* N — admin depth + misc */
.admin-theme .engine-warn {
    background: rgba(255, 251, 235, 0.62) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: rgba(253, 230, 138, 0.55) !important;
}

.admin-theme .engine-err {
    background: rgba(254, 226, 226, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .learning-insights {
    background: rgba(245, 243, 255, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: rgba(221, 214, 254, 0.55) !important;
}

.admin-theme .learning-row-selected {
    background: rgba(224, 242, 254, 0.45) !important;
}

.admin-theme .dept-manager-details,
.admin-theme #dept-manager-panel .dept-manager-details {
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border: 1px solid var(--lg-stroke-soft);
    border-radius: 14px;
}

.admin-theme .snap-btn,
.admin-theme .snap-vtag {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .data-chip.active {
    background: rgba(255, 251, 235, 0.55) !important;
    border-color: rgba(245, 158, 11, 0.4) !important;
}

.admin-theme .app-dialog-form {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .admin-mobile-hint {
    background: rgba(255, 251, 235, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.admin-theme .admin-drawer-backdrop {
    background: rgba(15, 23, 42, 0.28) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.admin-theme .card {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.admin-theme .dropzone {
    background: var(--lg-fill-muted) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

body.debug-page .debug-step.fail {
    background: rgba(254, 226, 226, 0.55) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: rgba(248, 113, 113, 0.45) !important;
}

.site-access-gate {
    background: rgba(15, 23, 42, 0.42) !important;
    backdrop-filter: blur(18px) saturate(150%);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
}

.front-light .roster-card-status.breaking {
    background: rgba(255, 247, 237, 0.62) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.mobile-floor-shell .mf-counter-earlier-btn {
    background: var(--lg-fill) !important;
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
    border-color: var(--lg-stroke-soft) !important;
}

.mobile-floor-shell .mf-footer {
    background: rgba(255, 255, 255, 0.52) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border-top-color: var(--lg-stroke-soft) !important;
}

.app-dialog-body--rich .learning-confirm-summary {
    margin: 0 0 0.75rem;
    color: #64748b;
    line-height: 1.45;
}

.app-dialog-body--rich .learning-confirm-list {
    max-height: min(52vh, 340px);
    overflow-y: auto;
    border: 1px solid var(--lg-stroke-soft);
    border-radius: 14px;
    padding: 0.35rem 0.5rem;
    background: var(--lg-fill-muted);
    backdrop-filter: var(--lg-blur-light);
    -webkit-backdrop-filter: var(--lg-blur-light);
}

.app-dialog-body--rich .learning-confirm-staff {
    padding: 0.55rem 0.35rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.22);
}

.app-dialog-body--rich .learning-confirm-staff:last-child {
    border-bottom: none;
}

.app-dialog-body--rich .learning-confirm-name {
    font-weight: 800;
    font-size: 0.8125rem;
    color: #0f172a;
}

.app-dialog-body--rich .learning-confirm-tweaks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.35rem;
}

.app-dialog-body--rich .learning-tweak-chip {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.28);
}

.app-dialog-body--rich .learning-tweak-chip--neg {
    color: #c2410c;
    border-color: rgba(251, 146, 60, 0.45);
    background: rgba(255, 247, 237, 0.72);
}

.app-dialog-body--rich .learning-tweak-chip--pos {
    color: #047857;
    border-color: rgba(52, 211, 153, 0.45);
    background: rgba(209, 250, 229, 0.55);
}

.admin-theme .app-dialog-form {
    max-width: 28rem;
}

.login-shell {
    background:
        radial-gradient(ellipse 80% 60% at 20% 0%, rgba(224, 242, 254, 0.45), transparent 55%),
        radial-gradient(ellipse 60% 50% at 100% 100%, rgba(237, 233, 254, 0.4), transparent 50%),
        linear-gradient(135deg, #1e293b 0%, #0f172a 55%, #0b1220 100%) !important;
}

.login-shell .login-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome);
    -webkit-backdrop-filter: var(--lg-blur-chrome);
    border: 1px solid var(--lg-stroke);
    box-shadow: var(--lg-shadow);
}

.site-access-gate-card {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur-chrome) !important;
    -webkit-backdrop-filter: var(--lg-blur-chrome) !important;
    border: 1px solid var(--lg-stroke) !important;
    box-shadow: var(--lg-shadow) !important;
}

body.debug-page .panel {
    background: var(--lg-fill-elevated) !important;
    backdrop-filter: var(--lg-blur);
    -webkit-backdrop-filter: var(--lg-blur);
    border-color: var(--lg-stroke-soft) !important;
}

/* ═══════════════════════════════════════════════════════
   ADMIN SOLID — crisp white work area (no glass fog)
   ═══════════════════════════════════════════════════════ */
.admin-theme {
    --lg-fill: #ffffff;
    --lg-fill-elevated: #ffffff;
    --lg-fill-muted: #f8fafc;
    --lg-stroke-soft: #e2e8f0;
    --lg-stroke: #e2e8f0;
    --nv-body: #ffffff;
    --nv-panel: #ffffff;
}

.admin-theme,
.admin-theme * {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.admin-theme .admin-shell {
    background: #ffffff !important;
}

.admin-theme .admin-body,
.admin-theme .admin-main {
    background: #ffffff !important;
}

.admin-theme .admin-sidebar {
    background: linear-gradient(180deg, #1e293b 0%, #0f172a 100%) !important;
    border-right: 1px solid #0f172a !important;
    box-shadow: 2px 0 16px rgba(15, 23, 42, 0.08) !important;
}

.admin-theme .admin-topbar {
    background: #ffffff !important;
    border-bottom: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
}

.admin-theme .admin-nav-btn.admin-nav-active {
    background: #ffffff !important;
    color: #0f172a !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

.admin-theme .panel,
.admin-theme .card,
.admin-theme .dash-stat,
.admin-theme .data-chip,
.admin-theme .roster-card.premium-card,
.admin-theme .dropzone,
.admin-theme .break-row,
.admin-theme .webhook-status-card,
.admin-theme .import-method-intro,
.admin-theme .dept-stats-panel,
.admin-theme .learning-rec,
.admin-theme .learning-insights,
.admin-theme .learning-weekday-cell,
.admin-theme .admin-toolbar-group,
.admin-theme .workflow-stepper-item,
.admin-theme .brand-summary-bar-inner,
.admin-theme .brand-summary-chip--rebel,
.admin-theme .brand-summary-chip--briscoes,
.admin-theme .snap-version-row,
.admin-theme .snap-preview-area,
.admin-theme .snap-btn,
.admin-theme .day-print-form,
.admin-theme .day-print-ai-panel,
.admin-theme .app-dialog,
.admin-theme .app-dialog-form,
.admin-theme .ai-review-dialog,
.admin-theme .ai-review-finding,
.admin-theme .import-form-panel,
.admin-theme .import-providers-panel,
.admin-theme .loading-card,
.admin-theme .skeleton-card,
.admin-theme .admin-bottom-nav {
    background-color: #ffffff !important;
}

.admin-theme .break-row,
.admin-theme .dropzone,
.admin-theme .dept-stats-table tbody tr:nth-child(even) td,
.admin-theme thead th,
.admin-theme table thead th,
.admin-theme .settings-tab-bar.lg-tabs,
.admin-theme .roster-brand-tabs.lg-tabs,
.admin-theme #roster-brand-tabs.lg-tabs,
.admin-theme .day-print-tabs.lg-tabs,
.admin-theme .ai-review-brand-tabs.lg-tabs,
.admin-theme .brand-summary-bar-inner {
    background-color: #f8fafc !important;
}

.admin-theme .panel,
.admin-theme .card,
.admin-theme .dash-stat {
    border-color: #e2e8f0 !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05) !important;
}

.admin-theme .panel::before,
.admin-theme .dash-stat::before,
.admin-theme .roster-card.premium-card::before {
    display: none !important;
}

.admin-theme .import-method-intro {
    background: #eff6ff !important;
    color: #1e3a8a !important;
    border-left-color: #3b82f6 !important;
}

.admin-theme .brand-summary-chip--rebel {
    background: #fff1f2 !important;
    border-color: #fecdd3 !important;
}

.admin-theme .brand-summary-chip--briscoes {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
}

.admin-theme .webhook-status-card.status-ok {
    background: #ecfdf5 !important;
    border-color: #a7f3d0 !important;
}

.admin-theme .input,
.admin-theme .select,
.admin-theme textarea.input {
    background: #ffffff !important;
    border-color: #cbd5e1 !important;
}

.admin-theme .input:focus,
.admin-theme .select:focus,
.admin-theme textarea.input:focus {
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12) !important;
}

.admin-theme .dropzone:hover,
.admin-theme .dropzone.dragover,
.admin-theme .dropzone.has-file {
    background: #ffffff !important;
}

.admin-theme tbody tr:hover,
.admin-theme tbody tr:hover td {
    background: #f8fafc !important;
}

.admin-theme .bg-amber-50,
.admin-theme .border-amber-200 {
    background: #fffbeb !important;
}

.admin-theme .bg-blue-50,
.admin-theme .border-blue-100 {
    background: #eff6ff !important;
}

.admin-theme .lg-tab-thumb {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
}

@media (prefers-reduced-transparency: reduce) {
    .lg-tab-thumb {
        background: #fff !important;
        backdrop-filter: none !important;
    }

    .admin-theme .input,
    .admin-theme .select,
    .admin-theme textarea.input,
    .admin-theme .roster-card.premium-card,
    .admin-theme .dropzone,
    .admin-theme .app-dialog,
    .admin-theme .app-choose-option,
    .admin-theme .ai-review-dialog,
    .admin-theme .day-print-dialog,
    .admin-theme .snap-version-row,
    .login-shell .login-card,
    .site-access-gate-card {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        background: #fff !important;
    }
}
