/* Shared calendar/game chrome. Existing art, boards and saved game state stay native. */
body.ui-cel{--ui-pine:#315f54;--ui-pine-hover:#244b40;--ui-paper:#fff6df;--ui-ink:#26483a;--ui-muted:#55634b;--ui-line:#c7a66d;--ui-radius:12px;--ui-focus:#315f54;--ui-warning:#75551d;--ui-error:#963e49;--cel-gold:#dfb875;--cel-edge:#8d703d;--cel-shadow:#70533645;--cel-plum:#755172;background:#173b31;color:#f7ecd3}
.ui-cel :is(.world-topbar,.scene-toolbar,.login-card,.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog){background:var(--ui-paper)!important;color:var(--ui-ink)!important;border:2px solid var(--ui-line)!important;border-radius:14px!important;box-shadow:inset 0 1px 0 #fffdf4,0 4px 0 var(--cel-shadow),0 16px 44px #0c211e40!important}
.ui-cel :is(.world-topbar,.login-card){background-image:url('./art/ui/cel/ui-corner-sprig.png')!important;background-size:220px 220px!important;background-position:right top!important;background-repeat:no-repeat!important}
.ui-cel .world-topbar{padding:14px 88px 14px 20px;gap:24px;background-size:170px 170px!important}
.ui-cel.calendar-active .world-topbar .calendar-header{background:transparent!important;border:0!important;box-shadow:none!important;min-width:0}
.ui-cel .calendar-header :is(h1,.eyebrow,#welcomeText),.ui-cel .world-topbar .app-nav{color:var(--ui-ink)}
.ui-cel .calendar-header h1{color:var(--ui-ink)!important;font:700 clamp(1.45rem,3vw,2.2rem) Georgia,serif;letter-spacing:-.025em}
.ui-cel .calendar-header .eyebrow{color:#756139;font-weight:750;letter-spacing:.1em}
.ui-cel .calendar-header #welcomeText{color:var(--ui-muted)!important;line-height:1.45}
.ui-cel .world-topbar .app-nav{background:transparent;border:0;z-index:2}
.ui-cel :is(.ui-button,.primary-button,.copy-button,.quiet-button,.scene-control,.door-quick,.dialog-close){color:var(--ui-ink);background:#fff4d6;border:1px solid var(--ui-line);border-radius:9px;font-weight:700;box-shadow:inset 0 1px 0 #fffdf3,0 3px 0 #8d703d40}
.ui-cel :is(.ui-button.primary,.primary-button,.copy-button,.app-nav .ui-button[aria-current=page]){background:var(--ui-pine);color:#fff5df;border-color:#bf9e5b;box-shadow:inset 0 1px 0 #98b0a060,0 3px 0 #1b3b32}
.ui-cel :is(.ui-button,.primary-button,.copy-button,.quiet-button,.scene-control,.door-quick):hover:not(:disabled){background:#f0dfb5;color:var(--ui-ink);filter:none}
.ui-cel :is(.ui-button.primary,.primary-button,.copy-button):hover:not(:disabled){background:var(--ui-pine-hover);color:#fff5df}
.ui-cel :is(button,summary,input,select,textarea,a):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
.ui-cel :is(.ui-button,.primary-button,.quiet-button,.scene-control,.door-quick):disabled{opacity:1;color:#83775e;background:#e9dfc9;box-shadow:none;border-color:#bfb18f;cursor:default}
.ui-cel .app-more>summary{color:var(--ui-ink);font-weight:700;min-height:44px;border:1px solid transparent;border-radius:9px}
.ui-cel .app-more>summary:hover{background:#f0dfb5;border-color:var(--ui-line)}
.ui-cel .app-more-menu{background:var(--ui-paper);border:2px solid var(--ui-line);border-radius:12px;box-shadow:0 10px 32px #0c211e50}
.ui-cel .app-more-menu button{color:var(--ui-ink)!important;background:#fff4d6!important;border:1px solid var(--ui-line)!important;box-shadow:0 2px 0 #8d703d30!important}
.ui-cel .world-progress{background:var(--ui-paper);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:9px;padding:8px 12px}
.ui-cel .world-progress .ui-progress{height:8px}
.ui-cel .world-legend .ui-badge{background:#f1e5c4;color:var(--ui-ink);border-color:var(--ui-line)}
.ui-cel .world-legend .ui-badge[data-tone=muted]{background:#e5e2d6;color:#696858;border-style:dashed}
.ui-cel.calendar-active .scene-toolbar{margin-top:0;padding:7px 12px;color:var(--ui-ink)}
.ui-cel.calendar-active .scene-toolbar :is(strong,span){color:var(--ui-ink)}
.ui-cel.calendar-active .scene-viewport{border:2px solid #dfb875;border-radius:12px;background:#15372e;box-shadow:0 3px 0 #91743b,0 12px 34px #071e1940}
.ui-cel.calendar-active .scene-control{color:var(--ui-ink)!important;background:#fff4d6!important;border-color:var(--ui-line)!important}
.ui-cel.calendar-active .scene-control:disabled{color:#83775e!important;background:#e9dfc9!important;opacity:1;box-shadow:none}
.ui-cel .door-quick-list{gap:6px;padding:3px 2px 4px}
.ui-cel .door-quick{min-height:44px;color:#fff4da;background:#31574c;border-color:#b99a57;font-variant-numeric:tabular-nums}
.ui-cel .door-quick[data-state=opened]{background:#997441;color:#fff8e4;border-color:#e2c078}
.ui-cel .door-quick[data-state=complete]{background:#3e7357;color:#fff8e4;border-color:#d9cf99}
.ui-cel .door-quick[data-state=today]{background:#dfb875;color:#26483a;box-shadow:0 3px 0 #806236}
.ui-cel .door-quick[data-state=locked]{background:#284337;color:#d8dbc9;border-color:#788a70;border-style:dashed}
.ui-cel .door{border-width:2px;border-color:#e4c68a;box-shadow:0 3px 0 #1b322766,inset 0 1px 0 #fff7d94d}
.ui-cel .footer-note{color:#d2d8bd}
.ui-cel .preview-badge,.ui-cel .ui-badge{border:1px solid var(--ui-line);border-radius:7px;background:#e7edda;color:var(--ui-ink);box-shadow:none}
.ui-cel .ui-badge[data-tone=muted]{background:#e8e5d9;color:#646657;border-color:#b7b39e}
.ui-cel .ui-badge[data-tone=warning]{background:#f3e0b1;color:#75551d}
.ui-cel .ui-badge[data-tone=error]{background:#f4d9d8;color:#853542}
.ui-cel :is(.ui-card,.ui-row,.ui-stat,.achievement-card,.ui-empty){background:#fff9e9;border:1px solid var(--ui-line);border-radius:10px;box-shadow:0 2px 0 #a98a4b20;color:var(--ui-ink)}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog) :is(h2,h3,h4){font-family:Georgia,serif;color:var(--ui-ink)!important;font-weight:700}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog) :is(p,label,small,span){color:var(--ui-muted)}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog) button{background:#fff4d6;color:var(--ui-ink);border-color:var(--ui-line);border-radius:9px;box-shadow:0 3px 0 #8d703d30;font-weight:700}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog) .ui-button.primary{background:var(--ui-pine);color:#fff5df}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog) :is(input:not([type=range]):not([type=checkbox]),select,textarea){min-height:44px;background:#fffbed;color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:9px;padding:10px 12px;box-shadow:inset 0 2px 0 #b69c6540}
.ui-cel :is(.ui-heading,.achievements-heading,.sound-settings>h2,.community-content>h2){background:var(--ui-paper)!important;color:var(--ui-ink);border-color:var(--ui-line)}
.ui-cel .ui-heading h2,.ui-cel .achievements-heading h2{font-size:clamp(1.2rem,2.3vw,1.75rem);line-height:1.25}
.ui-cel .world-games{gap:14px}.ui-cel .world-game{padding:16px;gap:10px}.ui-cel .world-game>img{background:#f1e5c4;border:1px solid #d0b47e;border-radius:10px}
.ui-cel .world-game .ui-button{min-height:44px}.ui-cel .world-game :is(h3,p,small){overflow-wrap:anywhere}
.ui-cel .achievement-card.is-locked{background:#eeede2;border-color:#aaa98b}.ui-cel .achievement-card.is-secret{background:#e8e8df}
.ui-cel .achievement-card.is-unlocked{background:#fff3cc;border-color:#b9994a}.ui-cel .achievement-card .achievement-state{color:#31574c;font-weight:750}
.ui-cel .achievement-card h3{font-family:Georgia,serif!important;line-height:1.35}.ui-cel .achievement-card time{color:#55634b}
.ui-cel .day-dialog{border:2px solid #c7a66d;border-radius:14px;background:#173b31;color:#fff5df;box-shadow:0 16px 50px #071d1855}
.ui-cel .viewport-day-header h2{color:#fff4d6;font-family:Georgia,serif}.ui-cel .viewport-day-header .day-kicker{color:#f2dcaa;background:#254f42;border-color:#b49659}
.ui-cel .viewport-day-header :is(.shared-board-button,.door-game-picker button,.viewport-day-info summary){background:#315f54;color:#fff5df;border:1px solid #c7a66d;border-radius:8px;box-shadow:0 2px 0 #0c2b23;font-weight:700}
.ui-cel .viewport-day-header .door-game-picker button.active{background:#dfb875;color:#26483a}
.ui-cel .viewport-info-body{color:var(--ui-ink);background:var(--ui-paper);border:2px solid var(--ui-line)}
.ui-cel .viewport-day-info .viewport-info-body,.ui-cel .viewport-info-body .day-message{color:var(--ui-ink)}
.ui-cel .dialog-close{color:#fff5df;background:#315f54;border-color:#dfb875;box-shadow:0 2px 0 #0c2b23}
/* Game chrome only: no global button rule can resize interactive board cells. */
.ui-cel .game-card:not(.winter-farm),.ui-cel .viewport-music{--collection-ink:#26483a;--collection-cream:#fff6df;--collection-mint:#8dab84;--ink:#26483a;--muted:#55634b;background:#fff6df!important;color:#26483a;border:1px solid #c7a66d;border-radius:12px!important;box-shadow:0 4px 0 #8d703d40}
.ui-cel .game-card:not(.winter-farm) :is(.game-heading,.breakout-heading){background-image:url('./art/ui/cel/ui-corner-sprig.png');background-size:170px 170px;background-repeat:no-repeat;background-position:right top}
.ui-cel .game-card:not(.winter-farm) :is(h2,h3,h4,.game-title),.ui-cel .viewport-music>h2{color:#26483a!important;font-family:Georgia,serif!important;line-height:1.2;letter-spacing:-.015em}
.ui-cel .game-card:not(.winter-farm) .game-emblem{border-color:#c7a66d;background:#f1e5c4;border-radius:10px;box-shadow:0 2px 0 #a98a4b40;transform:none}
.ui-cel .game-card:not(.winter-farm) .collection-toolbar{border-color:#c7a66d;padding-bottom:8px;gap:7px}
.ui-cel .game-card:not(.winter-farm) :is(.collection-button,.play-tools button:not(.sorting-shelf-slot):not(.sorting-item),.rails-menu button,.rails-hud button,.rails-action),.ui-cel .viewport-music :is(.music-tools button,.music-slot button,.music-tile button){background:#fff4d6;color:#26483a;border:1px solid #c7a66d;border-radius:8px!important;box-shadow:inset 0 1px 0 #fffdf4,0 3px 0 #8d703d40;font-weight:700}
.ui-cel .game-card:not(.winter-farm) :is(.hunt-action:not(.secondary-hunt-action):not(:disabled),.parcours-roll:not(:disabled),.breakout-launch:not(:disabled),.rails-start:not(:disabled),.rails-jump:not(:disabled),.sorting-actions>.sorting-button:not(.sorting-secondary):not(:disabled),.cafe-start:not(:disabled),.winter-post-start:not(:disabled),.bongo-start:not(:disabled),.four-paws-start:not(:disabled),.star-forest-start:not(:disabled)){background:#315f54!important;color:#fff5df!important;border-color:#b49659;box-shadow:0 3px 0 #183b30}
.ui-cel .game-card:not(.winter-farm) :is(.play-tools button,.collection-button,.rails-menu button,.rails-hud button):disabled{background:#e9dfc9!important;color:#83775e!important;border-color:#bfb18f;opacity:1;box-shadow:none;cursor:default}
.ui-cel .game-card:not(.winter-farm) :is(.play-tools button,.collection-button,.rails-menu button,.rails-hud button):focus-visible{outline:3px solid #315f54;outline-offset:3px}
.ui-cel .game-card:not(.winter-farm) .play-stage{border:1px solid #c7a66d;border-radius:10px;background:#f0efdc}
.ui-cel .game-card:not(.winter-farm) .play-tools{border-left:1px solid #d4bd8b;padding-left:12px}
.ui-cel .game-card:not(.winter-farm) :is(.viewport-hud,.rails-hud){color:#31574c!important;background:#e4ead4;border-color:#c7a66d;border-radius:8px}
.ui-cel .game-card:not(.winter-farm) :is(.viewport-help,.collection-journal,.game-preferences,.collection-overlay-body,.collection-adventure){color:#26483a;background:#fff9e9;border:1px solid #c7a66d;border-radius:9px;box-shadow:none}
.ui-cel .game-card:not(.winter-farm) :is(details>summary,.game-pref-title){color:#26483a;min-height:40px;font-weight:700}
.ui-cel .game-card:not(.winter-farm) :is(.play-tools p,.play-tools label,.play-tools small,.collection-personal,.collection-daily){color:#55634b}
.ui-cel .game-card:not(.winter-farm) :is(select,input:not([type=range]):not([type=checkbox])){color:#26483a;background:#fffbed;border-color:#c7a66d;border-radius:8px;box-shadow:inset 0 2px 0 #b69c6530}
.ui-cel .game-card:not(.winter-farm) input[type=range]{accent-color:#315f54}
.ui-cel .game-card:not(.winter-farm) .collection-overlay{background:#122e27b8}.ui-cel .game-card:not(.winter-farm) .collection-overlay-body{box-shadow:0 4px 0 #8d703d40,0 16px 40px #071d1855}
.ui-cel .game-card:not(.winter-farm) :is(.collection-result,.collection-series,.collection-current){background:#e4ead4;color:#31574c;border-color:#c7a66d}
.ui-cel .sorting-shop :is(.sorting-view-tab[aria-pressed=true],.sorting-tab-active,.sorting-hint){background:#755172!important;color:#fff5df!important;border-color:#b99a74!important;box-shadow:0 3px 0 #4f3b4d}
.ui-cel .sorting-shop :is(.sorting-basket-bar,.sorting-sidebar,.sorting-room-description){background:#fff4d6;border-color:#c7a66d;color:#26483a}
.ui-cel .sorting-shop :is(.sorting-view-tabs,.sorting-room-heading){color:#26483a;background:#f1e5c4;border-color:#c7a66d}
.ui-cel .sorting-shop .sorting-progress{accent-color:#7d9b6d}.ui-cel .sorting-shop .sorting-progress::-webkit-progress-value{background:#7d9b6d}
.ui-cel .sorting-shop .sorting-shelf{border-color:#c7a66d;box-shadow:0 3px 0 #70533645}.ui-cel .sorting-shop .sorting-shelf-name{color:#4c4029;background:#fff0cb;border-color:#c7a66d}
.ui-cel .game-card:not(.winter-farm) :is(.snake-board,.parcours-board-shell,.nonogram-scroll,.cave-board-wrap,.four-paws-stage,.winter-paws-board,.winter-post-board,.star-forest-board-shell,.breakout-stage,.rails-stage,.hunt-viewport,.escape-scene-viewport){border-color:#7d9b7f;box-shadow:0 3px 0 #6d825a45}
.ui-cel .parcours-tile{border-color:#9fb38f;border-radius:10px;box-shadow:0 2px 0 #80906a45}.ui-cel .parcours-dice{border-color:#a98a57;color:#31574c}
.ui-cel .viewport-reward-dock :is(.key-card,.monument-rewards){background:#fff0cb;color:#26483a;border-color:#c7a66d}.ui-cel .viewport-reward-dock .key-card :is(strong,p){color:#26483a}
.ui-cel .viewport-reward-dock .steam-key{background:#fff9e9;color:#755172;border-color:#c7a66d}
.ui-cel .login-card :is(h1,label,.intro){color:#26483a}.ui-cel .login-card .login-tabs{background:#f1e5c4}.ui-cel .login-card .login-tabs button[aria-pressed=true]{background:#315f54;color:#fff5df}
.ui-cel .login-card input{color:#26483a;background:#fffbed;border:1px solid #c7a66d;border-radius:9px}
.ui-cel .ui-settings-section{border-color:#c7a66d}.ui-cel .ui-preference-row input[type=checkbox]{accent-color:#315f54}
@media(max-width:760px){.ui-cel .world-topbar{display:contents}.ui-cel.calendar-active .world-topbar .calendar-header{background:#fff6df!important;border:1px solid #c7a66d!important;border-radius:12px;padding:12px 14px}.ui-cel .world-topbar .app-nav{background:#fff6df;border:1px solid #c7a66d;border-radius:10px}.ui-cel .app-nav>.ui-button{box-shadow:none}.ui-cel .app-more-menu{background:#fff6df}.ui-cel .world-progress{padding:6px 10px}.ui-cel .door-quick-list{gap:4px}.ui-cel .game-card:not(.winter-farm) .play-tools{border-left:0;border-top:1px solid #d4bd8b;padding-left:5px}.ui-cel .game-card:not(.winter-farm) .collection-toolbar{gap:4px;padding:3px 0 6px}.ui-cel .game-card:not(.winter-farm) .collection-button{min-height:44px;padding:6px 8px}.ui-cel :is(.game-heading,.world-topbar,.login-card){background-image:none!important}.ui-cel .world-game{padding:12px}.ui-cel .ui-dialog{padding:16px}.ui-cel .ui-dialog .ui-heading{top:-16px}.ui-cel .world-games{grid-template-columns:repeat(auto-fill,minmax(min(210px,100%),1fr))}}
@media(max-height:550px) and (min-width:761px){.ui-cel .world-topbar{display:flex;padding:4px 10px}.ui-cel.calendar-active .world-topbar .calendar-header{padding:0;background:transparent!important;border:0!important}.ui-cel .game-card:not(.winter-farm) .collection-toolbar{gap:4px;padding:3px 0 5px}.ui-cel .game-card:not(.winter-farm) .collection-button{min-height:44px;padding:5px 9px}}
.ui-cel.ui-high-contrast :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.library-dialog,.world-topbar,.scene-toolbar){background:#fff!important;color:#102d22!important;border-color:#315f54!important}
.ui-cel.ui-high-contrast :is(.ui-heading,.achievements-heading){background:#fff!important}.ui-cel.ui-high-contrast :is(.ui-card,.achievement-card){border:2px solid #315f54;color:#102d22}
.ui-cel.ui-large-text :is(.ui-dialog,.community-dialog,.achievements-dialog) :is(p,small,label){font-size:1rem;line-height:1.5}
.ui-cel.ui-reduced-motion :is(button,summary,.door),.ui-cel.ui-reduced-motion *::before,.ui-cel.ui-reduced-motion *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){.ui-cel :is(button,summary,.door){transition:none!important;animation:none!important}}

/* Hidden-object chrome keeps image hit targets and scene geometry untouched. */
.ui-cel .cat-hunt-card{background:#fff6df;color:#26483a;border-color:#c7a66d;border-radius:12px;box-shadow:0 3px 0 #8d703d40}
.ui-cel .cat-hunt-card :is(h2,h3,.hunt-intro){color:#26483a;font-family:Georgia,serif}
.ui-cel .cat-hunt-card .hunt-controls .hunt-action{background:#fff4d6;color:#26483a;border:1px solid #c7a66d;border-radius:8px;box-shadow:0 3px 0 #8d703d40}
.ui-cel .cat-hunt-card .hunt-controls .fullscreen-hunt-action{background:#315f54;color:#fff5df}
.ui-cel .cat-hunt-card .hunt-controls .hunt-action:disabled{background:#e9dfc9;color:#83775e;box-shadow:none}
.ui-cel .cat-hunt-card .hunt-status{color:#31574c}

/* 1.64.18: quiet, inked paper surfaces from the approved Schnurrhavn mocks. */
body.ui-cel{color-scheme:light;--cel-surface:#fff9e9;--cel-soft:#f1e5c4;--cel-raised:inset 0 0 0 1px #fffdf0,0 3px 0 #70533630;background-image:url('./art/ui/cel/lantern-border.png');background-size:cover;background-position:center;background-attachment:fixed}
.ui-cel:not(.calendar-active)>main{justify-items:center}
.ui-cel :is(.world-topbar,.login-card,.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings){box-shadow:inset 0 0 0 1px #fffdf0,inset 0 0 0 5px #dfb87530,0 4px 0 #70533645,0 16px 44px #0c211e40!important}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings,.day-dialog)::backdrop{background:#0c241fc9;backdrop-filter:blur(5px)}
.ui-cel :is(.ui-dialog,.achievements-dialog,.community-dialog,.sound-settings){scrollbar-color:#9b8052 #f1e5c4;scrollbar-width:thin;overscroll-behavior:contain;scroll-padding-block:90px 20px}
.ui-cel :is(.ui-heading,.achievements-heading){gap:12px;isolation:isolate}
.ui-cel :is(.ui-heading,.achievements-heading)>h2{min-width:0;overflow-wrap:anywhere}
.ui-cel :is(.ui-heading,.achievements-heading)>button{flex-shrink:0;background:var(--ui-pine);color:#fff5df;border-color:#b99e65}
.ui-cel :is(.ui-heading,.achievements-heading)>button:hover{background:var(--ui-pine-hover);color:#fff5df}
.ui-cel .achievements-heading{position:sticky;top:calc(-1 * clamp(16px,3vw,30px));z-index:3;padding-block:16px;border-bottom:1px solid var(--ui-line)}
.ui-cel .world-progress{box-shadow:inset 0 1px 0 #fffdf0;font-variant-numeric:tabular-nums}
.ui-cel .ui-progress{accent-color:var(--ui-pine);background:#e5d9ba;border:1px solid #b7a37d;height:9px}
.ui-cel .ui-progress::-webkit-progress-bar{background:#e5d9ba}
.ui-cel .ui-progress::-webkit-progress-value{background:#315f54;border-radius:8px}
.ui-cel .ui-progress::-moz-progress-bar{background:#315f54;border-radius:8px}
.ui-cel .world-legend .ui-badge[data-tone=success]{background:#315f54;color:#fff5df;border-color:#c7a66d}
.ui-cel .world-library{width:min(860px,calc(100vw - 28px))}
.ui-cel .world-games{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}
.ui-cel .world-game{position:relative;box-shadow:var(--cel-raised);border-color:#c9ad75;gap:7px;padding:14px}
.ui-cel .world-game>img{width:64px;height:64px;padding:5px;background:#f1e5c4;box-shadow:inset 0 1px 0 #fffdf0,0 2px 0 #a98a4b30;object-fit:contain}
.ui-cel .world-game h3{font-family:Georgia,serif;font-size:1.03rem;line-height:1.3}
.ui-cel .world-game>p{font-size:.85rem;line-height:1.5}
.ui-cel .world-game>small{font-size:.75rem}
.ui-cel .world-game>.ui-badge{padding:4px 8px;border-radius:8px}
.ui-cel .world-game>.ui-badge[data-tone=success]{color:#264e3c;background:#e3ebd7;border-color:#a2b28c}
.ui-cel .world-game[data-state=locked]{background:#eeece0;border-style:dashed}
.ui-cel .world-game[data-state=locked]>img{filter:grayscale(.8);opacity:.7}
.ui-cel .world-game[data-state=complete]{border-color:#7e9c77;background:#f2f2d9}
.ui-cel .world-game>.ui-button{width:100%;margin-top:auto}
.ui-cel .achievement-grid{gap:12px}
.ui-cel .achievement-card{padding:20px 14px;gap:9px;box-shadow:inset 0 0 0 1px #fffdf0,0 2px 0 #70533620}
.ui-cel .achievement-card h3{font-size:1rem}
.ui-cel .achievement-card p{font-size:.84rem;line-height:1.55}
.ui-cel .achievement-card>small{align-self:stretch;border-top:1px solid #c7a66d66;padding-top:10px;margin-top:auto;color:#655e46}
.ui-cel .achievement-card.is-unlocked{box-shadow:inset 0 0 0 1px #fffdf0,0 3px 0 #b9994a40;border-width:2px}
.ui-cel .achievement-card.is-unlocked .achievement-state{color:#315f54;background:#e4ead4;border:1px solid #acbc90;border-radius:7px;padding:4px 8px}
.ui-cel .achievement-toast{background:#fff6df;color:#26483a;border-color:#c7a66d;box-shadow:0 4px 0 #70533645,0 12px 30px #0c211e60;border-radius:12px}
.ui-cel .achievement-toast :is(strong,small){color:#26483a}
.ui-cel .ui-search-row :is(input,select),.ui-cel .achievement-filters :is(input,select){min-width:0;max-width:100%;box-sizing:border-box}
.ui-cel .ui-search-row input{flex-basis:220px}
.ui-cel .community-content>ol>li{background:#fff9e9;color:#26483a;border:1px solid #c7a66d;box-shadow:var(--cel-raised)}
.ui-cel .profile-stats .ui-stat strong{font-family:Georgia,serif;color:#315f54}
.ui-cel :is(.ui-feedback,.ui-preference-error){padding:12px 14px;line-height:1.55;border:1px solid #a8b792;border-radius:9px;background:#e9eedc;color:#26483a}
.ui-cel :is(.ui-feedback.error,.ui-preference-error){background:#f7e3df;color:#853542;border-color:#ba8c83}
.ui-cel .ui-preference-row{gap:12px;line-height:1.5}
.ui-cel .ui-preference-row input[type=checkbox]{flex:0 0 24px;min-height:24px;padding:0}
/* Icon/text descendants inherit their actual control state, rather than muted paragraph ink. */
.ui-cel :is(.ui-dialog,.community-dialog,.achievements-dialog) button :is(span,small,strong){color:inherit}
.ui-cel .app-nav .ui-button[aria-current=page]:hover{background:#244b40;color:#fff5df}
.ui-cel .game-card:not(.winter-farm) .game-heading{border-bottom:1px solid #c7a66d66;padding-bottom:10px}
.ui-cel .game-card:not(.winter-farm) :is(.collection-journal,.game-preferences,.viewport-help){line-height:1.55}
.ui-cel .game-card:not(.winter-farm) :is(.collection-result,.collection-series,.collection-current){box-shadow:inset 0 1px 0 #fffdf0;font-variant-numeric:tabular-nums}
.ui-cel .game-card:not(.winter-farm) .play-tools button[aria-pressed=true]{background:#315f54;color:#fff5df;border-color:#9ab18a}
.ui-cel .game-card:not(.winter-farm) .play-tools button:hover:not(:disabled){border-color:#7b683f}
.ui-cel .game-card:not(.winter-farm) .play-tools button:disabled{cursor:default}
.ui-cel .viewport-info-body :is(p,label,small){color:#26483a}
.ui-cel .viewport-reward-dock .monument-rewards :is(h3,p,strong){color:#26483a}
.ui-cel.ui-high-contrast :is(.world-game,.achievement-card,.ui-stat,.ui-row,.ui-empty){background:#fff!important;color:#102d22!important;border:2px solid #315f54}
.ui-cel.ui-high-contrast :is(.ui-search-row,.achievement-filters) :is(input,select){border:2px solid #315f54;background:#fff;color:#102d22}
@media(hover:hover){.ui-cel .world-game:hover{border-color:#92743c;box-shadow:inset 0 0 0 1px #fffdf0,0 3px 0 #70533640}.ui-cel :is(.ui-button,.collection-button){transition:background-color .14s,border-color .14s}}
@media(max-width:760px){.ui-cel .world-game{padding:14px}.ui-cel .world-game>img{width:64px;height:64px}.ui-cel .world-games{gap:10px}.ui-cel .achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ui-cel .achievement-card{padding:15px 9px}.ui-cel .achievement-card h3{font-size:.88rem}.ui-cel .achievement-card p{font-size:.78rem}.ui-cel .achievement-card img{width:60px;height:60px}.ui-cel .achievements-heading{padding-block:12px}.ui-cel .ui-search-row>*{flex:1 1 100%}.ui-cel .ui-heading>button{padding-inline:10px}.ui-cel .world-progress>strong{white-space:normal}}
@media(max-width:350px){.ui-cel .achievement-grid{grid-template-columns:1fr}}
@media(min-width:1100px){body.ui-cel.calendar-active>main{width:min(1380px,calc(100% - 144px))}}
@media(max-width:760px){body.ui-cel{background-image:none}}

/* 1.64.32: explicit ink on light paper, including child HUD labels. */
.ui-cel .cat-hunt-card :is(.hunt-intro strong,.hunt-intro span,.hunt-complete-title){color:#273f39}
.ui-cel .cat-hunt-card>p{color:#52675d}
.ui-cel .cat-hunt-card .hunt-intro span{background:#edf2e5;border-color:#bdcbb2}
.ui-cel .breakout-card :is(.breakout-level,.breakout-score,.breakout-lives,.breakout-active-powers,.breakout-status,.breakout-guide,.breakout-ranking,.breakout-my-score){color:#273f39}
.ui-cel .game-card.breakout-card .play-tools .breakout-status{color:#273f39}
.ui-cel .breakout-card .breakout-power-list strong{color:#704c19}

/* 1.64.39: compact calendar in both visual themes. */
body.calendar-active>main{padding-top:8px;padding-bottom:8px}
body.calendar-active .calendar-shell{gap:6px}
body.calendar-active .world-topbar{padding:7px 12px;gap:10px}
body.calendar-active .world-topbar .calendar-header{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.calendar-active .calendar-header .eyebrow{display:none}
body.calendar-active .calendar-header h1{font-size:1.35rem;line-height:1.2;margin:0}
body.calendar-active .calendar-header #welcomeText{font-size:.75rem;line-height:1.3;margin:3px 0 0}
body.calendar-active .world-topbar .app-nav{gap:3px;padding:0}
body.calendar-active .world-topbar .app-nav>.ui-button,body.calendar-active .app-more>summary{min-height:44px;min-width:0;padding:7px 11px;font-size:.8rem}
body.calendar-active .farm-overview{padding:5px 10px;gap:8px;min-height:52px}
body.calendar-active .farm-overview-art svg{width:32px;height:32px}
body.calendar-active .farm-overview h2{font-size:.95rem;line-height:1.2;margin:0}
body.calendar-active .farm-overview p{font-size:.7rem;line-height:1.3;margin:2px 0 0}
body.calendar-active .farm-overview .primary-button{font-size:.76rem;padding:6px 11px;min-height:44px}
body.calendar-active .world-progress{padding:4px 9px;font-size:.73rem;border-radius:8px}
body.calendar-active .scene-toolbar{padding:3px 9px;gap:7px;min-height:44px}
body.calendar-active .scene-toolbar strong{font-size:.78rem}
body.calendar-active .scene-control{min-height:44px;min-width:44px;padding:4px 8px}
body.calendar-active .scene-toolbar .reset-control{font-size:.73rem}
body.calendar-active .door-quick-list{gap:4px}
body.calendar-active .door-quick{min-height:44px;padding:2px;font-size:.8rem}
@media(max-width:760px) and (min-height:501px){
 body.calendar-active .world-topbar{display:contents}
 body.calendar-active .world-topbar .calendar-header{padding:6px 10px!important;background:var(--ui-paper,#fff6df)!important;border:1px solid #c7a66d!important;border-radius:10px;min-height:44px}
 body.calendar-active .calendar-header h1{font-size:1.2rem}
 body.calendar-active .calendar-header #welcomeText{font-size:.7rem;margin-top:2px}
 body.calendar-active .world-topbar .app-nav{display:flex;padding:4px;gap:2px;border-radius:12px;background:var(--ui-paper,#fff6df);border:1px solid #c7a66d}
 body.calendar-active .world-topbar .app-nav>.ui-button,body.calendar-active .app-more>summary{padding:5px 2px;font-size:.72rem;min-height:44px}
 body.calendar-active .farm-overview{grid-template-columns:26px minmax(0,1fr) auto;padding:4px 8px;gap:6px}
 body.calendar-active .farm-overview-art svg{width:26px;height:30px}
 body.calendar-active .farm-overview h2{font-size:.82rem}
 body.calendar-active .farm-overview p{font-size:.65rem}
 body.calendar-active .farm-overview .primary-button{min-width:88px;padding:5px 7px;font-size:.7rem}
 body.calendar-active .scene-toolbar>div:first-child{display:none}
 body.calendar-active .scene-toolbar .zoom-controls{width:100%;justify-content:flex-end;gap:5px}
 body.calendar-active .scene-toolbar .zoom-controls::before{content:'Türchen suchen';margin-right:auto;font-size:.75rem;font-weight:600;color:inherit}
 body.calendar-active .door-quick-list{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
 body.calendar-active .scene-viewport{border-radius:12px;min-height:100px}
}
@media(max-width:360px) and (min-height:501px){body.calendar-active .door-quick-list{grid-template-columns:repeat(6,minmax(0,1fr))}body.calendar-active .scene-toolbar .zoom-controls::before{content:'Ansicht'}}
@media(max-height:500px){body.calendar-active .world-topbar{padding:2px 8px}body.calendar-active .calendar-header h1{font-size:1rem}body.calendar-active .calendar-header #welcomeText{display:none}body.calendar-active .scene-toolbar{display:none!important}body.calendar-active .world-progress{display:none}}

@media(max-width:760px) and (min-height:501px){body.calendar-active .calendar-header :is(h1,#welcomeText){color:#26483a}}
body.calendar-active .calendar-header>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center}
body.calendar-active .calendar-header h1{grid-column:1;grid-row:1;font-size:1.3rem}
body.calendar-active .calendar-header #previewBadge{grid-column:2;grid-row:1;margin:0;padding:3px 6px;font-size:10px;line-height:1.2;max-width:100px;text-align:center}
body.calendar-active .calendar-header #welcomeText{grid-column:1/-1;grid-row:2}
body.calendar-active #exitPlaytest{grid-column:1/-1;grid-row:3;min-height:44px}
body.calendar-active .scene-toolbar .reset-control{order:0}
@media(max-width:760px){body.calendar-active .calendar-header h1{font-size:1.15rem}body.calendar-active .calendar-header #previewBadge{max-width:82px;font-size:9px}}
body.calendar-active .calendar-header h1{grid-column:1/-1}
body.calendar-active .calendar-header #previewBadge{grid-row:2}
body.calendar-active .calendar-header #welcomeText{grid-column:1}
@media(max-width:760px) and (min-height:501px){body.calendar-active>main{width:calc(100% - 12px)}body.calendar-active .door-quick-list{gap:3px}body.calendar-active .scene-toolbar{padding-block:0}body.calendar-active .scene-toolbar .zoom-controls{padding:0}}
@media(max-width:380px) and (min-height:501px){body.calendar-active .door-quick-list{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:340px) and (min-height:501px){body.calendar-active .door-quick-list{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:760px) and (min-height:501px){
 body.calendar-active .world-topbar .app-nav>.ui-button,body.calendar-active .app-more>summary{color:#315648;background:transparent}
 body.calendar-active .world-topbar .app-nav>.ui-button[aria-current=page]{color:#fff5df;background:#315f54}
 body.calendar-active .scene-toolbar .zoom-controls{display:flex;align-items:center}
}

/* 1.64.43: warm, consistent reward chrome; calendar layout stays compact. */
.ui-cel .monument-rewards{background:#fff4d7;border:1px solid #b8995c;border-radius:10px;color:#284b3a;box-shadow:inset 0 1px #fffdf3,0 2px 0 #ad8b4b30}
.ui-cel .monument-reward-copy h3{font-family:Georgia,serif;color:#284b3a}
.ui-cel .monument-preview{background:radial-gradient(ellipse at 50% 75%,#d8e3bd,transparent 70%)}
.ui-cel .monument-preview-art{filter:none}
.ui-cel .monument-reward-copy :is(p,small){color:#4a5f43}
.ui-cel .monument-bonus{color:#295d3e!important}
.ui-cel :is(.primary-button,.copy-button,.ui-button.primary) :is(span,strong,small){color:inherit}
.ui-cel .game-introduction{background:#fff6df;color:#284b3a;border:2px solid #b99b63;border-radius:12px;box-shadow:inset 0 1px #fffef4,0 10px 36px #102e2755}
.ui-cel .game-introduction h2{font-family:Georgia,serif;color:#284b3a}
.ui-cel .game-introduction p{color:#476044;line-height:1.55}
.ui-cel .game-introduction button{min-height:44px;background:#315f54;color:#fff6df;border:1px solid #214535;border-radius:8px}
.ui-cel .game-introduction :focus-visible{outline:3px solid #22718a;outline-offset:3px}
.ui-cel .ui-row,.ui-cel .achievement-card{overflow-wrap:anywhere}
.ui-cel .achievement-card.is-locked .achievement-state{color:#5f5c4c}
.ui-cel .achievement-card.is-unlocked{border-left:4px solid #a68236}
.ui-reduced-motion :is(.monument-preview,.monument-preview::before,.monument-preview::after){animation:none!important}
body:not(.ui-cel) .monument-rewards .farm-cel-visual{display:none}
body:not(.ui-cel) .monument-rewards .farm-classic-visual{display:block}
.ui-reduced-motion .farm-cat-station svg *{animation:none!important}
