/* ============================================================================
   Glass.
   html[data-season="glass"] — set before paint from wh-dark-mode-init.php.
   Off unless the Glass switch is on.

   The rail, account menu, and footer card are frost over a dark wash
   with a few soft color pools: amber up top, green through the middle,
   blue at the foot. The content card, tables, and ad grid stay opaque.
   Upgrade stays a solid fill. The accent stays the brand blue so this
   is a material, not a recolor.
   ========================================================================== */

html[data-season="glass"],
html[data-season="glass"][data-theme="dark"],
html[data-season="glass"][data-theme="dark"][data-palette="neutral"] {
    --app-chrome-bg: #0c0c10;
    /* A hint of color on a dark rail. Not a painted band. */
    --app-chrome-gradient:
        radial-gradient(200px 160px at 70px -20px, rgba(180, 90, 28, 0.28) 0%, transparent 70%),
        radial-gradient(180px 140px at 60px 62%, rgba(28, 110, 55, 0.2) 0%, transparent 72%),
        radial-gradient(200px 120px at 70px 104%, rgba(36, 78, 170, 0.24) 0%, transparent 74%),
        linear-gradient(180deg, #101012 0%, #0c0c10 100%);
}

html[data-season="glass"] .app-shell-chrome {
    background-color: var(--app-chrome-bg);
    background-image: var(--app-chrome-gradient);
}

html[data-season="glass"] .app-sidebar {
    --app-text-2: rgba(255, 255, 255, 0.72);
    --app-text-3: rgba(255, 255, 255, 0.42);
    --app-border: rgba(255, 255, 255, 0.08);
    --app-border-strong: rgba(255, 255, 255, 0.14);
    --app-surface-hov: rgba(255, 255, 255, 0.06);
    --app-surface-active: rgba(255, 255, 255, 0.1);
    box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.06);
}

/* Content stays a solid pane sitting on the light. */
html[data-season="glass"] .app-shell__content {
    background: #ffffff;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08);
}
html[data-season="glass"][data-theme="dark"] .app-shell__content {
    background: #121218;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08);
}

html[data-season="glass"] .app-nav-link--active,
html[data-season="glass"] .app-nav-group__trigger--active,
html[data-season="glass"] .app-nav-sublink--active,
html[data-season="glass"] .app-utility-link--active {
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.22),
        inset 0 0 0 1px rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(14px) saturate(1.35);
    backdrop-filter: blur(14px) saturate(1.35);
}

html[data-season="glass"] .app-nav-link:hover,
html[data-season="glass"] .app-nav-group__trigger:hover,
html[data-season="glass"] .app-nav-sublink:hover,
html[data-season="glass"] .app-utility-link:hover {
    background: rgba(255, 255, 255, 0.06);
}

/* Footer reads as one frosted card. The Upgrade control inside stays solid. */
html[data-season="glass"] .app-sidebar__footer {
    margin: 0 8px 10px;
    padding: 8px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.06);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
    -webkit-backdrop-filter: blur(18px) saturate(1.4);
    backdrop-filter: blur(18px) saturate(1.4);
}
html[data-season="glass"].app-sidebar-collapsed .app-sidebar__footer {
    margin: 0 6px 8px;
    padding: 6px;
    border-radius: 14px;
}

html[data-season="glass"] .app-sidebar__cta--trial {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
}
html[data-season="glass"] .app-sidebar__cta--trial:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.22);
}

html[data-season="glass"] .app-sidebar__cta--upgrade,
html[data-season="glass"] .app-sidebar__cta--upgrade-dark {
    background: #3b76ff;
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.35);
}
html[data-season="glass"] .app-sidebar__cta--upgrade:hover,
html[data-season="glass"] .app-sidebar__cta--upgrade-dark:hover {
    background: #2b66f0;
}

html[data-season="glass"] .app-profile-trigger {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
    -webkit-backdrop-filter: blur(14px) saturate(1.35);
    backdrop-filter: blur(14px) saturate(1.35);
}
html[data-season="glass"] .app-profile-trigger:hover,
html[data-season="glass"] .app-profile-trigger[aria-expanded="true"] {
    background: rgba(255, 255, 255, 0.11);
    border-color: rgba(255, 255, 255, 0.22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

html[data-season="glass"] .app-menu,
html[data-season="glass"] .notif-popup,
html[data-season="glass"][data-theme="dark"] .notif-popup {
    --app-border: rgba(255, 255, 255, 0.12);
    background-color: rgba(14, 12, 18, 0.62);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03));
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.45),
        inset 0 1px 0 rgba(255, 255, 255, 0.16);
    -webkit-backdrop-filter: blur(22px) saturate(1.5);
    backdrop-filter: blur(22px) saturate(1.5);
}

html[data-season="glass"][data-theme="dark"] .dropdown-menu,
html[data-season="glass"][data-theme="dark"] .filter-dropdown-menu {
    background-color: rgba(16, 14, 22, 0.74);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02));
    border-color: rgba(255, 255, 255, 0.14);
    -webkit-backdrop-filter: blur(18px) saturate(1.4);
    backdrop-filter: blur(18px) saturate(1.4);
}

html[data-season="glass"] .wh-theme-toggle--pill.is-dark .wh-theme-toggle__thumb {
    background: rgba(255, 255, 255, 0.94);
}
html[data-season="glass"] .app-menu__theme-switch.is-dark .wh-theme-toggle__thumb-glyph--moon,
html[data-season="glass"] .wh-theme-toggle--pill.is-dark .wh-theme-toggle__thumb-glyph--moon {
    color: #1c1528;
}

/* Account-menu switch. */
.wh-glass-row__icon {
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    color: rgba(255, 255, 255, 0.72);
}
html .wh-glass-row.is-on .wh-glass-row__icon,
html .app-menu__theme-row.wh-glass-row .wh-glass-row__icon {
    color: #ffffff;
}
.wh-glass-row.is-on .wh-glass-row__icon {
    filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.45));
}

.wh-glass-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    flex: 0 0 auto;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    line-height: 0;
    -webkit-tap-highlight-color: transparent;
}
.wh-glass-toggle:focus {
    outline: none;
}
.wh-glass-toggle:focus-visible .wh-glass-toggle__track {
    box-shadow: 0 0 0 2px #09090b, 0 0 0 4px rgba(255, 255, 255, 0.45);
}
.wh-glass-toggle__track {
    position: relative;
    display: block;
    width: 44px;
    height: 24px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-sizing: border-box;
}
.wh-glass-toggle.is-on .wh-glass-toggle__track {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
}
.wh-glass-toggle__thumb {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #3f3f46;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    transition: left var(--app-duration, 280ms) var(--app-ease, cubic-bezier(0.32, 0.72, 0, 1));
}
.wh-glass-toggle.is-on .wh-glass-toggle__thumb {
    left: calc(100% - 20px);
    background: linear-gradient(180deg, #ffffff 0%, #e4e4e7 100%);
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.35), inset 0 1px 0 #ffffff;
}

html.app-sidebar-collapsed .app-sidebar .wh-glass-row .wh-glass-toggle {
    display: none !important;
}

@media (prefers-reduced-transparency: reduce) {
    html[data-season="glass"] .app-sidebar__footer,
    html[data-season="glass"] .app-nav-link--active,
    html[data-season="glass"] .app-nav-group__trigger--active,
    html[data-season="glass"] .app-nav-sublink--active,
    html[data-season="glass"] .app-utility-link--active,
    html[data-season="glass"] .app-profile-trigger,
    html[data-season="glass"] .app-menu,
    html[data-season="glass"] .notif-popup,
    html[data-season="glass"][data-theme="dark"] .dropdown-menu,
    html[data-season="glass"][data-theme="dark"] .filter-dropdown-menu {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        background-color: #16141c;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wh-glass-toggle__thumb {
        transition: none;
    }
}
