.case-inspection.case-harness-panel{width:min(100%,900px);background:radial-gradient(ellipse at 82% 6%,#284654 0%,transparent 46%),linear-gradient(#0a2130,#102c34 75%,#102721)}.case-reindeer-board{text-align:center}.case-harness-title{display:flex;justify-content:center;align-items:center;gap:clamp(.35rem,1.2vw,.8rem);width:fit-content;max-width:100%;padding:.36rem clamp(.5rem,2vw,1.3rem);margin:.15rem auto .45rem;background:linear-gradient(#90394b,#62252e);color:#ffedc3;border:2px solid #d7af71;border-radius:42% 42% 14% 14%/22% 22% 14% 14%;box-shadow:inset 0 0 0 1px #633024,0 5px 10px #05131ba8}.case-reindeer-board .case-harness-title h2{font-style:italic;margin:0;font-size:clamp(1.18rem,4.25vw,2.15rem)}.case-harness-title svg{width:clamp(18px,4vw,32px);flex-shrink:0}.case-harness-title svg:last-child,.case-nameplate svg:last-child{transform:scaleX(-1)}.case-inspection-content .case-harness-instructions{max-width:52ch;margin:.45rem auto .65rem;color:#f6e1b9;font-size:.9rem;line-height:1.42}.case-harness-strip{overflow:auto hidden;overscroll-behavior-inline:contain;scrollbar-color:#c39d60 #122c37;scrollbar-width:thin;border:1px solid #c0a06a;border-radius:7px}.case-harness-strip:focus-visible{outline:2px solid #ffe6ae;outline-offset:3px}.case-harness-stage{min-width:635px;background:#152c39}.case-harness-scene{display:block;width:100%;height:auto;overflow:hidden}.case-harness-lights{fill:#fff1b2;filter:drop-shadow(0 0 9px #ffbd55) drop-shadow(0 0 4px #ffc757)}.is-celebrating .case-harness-lights{animation:case-harness-glow-in .85s ease-out both}@keyframes case-harness-glow-in{0%{opacity:.3}60%{opacity:1;filter:drop-shadow(0 0 15px #ffbf4b) brightness(1.18)}to{opacity:1}}.case-harness-slots{position:relative;height:65px;background:linear-gradient(#203747,#0d202d);border-top:1px solid #e9cb874a}.case-overlay .case-harness-slot{position:absolute;left:0;top:4px;transform:translate(-50%);width:8.55%;min-height:54px;padding:2px 0;display:grid;grid-template-rows:25px 22px;place-items:center;gap:1px;border:1px solid #b9925f;border-radius:5px;background:#102532;color:#fbe4b1;-webkit-user-select:none;user-select:none;font:bold clamp(.64rem,1.48vw,.91rem)/1 Georgia,serif}.case-harness-number{display:grid;place-items:center;width:72%;height:100%;border-radius:3px 3px 36% 36%/3px 3px 18% 18%;background:linear-gradient(#f7deab,#e0ae66);color:#4c2e1d;border:1px solid #b68753;font-variant-numeric:tabular-nums;font-size:.86rem}.case-harness-slot-label{color:#e9d2a2}.case-harness-slot.has-name .case-harness-slot-label{display:grid;place-items:center;width:95%;min-height:20px;background:linear-gradient(#ffe9b9,#d8ac6c);border:1px solid #a47442;border-radius:3px;color:#492b1a}.case-harness-slot.has-name:not(:disabled),.case-nameplate.has-name:not(:disabled){touch-action:none;cursor:grab}.case-harness-slot[aria-pressed=true],.case-nameplate[aria-pressed=true]{outline:2px solid #fff0b7;outline-offset:1px;box-shadow:0 0 11px #f1c374ba;z-index:1}.case-reindeer-board.is-solved .case-harness-slot{border-color:#efd28b;box-shadow:inset 0 0 7px #f5cc7690,0 0 5px #ffc16470;cursor:default}.case-harness-pan{display:flex;align-items:center;justify-content:space-between;gap:.3rem;margin:.36rem 0;color:#e9d4ae;font-size:.77rem}.case-harness-pan .case-secondary{flex:0 0 44px;min-height:44px;padding:0;font:1.35rem/1 Georgia,serif}.case-harness-pan button:disabled{opacity:.45}.case-harness-tray{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.36rem,1.3vw,.66rem);width:min(100%,680px);margin:.5rem auto 0;padding:clamp(.45rem,1.5vw,.9rem);background:linear-gradient(92deg,#3c281b46,#693f2550,#2d21195e),repeating-linear-gradient(3deg,#503321 0 3px,#3b271a 7px 11px,#503321 14px);border:2px solid #c39b65;border-radius:8px;box-shadow:inset 0 0 0 2px #895938,0 5px 12px #091c26a8}.case-nameplate{min-width:0;min-height:44px;display:flex;justify-content:center;align-items:center;gap:clamp(.1rem,.65vw,.38rem);padding:.25rem .14rem;border:1px dashed #d7bb7a66;border-radius:7px;background:#251c174f;color:#402819;-webkit-user-select:none;user-select:none}.case-overlay .case-nameplate,.case-nameplate-ghost{font:bold clamp(.76rem,2.2vw,1.12rem)/1 Georgia,serif}.case-nameplate.has-name{border:2px solid #bd8e4d;background:linear-gradient(#f9e2b2,#e4b977);box-shadow:inset 0 0 0 1px #fff0c1,0 2px 4px #23170e90}.case-nameplate.has-name[aria-pressed=true]{border-color:#fff1ad;box-shadow:inset 0 0 0 1px #fff0c1,0 0 10px #ffd87899}.case-nameplate>svg{width:clamp(9px,3vw,22px);flex-shrink:0}.case-nameplate-ghost{position:fixed;z-index:110;padding-inline:.62rem;gap:.32rem;transform:translate(-50%,-50%) rotate(-3deg);pointer-events:none}.case-harness-status{margin:.45rem 0 0;color:#eddbb3;font-size:.86rem}.case-harness-status.is-wrong{color:#ffdbac}.case-overlay .case-harness-check{display:flex;align-items:center;gap:.45rem;margin-block:.45rem .1rem;padding:.4rem .95rem}.case-harness-check .case-symbol{width:1.6rem;height:1.6rem;color:#f2cc7e}.case-harness-success{margin-top:.75rem;padding:.65rem .75rem;border:1px solid #d3ad70;border-radius:7px;background:linear-gradient(145deg,#2a4d39,#112f28);color:#ffe5b2}.is-celebrating .case-harness-success{animation:case-moment-arrive .36s ease-out both}.case-harness-success h3{margin:.15rem auto .3rem;font-size:clamp(1.15rem,3vw,1.62rem);outline:0}.case-harness-success p{margin:.25rem auto .5rem}.case-harness-success .case-primary{margin-block:.5rem .1rem}.activity-main:has(.sabotage-game){max-width:1280px;width:100%}.activity-body:has(>.sabotage-game){max-width:none;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.activity-main:has(.case-investigating) .activity-heading{padding:0;margin:0 0 .8rem}.activity-main:has(.case-investigating) .activity-heading h1{font-size:clamp(1.2rem,3vw,1.8rem);margin:.35rem 0}.activity-main:has(.case-investigating) .activity-heading>.activity-icon,.activity-main:has(.case-investigating) .activity-heading>p{display:none}.sabotage-game{position:relative;color:#f7e7bf;background:#102e27;padding:clamp(.5rem,1.2vw,1rem);border:1px solid #9f824c;border-radius:9px;box-shadow:0 12px 40px #061a1670;margin-bottom:2rem}.sabotage-game button,.case-overlay button{min-height:44px;font:inherit;cursor:pointer}.sabotage-game button:disabled{cursor:default}.sabotage-game button:focus-visible,.case-overlay button:focus-visible{outline:2px solid #f3d28e;outline-offset:4px}.sabotage-game h2,.sabotage-game h3,.case-overlay h2,.case-overlay h3{font-family:Georgia,serif;color:inherit}.sabotage-game>.case-toolbar{position:static;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin:0 0 .65rem}.sabotage-game>.case-toolbar>span{order:0;width:auto;text-align:left}.case-act-name{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;color:#dfc99d}.case-sound,.case-secondary,.case-close{border:1px solid #b9985e;color:#f4e2bc;background:#17392f;padding:.5rem .8rem;border-radius:7px}.case-sound{flex:0 0 44px;width:44px;height:44px;padding:0;display:grid;place-items:center}.case-sound svg{width:22px;height:22px}.case-sound[aria-pressed=true]{color:#ffe3a6;border-color:#d5ad66;background:#254a3d}.case-primary{display:block;width:max-content;max-width:100%;margin:1rem auto;background:linear-gradient(#8b3045,#682034);color:#fff0d2;border:1px solid #d2b16b;border-radius:7px;padding:.8rem 1.3rem;box-shadow:0 3px 10px #0005;font-weight:600!important}.case-primary:disabled{opacity:.55}.case-opening{overflow:hidden;position:relative;background:#221e16;border-radius:5px;border:1px solid #b69762}.case-opening>img{display:block;width:100%;height:clamp(240px,35vw,480px);object-fit:cover}.case-opening-story{position:relative;background:linear-gradient(130deg,#20392ff2,#102e27);max-width:780px;margin:-2.5rem auto 0;padding:clamp(1rem,4vw,2.5rem);border:1px solid #a98b55;text-align:center;box-shadow:0 -8px 30px #0004}.case-opening-story h2{font-size:clamp(1.9rem,5vw,3.7rem);line-height:1.06;margin:.7rem 0 1.4rem;color:#f1d49b}.case-opening-story p{line-height:1.65;max-width:580px;margin:1rem auto}.case-locations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin-bottom:.65rem}.case-locations button{display:flex;align-items:center;justify-content:center;gap:.45rem;flex-wrap:wrap;background:#19392f;border:1px solid #796c46;color:#f4dfae;border-radius:5px;padding:.55rem .3rem;font-size:.86rem;line-height:1.2}.case-locations button.active{background:#742b3c;border-color:#d1b178;color:#fff0cf}.case-locations button:disabled{opacity:.45}.case-locations button.active:disabled{opacity:1}.case-locations button>span{font:1rem Georgia,serif}.case-locations small{font-size:.65rem;opacity:.8}.case-scene-frame{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem .6rem}.case-viewport{grid-column:1 / -1;height:clamp(390px,62dvh,740px);width:100%;position:relative;overflow:hidden;isolation:isolate;background:#171d18;border:1px solid #ad8c55;border-radius:4px;touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;cursor:grab}.case-viewport.is-panning{cursor:grabbing}.case-world{position:absolute;will-change:width,height,left,top;pointer-events:none}.case-viewport.is-focusing .case-world{transition:width .42s ease,height .42s ease,left .42s ease,top .42s ease}.case-room-art{position:absolute;width:100%;height:100%;inset:0;object-fit:fill;display:block;pointer-events:none}.case-scene-target{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent!important;padding:0;min-width:44px;min-height:44px;pointer-events:none;border-radius:4px}.case-scene-target:focus-visible{outline:1px solid #efd79f!important;outline-offset:0!important;background:#f6dbab0a!important}.case-scene-prop{position:absolute;pointer-events:none;filter:drop-shadow(1px 2px 2px #150c0870)}.case-scene-prop>img,.case-scene-prop>svg{width:100%;height:100%;object-fit:contain;display:block}.case-scene-prop.physical-drawer{filter:none;background:#2b190f;border:1px solid #362216;perspective:600px}.physical-drawer img{object-fit:fill;transform-origin:top;transition:transform .7s ease,filter .7s}.physical-drawer.is-open img{transform:translateY(46%) rotateX(-8deg) scaleY(.9);filter:drop-shadow(0 4px 3px #0009)}.physical-drawer.is-open:not(.is-empty):before{content:"";position:absolute;inset:8% 20%;background:linear-gradient(15deg,#d5bd8c,#ecdec0);box-shadow:0 0 4px #0009;transform:rotate(-8deg)}.physical-drawer:not(.is-open,.is-empty){animation:case-drawer-wakes 2.2s ease-out}@keyframes case-drawer-wakes{0%,to{filter:none}35%{filter:drop-shadow(0 0 8px #e4c47b80)}}.case-found-glint{position:absolute;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#ffdf9e66,transparent 70%);transform:translate(-50%,-50%);pointer-events:none;animation:case-find-glint 1.1s ease-out forwards}.case-confirmed-toy{position:absolute;z-index:2;transform:translate(-50%,-50%);border:2px solid #f1d49c;border-radius:48%;box-shadow:0 0 11px #f7d18ca6,inset 0 0 16px #f7d18c52;background:radial-gradient(ellipse,transparent 50%,#e8c78120);pointer-events:none}.case-collecting{animation:case-collect 1s ease both!important}.case-scene-prop.is-covering{filter:drop-shadow(2px 4px 4px #291b1170)}.case-scene-prop.is-covering:not(.case-collecting)>img{animation:case-sack-shimmer 4s ease-in-out infinite}.case-scene-prop.is-covering.case-collecting{animation:case-sack-remove .9s ease-in both!important}@keyframes case-sack-shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.1) drop-shadow(0 0 5px #ead29a55)}}@keyframes case-sack-remove{0%{transform:translate(-50%,-50%) rotate(0);opacity:1}20%{transform:translate(-51%,-49%) rotate(-2deg)}45%{transform:translate(-48%,-55%) rotate(3deg);opacity:1}to{transform:translate(-55%,-120%) rotate(-8deg);opacity:0}}.case-santa-discovery,.case-headphone-discovery{text-align:center}.case-headphone-discovery>img{display:block;width:min(300px,90%);height:auto;margin:0 auto 1rem}.case-headphone-discovery>p{color:#f7e7bd;font-family:var(--serif, Georgia);font-size:clamp(1.25rem,4vw,1.7rem);line-height:1.5}.case-final-accusation{display:block;margin:0 auto 16px}.case-collection-glitter{position:absolute;inset:0;pointer-events:none}.case-collection-glitter i{position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#ffdfa6;box-shadow:0 0 5px #f9d895;opacity:0;animation:case-collect-speck .86s ease-out both}@keyframes case-collect{0%{opacity:1}24%{opacity:1;filter:brightness(1.22) drop-shadow(0 0 8px #e7c786a6)}55%{opacity:.86}to{opacity:0;filter:brightness(1.08)}}@keyframes case-collect-speck{0%{transform:rotate(var(--spark-angle)) translate(4px)}24%{opacity:.9}to{opacity:0;transform:rotate(var(--spark-angle)) translate(var(--spark-distance))}}@keyframes case-find-glint{0%{opacity:0;scale:.5}25%{opacity:.8}to{opacity:0;scale:1.5}}.case-sparkle{position:absolute;transform:translate(-50%,-50%);font-size:clamp(12px,1.5vw,22px);color:#f0d6a0;text-shadow:0 0 6px #e9c78b;pointer-events:none;opacity:0;animation:case-shimmer 11s ease-in-out infinite}@keyframes case-shimmer{0%,13%,to{opacity:0;scale:.65}4%,8%{opacity:.82;scale:1.12}}.case-power-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 45%,#ffd38618,transparent 55%);mix-blend-mode:screen;pointer-events:none;animation:case-power-up 1.1s ease-out}.case-interest-glow,.case-mechanism-dormant{position:absolute;z-index:2;pointer-events:none;border-radius:18%}.case-mechanism-dormant{background:#09241d50}.case-interest-glow:before{content:"";position:absolute;inset:-32%;border-radius:40%;background:radial-gradient(ellipse,#f1d28c30 12%,#e8c47788 34%,#d7b66f30 53%,transparent 74%);box-shadow:0 0 16px #dfbd7366;animation:case-cue-halo 3.8s ease-in-out infinite}.case-interest-glow--mechanism:before{inset:-18%;border-radius:24%}.case-cue-sparkle{position:absolute;color:#f5d99b;font-family:Georgia,serif;line-height:1;text-shadow:0 0 4px #dfb960,0 0 10px #eac578;opacity:.8;animation:case-cue-twinkle 3s ease-in-out infinite}@keyframes case-cue-twinkle{0%,to{opacity:.35;transform:translate(-1px,3px) scale(.75) rotate(-12deg)}45%{opacity:1;transform:translate(2px,-3px) scale(1.15) rotate(8deg)}}@keyframes case-cue-halo{0%,to{opacity:.65;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.case-brass-discs{position:relative;isolation:isolate}.case-brass-discs>button{position:relative;z-index:3}.case-disc-activation{inset:-4%;z-index:1}.case-disc-activation:before{inset:-2%}.case-brass-discs .case-disc-activation~button{box-shadow:inset 0 0 9px #59431c80,0 0 12px #e8ce8d55}@media(prefers-reduced-motion:reduce){.case-cue-sparkle,.case-interest-glow:before{animation:none}.case-cue-sparkle{opacity:.8}}@keyframes case-power-up{0%{background-color:#f5dfa040}to{background-color:transparent}}.case-camera-tools{grid-area:2 / 2;display:flex;align-items:center;border:1px solid #baa375;background:#122a24e8;border-radius:6px;overflow:hidden;box-shadow:0 3px 12px #0005}.case-camera-tools button{width:44px;padding:0;background:transparent;border:0;color:#f9e8c5;font-size:1.3rem}.case-camera-tools button:disabled{opacity:.4}.case-camera-tools span{width:45px;text-align:center;font-size:.72rem}.case-gesture-copy{grid-area:2 / 1;font-size:.74rem;color:#dac59a;margin:0}.case-tools-row,.case-location-counters{display:flex;align-items:center;flex-wrap:wrap}.case-tools-row{justify-content:space-between;gap:.6rem;margin-top:.75rem}.case-location-counters{gap:1rem}.case-location-counters>span{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;font-size:.92rem;font-variant-numeric:tabular-nums}.case-location-counters svg{width:23px;height:23px;color:#d8bc80}.case-list-button{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .55rem;font-size:.8rem!important;white-space:nowrap}.case-list-button svg{width:19px;height:19px}.case-status{min-height:1.7em;font-size:.85rem;color:#e7d3a8;padding:.3rem .2rem}.case-journal-button{position:relative;display:flex;align-items:center;gap:.5rem;width:max-content;background:linear-gradient(120deg,#f0dfbc,#cdb07a);color:#762d3c;border:2px solid #ae8b52;border-radius:2px 10px 10px 2px;padding:.55rem .9rem;box-shadow:0 5px 18px #0006;font-family:Georgia,serif!important}.case-journal-button:before{content:"";position:absolute;left:-2px;top:-9px;width:46%;height:10px;background:#ead8b0;border:2px solid #ae8b52;border-bottom:0;border-radius:5px 5px 0 0}.case-journal-button>svg{width:30px;height:27px}.case-journal-button i,.case-file-entries i{display:block;width:8px;height:8px;border-radius:50%;background:#913348;box-shadow:0 0 0 2px #e8cfa0}.case-journal-button i{position:absolute;right:7px;top:5px}.case-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:calc(var(--app-top-inset) + .65rem) max(.65rem,var(--safe-area-right)) calc(var(--safe-area-bottom) + .65rem) max(.65rem,var(--safe-area-left));background:#061a16c9;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overscroll-behavior:contain;animation:case-inspect-in .25s .25s both}.case-overlay.is-journal,.case-overlay.is-moment{animation-delay:0s}@keyframes case-inspect-in{0%{opacity:0}to{opacity:1}}.case-inspection{width:min(100%,1000px);max-height:min(95dvh,100%);overflow:hidden;display:flex;flex-direction:column;border:1px solid #a18754;border-radius:5px;background:repeating-linear-gradient(3deg,#302219,#34251a 3px,#38281c 5px,#302219 13px);color:#f4e3c0;box-shadow:0 20px 90px #000a;outline:0}.case-inspection-toolbar{display:flex;flex-shrink:0;gap:.6rem;align-items:center;justify-content:space-between;padding:.45rem .65rem;background:#17372e;border-bottom:1px solid #b39861;color:#e7d4aa;z-index:5}.case-inspection-toolbar>span{font-size:.66rem;letter-spacing:.1em}.case-overlay-folder{width:44px;min-width:44px;padding:.2rem;background:#e8d4ab;color:#773041;border:1px solid #ba9d67;border-radius:3px;font-size:1.5rem!important;margin-left:auto}.case-inspection-toolbar>.case-sound{margin-left:auto}.case-overlay-folder+.case-sound{margin-left:0}.case-close{font-size:.8rem!important;line-height:1.2;flex-shrink:0;min-height:44px;padding:.5rem .65rem}.case-close span{font-size:1.1rem;margin-left:.45rem}.case-inspection-content{overflow:auto;overscroll-behavior:contain;padding:clamp(.7rem,2vw,1.5rem);-webkit-overflow-scrolling:touch}.case-inspection-content h2{text-align:center;font:clamp(1.35rem,4vw,2rem)/1.2 Georgia,serif;margin:.4rem auto 1rem}.case-inspection-content p{line-height:1.6}.case-evidence-object{margin:.3rem auto;max-width:850px;text-align:center}.case-evidence-object>img{width:100%;height:auto;display:block;filter:drop-shadow(0 6px 9px #0008)}.evidence-parchment{max-width:680px}.case-evidence-object figcaption{font:.8rem Georgia,serif;color:#e5cfa1;padding:.7rem;line-height:1.4}.case-dossier{display:grid;grid-template-columns:minmax(180px,35%) 1fr;gap:1.6rem;padding:1.2rem;background:#e6d3ac;color:#463422;border:5px double #9b7b4d;box-shadow:2px 7px 15px #0007;transform:rotate(-.25deg)}.case-dossier>img{width:100%;border:6px solid #e9ddc2;box-shadow:0 2px 5px #0004;align-self:start}.case-dossier h2{text-align:left;margin:.4rem 0}.case-dossier h3{font-size:1rem}.case-dossier h4{margin:1.2rem 0 .25rem;text-transform:uppercase;font-size:.7rem;letter-spacing:.1em}.case-dossier p{font:1rem/1.65 Georgia,serif}.case-dossier-stamp{font-size:.68rem!important;letter-spacing:.13em;color:#7b293a;border-top:1px solid #8e6a46;border-bottom:1px solid #8e6a46;padding:.45rem 0}.case-key-evidence{text-align:center;max-width:600px;margin:1rem auto}.case-key-evidence>svg{display:block;width:min(100%,430px);height:230px;margin:auto;filter:drop-shadow(0 8px 6px #0008)}.case-discovered-record{padding:1rem 1.4rem;max-width:680px;margin:auto;background:#ddc493;color:#453420;box-shadow:1px 4px 10px #0006;font-family:Georgia,serif}.case-discovered-record p{white-space:pre-wrap}.case-evidence-description{text-align:left;font:1rem/1.7 Georgia,serif;white-space:pre-line;margin:1rem auto;max-width:650px}.case-file-folder{background:linear-gradient(110deg,#eedfbe,#dec79e);border:3px double #a3844f;color:#483b28}.case-file-section{margin:1.4rem 0}.case-file-section h3{border-bottom:1px solid #b9a172;padding-bottom:.5rem}.case-file-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.case-file-entries button{position:relative;display:flex;align-items:center;gap:.65rem;text-align:left;padding:.6rem;border:1px solid #bfa779;background:#f6eacc;color:#563c2b;border-radius:2px;box-shadow:0 2px 3px #58361f18}.case-file-entries button>img,.case-file-entries button>svg{width:54px;height:64px;object-fit:contain;flex-shrink:0}.case-file-entries button>span{font-family:Georgia,serif;line-height:1.35}.case-file-entries small{display:block;margin-top:.3rem;font:.65rem system-ui;color:#897554}.case-file-entries .case-file-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.73rem}.case-file-entries i{position:absolute;top:7px;right:7px}.case-file-folder .case-secondary{color:#683043;background:#f1e1bd;margin-bottom:1rem}.case-file-folder .case-evidence-object figcaption{color:#685133}.case-jigsaw-workspace>p{text-align:center;font-size:.87rem;max-width:650px;margin:.5rem auto 1rem}.case-jigsaw-table{position:relative;width:min(100%,780px);aspect-ratio:1;margin:auto;isolation:isolate;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(ellipse,#6b4f3770,#201712ad),repeating-linear-gradient(3deg,#38271b 0 3px,#493322 6px 11px,#38271b 14px);box-shadow:inset 0 0 30px #09070560;border-radius:4px}.case-paper-outline{position:absolute;left:26%;top:12%;width:48%;height:56%;border:2px solid #e2c78a;border-radius:4px 7px 5px 6px/5px 4px 7px 5px;background:radial-gradient(ellipse at 41% 35%,#fff4ded2,#f1e0c4b2 73%,#e0c59cac);box-shadow:inset 0 0 0 1px #fff1cd7c,0 2px 10px #160e075c;pointer-events:none}.case-jigsaw-piece{position:absolute;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;min-height:0!important;touch-action:none;filter:drop-shadow(2px 3px 2px #120d0960);transition:left .22s,top .22s}.case-jigsaw-piece:active{transition:none;cursor:grabbing}.case-jigsaw-piece>img{width:100%;height:100%;display:block;pointer-events:none;object-fit:fill}.case-jigsaw-piece.is-selected{filter:drop-shadow(0 0 3px #e7c894)}.case-jigsaw-piece.is-joined{filter:none}.case-jigsaw-piece.is-joined img,.case-jigsaw-table.is-settling .case-jigsaw-piece{animation:case-paper-join .5s ease both}.case-gift-sheet{position:relative;width:min(100%,420px);margin:0 auto}.case-gift-sheet img{width:100%;display:block;filter:drop-shadow(2px 4px 7px #24140768)}.case-gift-sheet ol{position:absolute;inset:29.6% 6% 8% 7.4%;display:grid;grid-template-rows:repeat(5,1fr);margin:0;padding:0;list-style:none}.case-gift-sheet li{display:flex;align-items:center;justify-content:flex-end;padding:0 5%;border:1px solid transparent;border-radius:3px}.case-gift-sheet li.is-next{border-color:#98652d;background:#fff0a83d;box-shadow:0 0 5px #9a69265c}.case-gift-tick{color:#244637;font-size:clamp(1rem,5vw,1.65rem);font-weight:700}@keyframes case-paper-join{0%,to{filter:brightness(1)}35%{filter:brightness(1.24) drop-shadow(0 0 3px #fae4a5)}}.case-solved{color:#e5ce97;text-align:center;font-size:.85rem}.case-open-drawer{max-width:840px;margin:auto}.case-drawer-interior{position:relative;aspect-ratio:1.5;margin:1.4rem auto 1rem;width:95%;perspective:900px;border:14px ridge #6b482b;background:repeating-linear-gradient(4deg,#352116,#4b301d 8px,#3e2617 11px);box-shadow:inset 0 12px 20px #000b,0 10px 20px #0006;overflow:hidden}.case-drawer-interior.is-empty{box-shadow:inset 0 12px 20px #000b,inset 0 -6px 12px #25150d,0 10px 20px #0006}.case-drawer-empty{text-align:center;color:#ebd4ac}.case-drawer-front{position:absolute;left:0;bottom:0;width:100%;height:25%;object-fit:fill;box-shadow:0 -3px 9px #0007;animation:case-drawer-slide .7s ease-out}@keyframes case-drawer-slide{0%{transform:translateY(-120%)}to{transform:translateY(0)}}.case-drawer-paper{position:absolute;transform:translate(-50%,-50%) rotate(-3deg);padding:0;border:0;background:transparent;color:#4d3825;filter:drop-shadow(2px 4px 3px #0006);animation:case-paper-appear .5s .2s backwards}.case-drawer-paper>img{width:100%;height:100%;object-fit:fill}.case-paper-prop{position:relative;display:block;width:100%;height:100%;border-radius:3% 2% 16%;background:linear-gradient(125deg,#f9df6d,#e2ab37);box-shadow:1px 2px 5px #1810069c}.case-paper-prop>i{position:absolute;inset:23% 18%;background:repeating-linear-gradient(to bottom,#68502270 0 8%,transparent 8% 27%)}.case-paper-prop.prop-planner{border-radius:3%;background:linear-gradient(90deg,#b03d3b 0 11%,#eed9a7 12% 100%);border-top:2px solid #793b2b}.case-drawer-paper.is-dossier{display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;background:linear-gradient(110deg,#d7bd8c,#efddb7);border:1px solid #a18a62;padding:1rem .3rem;font:clamp(.65rem,2vw,1.15rem) Georgia,serif}.case-drawer-paper.is-dossier:after{content:"";position:absolute;top:16%;left:0;right:0;border-bottom:1px solid #a58d66}.case-drawer-paper span,.case-drawer-paper small{font:.58em/1.4 system-ui;letter-spacing:.13em}@keyframes case-paper-appear{0%{opacity:0}to{opacity:1}}.case-clock-instrument{text-align:center;max-width:600px;margin:auto}.case-clock-instrument>.case-clock-face{width:min(100%,350px);filter:drop-shadow(0 8px 10px #0008);touch-action:none}.case-clock-instrument.is-restored .case-clock-face{filter:drop-shadow(0 0 14px #edbb64b3)}.case-clock-restored{color:#ffe3a6;font-size:1.08rem}.case-clock-controls{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;align-items:center;margin:1rem auto}.case-clock-controls button{background:#e7d3aa;color:#4e3925;border:1px solid #b49a63;border-radius:5px;padding:.5rem .7rem}.case-clock-controls output{font-size:1.4rem;min-width:90px;font-variant-numeric:tabular-nums}.draggable-hand{cursor:grab;touch-action:none;pointer-events:stroke}.case-revealed-compartment{max-width:660px;margin:1rem auto;padding:.7rem clamp(.4rem,3vw,1.2rem);background:#162e25;border:1px solid #c0a16b;border-radius:6px;text-align:center}.case-compartment-art{position:relative;width:min(100%,610px);margin:0 auto}.case-map-panel{width:min(100%,870px);background:radial-gradient(ellipse at top,#183b30,#0b261f 75%)}.case-delivery{text-align:center}.case-route-heading{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.case-map-instructions,.case-map-progress{font-size:.9rem;color:#f3deb6;margin:.5rem auto}.case-delivery-map{position:relative;isolation:isolate;container-type:inline-size;overflow:hidden;border-radius:8px;outline:1px solid #cfab71;background:#b79a74}.case-delivery-map>svg{display:block;width:100%;height:100%}.case-road-lines path{fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;animation:case-road-grow .44s ease-out both}.case-road-gold{stroke:#ffd27d;stroke-width:clamp(4px,.9cqw,7px);filter:drop-shadow(0 0 1.5px #ec792c)}.case-road-red{stroke:#d84c27;stroke-width:clamp(2.5px,.62cqw,4.7px)}@keyframes case-road-grow{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.case-map-label,.case-map-marker,.case-map-stop{position:absolute;transform:translate(-50%,-50%)}.case-map-label{min-height:clamp(15px,4.05cqw,35px);display:grid;place-items:center;border:1px solid #644829;border-radius:100px;background:linear-gradient(#ffe6b2,#e6b877);color:#3b251a;box-shadow:0 0 0 1px #edd19f,0 2px 3px #4b210f8c;white-space:nowrap;font:bold italic clamp(9px,2.46cqw,17px)/1 Georgia,serif;pointer-events:none}.case-map-label.is-decorative{background:linear-gradient(#e3d4ad,#c4ad7b);color:#27362a}.case-map-marker{display:grid;place-items:center;width:clamp(15px,3.82cqw,33px);aspect-ratio:1;border:clamp(2px,.46cqw,4px) solid #7a3034;border-radius:50%;background:#ffe8b8;color:#fff0ca;box-shadow:0 0 0 1px #ffedc7;font:700 clamp(9px,2.4cqw,16px)/1 system-ui;pointer-events:none}.case-map-marker.is-decorative{border-color:#5e6347;background:#ded5ab}.case-map-marker.is-visited{background:#8b2b2e;border-color:#f6d381;box-shadow:0 0 0 1px #733126,0 0 10px #ffcf54;z-index:1}.case-overlay .case-map-stop{z-index:2;min-width:44px;height:max(44px,7.5%);border:0;border-radius:20px;background:transparent;padding:0;touch-action:manipulation}.case-overlay .case-map-stop[aria-disabled=true],.case-overlay .case-map-stop:disabled{cursor:default}.case-overlay .case-map-stop:focus-visible{outline-offset:0;outline:2px solid #fff5c9;box-shadow:0 0 0 1px #3b2316}.case-map-success{border:1px solid #d1a96d;border-radius:7px;background:linear-gradient(140deg,#254837,#143228);color:#ffe6b7;padding:.65rem .85rem;margin-top:.65rem}.case-map-success h3{margin:.2rem auto;font-size:clamp(1.15rem,3vw,1.6rem)}.case-map-success h3:focus{outline:none}.case-map-success p{margin:.3rem auto}.case-map-success .case-primary{margin-block:.55rem .1rem}.case-document{width:min(100%,610px);margin:.45rem auto;padding:clamp(1.15rem,4.5vw,2.3rem);box-sizing:border-box;text-align:left}.case-document p{margin:.55em 0 .85em}.case-document p:last-child{margin-bottom:0}.document-rounds{color:#4b2b1c;background:radial-gradient(ellipse at 50% 48%,#fae5b6 37%,transparent 100%),repeating-linear-gradient(12deg,#eac48a 0 1px,#e5ba7a 1px 3px);box-shadow:inset 0 0 27px #8e4e2199;font:italic clamp(1rem,2.5vw,1.26rem)/1.52 Georgia,serif}.document-rounds.rounds-first{padding-bottom:clamp(1.6rem,5.3vw,3.1rem);clip-path:polygon(0 1%,100% 0,100% 96%,97% 95%,94% 98%,91% 97%,87% 99%,83% 97%,80% 97.5%,77% 94.5%,74% 96%,70% 99%,67% 97.5%,63% 98.4%,59% 96.4%,56% 97.5%,51% 96%,48% 98.8%,44% 98.6%,41% 96.5%,37% 97.7%,33% 95.7%,29% 97%,25% 99%,21% 98%,18% 96%,15% 97%,12% 97.5%,8% 99.7%,4% 98%,0 100%)}.document-rounds.rounds-second{padding-top:clamp(1.6rem,5.3vw,3.1rem);clip-path:polygon(0 4%,4% 3%,8% 4.7%,12% 2.5%,15% 2%,18% 1%,21% 3%,25% 4%,29% 2%,33% .7%,37% 2.7%,41% 1.5%,44% 3.5%,48% 3%,51% 1.1%,56% 2.6%,59% 1.5%,63% 3.5%,67% 2.6%,70% 4.2%,74% 1.5%,77% 0,80% 3%,83% 2.6%,87% 4.6%,91% 2.4%,94% 3.4%,97% .8%,100% 1.7%,100% 99%,0 100%)}.case-document-flourish{display:block;text-align:center;color:#892f32;font-style:normal;font-size:1.5rem;line-height:1}.case-document.document-rounds h2{margin:.25rem auto .65rem;font-style:italic;font-weight:600}.document-sticky{width:min(100%,490px);border-radius:2px 3px 11%;color:#392b1c;background:linear-gradient(150deg,#ffe994 12%,#f8d56d 67%,#efb73f);box-shadow:0 10px 20px #0007,inset 0 0 2px #fff0b2;font:italic clamp(1.02rem,2.6vw,1.28rem)/1.45 Georgia,serif}.document-sticky p:last-child{color:#742926}.document-mrs-claus-note{border:1px solid #c6a677;border-radius:5px 9px 6px 10px;color:#493124;background:radial-gradient(ellipse at 46% 43%,#fff0d3,#f1d7aa);box-shadow:inset 0 0 18px #a4743c33,0 6px 14px #0004;font:1rem/1.5 Georgia,serif}.case-document.document-mrs-claus-note h2{margin:.35rem auto .95rem;color:#7c302e;font-style:italic}.document-mrs-claus-note p{white-space:pre-line}.document-mrs-claus-note ul{list-style:none;padding:0;margin:.9rem 0}.document-mrs-claus-note li{margin-block:.38rem}.document-mrs-claus-note li strong{color:#2e5142}.document-planner{position:relative;width:min(100%,660px);padding:clamp(.72rem,3.8vw,2rem);color:#253b31;background:repeating-linear-gradient(21deg,#9a642208 0 1px,transparent 1px 6px),radial-gradient(ellipse at 45% 42%,#f9ecd3 18%,#f5e2be 74%,#e8cb9c);border-radius:4px;box-shadow:0 10px 20px #0007,inset 0 0 18px #ab6a3e45}.document-planner header,.document-planner footer{display:grid;grid-template-columns:clamp(35px,15%,88px) minmax(0,1fr) clamp(34px,14%,82px);align-items:center;gap:clamp(3px,1.6vw,12px);text-align:center;color:#6c442b}.document-planner header p{margin-block:.15rem;font-size:clamp(.56rem,1.5vw,.72rem);font-weight:650;letter-spacing:.095em}.case-planner-atlas{position:absolute;pointer-events:none}.case-planner-art{display:block;width:100%;height:auto;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse closest-side,#000 87%,transparent 100%);mask-image:radial-gradient(ellipse closest-side,#000 87%,transparent 100%);mix-blend-mode:multiply}.document-planner header h2{font:bold italic clamp(1.15rem,4.5vw,2.5rem)/1.08 Georgia,serif;color:#8b3433;margin:.35rem auto}.document-planner dl{margin:.68rem auto .55rem}.case-planner-row{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:clamp(.3rem,1.7vw,.95rem);border-top:1px solid #a27c4d66;padding-block:clamp(.48rem,1.9vw,.83rem)}.case-planner-row dt{color:#194b3b;font:bold clamp(1rem,3.4vw,1.6rem)/1.24 Georgia,serif;font-variant-numeric:tabular-nums}.case-planner-row dd{display:grid;grid-template-columns:clamp(28px,8vw,54px) minmax(0,1fr);align-items:start;gap:clamp(.28rem,1.75vw,.8rem);min-width:0;margin:0}.case-planner-row strong{display:block;font:bold clamp(.93rem,2.6vw,1.24rem)/1.28 Georgia,serif;color:#194638}.case-inspection-content .case-planner-row p{margin:.24rem 0 0;font:italic clamp(.88rem,2.4vw,1.1rem)/1.42 "Chalkboard SE","Segoe Print",Georgia,serif;color:#3e2c22}.document-planner footer{padding-top:.5rem;border-top:1px solid #a27c4d66;color:#8b3433}.document-planner footer p{font:bold italic clamp(1rem,3.3vw,1.55rem)/1.2 Georgia,serif;margin-top:.18rem}.document-riddle{padding-inline:clamp(.52rem,2.7vw,2.3rem);color:#472d20;background:linear-gradient(90deg,transparent 48.3%,#955a3224 49.85%,#fff8df6b 50.45%,transparent 52%),radial-gradient(ellipse at 50% 48%,#f9e6bb 38%,#e8c28c 82%,#c18e5c);box-shadow:inset 0 0 23px #a66b43a0;clip-path:polygon(1% 1%,8% 1.5%,15% 0,22% 1%,30% .4%,40% 1.3%,48% .2%,56% 1.1%,64% .2%,73% 1.4%,81% .4%,90% 1.3%,99% .7%,100% 9%,99.2% 17%,100% 28%,98.9% 39%,100% 52%,99.3% 64%,100% 76%,99% 87%,100% 99%,92% 98.5%,84% 100%,76% 98.9%,68% 99.5%,60% 98.6%,51% 100%,42% 99%,33% 99.7%,25% 98.7%,17% 100%,8% 98.9%,1% 99.7%,.2% 90%,1% 77%,0 65%,1% 53%,0 40%,1% 28%,0 17%)}.case-document.document-riddle h2{padding-bottom:.65rem;border-bottom:1px solid #92603e66;font-style:italic}.case-inspection-content .case-lighting-verse{white-space:pre-wrap;text-align:center;font:italic clamp(.91rem,4.05vw,1.24rem)/1.55 Georgia,serif}.case-inspection-content .case-evidence-confirmation{text-align:center;margin-top:.3rem}.case-moment-panel{width:min(100%,750px);background:radial-gradient(ellipse at top,#2a5140,#0e2921 75%)}.case-milestone{text-align:center;margin:.15rem auto;color:#f6e4be;animation:case-moment-arrive .36s ease-out both}.case-milestone-seal{display:grid;place-items:center;margin:auto;width:2.1rem;aspect-ratio:1;border-radius:50%;background:radial-gradient(#ebbd70,#ad7f3f);box-shadow:0 0 16px #ffcf7799;color:#4a2b1e;font-size:1.15rem}.case-milestone-copy h2{color:#ffe3a6;margin:.48rem auto .3rem}.case-milestone-copy p{margin:.32rem auto .8rem}.case-milestone-copy h3{color:#ffe3a6;margin:.35rem auto;font-size:clamp(1.16rem,3.3vw,1.65rem)}.case-milestone-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.55rem;margin:.9rem auto .12rem}.case-milestone-actions .case-primary{margin:0}.case-milestone-actions+.case-compartment-art{margin-top:.9rem}.case-milestone-discovery{margin-top:.75rem;border-top:1px solid #bd9c5c80}.case-milestone-discovery>p{font-size:.8rem;color:#e9ce96}.case-milestone-discovery .case-evidence-object>img{max-height:205px;object-fit:contain}.case-clock-opening{width:min(28%,124px);min-width:68px;margin:.35rem auto .65rem}.case-clock-opening>svg{display:block;margin:auto;width:100%;filter:drop-shadow(0 0 11px #e9bb69c7);animation:case-clock-flare .82s ease-out both}.case-clock-compartment{position:relative;height:22px;width:76%;margin:3px auto 0;background:linear-gradient(90deg,#492817,#e9b65f,#492817);border:3px ridge #c09352;border-radius:3px;perspective:110px}.case-clock-compartment i{display:block;position:absolute;inset:-1px;border:1px solid #a47440;background:linear-gradient(#9b6636,#482719);transform-origin:top;transform:rotateX(76deg);animation:case-clock-flap .46s .14s ease-out both}.moment-clock .case-compartment-art:not(.case-collecting){animation:case-moment-arrive .41s .23s ease-out both}@keyframes case-moment-arrive{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes case-clock-flare{0%,to{filter:drop-shadow(0 0 11px #e9bb69c7)}42%{filter:drop-shadow(0 0 20px #ffd78d) brightness(1.18)}}@keyframes case-clock-flap{0%{transform:rotateX(0)}to{transform:rotateX(76deg)}}.case-brass-mechanism{text-align:center}.case-brass-discs{display:flex;justify-content:center;gap:clamp(.6rem,3vw,1.7rem);margin:1.6rem auto;padding:1.5rem .8rem;width:max-content;max-width:100%;background:linear-gradient(#98733c,#b99752,#735027);border:7px ridge #d4ae64;border-radius:10px;box-shadow:0 8px 14px #0007}.case-brass-discs button{width:clamp(68px,18vw,115px);height:clamp(80px,20vw,126px);display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px ridge #d8b773;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f0d392,#aa7c35 70%,#6f4d23);color:#513a1e;box-shadow:inset 0 0 9px #59431c80,0 3px 6px #31210e88;touch-action:none;-webkit-user-select:none;user-select:none;padding:.4rem}.sabotage-game .case-symbol,.case-overlay .case-symbol{margin:0;font-size:inherit;width:44px;height:44px;display:block;flex-shrink:0}.case-brass-discs .case-symbol{width:60%;height:60%}.case-brass-discs span{font-size:.67rem;margin-top:.2rem}.case-electrical-instrument>p{max-width:700px;margin:auto}.case-wire-board{position:relative;height:480px;max-width:720px;margin:1.5rem auto;background:linear-gradient(110deg,#3b4039,#1c2926);border:10px ridge #a1824e;box-shadow:inset 0 0 20px #0009;touch-action:none}.case-wire-board>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(1px 3px 2px #0009)}.case-wire-sources,.case-wire-targets{display:flex;flex-direction:column;justify-content:space-around;position:absolute;top:0;bottom:0;width:23%;padding:.1rem}.case-wire-sources{left:0}.case-wire-targets{right:0}.case-wire-sources button,.case-wire-targets button{position:relative;display:flex;align-items:center;justify-content:center;gap:.35rem;flex-wrap:wrap;background:#222d29;color:#f6e1b7;border:1px solid #ad9056;padding:.2rem;min-height:56px;touch-action:none;border-radius:5px;font-size:.72rem}.case-wire-sources button>i{display:block;width:17px;height:17px;border:1px solid #cab589;border-radius:50%;box-shadow:0 0 0 3px #35382d}.case-wire-sources button.is-selected{border-color:#ffe6ad;box-shadow:0 0 0 2px #d5b778}.case-wire-targets button>.case-symbol{width:31px;height:31px;color:#d6b77a}.case-wire-targets button>span{width:100%;text-align:center}.case-wire-targets button>i{position:absolute;width:8px;height:8px;top:2px;left:2px;border:1px solid #f6e4ba;border-radius:50%}.case-accusation{text-align:center;max-width:850px;margin:auto}.case-accusation>p{max-width:650px;margin:1rem auto}.case-santa-portrait{display:block;width:auto;height:auto;max-width:100%;max-height:min(590px,55dvh,max(6rem,calc(100dvh - var(--app-top-inset) - var(--safe-area-bottom) - 15rem)));margin:0 auto 1.15rem;object-fit:contain;border:1px solid #bb985e;border-radius:6px;box-shadow:0 6px 20px #0008}.case-suspects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1.4rem auto}.case-suspects button{padding:0 0 .75rem;border:1px solid #b59b66;background:#233e32;color:#f1dab0;border-radius:5px;overflow:hidden}.case-suspects img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.case-suspects strong{display:block;margin-top:.7rem;font:1.15rem Georgia,serif}.case-feedback{text-align:center;color:#e4cca1;font-size:.87rem;line-height:1.5;max-width:620px;margin:1rem auto .25rem}.case-feedback.is-correct{color:#edd293}.case-error{padding:.75rem;background:#542f33;color:#ffeed2;border:1px solid #c3a168;margin:.7rem 0;border-radius:4px}.case-error button{background:#783044;color:#fff0cd;border:1px solid #dbbb76;border-radius:4px;padding:.5rem 1rem}.case-comic{max-width:900px;margin:auto;text-align:center}.case-comic>img{display:block;width:100%;height:auto;border:1px solid #c3a064}.case-comic blockquote{margin:.8rem auto;padding:.8rem 1rem;max-width:750px;background:#eee0be;color:#473d2a;font:1.05rem/1.6 Georgia,serif;border-left:3px solid #ab8a54}.case-comic blockquote p{margin:.3rem 0}@media(max-width:600px){.sabotage-game{margin-inline:-.2rem;padding:.45rem}.case-locations{gap:.25rem}.case-locations button{font-size:.69rem;gap:.2rem;padding:.4rem .16rem;min-height:55px}.case-locations small{font-size:.58rem;width:100%}.case-locations button>span{font-size:.8rem}.case-viewport{height:clamp(390px,60dvh,580px)}.case-act-name{font-size:.64rem;max-width:53%;line-height:1.4}.case-location-counters{gap:.55rem}.case-location-counters>span{gap:.22rem;font-size:.8rem}.case-location-counters svg{width:18px;height:18px}.case-inspection-toolbar>span{font-size:.56rem;max-width:32%;line-height:1.4}.case-inspection-content{padding:.65rem}.case-inspection{max-height:min(96dvh,100%)}.case-close{font-size:.73rem!important;padding:.4rem .5rem}.case-dossier{grid-template-columns:1fr;padding:1rem;gap:.8rem}.case-dossier>img{width:48%;margin:auto}.case-file-entries{grid-template-columns:1fr}.case-drawer-interior{width:100%;border-width:8px;aspect-ratio:1.1}.case-drawer-paper.is-dossier{font-size:.76rem;padding:.4rem .2rem}.case-wire-board{height:440px;border-width:6px}.case-wire-sources,.case-wire-targets{width:25%}.case-wire-sources button,.case-wire-targets button{font-size:.65rem}.case-suspects{gap:.4rem}.case-suspects strong{font-size:.95rem}.case-opening-story{margin:-1.4rem .4rem 0;padding:1rem}.case-opening-story p{font-size:.94rem}.case-journal-button{font-size:.9rem!important}.case-jigsaw-workspace>p{font-size:.78rem}.case-key-evidence>svg{height:170px}}@media(max-width:360px){.case-overlay.is-physical .case-inspection-toolbar>span{display:none}.case-overlay.is-physical .case-overlay-folder{margin-left:0}.case-overlay.is-physical .case-close{margin-left:auto}}@media(prefers-reduced-motion:reduce){.sabotage-game *,.case-overlay *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.case-overlay{animation:none!important}.case-sparkle{opacity:.23}.sabotage-game .case-collecting,.case-overlay .case-collecting,.sabotage-game .case-scene-prop.is-covering.case-collecting{animation:case-collect-reduced .18s linear both!important}.case-collection-glitter{display:none}.case-scene-prop.is-covering>img{animation:none!important}}@keyframes case-collect-reduced{0%{opacity:1;filter:brightness(1.14) drop-shadow(0 0 3px #e7c786)}to{opacity:0}}.letters-activity{display:grid;gap:1.5rem}.letter-composer h2,.letter-inbox h2{color:#782438}.letter-recipient-list{display:flex;flex-wrap:wrap;gap:.5rem}.letter-recipient-list label{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;border:1px solid #c7a968;border-radius:25px;min-height:44px}.letter-composer fieldset{border:0;padding:0}.letter-draft{margin-top:1.5rem;padding:1.2rem;border:1px solid #c9ab73;border-radius:12px;background:#fcf5e4}.letter-draft label{display:block}.letter-draft textarea{width:100%;font:inherit;white-space:pre-wrap;min-height:140px}.letter-draft .letter-anonymous{display:flex;gap:.6rem;align-items:center;margin:.8rem 0}.letter-image-picker input{display:block;max-width:100%;margin:.6rem 0}.letter-photo{display:block;width:100%;max-height:60vh;object-fit:contain;margin:1rem auto;border-radius:6px}.letter-envelopes{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1rem}.letter-envelope{position:relative;isolation:isolate;display:block;width:100%;aspect-ratio:600 / 370;padding:0;min-height:0;background:transparent;border:0;border-radius:3px;color:#714429;filter:drop-shadow(0 5px 7px #5a33132b)}.letter-envelope:hover{background:transparent;filter:drop-shadow(0 6px 9px #5a33133b)}.envelope-art{display:block;width:100%;height:100%;overflow:visible}.envelope-flap{transform-origin:50% 5%}.envelope-read-again{position:absolute;right:5%;bottom:6%;z-index:4;display:grid;place-items:center;min-height:44px;padding:0 6px;font:italic .8rem Georgia,serif;color:#735b3b}.letter-count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:50%;margin-left:.6rem;background:#7e2336;color:#fff4dd;font:600 16px sans-serif}.letter-modal{position:fixed;z-index:90;inset:0;display:flex;align-items:center;justify-content:center;padding:calc(var(--app-top-inset) + 1rem) max(1rem,var(--safe-area-right)) calc(var(--safe-area-bottom) + 1rem) max(1rem,var(--safe-area-left));background:#092b26cf;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.letter-paper{position:relative;background:linear-gradient(135deg,#fff9ea,#f3e6c7);color:#42352a;border:1px solid #c4a165;border-radius:8px;box-shadow:0 15px 60px #0005;width:min(100%,680px);max-height:min(88dvh,100%);overflow:auto;padding:clamp(1.2rem,5vw,3rem)}.letter-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-family:Georgia,serif;font-size:1.15rem}.letter-date{display:block;margin:1rem 0;color:#796646;font-size:.85rem}.letter-signature{font:italic 1.2rem Georgia,serif;color:#7b2738;text-align:right}.letter-close{display:block;margin-left:auto}.letter-sent{color:#0a5746}.facade-unread{position:absolute;top:8%;right:1%;z-index:8;background:#7e2336;color:#fff5df;border:1px solid #dfc58d;border-radius:50%;min-width:20px;height:20px;display:grid;place-items:center;font:600 11px sans-serif;box-shadow:0 2px 4px #0005}.envelope-lining{opacity:0}.is-open-art .envelope-lining{opacity:1}.letter-opening-stage{container-type:inline-size;position:relative;width:min(100%,680px);height:min(760px,calc(100dvh - var(--app-top-inset) - var(--safe-area-bottom) - 2rem));max-height:100%;--envelope-height: min(61.67cqw, 259px);--opening-ease: cubic-bezier(.4, 0, .2, 1)}.reading-envelope{position:absolute;z-index:3;width:min(100%,420px);height:var(--envelope-height);bottom:0;left:50%;transform:translate(-50%);perspective:900px;pointer-events:none;filter:drop-shadow(0 6px 10px #001b1766)}.reading-envelope .envelope-flap{transform-box:view-box;transform-origin:50% 4.86%;backface-visibility:hidden}.letter-reveal{position:absolute;inset:0 4% calc(var(--envelope-height) - 12px);z-index:2;transform:translateY(0)}.letter-opening-stage .letter-paper{width:100%;height:100%;max-height:none;padding-bottom:2.5rem}.letter-opening-stage.is-animating .letter-reveal{animation:letter-emerge var(--letter-opening-duration) var(--opening-ease) both}.letter-opening-stage.is-animating .envelope-flap{animation:letter-hinge var(--letter-opening-duration) var(--opening-ease) both}.letter-opening-stage.is-animating .envelope-seal-art{animation:letter-wax-release var(--letter-opening-duration) var(--opening-ease) both;transform-origin:50% 62%}.letter-opening-stage.is-animating .envelope-lining{animation:letter-lining var(--letter-opening-duration) var(--opening-ease) both}.letter-opening-stage.is-open .envelope-flap{transform:rotateX(165deg);opacity:0}.letter-opening-stage.is-open .envelope-seal-art{opacity:0}.letter-opening-stage.is-open .envelope-lining{opacity:1}.letter-reader-content{animation:letter-content-in .18s ease-in-out both}.letter-reader-modal.is-closing{animation:letter-modal-out .16s ease-in-out forwards;pointer-events:none}@keyframes letter-modal-out{0%{opacity:1}to{opacity:0}}@keyframes letter-wax-release{0%,8%{opacity:1;transform:scale(1)}36%,to{opacity:0;transform:scale(.65)}}@keyframes letter-hinge{0%,12%{transform:rotateX(0);opacity:1}40%{opacity:1}66%,to{transform:rotateX(165deg);opacity:0}}@keyframes letter-lining{0%,25%{opacity:0}55%,to{opacity:1}}@keyframes letter-emerge{0%,35%{transform:translateY(75%);opacity:0}60%{opacity:1}to{transform:translateY(0);opacity:1}}@keyframes letter-content-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.letter-opening-stage *,.letter-reader-content{animation:none!important}.letter-modal{-webkit-backdrop-filter:none;backdrop-filter:none}}.game-leaderboard{container-type:inline-size;width:100%;max-width:730px;margin:1.5rem auto;padding:clamp(14px,3.2vw,30px);border:1px solid #d7b66f;border-radius:clamp(22px,6vw,46px);background:#1a3e35;color:#fff9ea;box-shadow:none;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.game-leaderboard .leaderboard-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4.8cqw}.game-leaderboard h2{margin:0;color:#fff9ea;font-family:inherit;font-size:clamp(1.6rem,7.9cqw,3.4rem);font-weight:700;line-height:1.2;letter-spacing:-.025em}.leaderboard-trophy{flex:none;width:clamp(20px,5cqw,36px);height:clamp(20px,5cqw,36px);color:#d7b66f}.game-leaderboard .leaderboard-section-label{margin:0;color:#b8c9bb;font-size:clamp(.75rem,3.7cqw,1.5rem);font-weight:500;line-height:1.3;letter-spacing:.015em}.leaderboard-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:2.4cqw;margin-top:4.3cqw}.leaderboard-podium[data-places="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.leaderboard-podium[data-places="1"]{grid-template-columns:minmax(0,1fr);max-width:48%;margin-left:auto;margin-right:auto}.leaderboard-place{min-width:0}.leaderboard-place--1{order:2;--medal: #dabf80;--podium: #ae955d;--block-height: 29.6cqw}.leaderboard-place--2{order:1;--medal: #d7d7cd;--podium: #6b8477;--block-height: 19.6cqw}.leaderboard-place--3{order:3;--medal: #b38c72;--podium: #927663;--block-height: 15.3cqw}.leaderboard-players{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,6.5rem),1fr));gap:4cqw 2cqw}.leaderboard-person{min-width:0;text-align:center}.leaderboard-crown{display:block;width:5.5cqw;height:5.5cqw;margin:0 auto 2.8cqw;color:#d7b66f;overflow:visible}.leaderboard-avatar{display:grid;place-items:center;width:12.4cqw;height:12.4cqw;margin:0 auto;border-radius:50%;overflow:hidden;background:var(--medal);color:#24483c;font-size:clamp(1.2rem,5.7cqw,2.5rem);font-weight:600;line-height:1}.leaderboard-place--1 .leaderboard-avatar{width:14.3cqw;height:14.3cqw}.leaderboard-avatar img{display:block;width:100%;height:100%;object-fit:cover}.game-leaderboard .leaderboard-name{display:block;margin-top:3.5cqw;color:#fff9ea;font-size:clamp(.95rem,5.1cqw,2.2rem);font-weight:650;line-height:1.25;overflow-wrap:anywhere}.leaderboard-result{display:block;margin-top:2.4cqw;font-size:clamp(.8rem,4.8cqw,2rem);line-height:1.3;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.leaderboard-place--1 .leaderboard-result{color:#d7b66f}.leaderboard-place--2 .leaderboard-result{color:#d0d6cc}.leaderboard-place--3 .leaderboard-result{color:#d2bda1}.leaderboard-podium-block{display:grid;place-items:center;min-height:var(--block-height);margin-top:3cqw;border-radius:2.4cqw 2.4cqw 0 0;background:var(--podium);color:#fff9ea;font-size:8.2cqw;font-weight:500;line-height:1}.leaderboard-place--1 .leaderboard-podium-block{color:#24483c}.leaderboard-others{border-top:1px solid #55796d;margin-top:6cqw;padding-top:6cqw}.game-leaderboard .leaderboard-list{list-style:none;padding:0;margin:3.6cqw 0 0}.leaderboard-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:3.6cqw;padding:0;margin-top:4cqw;color:#fff9ea;font-size:clamp(.9rem,4.9cqw,2rem);line-height:1.3}.leaderboard-list-rank{color:#d7b66f;font-variant-numeric:tabular-nums}.leaderboard-list-name{font-weight:600;overflow-wrap:anywhere}.leaderboard-list-result{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.game-leaderboard .leaderboard-status{margin:0;color:#b8c9bb;font-size:1rem}.adventure{max-width:640px;margin:0 auto 2rem;padding:clamp(.7rem,3vw,1.6rem);border:1px solid #c8a969;border-radius:20px;background:linear-gradient(145deg,#164f42,#07382f 70%);color:#f7e9cb;box-shadow:0 18px 40px #07392d2b;outline:none}.adventure h2{color:#f5d99f;font-family:var(--font-display, Georgia, serif);font-weight:500}.adventure .small{color:#e3d3af}.adventure button{min-width:44px;min-height:44px}.adventure button:focus-visible{outline:3px solid #ffdc8b;outline-offset:4px}.adventure .eyebrow{color:#ead0a1}.adventure-intro,.adventure-complete{text-align:center;padding:1.4rem .4rem}.adventure-intro p,.adventure-complete p{line-height:1.7}.adventure-spark,.adventure-complete>span{font-size:3rem;color:#e8bf6d}.adventure-points{font:2rem Georgia,serif;color:#f5d99f}.adventure-hud{display:flex;align-items:center;justify-content:center;gap:.5rem .9rem;flex-wrap:wrap;font-size:.85rem;margin-bottom:1rem}.adventure-hud h2{flex-basis:100%;margin:0;text-align:center;font-size:1.4rem}.adventure-hud .eyebrow{flex-basis:100%;text-align:center}.memory-game .adventure-hud .eyebrow{font-family:var(--font-display, Georgia, serif);font-size:1.05rem;font-weight:500;letter-spacing:.12em}.adventure-pause{font-size:.8rem!important;background:transparent!important;color:#f6e5c0!important;border:1px solid #ad935f!important;padding:.3rem .7rem!important}.adventure-error{background:#fff0d6;color:#792a36;border:2px solid #ba8b54;border-radius:12px;padding:.8rem;margin-bottom:1rem}.adventure-error p{color:#792a36}.memory-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.4rem,1.5vw,.75rem);max-width:500px;margin:auto}.memory-level-0{grid-template-columns:repeat(3,minmax(0,1fr));max-width:410px}.memory-card{position:relative;aspect-ratio:4/5;min-width:0!important;width:100%;padding:0!important;border-radius:10px!important;border:1px solid #e3bf7b!important;background:#fbf7eb!important;overflow:hidden;color:#eac988!important;box-shadow:inset 0 0 0 4px #184f42,inset 0 0 0 5px #b59963!important;transition:background-color .2s,box-shadow .2s,transform .2s}.memory-card>svg{width:100%;height:100%;display:block}.memory-card.is-up{background:radial-gradient(ellipse at 40% 30%,#fff9e9,#ebd5a6)!important;box-shadow:0 0 12px #e7b85a40!important;opacity:1!important}.memory-card:disabled{opacity:1;cursor:default}.memory-card.is-matched{border-color:#f5d887!important;background:#f2e4c5!important;box-shadow:inset 0 0 0 2px #c7a45b!important}.memory-check{position:absolute;right:5px;bottom:1px;font-size:.85rem;color:#315b42}.adventure-level-complete{text-align:center;padding:1rem .25rem .3rem}.adventure-statistics{padding:.5rem;background:#123f34;border-radius:10px}.adventure-statistics p{margin:.25rem}.maze-board{display:block;width:100%;height:auto;max-width:560px;margin:auto;border-radius:12px;border:2px solid #c6a565}.maze-santa{transition:transform .11s linear}.maze-controls{display:grid;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,48px);justify-content:center;gap:6px;margin:1rem auto .5rem;touch-action:none}.maze-controls button{padding:0!important;font-size:1.6rem;background:#f2dfb3;color:#204f40;border:1px solid #b9995a;touch-action:none;user-select:none;-webkit-user-select:none}.maze-up{grid-column:2;grid-row:1}.maze-left{grid-column:1;grid-row:2}.maze-down{grid-column:2;grid-row:2}.maze-right{grid-column:3;grid-row:2}.maze-controls-help{text-align:center;margin:.3rem 0}.adventure-complete button{margin-top:1rem}@media(min-width:650px){.memory-board{gap:12px}.memory-level-2{grid-template-columns:repeat(6,minmax(0,1fr));max-width:600px}.memory-card{border-radius:14px!important}}@media(prefers-reduced-motion:reduce){.memory-card,.maze-santa{transition:none}}.activity-body .adventure .eyebrow{color:#ead0a1}.activity-body .adventure h2{color:#f5d99f}.adventure-pause{border-radius:999px!important}.activity-body:has(>.adventure:not(:has(>.game-intro))){padding:clamp(.5rem,2vw,1rem)}.maze-map{width:100%;min-width:0}.maze-map-tools{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.6rem 0;font-size:.8rem;color:#f2d69d}.maze-map-tools button{font-size:.8rem;padding:.5rem .65rem;background:#f4e4c5;color:#174b3e}.maze-viewport{width:100%;overflow:auto;border-radius:14px;background:#e1eadc;overscroll-behavior:contain}.maze-viewport.is-detail{height:min(52vh,420px)}.maze-kind-labyrinth .maze-board{border-radius:12%;background:#dcece7}.maze-kind-braided .maze-viewport{background:#e8d9b4}.memory-card-back{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.memory-card>.memory-art{padding:7%;box-sizing:border-box}.memory-leaderboard{margin:1.4rem 0;text-align:left}.memory-leaderboard h3{text-align:center;color:#f2d39a}.memory-leaderboard ol{list-style:none;padding:0;margin:1rem 0}.memory-leaderboard li{display:grid;grid-template-columns:2.6rem minmax(0,1fr) auto;gap:.6rem;align-items:center;padding:.85rem .3rem;border-bottom:1px solid #a68f56}.memory-leaderboard li.is-me{background:#fff2cc0c;border-radius:8px}.memory-leaderboard li small{display:block;font-size:.73rem;line-height:1.5;color:#e0cda7}.memory-leaderboard li strong{overflow-wrap:anywhere}.memory-leaderboard li>b{font-size:.85rem}.memory-rank{text-align:center;font:1.5rem Georgia,serif;color:#f4d59b}@media(max-width:380px){.memory-leaderboard li{grid-template-columns:1.8rem minmax(0,1fr)}.memory-leaderboard li>b{grid-column:2}}.memory-game .adventure-points{font-size:1.25rem;line-height:1.5}.adventure button.primary{background:#7e2336;color:#fff5df;border:1px solid #a16d4a;border-radius:12px;min-height:44px}.memory-game .memory-card{aspect-ratio:3/4}.memory-card .memory-card-back{width:100%;height:100%;object-fit:contain}.group-activity{min-width:0}.group-stack,.group-feed{display:grid;gap:1.3rem}.group-intro p{max-width:68ch}.group-form{display:grid;gap:1rem}.group-form label,.group-photo label{display:grid;gap:.5rem}.group-form textarea{width:100%;resize:vertical}.group-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;margin-top:1rem}.group-actions>*{min-height:44px}.group-confirm{padding:1rem;border:1px solid var(--gold, #c6a767);background:#fff6df;border-radius:10px}.group-confirm p{color:#503b23}.group-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.group-player-list label{display:flex;gap:.65rem;align-items:center;min-height:44px;overflow-wrap:anywhere}.group-player-list input{width:20px;height:20px}.group-setup fieldset{border:1px solid #ceb77c;border-radius:10px;padding:1rem}.group-photo input{max-width:100%}.group-photo img,.group-post img,.doppel-card img{display:block;max-width:100%;max-height:440px;margin:1rem auto;object-fit:contain;border-radius:12px}.group-post p,.doppel-card blockquote{white-space:pre-wrap;overflow-wrap:anywhere}.group-post>strong{font-family:var(--serif, Georgia);font-size:1.2rem}.bucket-discussion{margin:14px 0;padding-top:12px;border-top:1px solid #c2aa755e}.bucket-poll,.bucket-poll>div,.bucket-comment-form{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.bucket-poll{gap:12px}.bucket-poll button{width:46px;height:44px;padding:0;border:1px solid #ad925d;border-radius:8px;background:#fff8e8}.bucket-poll button[aria-pressed=true]{border:2px solid #1e563f;background:#e1ebdb}.bucket-poll span{font-size:.875rem;font-variant-numeric:tabular-nums}.bucket-discussion h3{margin:14px 0 6px;font-size:1rem}.bucket-comments{list-style:none;padding:0;margin:0 0 12px}.bucket-comments li{padding:6px 0;overflow-wrap:anywhere}.bucket-comments li p{margin:0;white-space:pre-wrap}.bucket-comment-form input{flex:1 0 140px;min-width:0}.group-heart{display:inline-flex;gap:.5rem;align-items:center;min-height:44px;min-width:65px;justify-content:center;background:transparent;border:1px solid #c9af72;border-radius:30px;color:#8b2e32}.group-heart[aria-pressed=true]{background:#f1ddcd}.group-heart span:first-child{font-size:1.5rem}.group-host details{margin-top:1.5rem}.group-host details article{border-top:1px solid #d7c398;padding:1rem 0}.group-host summary,.teles-chain summary{min-height:44px;cursor:pointer;line-height:1.6}.teles-chain summary{font-family:Georgia,serif;font-size:1.2rem}.teles-chain ol{list-style:none;padding:0;display:grid;gap:1rem}.teles-chain li{padding:1rem;border-left:2px solid #c9ab6c;background:#f6eddb}.teles-chain img,.teles-context{display:block;max-width:100%;width:600px;border:1px solid #d3be8c;border-radius:10px;margin:1rem auto}.doppel-card h2{font-size:clamp(1.8rem,5vw,2.8rem)}.doppel-card blockquote{font-size:1.18rem;margin:1.5rem 0;padding-left:1.3rem;border-left:3px solid #b79251}.doppel-identity{padding:1rem;background:#f2e9d6;border-radius:10px}.likely-question select{width:100%;min-height:50px}.likely-question h2{font-size:clamp(1.5rem,4vw,2rem);line-height:1.35}.likely-review li{padding:.9rem 0;border-bottom:1px solid #d9c496}.likely-review button{display:block;min-height:44px}.likely-result ul{list-style:none;padding:0;display:grid;gap:.6rem}.likely-result li{padding:.65rem;display:grid;grid-template-columns:minmax(65px,1fr) minmax(30px,1fr) auto;gap:.6rem;align-items:center;font-size:.94rem;border-radius:7px}.likely-result li>span{overflow-wrap:anywhere}.likely-winner{background:#e7d3a4;color:#224137}.likely-bar{height:8px;background:#e4dcc7;border-radius:8px;overflow:hidden}.likely-bar>span{display:block;height:100%;background:#b14d3b}.turn-notification{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem;border:1px solid #d9b66c;background:#f6e5b7;color:#1a4437;border-radius:12px;margin-bottom:1.5rem}.spot-progress{display:block;font-family:Georgia,serif;font-size:1.6rem;margin:1rem 0}.spot-scroll{width:100%;min-width:0;max-width:100%;overflow:auto;overscroll-behavior:contain;border-radius:12px}.spot-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.spot-pair figure{margin:0;min-width:0}.spot-pair figcaption{font-family:Georgia,serif;padding:.6rem;text-align:center;color:#f3dba4;background:#123d32}.spot-pair.spot-enlarged{min-width:3088px;grid-template-columns:repeat(2,1536px)}.spot-target{position:relative;line-height:0;cursor:crosshair;touch-action:auto}.spot-target:focus-visible{outline:4px solid #e9bf62;outline-offset:-4px}.spot-target img{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none}.spot-target svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.spot-target svg rect{fill:#ffeb8a22;stroke:#ffe27e;stroke-width:6}.spot-target svg text{font-family:Arial,sans-serif;font-weight:700;font-size:30px;text-anchor:middle;fill:#1a342b;paint-order:stroke;stroke:#ffeb9c;stroke-width:7px;stroke-linejoin:round}.spot-target svg .spot-revealed rect{stroke:#e7cfa0;vector-effect:non-scaling-stroke;stroke-width:2px;stroke-dasharray:4 3;fill:#e7cfa00a;filter:drop-shadow(0 0 2px #fff0c8aa)}.spot-target svg .spot-revealed text{fill:#e7cfa0;stroke:#17392f}.memory-personal img{max-width:100%}.spot-crosshair{stroke:#fff;stroke-width:4;fill:none;filter:drop-shadow(0 0 2px #000)}.group-standings{list-style:none;padding:0}.group-standings li{display:flex;gap:1rem;padding:.65rem;border-bottom:1px solid #dcc69c}.group-standings strong{margin-left:auto}.group-success{padding:1rem;background:#e8edd9;border:1px solid #9da579;border-radius:10px}.group-success h2{font-size:1.7rem}@media(max-width:700px){.spot-pair{grid-template-columns:1fr}.spot-pair.spot-enlarged{grid-template-columns:1536px;min-width:1536px}.group-player-list{grid-template-columns:1fr}.turn-notification{align-items:flex-start;flex-direction:column}.likely-result li{grid-template-columns:minmax(50px,1fr) minmax(30px,.7fr) auto;font-size:.85rem}.group-actions>button.primary{flex:1}.teles-chain li{padding:.7rem}}.activity-main:has(.likely-question) .activity-heading{padding:1rem 0}.activity-main:has(.likely-question) .activity-heading .activity-icon,.activity-main:has(.likely-question) .activity-heading>p{display:none}.activity-main:has(.likely-question) .activity-heading h1{font-size:1.65rem;margin:.5rem 0}.likely-question{scroll-margin-top:12px}.likely-question:focus{outline:none}.memory-scrapbook .scrapbook-entry,.memory-scrapbook .group-form{background:#fff8e9;border:1px solid #d8c7a2;box-shadow:0 3px 12px #352d2110}.memory-scrapbook .scrapbook-entry>img{display:block;width:100%;max-height:440px;object-fit:contain;margin:.8rem auto;padding:6px;background:#fffdf6;border:1px solid #dfd3bb;border-radius:2px}.memory-scrapbook .memory-caption{font-family:Georgia,serif;font-size:1.1rem;line-height:1.6;color:#24483c;white-space:pre-wrap}.memory-scrapbook .group-feed>h2{margin:1.5rem 0 .8rem}.memory-scrapbook .memory-controls{align-items:center;gap:1rem}.memory-scrapbook .memory-controls .small{margin-right:auto}.memory-scrapbook .memory-edit,.memory-scrapbook .memory-remove{min-height:44px;padding:.4rem 0;border:0;font-size:.9rem}.memory-scrapbook .memory-remove{color:#94524b}.memory-scrapbook .group-heart{min-height:44px;padding:.35rem .2rem;font-size:.85rem}.memory-scrapbook .group-heart span:first-child{font-size:1rem}.memory-save-notice{margin:.4rem 0 0;color:#50644e;font-size:.85rem}.album-heading{text-align:center;padding:1rem;color:#24483c}.album-heading>span{color:#d4b367;font-size:1.8rem}.album-heading h2{font-family:var(--serif, Georgia);font-size:clamp(1.9rem,5vw,3rem);margin:.7rem 0}.album-heading p{max-width:42rem;margin:auto;color:#eedcba}.album-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.album-card{min-width:0;border:1px solid #d2b572;border-radius:8px;background:#fff7e5;color:#153e32;box-shadow:0 8px 24px #001e1833;overflow:hidden;overflow-wrap:anywhere}.album-card-sprig{text-align:center;color:#986f31;padding:.8rem 1rem 0}.album-card h3{font-family:var(--serif, Georgia);font-size:1.5rem;padding:0 1.3rem;text-align:center}.album-photo-button{display:block;width:calc(100% - 2rem);margin:1rem;padding:.4rem;background:#f7e8c5;border:1px solid #c9ab67;border-radius:3px}.album-photo-button img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#e7dcc5;display:block}.album-card-copy{padding:.5rem 1.4rem}.album-card-copy h4{font:1.7rem var(--serif, Georgia);color:#7f2936;margin:.5rem 0 1.5rem}.album-reason,.album-comment>p:not(.album-comment-by){white-space:pre-wrap;line-height:1.65}.album-credit{font-size:.85rem;color:#716341}.album-reactions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.3rem;padding:.7rem 1rem;border-top:1px solid #dec99b}.album-reactions button{min-width:0;min-height:48px;display:grid;justify-items:center;gap:.15rem;border:1px solid transparent;background:transparent;color:#234638;padding:.2rem;border-radius:8px}.album-reactions button>span:first-child{font-size:1.4rem}.album-reactions button[aria-pressed=true]{border-color:#a8833f;background:#f4e3ba;box-shadow:inset 0 0 0 1px #a8833f}.album-comments{padding:1rem;border-top:1px solid #dec99b}.album-comments summary{cursor:pointer;min-height:44px}.album-comment{border-bottom:1px solid #ddcda9;padding:.65rem 0}.album-reply{margin-left:1rem;border-left:2px solid #c3a15d;padding-left:.8rem}.album-comment-by{font-size:.86rem;display:flex;flex-wrap:wrap;gap:.5rem}.album-comment-by time{font-size:.75rem;color:#766746}.album-comment-actions{display:flex;flex-wrap:wrap;gap:1rem}.album-comment-actions button{min-height:44px}.album-comment-form{margin-top:1rem;display:grid;gap:.7rem}.album-comment-form label{display:grid;gap:.5rem}.album-comment-form textarea,.album-comment textarea{width:100%;resize:vertical}.album-empty{text-align:center;padding:2.5rem 1rem}.album-empty span{color:#aa8244;font-size:2rem}.album-lightbox{position:fixed;inset:var(--app-top-inset) 0 var(--safe-area-bottom);margin:auto;width:min(95vw,1100px);max-height:min(95dvh,calc(100dvh - var(--app-top-inset) - var(--safe-area-bottom) - 1rem));padding:1rem;border:1px solid #d4b36e;background:#f8eddb;border-radius:10px}.album-lightbox::backdrop{background:#00251fee}.album-lightbox img{display:block;max-width:100%;max-height:80dvh;object-fit:contain;margin:1rem auto 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.album-gallery{grid-template-columns:1fr}.album-reactions{padding:.7rem;gap:.2rem}.album-card-copy{padding:.5rem 1.1rem}}.story-so-far p,.storybook-prose p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}.activity-heading .game-instructions{white-space:pre-line}.story-so-far article{border-top:1px solid #d6bf88;padding:1rem 0}.story-so-far small{color:#76633d}.story-opening{font-family:var(--serif, Georgia);font-size:1.2rem}.story-writing textarea{overflow:hidden;resize:vertical;min-height:130px}.activity-body.storybook-body{padding:0;border:0;background:transparent;box-shadow:none}.keepsake-book{width:min(100%,720px,calc((100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 32px)*.75));aspect-ratio:3 / 4;margin:1rem auto;border:1px solid #c8a760;border-radius:8px;box-shadow:0 15px 45px #001c1680;position:relative;overflow:hidden}.storybook-cover,.storybook-page{position:absolute;inset:0;border-radius:inherit}.storybook-cover img{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}.storybook-open{position:absolute;left:17%;top:80%;width:66%;height:9%;padding:0;border:0;border-radius:12px;background:transparent}.storybook-open:focus-visible{outline:3px solid #fff3c7;outline-offset:3px}.storybook-page{background:#fff7e6;color:#143c30}.storybook-page:before{content:"";position:absolute;inset:1.5% 2%;border:3px double #c3a467;border-radius:5px;pointer-events:none}.storybook-page-heading{position:absolute;inset:4% 7% auto;height:8%;display:flex;align-items:center;gap:8px;border-bottom:1px solid #d8c18d;color:#79613b;font-size:.7rem;line-height:1.2}.storybook-page-heading button{padding:0 6px;min-height:44px;color:#75402f}.storybook-prose{position:absolute;inset:14% 7% 10%;font-family:var(--serif, Georgia);font-size:18px;line-height:1.3;display:flow-root;overflow:hidden;overflow-wrap:anywhere;bottom:max(10%,calc(4% + 52px))}.storybook-passage{margin:0 0 .5em}.storybook-prose p{margin:0;font-size:inherit;line-height:inherit}.storybook-passage small{display:block;margin-top:.15em;font-family:var(--sans, Arial);font-size:.85em;line-height:1.2;color:#796646}.storybook-page-number{position:absolute;inset:auto 7% 4%;text-align:center;color:#8f6c37;border-top:1px solid #d8c18d;padding-top:2%;font-size:.8rem}.storybook-overflow{position:absolute;inset:16% 9% 12%;display:grid;place-content:center;text-align:center;font-size:1rem;overflow-wrap:anywhere;gap:12px}.storybook-overflow p{margin:0}.story-reading{width:100%;max-width:730px;margin:1rem auto;padding:clamp(20px,5vw,40px);border:1px solid #c8a760;border-radius:8px;background:#fff7e6;color:#143c30;overflow-wrap:anywhere;scroll-margin-top:var(--app-top-inset)}.story-reading:focus{outline:none}.story-reading h2{margin:24px 0;font-family:var(--serif, Georgia);font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.2;color:inherit}.story-reading-content{font-family:var(--serif, Georgia)}.story-reading-content .storybook-passage{margin:0 0 1.2rem}.story-reading-content p{margin:0;white-space:pre-wrap;font-size:1.0625rem;line-height:1.7}.story-reading-footer{padding:16px 0 0;margin-top:24px;border-top:1px solid #d8c18d}.sack-question-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.sack-tier{border:1px solid #b28e46;border-radius:20px;padding:.35rem .85rem;font-size:.85rem;color:#674c27;background:#f0e2c3}.sack-macro{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;display:block;border:1px solid #bc9c59;border-radius:8px;margin-bottom:1.4rem}.sack-question form,.sack-question label{display:grid;gap:.7rem}.sack-hint{border-top:1px solid #d6bf87;padding-top:1.2rem;margin-top:.8rem}.sack-hint p{line-height:1.6}.sack-tier-transition{text-align:center}.sack-question input{min-width:0;width:100%}@media(max-width:360px){.album-reactions{grid-template-columns:repeat(3,minmax(0,1fr))}}.album-card .eyebrow{color:#795b27}.storybook-page-heading{color:#77552d}.game-summary.day-11 .pills>span,.game-summary.day-14 .pills>span,.sack-run .timer-row strong,.word-run .timer-row strong{color:#17392f}.capsule-draft{white-space:pre-wrap;overflow-wrap:anywhere;padding:1.25rem;border:1px solid #c3a16b;border-radius:.6rem;background:#fff9ed;max-height:60vh;overflow-y:auto}.capsule-activity textarea{width:100%;min-height:220px;resize:vertical;line-height:1.6}.capsule-activity a.primary{color:#fff5d8;display:block;text-align:center;text-decoration:none}.capsule-activity .group-success svg{display:block;margin:0 auto 1rem}.awards-full-results{margin-top:1.5rem}.awards-full-results>summary{cursor:pointer;padding:.75rem 0}.awards-full-results article{margin-top:1.5rem;border-top:1px solid #d8c6a4;padding-top:1rem}.awards-full-results dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0}.awards-full-results dd{margin:0;font-variant-numeric:tabular-nums}.doppel-activity>.panel:has(+.album){margin-bottom:0}.storybook-passage p{white-space:pre-wrap}.storybook-page-number{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding-top:0}.storybook-page-number button{min-width:44px;min-height:44px;padding:0;font-size:1.8rem;color:#75402f}.storybook-leaf{display:flow-root;animation:story-turn .18s ease-out}@keyframes story-turn{0%{opacity:.35;transform:translate(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.storybook-leaf{animation:none}}.christmas-trivia{width:100%;max-width:42rem;margin:0 auto 2rem;padding:clamp(1.2rem,4vw,2.6rem);color:#253f35;background:#fff8e9;border:1px solid #d8bd82;border-radius:1rem;box-shadow:0 12px 35px #002b2533;scroll-margin-top:1.2rem;overflow-wrap:anywhere}.christmas-trivia:focus{outline:none}.trivia-intro,.trivia-result{text-align:center}.trivia-ornament{display:block;color:#a87b32;font-size:2.3rem;margin-bottom:1rem}.christmas-trivia h2{font-size:clamp(1.55rem,4vw,2.1rem);line-height:1.3;letter-spacing:-.015em}.trivia-intro p{max-width:34rem;margin-inline:auto}.trivia-resume-note{padding:.8rem;background:#efe5d0;border-radius:.5rem}.trivia-progress{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;font-size:.85rem;color:#58614e}.trivia-progress progress{flex:1;min-width:3rem;height:.35rem;appearance:none;border:none;border-radius:1rem;background:#e6d8ba;accent-color:#a47d36}.trivia-progress progress::-webkit-progress-bar{background:#e6d8ba;border-radius:1rem}.trivia-progress progress::-webkit-progress-value{background:#a47d36;border-radius:1rem}.trivia-progress progress::-moz-progress-bar{background:#a47d36;border-radius:1rem}.trivia-metadata{margin:1.2rem 0 .7rem;color:#755625;text-transform:uppercase;font-size:.76rem;font-weight:650;letter-spacing:.1em;line-height:1.5}.trivia-options{display:flex;flex-direction:column;gap:.65rem}.trivia-option{width:100%;display:flex;align-items:center;gap:.85rem;min-height:3.5rem;padding:.7rem .9rem;text-align:left;background:#fffdf6;color:#253f35;border:1px solid #cbbd9f;border-radius:.55rem;line-height:1.45;transition:border-color .15s,background .15s}.trivia-letter{flex:0 0 1.7rem;font-size:.8rem;font-weight:700;color:#82642b}.trivia-option.is-selected{border-color:#a47d36;background:#f2e5c8;box-shadow:inset 0 0 0 1px #a47d36}.trivia-option.is-correct{border-color:#225444;background:#e5ece2;box-shadow:inset 0 0 0 1px #225444}.trivia-option:disabled{opacity:1}.trivia-confirm{width:100%;margin-top:1.2rem;min-height:3rem}.trivia-help{text-align:center;font-size:.8rem;color:#706754;margin:.8rem 0 0;line-height:1.5}.trivia-feedback{border-top:1px solid #d8bd82;margin-top:1.3rem;padding-top:1.1rem}.trivia-feedback h3{color:#214e40;margin-bottom:.7rem;font-size:1.5rem}.trivia-feedback p{line-height:1.55;margin-bottom:.7rem}.trivia-answer{font-size:.92rem}.trivia-answer>span{color:#706754}.trivia-earned{font-size:.85rem;font-weight:650;color:#755625}.trivia-save-error{margin:1rem 0;padding:1rem;color:#772a3a;background:#f3e4e2;border-left:3px solid #8d3b4b;text-align:left;border-radius:.35rem}.trivia-save-error p{margin-bottom:.6rem;line-height:1.5}.trivia-final-score{font-family:Georgia,serif;font-size:clamp(3rem,12vw,5rem);line-height:1.1;color:#214e40;margin-block:1.2rem}.trivia-final-score span{font-size:.5em;color:#78603c}.trivia-breakdown{max-width:25rem;margin:1.5rem auto;text-align:left}.trivia-breakdown>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #ded0b5;padding:.55rem 0}.trivia-breakdown dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}.truth-statements{padding-left:1.5rem;margin:1rem 0}.truth-statement{padding:.65rem .6rem;margin-block:.35rem;border-left:3px solid transparent;line-height:1.6;border-radius:.3rem;overflow-wrap:anywhere;font-weight:400}.truth-statement.is-lie{background:#f1e2e1;border-left-color:#8b3545;color:#542c32}.truth-statement.is-lie strong{font-weight:750}.lie-label{display:inline-block;margin-left:.6rem;padding:.08rem .45rem;border:1px solid #a0636d;border-radius:.25rem;color:#7b293c;background:#f8eeeb;font-size:.75rem;font-weight:750;letter-spacing:.08em;vertical-align:baseline}@media(prefers-reduced-motion:reduce){.trivia-option{transition:none}}.lyric-blank{display:inline-block;min-width:2.5rem;color:#8c3028;border-bottom:2px solid #a47d36;text-align:center}.lyric-excerpt mark{background:#f2e5c8;color:#253f35;border-radius:3px;padding:0 2px}.lyric-language{font-size:.8rem;color:#706754}.trivia-option.is-incorrect{border-color:#8c3028;background:#f3e4e2;box-shadow:inset 0 0 0 1px #8c3028}.lyric-feedback.is-incorrect h3{color:#8c3028}.lyric-feedback a,.lyric-review a{font-size:.85rem}.lyric-review{text-align:left;margin-top:1.5rem}.lyric-review details{padding:.7rem 0;border-bottom:1px solid #ded0b5}:root{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#283b31;background:#f6eedf;--burgundy: #b52c4b;--paper: #fffaf0;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--app-top-inset: calc(var(--safe-area-top) + min(var(--safe-area-top), 24px));scroll-padding-top:var(--app-top-inset);font-synthesis:none;font-weight:400;--green: #086448;--cream: #f6eedf;--gold: #b87910;--muted: #756b59;--red: #b52c4b;--line: #d8c6a4}@media(max-width:760px)and (display-mode:standalone){:root{--app-top-inset: calc(var(--safe-area-top) + 24px)}}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bc934f;outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:400}h1{font-size:clamp(2.5rem,4.8vw,4.5rem);line-height:1.07;letter-spacing:-.045em}h2{font-size:2rem;letter-spacing:-.025em}h3{font-size:1.45rem;line-height:1.3}p{line-height:1.7}a{color:var(--green)}button{border:0;background:none}input,textarea,select{border:1px solid #d2c3a7;border-radius:7px;background:#fffaf0;padding:12px 13px;min-height:46px;color:#283b31;width:100%}input:focus,textarea:focus{border-color:var(--green)}textarea{min-height:120px;resize:vertical}input[type=radio]{width:16px;min-height:16px;accent-color:var(--green);margin:0 10px 0 0}input[type=file]{font-size:14px;background:transparent;border:0}label{display:block;font-size:.85rem;font-weight:600;line-height:1.5}label>input,label>textarea,label>select{display:block;margin-top:8px;font-weight:400}form{display:grid;gap:19px}fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}legend{font-weight:600;line-height:1.5;padding:0 0 14px}small,.small{font-size:.78rem}.muted{color:var(--muted)}.eyebrow{font-size:.64rem;letter-spacing:.16em;font-weight:650;line-height:1.6;text-transform:uppercase;color:#926c37}.site-header{--header-height: 88px;--header-gutter: 48px;min-height:calc(var(--header-height) + var(--app-top-inset));display:flex;align-items:center;justify-content:space-between;max-width:1320px;margin:auto;padding:var(--app-top-inset) max(var(--header-gutter),var(--safe-area-right)) 0 max(var(--header-gutter),var(--safe-area-left));border-bottom:1px solid var(--line);gap:28px}.brand{display:flex;align-items:center;gap:12px;padding:0;text-align:left;white-space:nowrap}.brand span{font-family:Georgia,serif;font-size:1.25rem;letter-spacing:-.025em}.header-right{display:flex;align-items:center;gap:18px}.language-select{width:65px;border:0;background:transparent;padding:8px;min-height:42px;font-size:.75rem}.profile-button,.avatar{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:#ebddbd;font-size:.8rem;font-weight:600;flex-shrink:0}.main{max-width:1200px;margin:0 auto;padding:0 36px 64px}.primary,.secondary,.button-link{min-height:48px;padding:13px 22px;border-radius:6px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:14px;transition:background .18s,transform .18s;text-decoration:none}.primary{background:var(--burgundy);color:#fff2d7}.primary:hover{background:#71262b}.primary:disabled{opacity:.45}.primary span{margin-left:auto}.secondary{background:#edf0e6;border:1px solid #d5dccb;color:var(--green)}.secondary:hover{background:#e1e8d8}.text-button{font-size:.8rem;padding:8px 0;text-align:left;text-decoration:underline;text-underline-offset:4px;line-height:1.5}.text-button:hover{color:var(--red)}.danger{color:#a44f44}.error{background:#f7e7e1;border:1px solid #e6c4b9;color:#883e32;font-size:.85rem;padding:13px 16px;border-radius:7px;line-height:1.6}.success{background:#e6eddf;padding:14px;border-radius:7px}.loading-page{display:flex;flex-direction:column;min-height:80vh;align-items:center;justify-content:center;gap:20px}.loading{padding:90px 0;text-align:center;color:var(--muted)}.landing{max-width:1180px;min-height:calc(100vh - 180px);margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:110px;padding:72px 52px 70px;align-items:center}.landing-copy{position:relative;min-height:0;padding-top:10px}.landing-copy h1{font-size:clamp(2.7rem,4vw,3.5rem);max-width:440px;margin:22px 0}.landing-copy>p{font-size:.94rem;max-width:360px;color:var(--muted)}.landing-note{display:flex;align-items:center;gap:16px;margin-top:38px;font-size:.63rem;letter-spacing:.12em}.landing-note>span{font-family:Georgia,serif;font-size:1.7rem;letter-spacing:-.05em;border-right:1px solid #c5cbbd;padding-right:16px}.landing-note small{display:block;letter-spacing:0;text-transform:none;margin-top:4px;color:var(--muted);font-size:.75rem}.auth-card{border:1px solid #d8c6a4;background:#fffaf0;box-shadow:0 18px 55px #294b3610;border-radius:12px;padding:38px 38px 32px;position:relative}.auth-card:before{position:absolute;content:"";inset:7px;border:1px solid #e9dcc1;border-radius:8px;pointer-events:none}.auth-card>*{position:relative}.auth-card h2{font-size:2.1rem;margin:12px 0}.auth-card>p{font-size:.85rem;margin-bottom:24px}.auth-card .little-star{color:var(--gold);font-size:1.2rem}.auth-card .primary{width:100%}.auth-switch{display:grid;gap:3px;border-top:1px solid #e4d6b9;margin-top:24px;padding-top:18px}.recovery-code{display:block;word-break:break-all;background:#ecefe4;padding:16px;margin:20px 0;font-size:.8rem;line-height:1.8}.auth-card>.secondary{margin-bottom:14px}footer{max-width:1200px;margin:auto;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;padding:25px 36px 30px;color:#80745d;font-size:.68rem}.section-heading{display:flex;align-items:center;gap:22px}.section-heading>span:last-child:not(.eyebrow){color:var(--gold)}.activity-main{max-width:960px;padding-top:32px}.back-button{padding:8px 0;font-size:.75rem;color:var(--muted)}.activity-heading{text-align:center;padding:35px 0 28px;max-width:680px;margin:auto}.activity-heading .eyebrow{display:block}.activity-icon{font-size:2.3rem;display:block;margin:23px 0 16px}.activity-heading h1{font-size:clamp(2.2rem,4.5vw,3.4rem);margin-bottom:19px}.activity-heading>p{max-width:600px;margin:auto;color:var(--muted);font-size:.9rem}.activity-body{max-width:730px;margin:auto;background:#fffaf0;border:1px solid #dde1d4;border-radius:11px;padding:30px 34px}.social-form{gap:22px}.social-form>.small{margin-bottom:0}.welcome-surprise{text-align:center;border:1px dashed #c8bd9b;background:#f3efdf;padding:35px 24px;border-radius:7px}.paper-star{font-size:3.5rem;color:#bc934f;margin-bottom:22px}.welcome-surprise p{font-size:.85rem;color:var(--muted)}.choice-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option{border:1px solid #d3dacb;border-radius:6px;padding:13px 15px;font-size:.8rem;line-height:1.5;display:flex;align-items:center;justify-content:center;background:#f5f5eb;min-height:46px;font-weight:400;text-align:center}.option.selected{background:#e3ead8;border-color:#738767;box-shadow:inset 0 0 0 1px #738767}.choice-questions .option{justify-content:flex-start}.upload-zone{display:flex;align-items:center;flex-direction:column;gap:10px;background:#f2f3e8;border:1px dashed #b7c3ab;border-radius:7px;padding:25px;text-align:center}.upload-zone span{font-weight:400;font-size:.75rem;color:var(--muted)}.upload-zone .upload-icon{font-size:1.8rem;color:var(--green)}.upload-zone input{max-width:260px}.photo-preview{max-width:100%;max-height:360px;object-fit:contain;border-radius:6px}.locked-note{font-size:.75rem;color:var(--muted);text-align:center;margin:25px 0 0}.drawing-prompt{padding:15px 18px;background:#e9eddf;border-radius:6px;font-size:.85rem}.drawing canvas{width:100%;height:auto;border:1px solid #d5d8ca;border-radius:7px;touch-action:none;display:block}.drawing-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:13px}.drawing-tools>span{font-size:.7rem;margin-right:7px}.drawing-tools .text-button{margin-left:6px;font-size:.7rem}.swatch{width:24px;height:24px;border-radius:50%;padding:0;border:3px solid #fffaf0;box-shadow:0 0 0 1px transparent}.swatch.selected{box-shadow:0 0 0 1px #6e7864}.completion-note{display:flex;align-items:center;gap:14px;background:#e8eddf;border:1px solid #d7dfcb;border-radius:7px;padding:17px 19px}.completion-note>span{font-size:1.6rem}.completion-note strong{font-size:.85rem}.completion-note p{font-size:.75rem;color:var(--muted);margin:4px 0 0}.completion-note .text-button{margin-left:auto;font-size:.65rem}.contributions{margin-top:35px;padding-top:24px;border-top:1px solid var(--line)}.contributions .section-heading{margin-bottom:22px}.entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.entry-card{background:#faf9f1;border:1px solid #dde2d3;border-radius:8px;overflow:hidden;min-width:0}.entry-image{width:100%;max-height:360px;object-fit:contain;display:block;background:#f1eee3}.entry-content{padding:16px}.entry-content p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.84rem}.entry-name{display:flex;align-items:center;gap:9px;margin-bottom:14px}.entry-name .avatar{width:27px;height:27px;font-size:.65rem}.entry-name strong{font-size:.75rem}.entry-actions{display:flex;align-items:center;gap:15px;margin-top:18px}.reaction{font-size:1.1rem;padding:5px}.reaction.reacted{color:#a85e4f}.entry-actions .small{font-size:.7rem;color:var(--muted)}.text-link{font-size:.75rem;word-break:break-word}.guess-row{display:grid;gap:8px}.guess-row input,.guess-row select{font-size:.75rem}.guess-row button{font-size:.68rem;min-height:38px;padding:8px}.entry-content ol{padding-left:19px;font-size:.85rem;line-height:1.8}.story-context{background:#eef0e4;border-left:2px solid #b8a46e;border-radius:0 6px 6px 0;padding:20px 23px;margin-bottom:24px}.story-context p{font-family:Georgia,serif;font-size:1.2rem;line-height:1.6;margin:0}.story-context>span{color:var(--gold);display:block;margin-bottom:12px}.chain-image{display:block;max-width:100%;max-height:300px;margin-top:15px;border-radius:5px}.storybook{background:#f3eddb;border:1px solid #e3dac1;border-radius:5px;padding:30px}.storybook p{font-family:Georgia,serif;font-size:1.2rem;line-height:1.8}.storybook p>span{display:block;font-family:system-ui,sans-serif;font-size:.65rem;font-style:italic;color:var(--muted);text-align:right}.chain-card{border:1px solid var(--line);border-radius:7px;margin-bottom:20px;padding:22px;text-align:center}.chain-card img{width:100%;max-height:260px;object-fit:contain}.chain-card small{display:block;margin:15px 0;color:var(--muted)}.chain-card p{font-family:Georgia,serif;font-size:1.3rem;margin:15px 0}.chain-card>div>span{color:var(--gold);display:block;margin:14px 0}.kind-note{font-family:Georgia,serif;font-size:1.3rem;line-height:1.6;background:#f3eadb;border-radius:5px;padding:28px;margin:0 0 20px}.kind-note span{display:block;text-align:right;margin-top:12px;color:var(--red)}.empty{padding:30px 5px;font-style:italic;color:var(--muted);font-size:.9rem}.poll-result{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.poll-result h3{font-size:1.2rem}.poll-result>div{position:relative;padding:12px 10px;font-size:.8rem;display:flex;justify-content:space-between;margin:6px 0;background:#f0f2e8;border-radius:4px;overflow:hidden;isolation:isolate}.result-bar{position:absolute;inset:0 auto 0 0;background:#dbe4cc;z-index:-1}.poll-result>p{font-size:.85rem;display:flex;justify-content:space-between}.game-summary{padding-bottom:22px;border-bottom:1px solid var(--line)}.game-summary p{font-size:.85rem}.pills{display:flex;flex-wrap:wrap;gap:10px}.pills>span,.score-pill{font-size:.7rem;background:#eaf0e0;padding:7px 11px;border-radius:20px;display:inline-block;margin:0}.game-start{text-align:center;padding:35px 12px}.large-icon{font-size:3rem;display:block;margin-bottom:25px}.game-start>p{font-size:.85rem;margin-bottom:25px}.game-start>button{display:block;margin:15px auto}.game-run{padding:22px 0 5px}.timer-row{display:flex;justify-content:space-between;align-items:center;font-size:.7rem}.timer-row strong{font-size:1.1rem;background:#eee6cc;padding:8px 15px;border-radius:20px;font-variant-numeric:tabular-nums}.game-run>.primary{width:100%;margin-top:25px}.question-card{padding:24px 0}.question-card h3{font-size:1.7rem;line-height:1.5;margin-bottom:25px;white-space:pre-line}.question-card .eyebrow{margin-bottom:19px}.question-nav{display:flex;align-items:center;justify-content:space-between;margin-top:25px;gap:12px}.question-nav>span{display:flex;gap:5px;flex-wrap:wrap;justify-content:center}.question-dot{width:8px;height:8px;border-radius:50%;padding:0;background:#d8decd}.question-dot.current{outline:1px solid #a48c56;outline-offset:2px;background:#bfa674}.question-dot.answered{background:#668358}.question-nav .secondary{padding:10px 13px;min-height:40px;font-size:.7rem}.mystery-image{width:220px;height:200px;overflow:hidden;border-radius:7px;background:#f4eddc;margin:10px auto 30px;display:grid;place-items:center}.mystery-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.9)}.review{background:#eaf0df;border:1px solid #d7dfc9;padding:25px;border-radius:7px;margin:25px 0}.review h3{margin-top:12px;font-size:1.7rem}.review p{font-size:.8rem}.review details{font-size:.8rem}.answer-review{border-top:1px solid #d5ddc6;padding:15px 0;margin-top:15px}.answer-review strong{font-size:.8rem}.answer-review p{margin:8px 0}.attempt-history{border-top:1px solid var(--line);padding:18px 0;font-size:.8rem}.attempt-history summary{cursor:pointer}.attempt-history .review{margin-bottom:0}.word-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));border:1px solid #cad2bc;border-radius:5px;padding:4px;background:#f2f4e8;margin:22px 0;touch-action:manipulation}.word-grid button{padding:0;aspect-ratio:1;font-size:clamp(.65rem,2.4vw,1rem);border-radius:3px;font-family:ui-monospace,monospace;font-weight:600}.word-grid button:hover{background:#e0e8d2}.word-grid .start{background:#d4b772;color:#173f32}.word-grid .found{background:#cee0b7}.word-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.word-list span{font-size:.7rem;border:1px solid #d4ddc7;border-radius:3px;padding:6px 9px;font-family:ui-monospace,monospace}.word-list span.complete{text-decoration:line-through;background:#e0eacb;color:#6d7c60}.snake-wrap{text-align:center}.snake-wrap>p{font-size:.8rem}.snake-wrap canvas{width:100%;max-width:400px;display:block;margin:20px auto;border-radius:8px;touch-action:none}.snake-controls{display:flex;gap:10px;justify-content:center;margin-top:20px}.snake-controls button{width:47px;height:45px;border:1px solid #cbd4be;border-radius:6px;background:#ebefe2;font-size:1.3rem}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.price-card{background:#f5f2e6;border:1px solid #e2dfcd;border-radius:6px;padding:18px;display:flex;flex-direction:column;gap:12px}.price-icon{font-size:1.8rem}.price-card strong{min-height:38px;font-family:Georgia,serif;font-size:1rem;font-weight:400}.price-card input{margin-top:0}.page-heading{text-align:center;padding:60px 15px 35px;max-width:700px;margin:auto}.page-heading h1{font-size:3.1rem;margin:20px 0}.page-heading p{font-size:.9rem;color:var(--muted)}.leaderboard-page{max-width:850px;margin:auto}.leaderboard-table{border:1px solid #d9dfcf;border-radius:9px;overflow:hidden;background:#fffaf0}.leaderboard-row{display:grid;grid-template-columns:55px minmax(100px,1fr) 130px 65px;align-items:center;gap:20px;padding:20px 28px;border-bottom:1px solid #e5e8dd;font-size:.8rem}.leaderboard-row:last-child{border-bottom:0}.leaderboard-row.headings{font-size:.65rem;color:var(--muted);background:#edf0e4;padding-top:15px;padding-bottom:15px}.leaderboard-row.you{background:#eaf0df}.leaderboard-row>span:last-of-type:not(.player){font-size:.75rem;color:var(--muted)}.player{display:flex;gap:12px;align-items:center;min-width:0}.player strong{overflow-wrap:anywhere}.rank{font-family:Georgia,serif;font-size:1.3rem;color:var(--gold)}.panel{background:#fffaf0;border:1px solid #dbe0d0;border-radius:8px;padding:27px 30px;margin-bottom:24px}.panel h2{font-size:1.65rem}.panel p{font-size:.85rem}.settings-page{max-width:650px;margin:auto}.settings-page>.danger{display:block;margin:25px auto}.admin-grid{max-width:800px;margin:auto;padding-top:45px}.admin-grid>.section-heading{justify-content:space-between;margin-bottom:25px}.admin-grid h1{font-size:3rem;margin:0}.admin-grid .panel>.text-button{display:block;margin-top:14px}.invite-link{display:flex;gap:10px;margin-top:20px}.invite-link input{font-size:.75rem;min-width:0}.member-row{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding:17px 0}.member-row>div{margin-right:auto;min-width:0}.member-row strong{font-size:.82rem;overflow-wrap:anywhere}.member-row small{display:block;color:var(--muted);margin-top:5px;font-size:.68rem}.member-row .text-button{font-size:.65rem;max-width:130px}.content-editor{margin-top:25px}.language-tabs{display:flex;gap:10px}.content-editor summary{cursor:pointer;font-size:.85rem;padding:12px;background:#eef0e5;border-radius:4px}.content-editor fieldset{margin-top:20px}.content-editor fieldset label{margin-bottom:14px}.preview-banner{background:#ede2c4;border-bottom:1px solid #d9c28b;padding:12px 36px;font-size:.65rem;display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:var(--app-top-inset);z-index:10}.preview-banner>div{display:flex;align-items:center;gap:20px}.preview-banner label{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:.65rem}.preview-banner select{display:inline-block;width:130px;min-height:33px;padding:5px;margin:0;font-size:.7rem}.preview-banner button{font-size:.7rem;text-decoration:underline}.offline-banner{background:#eee2d0;font-size:.75rem;text-align:center;padding:12px 20px;border-bottom:1px solid #d9c9ad}.story-ending{font-family:Georgia,serif;font-size:1.2rem!important;line-height:1.8;border-top:1px solid #c7d3b3;padding-top:20px}@media(min-width:1400px){.landing{gap:135px}}@media(max-width:1050px){.landing{gap:55px;padding:55px 36px}.auth-card{padding:30px}.site-header{--header-gutter: 32px}}@media(max-width:760px){.site-header{--header-height: 75px;--header-gutter: 22px;gap:15px;flex-wrap:wrap}.brand{gap:8px}.brand span{font-size:1.08rem}.brand svg{width:25px}.header-right{gap:10px;margin-left:auto}.language-select{width:57px;padding:7px}.main{padding:0 22px 45px}.landing{display:flex;flex-direction:column;gap:25px;padding:42px 24px}.landing-copy{min-height:260px;width:100%;padding:0;max-width:470px}.landing-copy .eyebrow{font-size:.6rem}.landing-copy h1{font-size:3rem;max-width:320px;margin:20px 0}.landing-copy>p{max-width:290px;font-size:.84rem}.landing-note{margin:25px 0 0}.auth-card{width:100%;max-width:470px;padding:27px}.auth-card h2{font-size:1.9rem}.activity-main{padding-top:18px}.activity-heading{padding:27px 0}.activity-heading h1{font-size:2.45rem}.activity-heading>p{font-size:.84rem}.activity-body{padding:24px 22px}.entry-grid{gap:14px}.entry-content{padding:13px}.entry-name{gap:6px}.entry-name strong{font-size:.7rem}.entry-content p{font-size:.78rem}.drawing-tools{gap:7px}.drawing-tools>span{flex-basis:100%;margin-bottom:3px}.completion-note{gap:10px;padding:14px}.completion-note strong{font-size:.75rem}.completion-note .text-button{font-size:.6rem}.page-heading{padding-top:35px}.page-heading h1{font-size:2.5rem}.leaderboard-row{grid-template-columns:27px minmax(85px,1fr) 65px 42px;gap:12px;padding:17px 18px}.leaderboard-row.headings{font-size:.55rem}.leaderboard-row .avatar{width:29px;height:29px;font-size:.65rem}.player{gap:8px}.player strong{font-size:.72rem}.panel{padding:24px}.panel h2{font-size:1.5rem}.preview-banner{position:relative;top:auto;padding:12px 20px;flex-direction:column;align-items:flex-start;gap:10px}.preview-banner>div{width:100%;justify-content:space-between}.member-row{gap:10px}.member-row .text-button{font-size:.6rem;max-width:100px}.invite-link{flex-direction:column}.admin-grid h1{font-size:2.5rem}.word-grid{padding:3px}.game-start{padding:30px 0}.question-card h3{font-size:1.45rem}.price-grid{gap:10px}.price-card{padding:14px}.price-card strong{font-size:.92rem}.price-card .small{font-size:.65rem}.question-nav{gap:8px}.question-nav>span{gap:4px;max-width:90px}.question-dot{width:7px;height:7px}.question-nav .secondary{font-size:.65rem;padding:10px}.review{padding:20px}.storybook{padding:22px}.storybook p{font-size:1.1rem}.kind-note{font-size:1.15rem;padding:22px}footer{padding:22px;flex-direction:column;font-size:.63rem;gap:10px}}@media(max-width:440px){.activity-body{padding:20px 16px}.entry-grid,.choice-options{grid-template-columns:1fr}.choice-options .option{justify-content:flex-start}.drawing-tools .text-button{margin-left:1px;font-size:.63rem}.swatch{width:23px;height:23px}.timer-row strong{font-size:.95rem;padding:8px 12px}.word-grid button{font-size:.7rem}.page-heading h1{font-size:2.35rem}.leaderboard-row{padding:15px 12px;gap:8px;grid-template-columns:24px minmax(85px,1fr) 50px 35px}.leaderboard-row.headings{font-size:.5rem}.price-card{padding:12px}.price-card input{padding:10px;width:100%;min-width:0}.member-row{flex-wrap:wrap}.member-row>div{flex-basis:100%}.completion-note{flex-wrap:wrap}.auth-card{padding:25px}.landing-copy h1{font-size:2.8rem}.site-header .brand span{font-size:1rem}.main{padding-left:18px;padding-right:18px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.game-standings{border-top:1px solid var(--line);padding-top:24px;margin-top:20px}.game-standings h3{font-size:1.2rem}.standing-row{display:grid;grid-template-columns:1fr 60px 55px;gap:15px;padding:13px 0;border-bottom:1px solid #e1e6d6;font-size:.78rem}.standing-row>span:last-child{font-variant-numeric:tabular-nums;color:var(--muted)}@media(max-width:440px){.preview-banner>div{flex-wrap:wrap;gap:10px}.word-grid button{font-size:.82rem}}body{background:radial-gradient(ellipse at 5% 25%,#d5f1e6 0,transparent 38%),radial-gradient(ellipse at 95% 65%,#f8dfe6 0,transparent 36%),linear-gradient(#fff9eb,#fff0cf)}.site-header{max-width:none;background:#086448;color:#f2dfb6;border-bottom:3px solid #ffcc58}.brand{color:#f2dfb6}.brand svg{color:#d8b775}.site-header .language-select{color:#f2dfb6}.site-header .language-select option{color:#283b31;background:#fffaf0}.profile-button{background:#8f2e32;color:#ffe8bb;border:1px solid #c1a06b}.auth-card{border-top:4px solid #8f2e32;box-shadow:0 18px 55px #53331c12}.auth-card h2,.page-heading h1,.activity-heading h1{color:var(--burgundy)}@media(max-width:760px){.landing-copy{min-height:auto;text-align:center}.landing-copy h1,.landing-copy>p{margin-left:auto;margin-right:auto}.landing-note{justify-content:center}}.photo-ready{margin:-10px 0 0;color:#086448;font-size:.8rem;font-weight:600}:root{color:#efd6a5;background:#003b31;--green: #155f44;--burgundy: #ad3d32;--gold: #e8c58a;--muted: #b8c9b7;--line: #d7ba7d44}body{background:#003b31}a{color:#efce93}.site-header{background:#00372e;border-bottom-color:#c7aa7166}.main:has(.facade-calendar){max-width:972px;padding-bottom:18px}.calendar-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:900px;margin:15px auto 12px;color:#cdbd96;font-size:.65rem;letter-spacing:.1em}.facade-score{color:#f2d7a1;white-space:nowrap;font-size:.72rem;letter-spacing:0;padding:7px 10px;border:1px solid #ac956355;border-radius:4px}.facade-score strong{font:1.2rem Georgia,serif;margin-right:4px}.facade-score>span{margin-left:9px}.landing-copy h1{color:#f2d7a4}.landing-note>span{border-color:#b69d6866}.panel,.activity-body,.auth-card,.leaderboard-table{color:#193f32;--muted: #657363;--gold: #a97b2a;--line: #d8c6a4}.panel a,.activity-body a,.auth-card a,.leaderboard-table a{color:#155f44}.page-heading h1,.activity-heading h1{color:#edcf93}.auth-card h2{color:#8f322e}.eyebrow{color:#d1b37b}.panel .eyebrow,.activity-body .eyebrow{color:#8c6b36}footer{color:#c2c6a5}.primary{background:#ae3c32}.primary:hover{background:#8c3028}.secondary{color:#154b38}.photo-ready{color:#155f44}@media(max-width:760px){.main:has(.facade-calendar){padding-left:10px;padding-right:10px}.calendar-summary{margin:10px 5px;font-size:.53rem;gap:8px}.facade-score{font-size:.6rem;padding:5px 8px}.facade-score strong{font-size:1rem}.facade-note{font-size:.7rem;margin-top:12px}.facade-catchup{font-size:.6rem;padding:0 15px}.facade-today{font-size:.65rem}.landing-copy .facade-art{width:210px}.window-complete{font-size:.48rem}}.photo-ready{margin:-10px 0 0;font-size:.8rem;font-weight:600}.activity-main .activity-heading,.activity-main .activity-body{animation:activity-arrive .26s ease-out both}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@keyframes activity-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.preview-reset-notice{margin:0;padding:14px 24px;background:#fff8ec;color:#064237;border-bottom:1px solid #dccaa5;text-align:center}.preview-reset-confirm{margin-top:16px;padding:20px;border:1px solid #ad3039;border-radius:12px;background:#fff8ec;color:#064237}.preview-reset-confirm button{min-height:44px}.site-header .brand{min-width:0}.site-header .brand svg{flex-shrink:0}.site-header .header-right{flex-shrink:0;margin-left:auto}@media(max-width:760px){.site-header{flex-wrap:nowrap;gap:10px}.site-header .brand{gap:7px}.site-header .brand span{font-size:clamp(.77rem,3.55vw,1.25rem)}.site-header .header-right{gap:7px}}@media(max-width:370px){.site-header{--header-gutter: 14px;gap:7px}.site-header .brand svg{width:22px}.site-header .brand span{font-size:.77rem;letter-spacing:-.035em}.site-header .header-right{gap:4px}}.spot-instructions{text-align:center}.spot-instructions h2{color:#193f32}.game-intro{margin-bottom:0}.game-intro h2,.game-intro p{margin:0}.game-intro .primary{justify-self:center}.christmas-trivia:has(>.game-intro),.adventure:has(>.game-intro){max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#193f32}.activity-body .adventure>.game-intro h2{color:#193f32;font-family:Georgia,Times New Roman,serif;font-weight:400}.activity-body .adventure>.game-intro p{color:#193f32}.final-photo-wish{white-space:pre-wrap;overflow-wrap:anywhere}.activity-body:has(.festive-section){background:transparent;border-color:transparent;box-shadow:none;--frame-outset: 34px}.festive-section{display:grid;gap:1.3rem;min-width:0;margin-inline:calc(-1 * var(--frame-outset, 0px));padding:clamp(16px,3.2vw,30px);border:1px solid #d7b66f;border-radius:clamp(22px,6vw,38px);background:#003b31;color:#edcf93}.festive-section .festive-section-heading{text-align:center;padding:0 0 .5rem}.festive-section .festive-section-heading h2{margin:.5rem 0 0;font:400 clamp(1.9rem,5vw,2.7rem)/1.2 Georgia,"Times New Roman",serif;color:#edcf93;overflow-wrap:anywhere}.holly-divider{display:flex;align-items:center;justify-content:center;gap:12px;max-width:300px;margin:0 auto}.holly-divider>span{height:1px;background:#d7b66f;flex:1}.holly-divider svg{width:60px;height:34px;flex:none}.activity-heading>.holly-divider{margin:1rem auto}.theatre-masks{display:flex;align-items:center;justify-content:center;gap:12px;color:#c5a363}.theatre-masks svg{width:58px;height:35px}.festive-section>.panel:last-child{margin-bottom:0}.post-comments-disclosure{margin-top:14px}.post-comments-disclosure>summary{cursor:pointer;color:#193f32;min-height:44px;padding:.6rem 0}.post-comments-panel{min-width:0;padding-top:.65rem;color:#193f32}.memory-scrapbook .group-actions>.group-heart,.memory-scrapbook .memory-controls>.small,.memory-comment-toggle{display:inline-flex;align-items:center;gap:.35rem;min-width:44px;min-height:44px;padding:.35rem .65rem;border:1px solid #b99a60;border-radius:999px;background:#fff8e9;color:#24483c;font-size:.85rem;margin-right:0}.memory-comment-toggle svg{width:18px;height:18px}.memory-comment-toggle[aria-expanded=true]{background:#efdfbf}.memory-scrapbook .group-actions>.post-comments-panel{order:2;flex-basis:100%;border-top:1px solid #d8c7a2}.teles-chain>summary{display:flex;align-items:center;gap:.8rem;list-style:none}.teles-chain>summary::-webkit-details-marker{display:none}.teles-chain .chain-number{text-transform:uppercase;flex:none;padding:.25rem .6rem;border:1px solid #d7b66f;border-radius:999px;background:#eddbb1;color:#705b32;font:600 .72rem/1.4 system-ui,sans-serif}.teles-chain .chain-title{color:#193f32;font:400 1.25rem/1.4 Georgia,serif;overflow-wrap:anywhere}.teles-chain .chain-chevron{margin-left:auto;color:#b28d45;transition:transform .18s ease}.teles-chain[open] .chain-chevron{transform:rotate(90deg)}.spot-final-score{text-align:center;margin:1.5rem 0 .75rem}.spot-final-score strong{display:block;font:700 clamp(2.8rem,8vw,4rem)/1.2 system-ui,sans-serif;color:#193f32}.spot-final-score span{display:block;font-size:.75rem;letter-spacing:.14em;color:#536449;margin-top:.55rem}@media(max-width:760px){.activity-body:has(.festive-section){--frame-outset: 22px}}@media(max-width:440px){.activity-body:has(.festive-section){--frame-outset: 16px}}@media(prefers-reduced-motion:reduce){.chain-chevron{transition:none}}.welcome-scene{position:relative;isolation:isolate;min-height:calc(100svh - 88px);padding:55px 24px 65px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#1b5143 0,#07352e 44%,#012820);color:#f6e4ba;display:grid;place-items:center}.welcome-scene:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.45;background-image:radial-gradient(circle at 25px 35px,#e8d7af 1px,transparent 2px),radial-gradient(circle at 120px 100px,#ffefcb 1.4px,transparent 2px);background-size:180px 185px,257px 211px;pointer-events:none}.winter-village{position:absolute;width:100%;min-width:720px;bottom:0;left:50%;transform:translate(-50%);z-index:-1;max-height:440px;opacity:.65;pointer-events:none}.welcome-frame{position:absolute;inset:20px;border:1px solid #d9b77199;pointer-events:none;z-index:3;box-shadow:inset 0 0 0 5px #052f2877}.welcome-frame span{position:absolute;color:#efce87;font:32px Georgia;background:#07352e;line-height:.75}.welcome-frame span:nth-child(1){top:0;left:0}.welcome-frame span:nth-child(2){top:0;right:0}.welcome-frame span:nth-child(3){bottom:0;left:0}.welcome-frame span:nth-child(4){bottom:0;right:0}.sealed-scene{width:min(100%,580px);text-align:center;padding:15px 0 25px}.letter-star{font:50px Georgia;color:#edcb83}.sealed-scene h1{font-family:Georgia,serif;font-style:italic;font-size:clamp(30px,5vw,48px);font-weight:400;line-height:1.13;margin:20px auto 28px;max-width:430px;color:#f4deb0;text-shadow:0 2px 12px #031e1a}.envelope-stage{position:relative;perspective:1000px;width:min(100%,470px);height:auto;aspect-ratio:1.6;margin:0 auto;filter:drop-shadow(0 20px 24px #001d1b88)}.envelope{position:absolute;inset:0;background:linear-gradient(125deg,#f4dfb6,#e1be89 70%,#c3a16d);border:1px solid #c3a16d;border-radius:3px;box-shadow:inset 0 0 40px #9e672b33;transform:rotate(-2deg)}.envelope-folds{position:absolute;inset:0;background:linear-gradient(33deg,transparent 49.5%,#aa814733 50%,transparent 50.5%),linear-gradient(-33deg,transparent 49.5%,#aa814733 50%,transparent 50.5%);clip-path:polygon(0 0,50% 58%,100% 0,100% 100%,0 100%);background-color:#ecd0a1}.envelope-flap{position:absolute;inset:0;z-index:2;clip-path:polygon(0 0,100% 0,50% 61%);transform-origin:top center;backface-visibility:hidden;background:linear-gradient(#f7e4c1,#dfbc85);filter:drop-shadow(0 2px 2px #7b4b3b);border-top:3px solid #f9e8ca}.envelope-twine{position:absolute;left:0;right:0;top:56%;height:5px;background:repeating-linear-gradient(35deg,#a33d38 0 5px,#f5dfb3 5px 10px);z-index:3;transform:rotate(-3deg);box-shadow:0 1px 2px #6d3f2e88}.wax-seal{position:absolute;z-index:4;top:58%;left:50%;width:90px;height:90px;transform:translate(-50%,-50%);border-radius:48% 52% 45% 55%;border:5px solid #8f2929;background:radial-gradient(circle at 35% 30%,#c25a42,#9a2c2d 50%,#5a2024);box-shadow:0 4px 4px #4b281e66,inset 0 0 0 2px #d47e52,inset 0 0 9px #4b121c;color:#efc67e;display:grid;place-items:center;transition:filter .2s}.wax-seal span{font:54px Georgia;text-shadow:0 2px 1px #5d2925}.wax-seal:hover{filter:brightness(1.13)}.envelope-sprig{position:absolute;bottom:8%;right:12%;font:75px Georgia;color:#45654b;transform:rotate(-35deg)}.envelope-paper{position:absolute;top:8%;left:8%;width:84%;height:70%;background:#f7e5bf;color:#a67f3c;border:1px solid #d7b886;display:grid;place-items:center;font:50px Georgia}.envelope-prompt{max-width:360px;margin:32px auto 18px;padding:13px 22px;border:1px solid #d5b57d;background:#092e26d9;border-radius:3px;font:20px/1.3 Georgia;color:#edd7ac}.welcome-skip{background:none;border:0;text-decoration:underline;text-underline-offset:4px;color:#f1d9a6;min-height:44px;padding:9px 15px}.letter-opening .wax-seal{animation:seal-open .4s ease-out forwards}.letter-opening .envelope-flap{animation:envelope-open .85s .25s ease-in forwards}.letter-opening .envelope-paper{animation:letter-rise 1.1s .65s ease-out forwards}.letter-opening .envelope-twine{opacity:0;transition:opacity .3s}.letter-opening .envelope{animation:envelope-settle 1.2s .5s ease-in-out forwards}@keyframes seal-open{to{opacity:0;transform:translate(-50%,-40%) rotate(-15deg) scale(.8)}}@keyframes envelope-open{to{transform:rotateX(180deg)}}@keyframes letter-rise{to{transform:translateY(-80px);height:110%}}@keyframes envelope-settle{to{transform:rotate(0) translateY(30px)}}.open-letter{width:min(100%,560px);position:relative;padding:24px 40px 20px;background:radial-gradient(ellipse at 50% 20%,#fff1d4aa,transparent 60%),linear-gradient(100deg,#e3bd81,#f5dfb4 18%,#f4dba9 80%,#dfb77c);color:#493524;border:1px solid #d6ad72;border-radius:3px;box-shadow:0 24px 55px #001a18aa,inset 0 0 24px #a66f3020;animation:activity-arrive .35s ease-out}.open-letter:before,.open-letter:after{content:"❧";position:absolute;top:16px;color:#9f773b;font:32px Georgia;pointer-events:none}.open-letter:before{left:15px}.open-letter:after{right:15px;transform:scaleX(-1)}.letter-village{height:75px;position:relative;overflow:hidden;margin:0 auto 12px;max-width:330px}.letter-village .winter-village{opacity:1;z-index:0;min-width:0;width:330px;max-height:100px;filter:sepia(.4);bottom:0}.letter-village .winter-village>path{fill:transparent}.letter-invitation{text-align:center}.letter-invitation h1{font:italic 30px/1.15 Georgia,serif;color:#762c2b;margin:12px auto 18px}.letter-invitation p{font:18px/1.4 Georgia,serif;max-width:360px;margin:0 auto 12px}.letter-invitation .letter-dare{font-size:22px;font-style:italic;color:#8b352e}.letter-divider{display:block;color:#9e7737;margin:10px auto 14px}.open-letter .auth-card{width:auto;max-width:none;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#493524}.open-letter .auth-card h2{font:26px/1.2 Georgia,serif;color:#624327;text-align:center;margin:8px 0}.open-letter .auth-card>.little-star{display:none}.open-letter .auth-card>.muted{text-align:center;font-size:14px;color:#685136;margin-bottom:15px}.open-letter form{display:grid;gap:13px}.open-letter input{background:#fff8e966;border:1px solid #b99055;color:#412f24;border-radius:4px;min-height:46px}.open-letter label{font-size:14px;color:#513c28;display:grid;gap:6px}.open-letter .primary{background:linear-gradient(#a34235,#822b2d);box-shadow:inset 0 0 0 2px #e3bb75;outline:1px solid #86372a;outline-offset:2px;border:0;border-radius:8px;font-family:Georgia,serif;font-size:18px;color:#fff0ca;min-height:48px}.open-letter .text-button{color:#6e4330;font-size:13px}.password-visibility{justify-self:end;margin-top:-4px;min-height:30px}.open-letter .auth-switch{margin-top:16px;gap:9px}.letter-footer{text-align:center;font:italic 14px/1.5 Georgia;color:#705031;margin:24px 0 0}.open-letter .error{background:#fff1d8;color:#8b2630}.revised-game{max-width:760px;margin:auto}.revised-intro{text-align:center;margin:0 auto 25px;max-width:620px}.revised-game .score-pill{display:inline-block;background:#163f33;color:#f5deaa;border:1px solid #bc9b60}.revised-standings{margin-top:32px}.revised-standings .standing-row{grid-template-columns:minmax(0,1fr) auto minmax(100px,auto);gap:14px}.revised-standings time{font-size:12px;opacity:.75;text-align:right}.game-completion{padding:28px;text-align:center;background:#fff3d8;border:1px solid #d2b67e;border-radius:10px;color:#3d4935}.game-completion>strong{display:block;font:46px Georgia;color:#8d3331;margin:14px}.game-completion h2{font:30px Georgia;color:#73332d}.game-completion .primary{margin:16px auto 0}.game-round-heading,.game-round-heading .text-button{color:#efdaa9}.game-round-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.game-round-heading strong{white-space:nowrap}.game-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.emoji-categories{display:grid;grid-template-columns:1fr 1fr;gap:22px}.category-card{background:#fff2d7;border:1px solid #ceb17a;border-radius:10px;padding:30px 18px;min-height:240px;text-align:center;color:#173f32;box-shadow:0 12px 22px #001f2522}.category-card>span{font:48px Georgia;color:#a03532}.category-card h2{font:27px Georgia;margin:15px 0 8px}.category-card strong{display:block;color:#8f302d;margin-top:24px}.emoji-clue-card{padding:26px 35px 35px;background:#fff2d6;color:#3e4534;border:1px solid #c9a86c;border-radius:10px;box-shadow:0 10px 30px #001f2222}.emoji-sequence{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:clamp(32px,7vw,52px);letter-spacing:3px;text-align:center;line-height:1.8;overflow-wrap:anywhere;margin:22px 0 26px}.emoji-clue-card label{display:grid;gap:8px}.emoji-clue-card input{min-height:48px;color:#244232;border:1px solid #b8a071;background:#fffaf0}.emoji-clue-card .eyebrow{color:#8d6132}.clue-feedback{text-align:center}.clue-feedback h2{font:30px Georgia;color:#7c332c;line-height:1.2;margin:18px 0 26px}.revised-review{margin:24px 0;border:1px solid #b7a37477;border-radius:8px;padding:16px 20px;color:#f0dcb4}.revised-review summary{cursor:pointer;min-height:24px}.revised-review>div{padding:15px 0;border-top:1px solid #ad9f7755}.review-emoji{display:block;font-size:27px;margin:12px 0}.revised-review a{color:inherit}.revised-review p{margin:8px 0;font-size:14px}.price-hud{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#f6dfad}.price-countdown{font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;min-width:60px;text-align:right}.price-time-track{height:5px;background:#c4b27e33;margin-bottom:16px;overflow:hidden;border-radius:4px}.price-time-track i{display:block;width:100%;height:100%;background:#ebcb8e;transform-origin:left center;transition:transform 50ms linear}.product-card{padding:20px 28px 26px;background:#fff7e9;color:#324736;border:1px solid #d5b77e;border-radius:10px}.retailer-tag{display:inline-block;padding:5px 12px;background:#114438;color:#f5dfb3;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.06em}.product-photo{height:235px;margin:8px auto;display:grid;place-items:center}.product-photo img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;border-radius:6px}.product-card h2{font:25px/1.25 Georgia;color:#4b3f2c;text-align:center;margin:18px 0}.price-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 0}.price-options button{min-height:54px;border:1px solid #a38c5e;background:#f3e5cb;border-radius:6px;color:#304536;font-weight:700;font-size:21px;font-variant-numeric:tabular-nums}.price-options button:disabled{opacity:.62}.price-options .correct-option:disabled{border:2px solid #146044;background:#d7e9d6;opacity:1;color:#164b34}.price-options .chosen-option{box-shadow:inset 0 0 0 2px #a93c31}.price-reveal{text-align:center;border-top:1px solid #d0ba94;margin-top:20px;padding-top:18px}.price-reveal>a{display:block;color:#704b2c;margin:10px}.price-reveal>.primary{margin-top:15px}.price-reveal p{margin:8px 0}.price-reveal>strong{font:23px Georgia;color:#713c2c}.tree-activity{max-width:780px;margin:auto}.tree-intro{text-align:center;color:#f3dfb3}.tree-intro h2{font:28px/1.25 Georgia;color:#e9cc91;max-width:540px;margin:0 auto 16px}.tree-composition{position:relative;max-width:510px;margin:0 auto 20px}.shared-tree{position:relative;width:100%;aspect-ratio:400/540;isolation:isolate}.evergreen{display:block;width:100%;height:100%;filter:drop-shadow(0 10px 12px #00261e66)}.tree-ornament{position:absolute;width:50px;height:50px;transform:translate(-50%,-50%);padding:0;border:0;background:none;z-index:2;filter:drop-shadow(0 2px 2px #001d1c88)}.tree-ornament svg{width:100%;height:100%}.tree-ornament:disabled{opacity:1;cursor:default}.preview-ornament{outline:2px dashed #f9e9bd;border-radius:50%;outline-offset:3px}.tree-ornament:hover:not(:disabled){filter:drop-shadow(0 0 8px #ffe8a1)}.tree-house{position:absolute;inset:0;opacity:.8;pointer-events:none}.tree-house>svg{height:100%;width:100%}.is-keepsake{max-width:700px;padding-top:65%}.is-keepsake .shared-tree{width:48%;margin:-10% auto 0;z-index:1}.is-keepsake .tree-ornament{width:44px;height:44px}.ornament-editor{padding:28px;margin:24px 0}.ornament-editor fieldset{border:0;margin:0 0 24px;padding:0}.ornament-editor legend{margin-bottom:12px;font-weight:600}.ornament-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ornament-choices button{display:grid;place-items:center;gap:4px;background:#fbf2df;border:1px solid #cab487;border-radius:7px;padding:10px 4px;font-size:12px;color:#344a37}.ornament-choices button.selected{box-shadow:inset 0 0 0 2px #8c302c}.ornament-choices svg{width:50px;height:50px}.palette-choices{display:flex;gap:9px;flex-wrap:wrap}.palette-choices button{display:flex;align-items:center;gap:7px;font-size:12px;min-height:44px;padding:8px;border:1px solid #bda674;border-radius:6px;background:#fff5df;color:#384934}.palette-choices button[aria-pressed=true]{box-shadow:inset 0 0 0 2px #8c302c}.palette-choices i{width:20px;height:20px;border-radius:50%;border:1px solid #b39561}.ornament-editor label{display:grid;gap:7px;margin:16px 0}.ornament-editor input,.ornament-editor select,.ornament-editor textarea{min-height:46px}.ornament-editor .primary{margin-right:20px}.ornament-preview{text-align:center;margin:22px auto;white-space:pre-wrap}.ornament-preview>svg{display:block;width:95px;margin:0 auto 15px}.ornament-detail{text-align:center;position:relative;max-width:480px;margin:0 auto 20px;padding:25px}.ornament-detail>svg{width:65px}.ornament-detail>.text-button{position:absolute;right:12px;top:8px;font-size:22px;min-width:44px;min-height:44px}.tree-cta{text-align:center;display:grid;justify-items:center;gap:10px;margin:25px 0}.tree-cta .text-button{color:#edd6a4}.calendar-keepsake{max-width:600px;margin:38px auto;text-align:center;color:#f3dba7}.calendar-keepsake h2{font:28px Georgia}.calendar-keepsake .tree-composition{max-width:500px}.case-intro,.puzzle-station,.case-reveal,.evidence-detail{background:linear-gradient(105deg,#f5e5c6,#fff4dc);border:1px solid #c7a96a;border-radius:6px;color:#344332;padding:30px;position:relative;box-shadow:0 14px 25px #001d1b22}.case-intro h2,.puzzle-station h2,.case-reveal h2,.evidence-detail h2{font:30px/1.2 Georgia;color:#74352e;margin:20px 0}.case-intro{max-width:640px;margin:auto}.case-stamp{display:inline-block;border:1px solid #a04737;color:#8c352e;padding:5px 10px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transform:rotate(-2deg)}.case-symbol{display:block;font-size:60px;margin:25px auto;text-align:center}.case-intro .primary{margin-top:14px}.case-toolbar{position:sticky;top:calc(var(--app-top-inset) + 10px);z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:12px 15px;background:#063e33f5;border:1px solid #b7955e;border-radius:8px;color:#f4dca8;box-shadow:0 6px 14px #001f2133}.case-toolbar>span{font-size:12px}.case-toolbar .secondary{font-size:13px;min-height:44px;padding:8px 12px;background:#f2e3c5;color:#244633}.case-board{margin:25px 0;color:#f2dcb2}.case-board h2{font:30px Georgia;color:#edcf93}.character-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.character-cards article{background:#fff0d3;border:1px solid #d2b076;border-radius:7px;color:#3d4936;padding:20px}.character-cards h3{font:25px Georgia;color:#82372d;margin:12px 0 5px}.character-cards p{font-size:14px;line-height:1.6}.character-cards strong{font-size:12px}.character-portrait{float:right;display:grid;place-items:center;width:45px;height:55px;border-radius:50% 50% 10% 10%;color:#eed69d;background:#204f3a;font:25px Georgia;box-shadow:inset 0 0 0 4px #d9bd7b}.evidence-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.evidence-cards button{background:#f8e9ca;color:#4c4732;border:1px solid #c2a470;border-radius:5px;min-height:130px;padding:15px 8px;display:flex;align-items:center;flex-direction:column;gap:7px}.evidence-cards button>span{font-size:28px}.evidence-cards button strong{font:17px Georgia}.evidence-cards button small{letter-spacing:.12em}.evidence-cards .reviewed{box-shadow:inset 0 0 0 2px #2f6d4f}.evidence-detail{margin:24px 0;border-top:4px solid #a23e32}.evidence-detail>.text-button{position:absolute;right:10px;top:8px;font-size:23px;min-width:44px;min-height:44px}.evidence-detail p{font-size:18px;line-height:1.7}.evidence-detail>.large-icon{display:block;text-align:center;margin:15px}.timeline-sort{padding-left:25px;display:grid;gap:12px;margin:25px 0}.timeline-sort li{padding:13px 10px;background:#efe1c6;border:1px solid #c7af7f;border-radius:5px;display:flex;align-items:center;gap:8px;font-size:14px}.timeline-sort li>span{flex:1}.timeline-sort button{border:1px solid #a88e5f;border-radius:4px;min-width:44px;min-height:44px;background:#fff1d4;color:#244936;font-size:20px}.timeline-sort button:disabled{opacity:.3}.deduction-options{display:grid;gap:11px;margin:24px 0}.deduction-options label{display:flex;align-items:center;gap:12px;min-height:52px;padding:14px;background:#f8ebd0;border:1px solid #bca779;border-radius:5px}.deduction-options input{width:20px;height:20px;accent-color:#145940}.deduction-options .selected{box-shadow:inset 0 0 0 1px #33644b;background:#e5ead4}.hint-ladder{margin-top:28px;border-top:1px solid #cab68b;padding-top:15px}.hint-ladder>p:not(.small){background:#eee0bf;padding:14px;border-radius:4px;font-size:14px}.hint-ladder button{color:#794132;min-height:44px}.final-accusation form{display:grid;gap:18px}.final-accusation label{display:grid;gap:9px}.final-accusation select{min-height:48px;max-width:100%;width:100%;background:#fff6e4;color:#344c37;border:1px solid #bca371}.final-score{display:block;text-align:center;font:46px Georgia;color:#8c352e;margin:24px}.case-reveal>p{font:19px/1.6 Georgia}.solved-puzzles{margin:24px 0;padding:18px 20px;border:1px solid #c2ad7844;color:#efdcaf;border-radius:8px}.solved-puzzles>div{padding:15px 0;border-top:1px solid #b7a36e55}.solved-puzzles h3{color:#e7cb93;font:22px Georgia}.case-board .small{color:#e5d4ae}.sleigh-hud{display:flex;justify-content:center;gap:40px;text-align:center;margin-bottom:22px;color:#f2dbac;font-size:13px}.sleigh-hud strong{display:block;font:32px Georgia;margin-top:5px}.sleigh-illustration{display:block;width:260px;max-width:100%;margin:0 auto 20px}.sleigh-intro p{max-width:510px;margin:16px auto;line-height:1.65}html:has(.sleigh-run[open]),body:has(.sleigh-run[open]){overflow:hidden;overscroll-behavior:none}.sleigh-run[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;gap:clamp(6px,1.5vh,14px);position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:calc(var(--app-top-inset) + 8px) max(12px,var(--safe-area-right)) max(10px,var(--safe-area-bottom)) max(12px,var(--safe-area-left));overflow:hidden;overscroll-behavior:none;touch-action:none;background:radial-gradient(ellipse at 50% 15%,#1c5544,#003b31 70%);color:#f4dfb5}.sleigh-current{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 8px;width:min(100%,540px);font-size:clamp(12px,3.5vw,14px)}.sleigh-back{min-height:44px;padding:0 6px;border:0;border-radius:5px;background:transparent;color:inherit;font-weight:600}.sleigh-board-slot{display:grid;place-items:center;width:100%;min-height:0;container-type:size}.sleigh-board{position:relative;width:min(100%,52vh,540px);width:min(100cqw,100cqh,540px);border:4px solid #c4a36a;border-radius:6px;aspect-ratio:1;background:#073c32;overflow:hidden;box-shadow:0 15px 24px #00222055}.sleigh-board svg{width:100%;height:100%;display:block}.sleigh-board-message{position:absolute;inset:0;background:#002c25d9;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#f9e6b7;text-align:center;padding:15px}.sleigh-board-message strong{font:clamp(22px,6vw,38px) Georgia}.sleigh-drive{display:grid;justify-items:center;align-self:center;gap:6px}.sleigh-drive p{margin:0}.sleigh-drive .error{padding:5px 10px;text-align:center}.sleigh-dpad{display:grid;grid-template-columns:repeat(3,clamp(60px,21vw,84px));grid-template-rows:repeat(2,clamp(48px,8vh,64px));gap:8px}.sleigh-dpad button{touch-action:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;background:#e9d1a0;color:#174d3c;border:1px solid #bb945d;border-radius:7px;font-size:30px}.sleigh-dpad button:active{background:#f9e8bb;box-shadow:inset 0 2px 4px #5f3c2e50}.sleigh-dpad button:first-child{grid-column:2}.sleigh-dpad button:nth-child(2){grid-column:1;grid-row:2}.sleigh-dpad button:nth-child(3){grid-column:2;grid-row:2}.sleigh-dpad button:nth-child(4){grid-column:3;grid-row:2}.sleigh-dpad button:disabled{opacity:.5}@media(orientation:landscape)and (max-height:600px){.sleigh-run[open]{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr)}.sleigh-current{grid-column:1 / -1}}.revised-game button:disabled{cursor:default}@media(max-width:760px){.welcome-scene{min-height:calc(100svh - 75px);padding:35px 20px 45px}.welcome-frame{inset:10px}.sealed-scene{padding:35px 0 45px}.open-letter{padding:24px 20px 20px}.letter-invitation h1{font-size:27px}.letter-invitation p{font-size:17px}.letter-invitation .letter-dare{font-size:21px}.welcome-scene .auth-switch{flex-direction:column}.wax-seal{width:76px;height:76px}.wax-seal span{font-size:44px}.envelope-prompt{font-size:18px;max-width:280px}.welcome-skip{font-size:13px}.letter-village{height:55px}.emoji-clue-card{padding:20px}.game-round-heading{gap:8px;flex-wrap:wrap;font-size:13px}.game-round-heading .text-button{font-size:13px}.emoji-categories{gap:12px}.category-card{min-height:225px;padding:20px 10px}.category-card h2{font-size:23px}.category-card p{font-size:12px}.category-card strong{font-size:13px}.game-completion{padding:24px 18px}.game-completion h2{font-size:25px}.product-card{padding:16px}.product-card h2{font-size:21px;margin:14px 0}.product-photo{height:180px}.price-options{gap:10px}.price-options button{font-size:20px;min-height:50px}.price-hud{font-size:13px}.price-countdown{font-size:22px}.activity-main:has(.price-run) .activity-heading{margin-bottom:22px;padding-top:10px}.activity-main:has(.price-run) .activity-heading h1{font-size:27px;margin-bottom:0}.activity-main:has(.price-run) .activity-heading>p,.activity-main:has(.price-run) .activity-heading>.activity-icon{display:none}.revised-standings .standing-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.revised-standings time{grid-column:1/3;text-align:left}.tree-ornament{width:44px;height:44px}.ornament-editor{padding:18px}.ornament-choices{grid-template-columns:repeat(3,1fr)}.ornament-editor .primary{margin:6px 0 10px;width:100%}.tree-intro h2{font-size:24px}.is-keepsake .shared-tree{width:65%;margin-top:-13%}.is-keepsake{padding-top:58%}.tree-ornament:focus-visible{outline-offset:0}.case-intro,.puzzle-station,.case-reveal,.evidence-detail{padding:22px 18px}.case-intro h2,.puzzle-station h2,.case-reveal h2,.evidence-detail h2{font-size:26px}.case-toolbar{padding:8px;gap:8px;flex-wrap:wrap}.case-toolbar>span{order:3;width:100%;text-align:center}.character-cards{grid-template-columns:1fr}.evidence-cards{grid-template-columns:1fr 1fr}.evidence-cards button{min-height:120px}.timeline-sort{padding-left:0}.timeline-sort li{flex-wrap:wrap}.timeline-sort li>span{width:100%;flex:auto}.timeline-sort li button:first-of-type{margin-left:auto}.deduction-options label{font-size:14px}.sleigh-hud{gap:30px}.sleigh-intro .small{font-size:13px}}@media(prefers-reduced-motion:reduce){.letter-opening *,.open-letter{animation:none!important;transition:none!important}.price-time-track i{transition:none}.welcome-scene .envelope-flap{transform:none}}.activity-body:has(.revised-game),.activity-body:has(.tree-activity){background:transparent;border:0;box-shadow:none;padding:0}.preview-banner{color:#4d412b}.preview-banner strong,.preview-banner label,.preview-banner button{color:#584528}.case-success{color:#e6d3a5;text-align:center;margin:15px 0}.practice-status{color:#ead6ae;text-align:center}.practice-status:empty{display:none}.open-letter .primary{justify-content:center;gap:10px;padding:14px 12px;font-size:17px;line-height:1.25}.open-letter h2:focus{outline:none}.is-keepsake{aspect-ratio:900/1360;padding-top:0}.is-keepsake .shared-tree{position:absolute;width:72%;left:14%;bottom:-4%;margin:0}.tree-house .facade-art{width:100%;margin:0}.calendar-keepsake .is-keepsake .shared-tree{width:58%;left:21%}.price-run{position:fixed;inset:0;z-index:40;overflow-y:auto;overscroll-behavior:contain;border-block:var(--app-top-inset) solid transparent;border-block-end-width:var(--safe-area-bottom);padding:16px max(18px,var(--safe-area-right)) 20px max(18px,var(--safe-area-left));background:radial-gradient(ellipse at 50% 15%,#1c5544,#003b31 70%) border-box}.price-run>div{max-width:620px;margin-left:auto;margin-right:auto}.price-playback{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:12px;color:#f3dbab;font-size:13px}.price-playback .text-button{color:#efdaac;min-height:44px;padding:8px 0;font-size:13px}.price-playback>span{text-align:right;font-family:Georgia,serif;font-size:17px}.price-run .product-photo{height:clamp(85px,23svh,180px)}.price-run .product-card h2{font-size:22px;margin:12px 0;line-height:1.25}.price-loading-status{font-size:12px;margin:5px 0}@media(max-height:760px){.price-run{padding-top:8px;padding-bottom:10px}.price-playback{margin-bottom:4px}.price-playback .text-button{white-space:nowrap}.price-run .price-hud{margin-bottom:6px}.price-run .price-time-track{margin-bottom:10px}.price-run .product-card{padding:12px 16px}.price-run .product-card h2{font-size:18px;margin:8px 0}.price-run .price-options{margin-top:10px;gap:8px}.price-run .price-options button{min-height:48px;font-size:19px}.price-run .product-photo{height:clamp(64px,calc((100svh - var(--app-top-inset) - var(--safe-area-bottom)) * .18),140px);margin:4px auto}.price-loading-status{font-size:11px;margin:3px 0}}.activity-body:has(.awards-activity){background:transparent;border:0;box-shadow:none;padding:0}.awards-activity{max-width:760px;margin:auto}.award-trophy{display:block;width:140px;height:160px;margin:0 auto 22px}.awards-intro,.awards-waiting,.winner-card{padding:32px;background:linear-gradient(105deg,#f1dfbc,#fff2d7);border:1px solid #c1a56d;border-radius:9px;color:#374634;text-align:center}.awards-intro h2,.awards-waiting h2,.winner-card h2{font:31px/1.2 Georgia;color:#7f342d;margin:18px auto}.awards-intro>p{max-width:580px;margin:18px auto;line-height:1.65}.awards-intro .primary{margin-top:15px}.awards-deadline{font-size:13px;color:#e7d3a6;text-align:center;margin:18px 0;line-height:1.5}.awards-intro .awards-deadline,.awards-waiting .small{color:#665235}.ballot-saved{margin:20px auto;padding:18px;border:1px solid #a4b088;border-radius:6px;background:#e5ebd3;color:#355337}.ballot-saved p{font-size:14px;margin-bottom:0}.ballot-progress{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#f1d9a6}.ballot-progress .text-button{color:#f1d9a6;font-size:13px;min-height:44px}.ballot-category-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;margin:20px 0}.ballot-category-nav button{position:relative;min-height:46px;background:#1a5141;border:1px solid #b69a61;color:#efdaa9;border-radius:5px}.ballot-category-nav button[aria-current]{box-shadow:inset 0 0 0 2px #f6e2af;background:#345e47}.ballot-category-nav button.answered{background:#f2dfb6;color:#264c36}.ballot-category-nav small{display:block;font-size:9px;line-height:.7;margin:4px 0}.award-category{margin:22px 0 0;padding:24px;background:#fff0d1;border:1px solid #c0a068;border-radius:8px;color:#344835;min-width:0}.award-category legend{float:left;width:100%;font-size:12px;margin-bottom:0}.award-category legend h2{font:29px/1.2 Georgia;color:#80382f;margin:12px 0}.award-category>p{clear:both;line-height:1.6;padding-top:5px}.award-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.award-options label{display:flex;align-items:center;gap:12px;min-height:52px;padding:13px;border:1px solid #bba574;border-radius:6px;background:#fff9e9;color:#344f38}.award-options input{width:20px;height:20px;accent-color:#1b654b;flex-shrink:0}.award-options .selected{box-shadow:inset 0 0 0 1px #356749;background:#e0e8cf}.award-options .is-you{opacity:.5}.award-options small{font-size:11px;margin-left:auto}.ballot-actions{display:flex;justify-content:space-between;gap:12px;padding:20px 0}.ballot-draft-note{color:#e9d6ad;text-align:center;line-height:1.5}.ballot-review{background:#fff0d1;padding:24px;border:1px solid #c0a068;border-radius:8px;color:#344835}.ballot-review h2{font:29px Georgia;color:#80382f}.ballot-review>button:not(.primary){display:flex;align-items:center;gap:15px;width:100%;padding:14px 8px;text-align:left;background:transparent;border:0;border-bottom:1px solid #c9b485;min-height:62px;color:#655638}.ballot-review>button:not(.primary)>span:first-child{font:22px Georgia;color:#95533b}.ballot-review>button>div{flex:1}.ballot-review strong{display:block;font-family:Georgia;font-size:17px;font-weight:400;color:#493f2c}.ballot-review small{display:block;color:#7a5d37;margin-top:5px}.ballot-review .answered small{color:#24573c;font-weight:600}.ballot-review>.primary{margin-top:25px;width:100%;justify-content:center}.awards-controls{margin-top:35px;padding:25px;color:#39472f}.awards-controls label{display:grid;gap:10px;font-size:14px;margin:20px 0}.awards-controls select{min-height:46px;max-width:100%}.awards-controls p{font-size:14px;line-height:1.6}.awards-admin-actions{display:flex;gap:12px;flex-wrap:wrap}.awards-admin-actions button{font-size:13px;min-height:44px}.awards-ceremony>h2{text-align:center;color:#efd6a1;font:30px Georgia;margin-bottom:25px}.winner-card>.eyebrow{color:#996333}.winner-card>span:not(.eyebrow){display:block;color:#795e35;margin:25px 0 10px}.award-winner{display:block;color:#8e302c;font:41px/1.2 Georgia;margin:12px 0}.award-navigation{display:flex;justify-content:space-between;gap:12px;margin-top:32px}.award-navigation button{font-size:13px;min-height:44px}.awards-activity h2:focus,.award-category legend:focus{outline:0}@media(max-width:760px){.awards-intro,.awards-waiting,.winner-card{padding:25px 18px}.awards-intro h2,.awards-waiting h2,.winner-card h2{font-size:27px}.award-trophy{width:115px;height:135px}.award-options{grid-template-columns:1fr}.ballot-category-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.award-category{padding:20px 16px}.award-category legend h2{font-size:26px}.ballot-review{padding:20px 16px}.awards-admin-actions{display:grid}.awards-controls{padding:20px 16px}.ballot-progress{font-size:14px;flex-wrap:wrap}.award-navigation{flex-wrap:wrap}.award-winner{font-size:35px}}.activity-main .activity-body:has(.price-run,.letter-modal){animation:none;transform:none}.price-run .product-photo{overflow:hidden;min-height:0}.price-run .product-photo img{height:100%;min-height:0;max-height:100%;width:100%;object-fit:contain}.price-run .product-photo{display:block}.price-reveal>.primary{display:flex;margin:15px auto}.price-reveal>a{font-size:13px}.evidence-detail,.puzzle-station{scroll-margin-top:110px}body:has(.price-run){overflow:hidden}body:has(.price-run) .site-header,body:has(.price-run) .preview-banner,body:has(.price-run) footer,body:has(.price-run) .activity-heading,body:has(.price-run) .activity-main>.back-button,body:has(.price-run) .revised-standings,body:has(.price-run) .revised-review,body:has(.price-run) .revised-game>.error{display:none}.award-category h2,.ballot-review h2{scroll-margin-top:20px}.visual-tree{--tree-green: #064237;--tree-cream: #fff8ec;--tree-gold: #ddb45f;--tree-border: #dccaa5;--tree-selected: #ad3039;max-width:850px;margin-inline:auto}.visual-tree .tree-intro{color:var(--tree-cream)}.visual-tree .tree-intro h2{color:#f1d99f}.visual-tree .visual-editor,.visual-tree .ornament-detail,.preference-activity{background:#fff8ec;color:#064237;border:1px solid #dccaa5;box-shadow:0 8px 28px #001e1512;border-radius:18px}.visual-editor{scroll-margin-top:110px;padding:clamp(16px,4vw,32px)!important}.visual-editor-preview{display:flex;align-items:center;gap:18px;padding:12px 16px;margin-bottom:24px;background:#ead7b22b;border:1px solid #dccaa5;border-radius:12px}.visual-editor-preview>div{width:76px;height:82px;flex:none;display:grid;place-items:center}.visual-editor-preview svg{width:76px;height:82px}.visual-editor-preview p{font-size:.9rem;max-width:28ch;margin:0}.shape-placeholder{font-size:3.2rem;color:#a97932}.visual-editor fieldset{border:0;padding:0;margin:0 0 26px;min-width:0}.visual-editor legend{font-family:var(--font-serif, Georgia, serif);font-size:1.15rem;font-weight:600;margin-bottom:12px}.visual-shapes,.visual-options{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.visual-shapes button,.visual-options button{min-width:0;position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:6px;padding:10px 5px;min-height:108px;border:1px solid #dccaa5;border-radius:9px;background:#fff8ec;color:#064237}.visual-shapes svg,.visual-options svg{width:54px;height:58px;flex:none}.visual-shapes button>span:not(.tile-check),.visual-options button>span:not(.tile-check){font-size:.76rem;line-height:1.25;overflow-wrap:anywhere}.visual-editor button.selected{outline:1px solid #ad3039;border-color:#ad3039;background:#f4e8d6}.tile-check{position:absolute;top:4px;right:5px;font-size:.8rem;line-height:18px;border-radius:50%;width:18px;height:18px;background:#ad3039;color:#fff8ec;text-align:center}.visual-colours{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.colour-family h4{font-size:.8rem;font-weight:600;margin:0 0 7px;line-height:1.4}.colour-family>div{display:flex;gap:3px;flex-wrap:wrap}.colour-family button{width:44px;min-width:44px;height:44px;position:relative;border-radius:8px;border:1px solid transparent;padding:5px;background:transparent}.colour-swatch{display:block;width:32px;height:32px;border:1px solid #69452e66;border-radius:50%;box-shadow:inset 2px 2px 3px #fff7}.colour-family .tile-check{top:0;right:0;font-size:.65rem;width:15px;height:15px;line-height:15px}.tree-editor-actions,.preference-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:22px}.tree-editor-actions button,.preference-actions button{min-height:44px}.tree-final-preview .ornament-preview{display:flex;justify-content:center}.tree-final-preview .ornament-preview>svg{width:160px;height:175px}.tree-final-preview p{font-size:.9rem}.visual-inspection{width:min(220px,58vw);max-height:calc(100dvh - var(--app-top-inset) - var(--safe-area-bottom) - 24px);margin:auto;padding:25px 13px 13px;background:#fff6dfe8;color:#123d30;border:1px solid #b89a5b;border-radius:14px;box-shadow:0 5px 18px #00251e22;text-align:center;overflow-wrap:anywhere}.visual-inspection::backdrop{background:#00251e14}.visual-inspection:focus{outline:none}.visual-inspection>p{margin:8px 0 0;font-size:.76rem}.visual-inspection>button{position:absolute;top:0;right:3px;min-width:44px;min-height:44px;color:#812e38;background:none;padding:0;font-size:1.1rem;line-height:1;box-shadow:none}.visual-inspection>svg{width:170px;height:190px}.visual-tree .tree-success{text-align:center;color:#fff8ec}.choice-voters{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.choice-voter{position:relative}.choice-voter button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:#173e33}.choice-voter button span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #b59b68;border-radius:50%;background:#f2e6c8;font-size:.75rem;font-weight:700}.choice-voter-name{display:none;position:absolute;z-index:1;bottom:100%;left:0;width:max-content;max-width:8rem;padding:5px 8px;border-radius:5px;background:#153b31;color:#fff7e4;font-size:.8rem;overflow-wrap:anywhere}.choice-voter button[aria-expanded=true]+.choice-voter-name,.choice-voter button:focus-visible+.choice-voter-name{display:block}@media(hover:hover){.choice-voter:hover .choice-voter-name{display:block}}.visual-editor :focus-visible,.preference-activity :focus-visible{outline:3px solid #ad3039;outline-offset:3px}.preference-activity{max-width:760px;margin-inline:auto;padding:clamp(20px,5vw,38px)}.preference-intro,.preference-complete{text-align:center}.preference-intro>span,.preference-complete>span{color:#a97932;font-size:2.6rem}.preference-activity h2,.preference-activity h3{color:#064237;line-height:1.25;scroll-margin-top:130px}.preference-intro p{max-width:44ch;margin:16px auto 24px}.preference-progress{width:100%;height:6px;accent-color:#ad3039;margin-bottom:20px}.preference-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:25px 0}.preference-options button{min-width:0;display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px 14px;min-height:175px;border:1px solid #dccaa5;border-radius:12px;background:#fff8ec;color:#064237}.preference-options button strong{font-size:1.1rem;font-weight:500;line-height:1.55;overflow-wrap:anywhere}.preference-letter{font-size:.8rem;color:#8c6e45}.preference-options button.selected{outline:1px solid #ad3039;border-color:#ad3039;background:#f4e8d6}.preference-check{height:20px;min-width:20px;color:#ad3039;font-size:1.1rem}.preference-actions{justify-content:space-between}.preference-review>div{display:flex;align-items:center;gap:16px;justify-content:space-between;border-bottom:1px solid #dccaa5;padding:12px 0}.preference-review p{margin:0;min-width:0}.preference-review p span{display:block;font-size:.95rem;margin-top:5px}.preference-review button{flex:none;min-height:44px}.preference-results{border-top:1px solid #dccaa5;margin-top:28px;padding-top:24px}.preference-result-options{display:grid;gap:18px;margin:24px 0}.preference-result-options>div{border:1px solid #dccaa5;padding:18px;border-radius:12px}.preference-result-options p{font-size:.9rem;margin:8px 0}.preference-bar{background:#ead7b2;height:8px;border-radius:5px;overflow:hidden}.preference-bar span{height:100%;display:block;background:#17664e}.activity-icon>svg{width:64px;height:68px}@media(min-width:650px){.visual-shapes{grid-template-columns:repeat(6,minmax(0,1fr))}.visual-options{grid-template-columns:repeat(5,minmax(0,1fr))}.pattern-options{grid-template-columns:repeat(4,minmax(0,1fr))}.visual-colours{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-shapes button{min-height:115px}}@media(max-width:355px){.visual-editor{padding:14px!important}.visual-colours{column-gap:4px}.colour-family>div{gap:0}.colour-family button{width:44px;min-width:44px}.preference-options{gap:10px}.preference-options button{padding:18px 10px;min-height:190px}.preference-options button strong{font-size:1rem}}@media(prefers-reduced-motion:reduce){.visual-tree *,.preference-activity *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}body:has(.visual-tree),body:has(.preference-activity){background:#064237}.activity-body:has(.preference-activity){background:transparent;border:0;box-shadow:none;padding:0}.visual-tree .primary,.preference-activity .primary{background:#ad3039;border-color:#ad3039;color:#fff8ec}.visual-tree .primary:hover:not(:disabled),.preference-activity .primary:hover:not(:disabled){background:#702431}body:has(.bucket-heading){background:#064237}.activity-heading.bucket-heading h1{color:#e7c477;text-transform:uppercase;font-family:Georgia,serif;font-size:clamp(2rem,7vw,3.9rem);max-width:18ch;margin-inline:auto;text-align:center;overflow-wrap:normal;text-wrap:balance}.activity-heading.bucket-heading p{color:#fff8ec;font-size:clamp(1rem,2vw,1.15rem);margin:22px auto 0;max-width:42ch;text-align:center;line-height:1.65}.preference-result-card{padding:clamp(18px,4vw,26px);margin-top:20px;border:1px solid #dccaa5;border-radius:12px;min-width:0}.preference-result-card h4{font-family:Georgia,serif;font-size:1.35rem;line-height:1.35;margin:8px 0 20px;color:#064237;overflow-wrap:anywhere}.preference-result-card .eyebrow{margin:0;font-size:.72rem;text-transform:uppercase}.preference-result-card .preference-result-options{margin:0;gap:12px}.preference-result-card .preference-result-options>div{border:0;padding:12px;border-radius:8px}.preference-result-card [data-result-state=leading]{background:#17664e09}.preference-result-card [data-result-state=leading] .preference-bar span{background:#064237}.preference-result-card [data-result-state=other] .preference-bar span{background:#ddb45f}.preference-result-card [data-result-state=tie] .preference-bar span{background:#bba778}.preference-result-card [data-result-state=empty] .preference-bar span{background:transparent}.preference-result-card .preference-bar{background:#eee3d0}.preference-empty{margin:16px 12px 0;color:#6d705f;font-size:.9rem}.activity-main:has(.craft-station){max-width:1240px}.activity-main:has(.craft-station) .activity-body{max-width:none}.craft-station{max-width:1200px}.craft-tree-overview{max-width:250px;margin:0 auto 22px}.craft-tree-finished{max-width:510px;margin-inline:auto}.craft-editor{scroll-margin-top:110px}.craft-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.craft-station .panel{min-width:0;background:#fff8ec;color:#064237;border:1px solid #dccaa5;border-radius:15px;padding:20px;box-shadow:0 5px 20px #001e1510}.craft-station fieldset.panel{margin:0;min-width:0}.craft-station legend,.craft-station h3{font-family:Georgia,serif;color:#064237;font-weight:500;font-size:1.2rem;line-height:1.3}.craft-station legend{float:left;width:100%;padding:0;margin:0 0 12px;max-width:100%}.craft-station legend+*{clear:both}.craft-station .visual-shapes{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.craft-station .visual-shapes button,.craft-station .visual-options button{border:1px solid #e3cfa9;background:#fff7e8;border-radius:8px;min-width:0;box-shadow:none;padding:8px 4px;gap:3px}.craft-station .visual-shapes button{min-height:100px}.craft-station .visual-shapes svg{width:58px;height:66px;max-width:100%}.craft-station .visual-shapes button>span:not(.tile-check),.craft-station .visual-options button>span:not(.tile-check){font-family:Georgia,serif;font-size:.75rem;line-height:1.2;color:#064237;overflow-wrap:normal;-webkit-hyphens:auto;hyphens:auto}.craft-station button.selected{border-color:#ad3039;outline:1px solid #ad3039;background:#f6ebd9}.craft-station .tile-check{width:16px;height:16px;line-height:16px;font-size:.7rem;top:4px;right:4px;z-index:2}.craft-options{display:flex;flex-direction:column;gap:18px;min-width:0}.craft-station .visual-colours{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 14px}.craft-station .colour-family h4{font-family:Georgia,serif;font-size:.9rem;font-weight:400;margin:0 0 5px;min-height:22px}.craft-station .colour-family>div{display:grid;grid-template-columns:repeat(3,minmax(44px,1fr));gap:2px}.craft-station .colour-family button{width:100%;height:64px;min-height:44px;padding:2px;background:transparent;border:1px solid transparent;min-width:44px}.craft-station .colour-family button svg{width:100%;height:58px;display:block}.craft-station .colour-family button.selected{border:1px solid #ad3039;background:#f6ebd9}.craft-station .pattern-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.craft-station .decoration-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.craft-station .visual-options svg{width:56px;height:65px;max-width:100%}.craft-station .visual-options button{min-height:98px}.craft-preview-panel h3{margin-bottom:15px;text-align:center;font-size:1.5rem}.craft-canvas-area{position:relative;aspect-ratio:1;width:100%;max-width:430px;margin:0 auto;background:#fcf3e1;border:1px solid #e0cda5;border-radius:12px;touch-action:pan-y}.craft-canvas-area>svg{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}.craft-canvas-area.is-dragging{touch-action:none}.craft-canvas-area.is-placing{cursor:crosshair}.craft-canvas-area button{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;padding:0;border:0;background:transparent;box-shadow:none}.craft-canvas-area .accessory-touch-target{cursor:pointer;touch-action:pan-y;z-index:2}.craft-canvas-area .accessory-touch-target.is-selected{cursor:grab;touch-action:none}.craft-canvas-area.is-dragging .accessory-touch-target{cursor:grabbing}.craft-canvas-area .accessory-resize-handle{width:44px;height:44px;z-index:3;cursor:nwse-resize;touch-action:none}.accessory-resize-handle:after{content:"";position:absolute;left:16px;top:16px;width:12px;height:12px;border:1px solid #ad3039;border-radius:3px;background:#fff8ec;box-shadow:0 1px 4px #39241022}.craft-canvas-area button:focus-visible{outline:2px solid #ad3039;outline-offset:0;border-radius:4px}.craft-canvas-help{text-align:center;font-size:.85rem;color:#65705e;line-height:1.5;margin:14px auto 0;max-width:48ch}.craft-canvas-toolbar{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:5px}.craft-canvas-toolbar button{min-width:44px;min-height:44px;padding:8px}.craft-canvas-toolbar button[aria-pressed=true]{color:#ad3039;text-decoration:underline}.craft-empty-preview{width:100%;max-width:430px;aspect-ratio:1;display:grid;place-items:center;margin:auto;border:1px dashed #d2b782;background:#fcf3e1;border-radius:12px;padding:30px;text-align:center;color:#8b7147;font-family:Georgia,serif;font-size:1.3rem}.craft-empty-preview p{margin:0}.craft-transform-controls fieldset{border:0!important;padding:0!important;margin:0 0 20px!important}.craft-transform-controls fieldset:last-child{margin-bottom:0!important}.craft-transform-controls label{display:flex;justify-content:space-between;gap:12px;font-size:.9rem;color:#064237}.craft-transform-controls output{font-variant-numeric:tabular-nums}.craft-transform-controls input[type=range]{width:100%;min-height:44px;accent-color:#ad3039;padding:0;border:0;box-shadow:none;background:transparent}.craft-nudges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:10px 0}.craft-nudges button{width:44px;height:44px;min-width:44px;border:1px solid #dccaa5;background:#fff8ec;border-radius:7px;font-size:1.35rem;color:#064237}.craft-transform-controls p{font-size:.9rem;line-height:1.5;color:#65705e}.craft-transform-controls .text-button{min-height:44px}.craft-station .craft-actions{margin:0;justify-content:center}.craft-station .craft-actions button{min-height:44px}.craft-station .tree-final-preview{text-align:center}.craft-station .tree-final-preview .ornament-preview{display:block;max-width:320px;margin:0 auto}.craft-station .tree-final-preview .ornament-preview>svg{width:100%;height:auto;display:block}.craft-station .tree-final-preview .tree-editor-actions{justify-content:center}.craft-station .tree-final-preview p{color:#65705e;font-size:.9rem}.craft-station .visual-inspection>svg{width:92px;height:103px}.craft-station :focus-visible{outline-color:#ad3039}@media(min-width:500px)and (max-width:899px){.craft-station .visual-shapes{grid-template-columns:repeat(4,minmax(0,1fr))}.craft-station .visual-shapes svg{width:68px;height:76px}}@media(min-width:900px){.craft-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);align-items:start;gap:20px}.craft-preview-panel{grid-column:1;grid-row:1}.craft-shape-panel{grid-column:1;grid-row:2}.craft-options{grid-column:2;grid-row:1/4}.craft-transform-panel{grid-column:1;grid-row:3}.craft-actions{grid-column:1/3;grid-row:4}.craft-station .visual-shapes{grid-template-columns:repeat(6,minmax(0,1fr))}.craft-station .visual-colours{grid-template-columns:repeat(2,minmax(0,1fr))}.craft-tree-overview{max-width:290px}.craft-transform-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.craft-transform-controls fieldset{margin:0!important}}@media(min-width:1160px){.craft-station .visual-shapes{grid-template-columns:repeat(8,minmax(0,1fr))}}@media(max-width:380px){.craft-station .panel{padding:14px}.craft-station .visual-colours{grid-template-columns:minmax(0,1fr)}.craft-station .colour-family>div{grid-template-columns:repeat(3,52px);justify-content:start}.craft-station .colour-family h4{min-height:0}.craft-station .decoration-options{grid-template-columns:repeat(3,minmax(0,1fr))}.craft-station .pattern-options{grid-template-columns:repeat(4,minmax(0,1fr))}.craft-station legend{font-size:1.08rem}.craft-station .visual-options button>span:not(.tile-check){font-size:.67rem}.craft-station .visual-options svg{width:48px;height:58px}}@media(prefers-reduced-motion:reduce){.craft-station *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.facade-calendar,.facade-art{position:relative;container-type:inline-size;aspect-ratio:1057 / 1488;width:100%;max-width:900px;margin:auto;isolation:isolate}.facade-backdrop{display:block;position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.facade-window{position:absolute;z-index:1;display:block;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:0;transform:translate(-50%,-50%);background:transparent;color:#e7c58c;-webkit-appearance:none;appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.facade-window:disabled{opacity:1;cursor:default}.facade-window:enabled:hover,.facade-window:enabled:active{background:transparent}.facade-window:focus-visible{outline:1px solid #f2d39a;outline-offset:1px}.facade-window.current:after{content:"";position:absolute;bottom:-2px;left:39%;width:22%;height:1px;background:#e7c58c;pointer-events:none}.facade-calendar .window-complete{position:absolute;left:calc(50% + var(--mark-x));top:calc(50% + var(--mark-y));width:var(--mark-width);height:var(--mark-height);padding:0;border:0;border-radius:0;color:#ebcc91;background:transparent;transform:translate(-50%);overflow:visible;pointer-events:none}.facade-window.is-opening{z-index:3}.facade-window.is-opening>.window-complete{opacity:0}.window-opening{position:absolute;display:block;perspective:450px;pointer-events:none}.window-opening-magic{position:absolute;display:block;overflow:visible;pointer-events:none;fill:none;stroke:#ebcc91}.window-frame-glow{stroke-width:2;filter:drop-shadow(0 0 3px #ebcc91aa);opacity:0;animation:window-frame-warmth .68s ease-out both}.window-festive-sparkle{stroke-width:.8;vector-effect:non-scaling-stroke;stroke-linecap:round;opacity:0;animation:window-sparkle-twinkle .54s ease-in-out both}@keyframes window-frame-warmth{0%,to{opacity:0}22%{opacity:.7}}@keyframes window-sparkle-twinkle{0%,to{opacity:0}32%{opacity:.9}55%{opacity:.4}68%{opacity:.65}}.window-opening .window-art,.window-opening .window-reveal{display:block;width:100%;height:100%;overflow:hidden;pointer-events:none}.window-reveal{position:absolute;inset:0}.window-shutter{position:absolute;top:0;width:50%;height:100%;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform,opacity}.window-shutter .window-art{width:200%}.window-shutter-left{left:0;transform-origin:left center;animation:reference-casement-left .68s cubic-bezier(.2,.65,.25,1) both}.window-shutter-right{right:0;transform-origin:right center;animation:reference-casement-right .68s cubic-bezier(.2,.65,.25,1) both}.window-shutter-right .window-art{margin-left:-100%}@keyframes reference-casement-left{0%,8%{transform:rotateY(0);opacity:1}72%{opacity:1}to{transform:rotateY(-108deg);opacity:0}}@keyframes reference-casement-right{0%,8%{transform:rotateY(0);opacity:1}72%{opacity:1}to{transform:rotateY(108deg);opacity:0}}.facade-note{margin:18px auto 6px;text-align:center;font-size:.8rem;color:#f0d5a3}.facade-catchup{text-align:center;color:#b8c9b7;font-size:.67rem;margin:7px auto 20px}.facade-today{display:block;color:#edcb8f;text-decoration:underline;text-underline-offset:4px;padding:7px 10px;margin:0 auto;font-size:.75rem}.landing-copy .facade-art{width:260px;margin:22px auto 0}@media(max-width:760px){.landing-copy .facade-art{width:210px}.facade-note{font-size:.7rem;margin-top:12px}.facade-catchup{font-size:.6rem;padding:0 15px}.facade-today{font-size:.65rem}}@media(prefers-reduced-motion:reduce){.window-shutter{animation:none}.window-festive-sparkle{display:none;animation:none}.window-frame-glow{animation:none;filter:none;opacity:.25}}
