/* ============================================================
   TC Hub — Seasonal Identity Layer
   Supports: normal | halloween | christmas
   ============================================================ */

/* ── NORMAL ── */
html[data-seasonal-theme="normal"] {
    --tc-season-accent: #f0b54f;
    --tc-season-accent-strong: #ffd17c;
    --tc-season-glow: rgba(240, 181, 79, .22);
    --tc-season-line: rgba(226, 202, 158, .2);
    --tc-season-field: rgba(100, 82, 53, .34);
    --tc-season-ink: #fff0d1;
}
html[data-seasonal-theme="normal"] body {
    background-image: radial-gradient(ellipse at 50% -20%, rgba(190, 129, 47, .1), transparent 58%);
}
html[data-seasonal-theme="normal"] :is(.admin-container, .dashboard, .main-content, .content-body, .tc-shell-page) {
    position: relative;
    z-index: 1;
}
html[data-seasonal-theme="normal"] .tc-hub-pixel-flow {
    opacity: .11;
    mix-blend-mode: screen;
}

/* ── HALLOWEEN ── */
html[data-seasonal-theme="halloween"] {
    --tc-season-accent: #f28c28;
    --tc-season-accent-strong: #ffad4d;
    --tc-season-glow: rgba(242, 140, 40, .28);
    --tc-season-line: rgba(242, 140, 40, .35);
    --tc-season-field: rgba(93, 44, 113, .36);
    --tc-season-ink: #ffd6b2;
    --tc-season-backdrop:
        radial-gradient(ellipse at 16% 8%, rgba(93, 44, 113, .26), transparent 36%),
        radial-gradient(ellipse at 88% 18%, rgba(242, 108, 32, .18), transparent 36%),
        radial-gradient(ellipse at 50% 90%, rgba(60, 10, 80, .18), transparent 50%);
}
html[data-seasonal-theme="halloween"] body {
    background-image: var(--tc-season-backdrop), var(--tc-original-body-background, none);
}
html[data-seasonal-theme="halloween"] :is(.admin-container, .dashboard, .main-content, .content-body, .tc-shell-page) {
    position: relative;
    z-index: 1;
}
html[data-seasonal-theme="halloween"] .tc-hub-pixel-flow {
    opacity: .18;
    mix-blend-mode: screen;
}
html[data-seasonal-theme="halloween"] :is(.admin-card, .stat-card, .panel, .modal, .content-card, .script-card, .tc-page-header, .admin-header) {
    border-color: rgba(242, 140, 40, .3);
    box-shadow: 0 12px 40px rgba(0, 0, 0, .22), 0 0 32px rgba(242, 140, 40, .22);
}
html[data-seasonal-theme="halloween"] .script-card:hover {
    box-shadow: 0 16px 48px rgba(0, 0, 0, .3), 0 0 48px rgba(242, 100, 20, .35) !important;
    border-color: rgba(255, 140, 30, .5) !important;
}
html[data-seasonal-theme="halloween"] :is(.nav-item.active, .taskbar-pill:hover, .filter-btn.active) {
    color: var(--tc-season-accent-strong);
    border-color: rgba(242, 140, 40, .3);
    box-shadow: inset 0 0 22px rgba(242, 140, 40, .2);
}
html[data-seasonal-theme="halloween"] :is(.btn-primary, .action-btn:hover) {
    background: linear-gradient(135deg, #ff8c20, #9b3db8);
    box-shadow: 0 8px 28px rgba(242, 140, 40, .35);
}
html[data-seasonal-theme="halloween"] .sidebar-header::before {
    content: '\1F383';
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.8rem;
    animation: tc-halloween-bob 2.4s ease-in-out infinite;
    filter: drop-shadow(0 0 10px rgba(255, 140, 30, .7));
}
html[data-seasonal-theme="halloween"] .sidebar-header::after {
    content: '\1F577\FE0F';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.4rem;
    animation: tc-halloween-spin 6s linear infinite;
}
html[data-seasonal-theme="halloween"] .sidebar::before {
    content: '\1F47B';
    position: absolute;
    top: 120px;
    right: 14px;
    font-size: 1.3rem;
    animation: tc-halloween-float 3s ease-in-out infinite;
    z-index: 10;
}
html[data-seasonal-theme="halloween"] .sidebar::after {
    content: '\1F480';
    position: absolute;
    top: 185px;
    right: 14px;
    font-size: 1.1rem;
    animation: tc-halloween-pulse 2s ease-in-out infinite;
    z-index: 10;
}
html[data-seasonal-theme="halloween"] ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #9b3db8, #f28c28);
    border-radius: 10px;
}

/* ── CHRISTMAS ── */
html[data-seasonal-theme="christmas"] {
    --tc-season-accent: #72d5a4;
    --tc-season-accent-strong: #b5f0d0;
    --tc-season-glow: rgba(79, 190, 142, .24);
    --tc-season-line: rgba(147, 213, 232, .32);
    --tc-season-field: rgba(27, 103, 117, .34);
    --tc-season-ink: #e3f7ff;
    --tc-season-backdrop:
        radial-gradient(ellipse at 12% 8%, rgba(27, 103, 117, .28), transparent 38%),
        radial-gradient(ellipse at 90% 16%, rgba(165, 47, 60, .16), transparent 36%),
        radial-gradient(ellipse at 50% 92%, rgba(10, 50, 80, .2), transparent 50%);
}
html[data-seasonal-theme="christmas"] body {
    background-image: var(--tc-season-backdrop), var(--tc-original-body-background, none);
}
html[data-seasonal-theme="christmas"] :is(.admin-container, .dashboard, .main-content, .content-body, .tc-shell-page) {
    position: relative;
    z-index: 1;
}
html[data-seasonal-theme="christmas"] .tc-hub-pixel-flow {
    opacity: .16;
    mix-blend-mode: screen;
}
html[data-seasonal-theme="christmas"] :is(.admin-card, .stat-card, .panel, .modal, .content-card, .script-card, .tc-page-header, .admin-header) {
    border-color: rgba(147, 213, 232, .28);
    box-shadow: 0 12px 40px rgba(0, 0, 0, .2), 0 0 32px rgba(79, 190, 142, .18);
}
html[data-seasonal-theme="christmas"] .script-card:hover {
    box-shadow: 0 16px 48px rgba(0, 0, 0, .28), 0 0 44px rgba(79, 190, 142, .3) !important;
    border-color: rgba(147, 213, 232, .5) !important;
}
html[data-seasonal-theme="christmas"] :is(.nav-item.active, .taskbar-pill:hover, .filter-btn.active) {
    color: var(--tc-season-accent-strong);
    border-color: rgba(147, 213, 232, .3);
    box-shadow: inset 0 0 22px rgba(79, 190, 142, .18);
}
html[data-seasonal-theme="christmas"] :is(.btn-primary, .action-btn:hover) {
    background: linear-gradient(135deg, #c41e3a, #0f8b4d);
    box-shadow: 0 8px 28px rgba(79, 190, 142, .28);
}
html[data-seasonal-theme="christmas"] .sidebar-header::before {
    content: '\1F384';
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.8rem;
    animation: tc-xmas-pulse 2s ease-in-out infinite;
    filter: drop-shadow(0 0 10px rgba(255, 215, 0, .6));
}
html[data-seasonal-theme="christmas"] .sidebar-header::after {
    content: '\2744\FE0F';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5rem;
    animation: tc-xmas-spin 4s linear infinite;
}
html[data-seasonal-theme="christmas"] .sidebar::before {
    content: '\1F381';
    position: absolute;
    top: 120px;
    right: 14px;
    font-size: 1.2rem;
    animation: tc-xmas-swing 3s ease-in-out infinite;
    z-index: 10;
}
html[data-seasonal-theme="christmas"] .sidebar::after {
    content: '\2B50';
    position: absolute;
    top: 185px;
    right: 14px;
    font-size: 1rem;
    animation: tc-xmas-twinkle 2s ease-in-out infinite;
    z-index: 10;
}
html[data-seasonal-theme="christmas"] ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #c41e3a, #0f8b4d);
    border-radius: 10px;
}
html[data-seasonal-theme="christmas"] ::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #ffd700, #0f8b4d);
}

/* ── SHARED ── */
.tc-hub-pixel-flow {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: .08;            /* base fallback — per-theme rules override this */
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
    contain: strict;
}

/* Guarantee all real page content sits above the canvas, but NEVER break fixed modals or overlays */
body > *:not(.tc-hub-pixel-flow):not(.tc-seasonal-atmosphere):not(.script-modal):not(.modal):not(.ad-popup-overlay):not([class*="modal"]):not([id*="Modal"]):not([id*="Toast"]):not([id*="toast"]):not(#toastContainer):not(#tcClickIndicator) {
    position: relative;
    z-index: 1;
}

.tc-seasonal-atmosphere {
    position: fixed;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 50;
    contain: strict;
}

.tc-seasonal-particle {
    position: absolute;
    top: -14vh;
    left: var(--particle-x);
    color: var(--particle-color, #f0b54f);
    opacity: var(--particle-opacity, .5);
    font-size: var(--particle-size, 14px);
    line-height: 1;
    text-shadow: 0 0 14px currentColor;
    animation: tc-season-drift var(--particle-duration, 18s) linear var(--particle-delay, 0s) infinite;
    will-change: transform;
    user-select: none;
}

html[data-seasonal-theme="halloween"] .tc-seasonal-particle {
    --particle-color: #ff9d3a;
    text-shadow: 0 0 18px rgba(255, 120, 20, .7), 0 0 36px rgba(150, 50, 200, .35);
}
html[data-seasonal-theme="christmas"] .tc-seasonal-particle {
    --particle-color: #d9f3ff;
    text-shadow: 0 0 14px rgba(150, 220, 255, .6);
}
html[data-seasonal-theme="normal"] .tc-seasonal-particle {
    --particle-color: #f0b54f;
}

@keyframes tc-season-drift {
    0%   { transform: translate3d(0, -4vh, 0) rotate(0deg) scale(1); }
    30%  { transform: translate3d(calc(var(--particle-sway) * .4), 30vh, 0) rotate(130deg) scale(0.95); }
    60%  { transform: translate3d(var(--particle-sway), 62vh, 0) rotate(220deg) scale(1.05); }
    100% { transform: translate3d(calc(var(--particle-sway) * -.55), 116vh, 0) rotate(360deg) scale(1); }
}

@keyframes tc-halloween-bob {
    0%, 100% { transform: translateY(-50%) scale(1); }
    50%       { transform: translateY(-58%) scale(1.12); }
}
@keyframes tc-halloween-spin {
    from { transform: translateY(-50%) rotate(0deg); }
    to   { transform: translateY(-50%) rotate(360deg); }
}
@keyframes tc-halloween-float {
    0%, 100% { transform: translateY(0) scale(1);       opacity: .85; }
    50%      { transform: translateY(-8px) scale(1.08); opacity: 1; }
}
@keyframes tc-halloween-pulse {
    0%, 100% { opacity: 1;   transform: scale(1); }
    50%      { opacity: .55; transform: scale(1.18); }
}

@keyframes tc-xmas-pulse {
    0%, 100% { transform: translateY(-50%) scale(1); }
    50%      { transform: translateY(-58%) scale(1.14); }
}
@keyframes tc-xmas-spin {
    from { transform: translateY(-50%) rotate(0deg); }
    to   { transform: translateY(-50%) rotate(360deg); }
}
@keyframes tc-xmas-swing {
    0%, 100% { transform: rotate(-6deg); }
    50%      { transform: rotate(6deg); }
}
@keyframes tc-xmas-twinkle {
    0%, 100% { opacity: 1;   transform: scale(1); }
    50%      { opacity: .45; transform: scale(1.22); }
}

@media (prefers-reduced-motion: reduce) {
    .tc-seasonal-atmosphere,
    .tc-halloween-fog,
    .tc-christmas-lights       { display: none !important; }
    html[data-seasonal-theme] *,
    html[data-seasonal-theme] *::before,
    html[data-seasonal-theme] *::after {
        scroll-behavior: auto !important;
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}

/* ================================================================
   HALLOWEEN — Extra atmospheric CSS
   ================================================================ */

/* Body breathes a deep purple pulse */
html[data-seasonal-theme="halloween"] body {
    animation: tc-halloween-breathe 10s ease-in-out infinite;
}
@keyframes tc-halloween-breathe {
    0%, 100% { box-shadow: inset 0 0   0px transparent; }
    50%       { box-shadow: inset 0 0 160px rgba(70, 0, 110, .10); }
}

/* Candle-flicker glow on cards */
html[data-seasonal-theme="halloween"] .script-card {
    animation: tc-candle-flicker 5s ease-in-out infinite;
}
@keyframes tc-candle-flicker {
    0%,  100% { box-shadow: 0 4px 22px rgba(160, 50,  0, .12), 0 0 40px rgba(100, 0, 150, .08); }
    22%        { box-shadow: 0 4px 30px rgba(200, 80,  0, .20), 0 0 52px rgba(130, 0, 180, .14); }
    45%        { box-shadow: 0 4px 18px rgba(140, 40,  0, .09), 0 0 36px rgba(90,  0, 130, .06); }
    68%        { box-shadow: 0 4px 28px rgba(190, 70,  0, .17), 0 0 48px rgba(120, 0, 170, .12); }
    85%        { box-shadow: 0 4px 20px rgba(155, 45,  0, .11), 0 0 38px rgba(95,  0, 140, .08); }
}

/* Fog layer at bottom of viewport */
.tc-halloween-fog {
    position: fixed;
    bottom: 0;
    left: -5%; right: -5%;
    height: 220px;
    pointer-events: none;
    z-index: 49;
    background: linear-gradient(to top,
        rgba(55, 8, 78, .20) 0%,
        rgba(35, 4, 55, .10) 45%,
        transparent 100%
    );
    animation: tc-fog-drift 20s ease-in-out infinite;
}
.tc-halloween-fog::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 500px 90px at 18% 100%, rgba(90, 15, 130, .18), transparent),
        radial-gradient(ellipse 420px 70px at 62% 95%, rgba(70, 8,  110, .14), transparent),
        radial-gradient(ellipse 380px 80px at 42% 98%, rgba(110, 25, 160, .12), transparent);
    animation: tc-fog-waft 26s ease-in-out infinite;
}
.tc-halloween-fog::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 340px 60px at 80% 92%, rgba(60, 5, 95, .12), transparent),
        radial-gradient(ellipse 460px 75px at 30% 96%, rgba(80, 12, 120, .10), transparent);
    animation: tc-fog-waft 32s ease-in-out infinite reverse;
}
@keyframes tc-fog-drift {
    0%, 100% { transform: translateX(0); }
    40%       { transform: translateX(3%); }
    70%       { transform: translateX(-2%); }
}
@keyframes tc-fog-waft {
    0%, 100% { opacity: .65; transform: scaleX(1); }
    50%       { opacity: 1;   transform: scaleX(1.10); }
}

/* Pulsing orange/purple glow on active nav items */
html[data-seasonal-theme="halloween"] .nav-item.active,
html[data-seasonal-theme="halloween"] .taskbar-pill:hover {
    animation: tc-halloween-nav-pulse 3s ease-in-out infinite;
}
@keyframes tc-halloween-nav-pulse {
    0%, 100% { text-shadow: 0 0  8px rgba(255, 140, 30, .5); }
    50%       { text-shadow: 0 0 18px rgba(255, 140, 30, .9), 0 0 35px rgba(180, 60, 230, .4); }
}

/* ================================================================
   CHRISTMAS — Extra atmospheric CSS
   ================================================================ */

/* Christmas lights string — wire + bulbs */
.tc-christmas-lights {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 52px;
    pointer-events: none;
    z-index: 9997;
    /* Wire */
    background:
        linear-gradient(to right,
            transparent 0,
            rgba(65, 52, 35, .65) 6px,
            rgba(65, 52, 35, .65) calc(100% - 6px),
            transparent 100%
        );
    background-size: 100% 2px;
    background-repeat: no-repeat;
    background-position: 0 1px;
}

/* Individual bulb */
.tc-lights-bulb {
    position: absolute;
    top: 2px;
    width: 14px;
    height: 18px;
    transform: translateX(-50%);
    background: var(--bulb-color, #fff);
    border-radius: 50% 50% 55% 55% / 44% 44% 62% 62%;
    box-shadow:
        0 0  6px 2px var(--bulb-color, #fff),
        0 0 16px 7px var(--bulb-glow,  var(--bulb-color, rgba(255,255,255,.4))),
        0 0 32px 12px var(--bulb-glow, rgba(255,255,255,.2));
    animation: tc-bulb-flicker 2.6s ease-in-out var(--bulb-delay, 0s) infinite;
    will-change: opacity, filter;
}

/* Metal cap on top of bulb */
.tc-lights-bulb::before {
    content: '';
    position: absolute;
    top: -8px; left: 50%;
    transform: translateX(-50%);
    width: 5px; height: 8px;
    background: rgba(75, 60, 35, .90);
    border-radius: 2px 2px 0 0;
    box-shadow: 0 -1px 0 rgba(255,255,255,.15);
}

/* Small wire hook from cap to wire */
.tc-lights-bulb::after {
    content: '';
    position: absolute;
    top: -14px; left: 50%;
    transform: translateX(-50%);
    width: 2px; height: 6px;
    background: rgba(65, 52, 35, .70);
}

@keyframes tc-bulb-flicker {
    0%, 80%, 100% { opacity: 1;    filter: brightness(1); }
    82%            { opacity: 0.18; filter: brightness(0.3); }
    84%            { opacity: 1;    filter: brightness(1.3); }
    87%            { opacity: 0.55; filter: brightness(0.7); }
    89%            { opacity: 1;    filter: brightness(1.1); }
    91%            { opacity: 0.80; filter: brightness(0.9); }
    93%            { opacity: 1;    filter: brightness(1); }
}

/* Snow drift / accumulation at the bottom */
html[data-seasonal-theme="christmas"] body::after {
    content: '';
    position: fixed;
    bottom: 0; left: -5%; right: -5%;
    height: 90px;
    pointer-events: none;
    z-index: 49;
    background:
        radial-gradient(ellipse 700px 65px at 28% 100%, rgba(220, 240, 255, .10), transparent),
        radial-gradient(ellipse 600px 55px at 72% 100%, rgba(200, 230, 255, .08), transparent),
        radial-gradient(ellipse 400px 45px at 50% 100%, rgba(210, 235, 255, .06), transparent),
        linear-gradient(to top, rgba(195, 225, 255, .07) 0%, transparent 100%);
    animation: tc-snowdrift-breathe 28s ease-in-out infinite;
}
@keyframes tc-snowdrift-breathe {
    0%, 100% { opacity: 0.55; transform: scaleX(1); }
    50%       { opacity: 1;   transform: scaleX(1.05); }
}

/* Frost shimmer on cards */
html[data-seasonal-theme="christmas"] .script-card {
    animation: tc-frost-shimmer 7s ease-in-out infinite;
}
@keyframes tc-frost-shimmer {
    0%,  100% { box-shadow: 0 4px 22px rgba(27, 103, 117, .12), 0 0 30px rgba(79, 190, 142, .08); }
    50%        { box-shadow: 0 6px 32px rgba(27, 103, 117, .22), 0 0 48px rgba(79, 190, 142, .18); }
}

/* Frosted glass overlay on cards */
html[data-seasonal-theme="christmas"] .script-card::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(135deg,
        rgba(200, 240, 255, .07) 0%,
        transparent 45%,
        rgba(150, 210, 240, .04) 100%
    );
    pointer-events: none;
}

/* Active nav pulsing ice glow */
html[data-seasonal-theme="christmas"] .nav-item.active,
html[data-seasonal-theme="christmas"] .taskbar-pill:hover {
    animation: tc-xmas-nav-glow 3.5s ease-in-out infinite;
}
@keyframes tc-xmas-nav-glow {
    0%, 100% { text-shadow: 0 0  8px rgba(100, 220, 180, .5); }
    50%       { text-shadow: 0 0 18px rgba(100, 220, 180, .9), 0 0 35px rgba(140, 210, 255, .45); }
}


/* ================================================================
   TOOL PAGE (.decrypt-card) � Halloween overrides
   ================================================================ */
html[data-seasonal-theme="halloween"] .decrypt-card {
    border-color: rgba(180, 60, 0, .30);
    box-shadow: 0 14px 44px rgba(0,0,0,.38), 0 0 28px rgba(150,20,200,.12), inset 0 1px 0 rgba(255,140,30,.08);
    background: rgba(8, 5, 12, .88);
    position: relative;
}
html[data-seasonal-theme="halloween"] .decrypt-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, transparent, rgba(200,80,30,.55), rgba(160,30,200,.45), transparent);
    border-radius: 8px 8px 0 0;
    pointer-events: none;
}
html[data-seasonal-theme="halloween"] .tool-kicker {
    color: #ff6a1a;
    text-shadow: 0 0 12px rgba(255,100,20,.60);
    letter-spacing: .14em;
}
html[data-seasonal-theme="halloween"] .tool-locked-panel {
    border-color: rgba(180, 30, 230, .40);
    background: radial-gradient(circle at top, rgba(160,20,200,.18), transparent 50%), rgba(10,4,18,.70);
    animation: tc-locked-haunt 6s ease-in-out infinite;
}
@keyframes tc-locked-haunt {
    0%, 100% { box-shadow: 0 0 30px rgba(140,20,180,.10), inset 0 0 40px rgba(90,0,130,.06); }
    50%       { box-shadow: 0 0 55px rgba(200,40,240,.20), inset 0 0 60px rgba(130,0,170,.12); }
}
html[data-seasonal-theme="halloween"] .runtime-helper-panel {
    border-color: rgba(160, 50, 0, .28);
    background: rgba(10, 4, 12, .70);
    box-shadow: 0 0 24px rgba(140,30,190,.08);
}
html[data-seasonal-theme="halloween"] .access-limited {
    border-color: rgba(255,140,30,.55);
    box-shadow: 0 0 14px rgba(255,130,20,.25);
    color: #ff9d42;
}

/* ================================================================
   TOOL PAGE (.decrypt-card) � Christmas overrides
   ================================================================ */
html[data-seasonal-theme="christmas"] .decrypt-card {
    border-color: rgba(80, 195, 160, .28);
    box-shadow: 0 14px 44px rgba(0,0,0,.32), 0 0 30px rgba(50,180,150,.10), inset 0 1px 0 rgba(140,230,210,.08);
    background: rgba(6, 14, 18, .88);
    position: relative;
}
html[data-seasonal-theme="christmas"] .decrypt-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, transparent, rgba(100,210,200,.55), rgba(50,150,255,.45), transparent);
    border-radius: 8px 8px 0 0;
    pointer-events: none;
}
html[data-seasonal-theme="christmas"] .tool-kicker {
    color: #5ddfc0;
    text-shadow: 0 0 12px rgba(80,210,180,.55);
    letter-spacing: .14em;
}
html[data-seasonal-theme="christmas"] .tool-locked-panel {
    border-color: rgba(80, 200, 180, .35);
    background: radial-gradient(circle at top, rgba(50,160,200,.14), transparent 50%), rgba(5,16,22,.70);
    animation: tc-locked-frost 7s ease-in-out infinite;
}
@keyframes tc-locked-frost {
    0%, 100% { box-shadow: 0 0 28px rgba(60,180,200,.10), inset 0 0 40px rgba(30,130,180,.05); }
    50%       { box-shadow: 0 0 52px rgba(80,210,230,.18), inset 0 0 60px rgba(50,160,200,.10); }
}
html[data-seasonal-theme="christmas"] .runtime-helper-panel {
    border-color: rgba(60, 190, 160, .24);
    background: rgba(5, 16, 20, .70);
    box-shadow: 0 0 22px rgba(50,180,170,.07);
}
html[data-seasonal-theme="christmas"] .access-open {
    border-color: rgba(80,220,180,.55);
    box-shadow: 0 0 14px rgba(60,210,170,.25);
    color: #68f0c4;
}
