/* Treasure Islands Christmas 2026
   Visual-only seasonal layer. It repaints existing components without changing
   their layout, visibility, scrolling, controllers or form behaviour. */

html[data-season="xmas"]{
  min-width:0!important;
  color-scheme:dark;
  --ink:#fffaf0;
  --muted:#c9e0dc;
  --paper:#123b37;
  --paper-2:#174944;
  --paper-3:#0b2c2d;
  --glass:rgba(18,59,55,.97);
  --line:#60968e;
  --sh:#03191a;
  --green:#efc75e;
  --green-dark:#9a7220;
  --mint:#174944;
  --mint-2:#215a50;
  --mint-3:#0d3534;
  --teal:#92d7e4;
  --deep:#061c20;
  --blue:#78cbd8;
  --gold:#efc75e;
  --coral:#d84b58;
  --purple:#bfeaf0;
  --surface-soft:#103b39;
  --gold-soft:#70404a;
  --shadow:rgba(0,13,16,.58);
  --backdrop:rgba(2,15,18,.78);
  --mig-ink:#fffaf0;
  --mig-muted:#c9e0dc;
  --mig-paper:#123b37;
  --mig-paper-2:#174944;
  --mig-paper-3:#0b2c2d;
  --mig-line:#60968e;
  --mig-green:#efc75e;
  --mig-green-dark:#9a7220;
  --mig-mint:#174944;
  --mig-teal:#92d7e4;
  --mig-deep:#061c20;
  --mig-blue:#78cbd8;
  --mig-gold:#efc75e;
  --mig-coral:#d84b58;
  --mig-purple:#bfeaf0;
  --home-paper:#123b37;
  --home-paper-2:#174944;
  --home-line:#60968e;
  --home-ink:#fffaf0;
  --home-muted:#c9e0dc;
  --home-green:#efc75e;
  --home-green-dark:#9a7220;
  --home-coral:#d84b58;
  --home-coral-dark:#842c38;
  --home-teal:#92d7e4;
  --home-mint:#174944;
  --home-gold:#efc75e;
}

html[data-season="xmas"] body{
  min-width:0!important;
  --ink:#fffaf0;--ink-2:#c9e0dc;--muted:#c9e0dc;
  --paper:#123b37;--paper-2:#174944;--paper-3:#0b2c2d;--sand:#174944;
  --glass:rgba(18,59,55,.97);--line:#60968e;--sh:#03191a;
  --green:#efc75e;--green-dark:#9a7220;--mint:#174944;--mint-2:#215a50;--mint-3:#0d3534;
  --teal:#92d7e4;--deep:#061c20;--blue:#78cbd8;--gold:#efc75e;--coral:#d84b58;--coral-2:#a92f3d;--purple:#bfeaf0;
  --surface-soft:#103b39;--gold-soft:#70404a;--shadow:rgba(0,13,16,.58);--backdrop:rgba(2,15,18,.78);
  --sky-1:#06191e;--sky-2:#0a2b30;--sky-3:#123f44;--sun:#fff3c4;--sun-glow:rgba(255,230,150,.3);
  --grass-a:#174944;--grass-b:#103b39;--scene:brightness(.52) saturate(.74);--dim:rgba(2,15,18,.3);
  color:var(--ink)!important;
  background-color:#061b20!important;
  background-image:
    radial-gradient(circle at 17% 10%,rgba(102,190,184,.2),transparent 29%),
    radial-gradient(circle at 86% 24%,rgba(96,172,200,.16),transparent 28%),
    radial-gradient(circle at 48% 94%,rgba(216,75,88,.08),transparent 28%),
    linear-gradient(155deg,#06191e,#0a2b30 52%,#061a21)!important;
  background-attachment:fixed!important;
}

html[data-season="xmas"] body::before{background:linear-gradient(180deg,rgba(3,20,24,.08),rgba(2,15,18,.3))!important}
html[data-season="xmas"] body .world{filter:hue-rotate(118deg) saturate(.7) brightness(.46)}
html[data-season="xmas"] body :is(h1,h2,h3,h4,h5,h6,strong,b,.title,.card-title){color:var(--ink)}
html[data-season="xmas"] body :is(p,small,.muted,.dim,.sub,.hint,.help,.note){color:var(--muted)}
html[data-season="xmas"] body a{color:#fff0b2}
html[data-season="xmas"] body a:hover{color:#fffbe9}

/* Keep only the seasonal palette available during its automatic date range. */
html[data-season="xmas"] body :is(.theme-dock,#themeButton,#homeTheme,.unified-header-theme,[data-t]){display:none!important}

html[data-season="xmas"] body :is(
  .surface,.panel,.card,.dash-paper,.passport-wallet,.access-board,
  .service-tile,.catalogue-card,.island-card,.island-section,.finder,
  .home-checkin,.home-finder,.home-map-section,.signin-panel,.member-summary,
  .packs,.pick-bar,.ord-wrap,.basket,.drop-tray,.drop-picker-workspace,
  .vmodal-card,.modal-card,.preview-dialog,.lb-inner,.info-inner,.cf-body,
  .cookie-card,.legal-card,.maintenance-card
){
  color:var(--ink)!important;
  border-color:color-mix(in srgb,#92d7e4 58%,#efc75e)!important;
  background-color:rgba(18,59,55,.97)!important;
  background-image:linear-gradient(145deg,rgba(23,73,68,.98),rgba(9,42,43,.98))!important;
  box-shadow:0 6px 0 rgba(3,25,26,.94),0 18px 40px rgba(0,13,16,.42)!important;
}

html[data-season="xmas"] body :is(
  .card-head,.bk-head,.ord-head,.isl-head,.lb-bar,.packs-head,
  .access-board-head,.finder-head,.finder-heading,.section-heading
){
  color:var(--ink)!important;
  border-color:#dfbd61!important;
  background-color:#8f303c!important;
  background-image:linear-gradient(105deg,#b5424f,#7f2936)!important;
}

html[data-season="xmas"] body :is(
  .bk-body,.bk-board,.bk-scroll,.bk-list,.cf-actions,.info-body,.vlb-body,
  .activity-list,.passport-inner,.finder-layout,.finder-route,.home-wrap
){color:var(--ink);border-color:#527f79}

/* Canonical desktop and mobile header. */
html[data-season="xmas"] body .universal-header{
  border-color:#6ba49b!important;
  background:linear-gradient(105deg,rgba(8,47,47,.98),rgba(16,73,61,.98))!important;
  box-shadow:0 7px 0 #03191a,0 0 0 4px rgba(239,199,94,.07),0 20px 42px rgba(0,13,16,.52)!important;
}
html[data-season="xmas"] body .universal-header::after{border-color:rgba(239,199,94,.4)!important}
html[data-season="xmas"] body .universal-header :is(
  .unified-header-link,.unified-header-more-button,.unified-header-label,
  .unified-header-brand,.unified-header-mobile-more>a
){color:#fffaf0!important;text-shadow:0 1px 2px rgba(0,20,18,.95)!important}
html[data-season="xmas"] body .universal-header :is(
  .unified-header-link,.unified-header-more-button,.unified-header-notification,
  .unified-header-profile,.unified-header-mobile-toggle
){border-color:#578a84!important;background-color:#103f3c!important}
html[data-season="xmas"] body .universal-header :is(.unified-header-link,.unified-header-more-button):is(:hover,:focus-visible,.active,.current){
  color:#fffdf4!important;
  border-color:#efc75e!important;
  background:linear-gradient(145deg,#a93947,#7c2937)!important;
  box-shadow:inset 0 0 18px rgba(255,230,148,.13),0 4px 0 #41171f!important;
}
html[data-season="xmas"] body .universal-header :is(.unified-header-link,.unified-header-more-button):is(:hover,:focus-visible,.active,.current) .unified-header-label{color:#fffdf4!important}
html[data-season="xmas"] body .universal-header .unified-header-premium{
  border-color:#c39d48!important;
  background:linear-gradient(180deg,rgba(108,58,56,.94),rgba(35,79,65,.96))!important;
}
html[data-season="xmas"] body .universal-header .unified-header-premium:is(:hover,.active){
  border-color:#ffe080!important;
  background:linear-gradient(180deg,#b93e4d,#872d3b)!important;
}
html[data-season="xmas"] body .universal-header .unified-header-badge{color:#17362f!important;background:#e1b63f!important}
html[data-season="xmas"] body .universal-header :is(.unified-header-more-menu,.unified-header-account-menu,.unified-header-nav){color:var(--ink)!important;border-color:#60968e!important;background-color:#123b37!important}
html[data-season="xmas"] body .universal-header :is(.unified-header-more-menu,.unified-header-account-menu,.unified-header-mobile-more)>a:is(:hover,.on){color:#fffdf4!important;background:#215a50!important}
html[data-season="xmas"] body .universal-header-search{border-color:#64978f!important;background:#0b3030!important}

/* Inputs, tabs and actions retain their existing dimensions and behaviour. */
html[data-season="xmas"] body :is(input,select,textarea,.pick-search,.pick-cat,.finder-search,.finder-input){color:#fffaf0!important;border-color:#60928c!important;background-color:#0b3030!important;box-shadow:none!important}
html[data-season="xmas"] body :is(input,textarea)::placeholder{color:#b9d2ce!important;opacity:1}
html[data-season="xmas"] body select option{color:#fffaf0;background:#0b3030}
html[data-season="xmas"] body :is(button,.btn,.button,.info-btn,.vo-action,.oauth-button,.pk-openall,.view-all,.dialog-close,.modal-x,.f-plan,.subscriber-map-actions a){border-color:#608f89}
html[data-season="xmas"] body :is(button,.btn,.button,.info-btn,.vo-action,.oauth-button,.pk-openall,.view-all,.dialog-close,.modal-x,.f-plan,.subscriber-map-actions a):is(:hover,:focus-visible){color:#fffdf4!important;border-color:#efc75e!important;background-color:#215a50!important}
html[data-season="xmas"] body :is(.btn.primary,.button.primary,.place-order,[data-primary],.subscriber-dodo){
  color:#15372e!important;
  border-color:#ffe18b!important;
  background:linear-gradient(180deg,#f2d06c,#dba930)!important;
  box-shadow:0 4px 0 #765711,0 0 18px rgba(239,199,94,.24)!important;
  text-shadow:none!important;
}
html[data-season="xmas"] body :is(.button.gold,.btn.gold){color:#15372e!important;border-color:#ffe18b!important;background:linear-gradient(180deg,#f4d475,#dcae35)!important;box-shadow:0 4px 0 #765711!important}
html[data-season="xmas"] body :is(.btn.ghost,.button.ghost,.clear-order){color:#fffaf0!important;border-color:#5f8f88!important;background:#103b39!important}
html[data-season="xmas"] body :is(.tabs2,.order-utility-tabs,.order-service-dock,.drop-service-tabs,.seg3,.houseSeg){border-color:#568781!important;background:#092f30!important}
html[data-season="xmas"] body :is(.tabs2 button,.order-mode-tab,.order-utility-tab,.drop-service-tab,.seg3 button,.houseSeg button){color:#fffaf0!important;border-color:#527f7a!important;background:#103c3b!important}
html[data-season="xmas"] body :is(.tabs2 button,.order-mode-tab,.order-utility-tab,.drop-service-tab,.seg3 button,.houseSeg button):is(:hover,.on,.active,[aria-selected="true"]){color:#fffdf4!important;border-color:#efc75e!important;background:linear-gradient(145deg,#a43846,#742936)!important;text-shadow:0 1px 2px #321018!important}

/* Item, villager, order-pack and island cards. */
html[data-season="xmas"] body :is(.icard,.item-card,.vcard,.villager-card,.pk-card,.pack-card,.pa-card,.isl-card,.free-card){
  color:var(--ink)!important;
  border-color:#568a83!important;
  background-color:#123f3d!important;
  background-image:linear-gradient(160deg,#174d47,#0e3738)!important;
  box-shadow:0 4px 0 #041b1c,0 13px 24px rgba(0,13,16,.28)!important;
}
html[data-season="xmas"] body :is(.icard,.item-card,.vcard,.villager-card,.pk-card,.pack-card,.pa-card,.isl-card,.free-card):hover{border-color:#efc75e!important;background-image:linear-gradient(160deg,#205a50,#123f40)!important;box-shadow:0 6px 0 #041b1c,0 0 20px rgba(239,199,94,.18)!important}
html[data-season="xmas"] body :is(.fav-star,.order-mode-star,.drop-service-star,.fav-heading-star){color:#ffd767!important;border-color:#d0aa4e!important;background:#0e3433!important;text-shadow:0 0 9px rgba(255,221,108,.4)!important}
html[data-season="xmas"] body :is(.fav-star,.order-mode-star,.drop-service-star):is(:hover,.on,[aria-pressed="true"]){color:#fff0ac!important;border-color:#ffdf82!important;background:#9b3441!important}
html[data-season="xmas"] body :is(.pill,.bk-pill,.count-lab,.section-count,.map-count,.service-tier,.variant-badge,.f-chip){color:#fff0b8!important;border-color:#789b75!important;background:#344f3d!important}
html[data-season="xmas"] body :is(.online,.service-live,.dot){color:#a9efc4!important}
html[data-season="xmas"] body :is(.bk-queue,.queue-note,.now-serving){color:#e9fff2!important;border-color:#5ead7d!important;background:#163f37!important}
html[data-season="xmas"] body :is(.up-next,.queue-next){color:#fff3c8!important;border-color:#dfba55!important;background:#694244!important}
html[data-season="xmas"] body :is(.preview-modal,.modal,.vmodal,.lb,.fvlb,.ti-confirm){background-color:rgba(2,15,18,.8)!important;backdrop-filter:blur(7px) saturate(.8)}
html[data-season="xmas"] body :is(.announcement-ribbon,.announcement,.member-note,.signin-guidance,.v-warn,.cf-tip){color:#fff7e4!important;border-color:#dfbd61!important;background:linear-gradient(90deg,#8f2f3c,#b5424f)!important}
html[data-season="xmas"] body :is(.passport-wallet,.access-board){background-image:linear-gradient(145deg,#1b584d,#103938)!important}
html[data-season="xmas"] body :is(.music-player,.ambient.tb-float){color:#fffaf0!important;border-color:#6aa89e!important;background:linear-gradient(145deg,#174944,#0b3030)!important;box-shadow:0 5px 0 #03191a,0 13px 30px rgba(0,13,16,.45)!important}
html[data-season="xmas"] body :is(.stream-sign,.stream-hero,.stream-finder,.vo-feature,.home-hero-shell,.home-hero){color:var(--ink)!important;border-color:#60968e!important;background-color:rgba(18,59,55,.96)!important;background-image:linear-gradient(145deg,rgba(23,73,68,.98),rgba(9,42,43,.98))!important}
html[data-season="xmas"] body .stream-sign{color:#fffaf0!important;text-shadow:0 2px 0 #03191a,0 0 14px rgba(239,199,94,.18)!important}
html[data-season="xmas"] body .vo-feature :is(b,strong,h2,h3,p,small){color:inherit}
html[data-season="xmas"] body :is(.eyebrow,.home-kicker,.kicker,.gold-eye){color:#fff0a6!important;border-color:#8e814f!important;background:#365344!important}
html[data-season="xmas"] body :is(.dashboard-stat,.access-ticket,.signin-route,.service-status,.f-sug,.activity-list>*){color:var(--ink)!important;border-color:#537f7a!important;background-color:#103b3a!important}

/* Decorative layer: pointer-events stay disabled so no page control is covered. */
.ti-christmas-effects{position:fixed;inset:0;z-index:1;overflow:hidden;pointer-events:none;contain:strict}
.ti-christmas-stars{position:absolute;inset:0;opacity:.64;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px),radial-gradient(circle,#bcecf2 0 1.5px,transparent 2px);background-position:0 0,31px 27px;background-size:71px 71px,113px 113px;animation:ti-christmas-stars 4s ease-in-out infinite alternate}
.ti-christmas-aurora{position:absolute;top:-19%;left:-15%;width:130%;height:62%;opacity:.2;filter:blur(38px);background:conic-gradient(from 210deg at 50% 50%,transparent,#77d6b5,#73c9dc,#d9f7df,transparent 45%);transform:skewY(-7deg);animation:ti-christmas-aurora 12s ease-in-out infinite alternate}
.ti-christmas-snow{position:absolute;inset:-120px 0 0;opacity:.72;background-image:radial-gradient(circle,#fff 0 2px,transparent 2.4px),radial-gradient(circle,#d9f8ff 0 1px,transparent 1.5px);background-size:85px 85px,54px 54px;background-position:13px 9px,31px 20px;animation:ti-christmas-snow 18s linear infinite}
.ti-christmas-snow.near{opacity:.4;background-size:137px 137px,89px 89px;filter:blur(.2px);animation-duration:27s;animation-delay:-9s}
.ti-christmas-lights{position:absolute;left:0;right:0;top:0;height:52px;display:flex;justify-content:space-around;border-top:4px solid #173d34;filter:drop-shadow(0 7px 8px rgba(0,0,0,.42))}
.ti-christmas-lights::before{content:"";position:absolute;top:-4px;left:-2%;width:104%;height:17px;border-top:4px solid #173d34;border-radius:50%}
.ti-christmas-lights i{position:relative;width:14px;height:20px;margin-top:5px;border-radius:50% 50% 45% 45%;color:#db4656;background:currentColor;box-shadow:0 0 10px 3px currentColor;animation:ti-christmas-twinkle 1.8s ease-in-out infinite alternate}
.ti-christmas-lights i:nth-child(4n+2){color:#f2cc5d;animation-delay:-.5s}.ti-christmas-lights i:nth-child(4n+3){color:#63d09a;animation-delay:-.9s}.ti-christmas-lights i:nth-child(4n){color:#8adce9;animation-delay:-1.3s}
.ti-christmas-lights i::before{content:"";position:absolute;left:5px;top:-9px;width:5px;height:10px;border-radius:3px;background:#24483d}
.ti-christmas-prop{position:absolute;bottom:-24px;width:clamp(110px,13vw,220px);opacity:.74;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(0,0,0,.58));animation:ti-christmas-float 5s ease-in-out infinite}
.ti-christmas-prop.left{left:-28px}.ti-christmas-prop.right{right:-34px;animation-delay:-2.1s}

@keyframes ti-christmas-stars{from{opacity:.38}to{opacity:.72}}
@keyframes ti-christmas-aurora{from{transform:translateX(-5%) skewY(-7deg) scaleY(.85)}to{transform:translateX(6%) skewY(-3deg) scaleY(1.12)}}
@keyframes ti-christmas-snow{to{background-position:55px 709px,-23px 560px}}
@keyframes ti-christmas-twinkle{from{filter:brightness(.72);transform:translateY(0)}to{filter:brightness(1.32);transform:translateY(2px)}}
@keyframes ti-christmas-float{50%{transform:translateY(-8px) rotate(1deg)}}

@media(max-width:820px){
  .ti-christmas-lights i:nth-child(even){display:none}
  .ti-christmas-prop{width:105px;opacity:.5}
  html[data-season="xmas"] body .universal-header .unified-header-nav{background:#123b37!important;box-shadow:0 20px 40px rgba(0,13,16,.56)!important}
}
@media(max-width:390px){.ti-christmas-prop{display:none}.ti-christmas-lights i:nth-child(3n){display:none}}
@media(prefers-reduced-motion:reduce){.ti-christmas-effects *{animation:none!important}.ti-christmas-snow{opacity:.28!important}.ti-christmas-aurora{opacity:.12!important}}
