.tot-scene{--tot-night:#0d0918;--tot-plum:#2b1d3f;--tot-glow:#ffb347;--tot-flame:#ff8a1c;--tot-bone:#f3ead6;isolation:isolate;border:3px solid var(--ink);width:100%;box-shadow:6px 6px 0 var(--ink);color:var(--tot-bone);background:radial-gradient(70% 40% at 82% 0,#ffbe6e29,#0000 70%),linear-gradient(#0d0918 0%,#1d1433 38%,#33204a 72%,#4a2636 100%);border-radius:28px;position:relative;overflow:hidden;container-type:inline-size}.tot-sky{z-index:-1;pointer-events:none;position:absolute;inset:0}.tot-stars{width:100%;height:260px;position:absolute;inset:0 0 auto}.tot-star{animation:3.6s ease-in-out infinite tot-twinkle}.tot-moon{aspect-ratio:1;background:radial-gradient(circle at 40% 38%,#fff8e4 0%,#f8dd9c 55%,#e4a94f 100%);border-radius:50%;width:clamp(54px,11cqw,120px);position:absolute;top:18px;right:5%;box-shadow:0 0 36px 10px #ffd98a52,0 0 120px 46px #f3a84a24}.tot-moon:before,.tot-moon:after{content:"";background:#c98c3e38;border-radius:50%;position:absolute}.tot-moon:before{width:22%;height:22%;top:30%;left:24%}.tot-moon:after{width:13%;height:13%;top:60%;left:58%}.tot-cloud{opacity:.7;filter:blur(1px);background:#2a1d40;border-radius:99px;width:15%;height:10px;animation:26s ease-in-out infinite alternate tot-drift;position:absolute;top:clamp(52px,9cqw,96px);right:7%}.tot-cloud:after{content:"";background:inherit;border-radius:99px;width:46%;height:16px;position:absolute;top:-8px;left:22%}.tot-bat{width:34px;animation:17s linear infinite tot-fly;position:absolute;left:0}.tot-bat svg{fill:#100a1c;transform-origin:50% 40%;width:100%;height:auto;animation:.32s ease-in-out infinite alternate tot-flap;display:block}.tot-bat.b{width:22px;animation-duration:23s;animation-delay:-9s}.tot-bat.c{width:16px;animation-duration:29s;animation-delay:-17s}.tot-street{justify-content:center;gap:clamp(6px,1.6cqw,18px) clamp(4px,1.2cqw,14px);display:grid}.tot-house{aspect-ratio:4/5;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:0;transition:transform .22s cubic-bezier(.3,1.5,.5,1),filter .3s;display:block;position:relative;container-type:inline-size}.tot-house:focus-visible{outline:3px solid var(--tot-glow);outline-offset:3px}.tot-house:not(:disabled):hover{transform:translateY(-4px)}.tot-house:disabled{cursor:default}.tot-house.is-done{filter:saturate(.55)brightness(.72)}.tot-inside img{width:74%;height:auto}.tot-facade{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.tot-win{animation:5s ease-in-out infinite tot-window}.tot-house:not(:disabled):hover .tot-win{filter:brightness(1.18)}.tot-frame{perspective:260px;background:#1a0f12;border-radius:50% 50% 4px 4px/26% 26% 4px 4px;width:36%;height:40%;position:absolute;bottom:10%;left:32%;box-shadow:0 0 0 3px #1a0f12}.tot-inside{border-radius:inherit;background:radial-gradient(at 50% 72%,#fff1c8 0%,#ffc66b 42%,#c1601d 100%);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.tot-inside.is-web{background:radial-gradient(at 50% 70%,#6d5f7d,#2b2236 80%)}.tot-door{border-radius:inherit;transform-origin:0;backface-visibility:hidden;background:repeating-linear-gradient(90deg,#0000 0 30%,#0000002e 30% 33%),linear-gradient(90deg,#8a4520,#5f2c12);place-items:center;transition:transform .75s cubic-bezier(.3,1.25,.5,1);display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #2b140a,inset 0 -6px #0000002e}.tot-door:after{content:"";aspect-ratio:1;background:#ffcf6b;border-radius:50%;width:9%;position:absolute;top:58%;right:12%;box-shadow:0 0 4px #ffcf6b}.tot-plaque{aspect-ratio:1;background:var(--tot-bone);color:#1d2340;min-width:70%;font:800 clamp(13px, 19cqw, 44px) / 1 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;margin-top:-18%;display:grid;box-shadow:0 0 0 2px #2b140a,0 2px 0 2px #0000004d}.tot-house.is-open .tot-door{transform:rotateY(-108deg)}.tot-house.is-knock .tot-door{animation:.5s ease-in-out 2 tot-knock}.tot-bubble{z-index:2;background:var(--tot-bone);color:#1d2340;font:650 clamp(12px, 13cqw, 26px) / 1.1 var(--font-hand);white-space:nowrap;pointer-events:none;border-radius:12px;padding:3px 9px 4px;animation:.3s cubic-bezier(.3,1.6,.5,1) both tot-pop;position:absolute;bottom:54%;left:50%;translate:-50%;box-shadow:2px 2px #1d2340}.tot-bubble:after{content:"";border:6px solid #0000;border-top-color:var(--tot-bone);position:absolute;top:100%;left:50%;translate:-50%}.tot-tag{z-index:1;font:800 clamp(11px, 12cqw, 24px) / 1.15 var(--font-display);white-space:nowrap;border:2px solid #1d2340;border-radius:99px;padding:1px 7px 2px;position:absolute;bottom:-2%;left:50%;translate:-50%}.tot-tag.treat{color:#1d2340;background:#ffb347}.tot-tag.trick{color:#1d2340;background:#b48ef5}.tot-tag.web{color:#1d2340;background:#d9cfe6}.tot-pavement{background:linear-gradient(#1a1226,#120c1b);border-top:3px solid #0a0610;position:relative}.tot-pavement:before{content:"";opacity:.8;background:repeating-linear-gradient(90deg,#2c2140 0 46px,#1a1226 46px 50px);height:6px;position:absolute;top:0;left:0;right:0}.tot-bucket{transition:transform .3s cubic-bezier(.3,1.5,.5,1),box-shadow .3s;position:relative}.tot-bucket.is-turn{transform:translateY(-5px)}.tot-bucket.is-turn .tot-pail{animation:1.6s ease-in-out infinite alternate tot-bob}.tot-pail{display:block;overflow:visible}.tot-card-head{color:var(--tot-bone,#f3ead6);background:linear-gradient(100deg,#1b1328 0%,#2b1d3f 55%,#3a1f3f 100%)}.tot-glow-treat{text-shadow:0 0 22px #ffa032a6}.tot-glow-trick{text-shadow:0 0 22px #b48ef5bf}.tot-float{animation:2.4s ease-in-out infinite alternate tot-ghost}.tot-trophy-shine{animation:3s ease-in-out infinite tot-window}@keyframes tot-twinkle{0%,to{opacity:1}45%{opacity:.35}}@keyframes tot-drift{0%{transform:translate(-24px)}to{transform:translate(30px)}}@keyframes tot-fly{0%{transform:translate(-12cqw,70px)}30%{transform:translate(28cqw,30px)}60%{transform:translate(64cqw,64px)}to{transform:translate(112cqw,20px)}}@keyframes tot-flap{0%{transform:scaleY(1)}to{transform:scaleY(.4)}}@keyframes tot-window{0%,to{opacity:1}32%{opacity:.7}36%{opacity:1}64%{opacity:.85}}@keyframes tot-knock{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(-3%)rotate(-1.5deg)}40%{transform:translate(3%)rotate(1.5deg)}60%{transform:translate(-2%)rotate(-1deg)}80%{transform:translate(2%)rotate(1deg)}}@keyframes tot-pop{0%{opacity:0;scale:.4}to{opacity:1;scale:1}}@keyframes tot-bob{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-4px)rotate(3deg)}}@keyframes tot-ghost{0%{transform:translateY(0)rotate(-4deg)}to{transform:translateY(-12px)rotate(4deg)}}@media (prefers-reduced-motion:reduce){.tot-scene *,.tot-scene :before,.tot-scene :after,.tot-float,.tot-trophy-shine{transition:none!important;animation:none!important}.tot-bat{display:none}}@media print{.tot-print-row{break-inside:avoid}}
.ftt-scene{isolation:isolate;color:#2b1a10;background:radial-gradient(55% 45% at 8% 0,#ffc46680,#0000 70%),radial-gradient(50% 40% at 100% 10%,#ffe4aa73,#0000 70%),repeating-linear-gradient(90deg,#a0582c0b 0 26px,#0000 26px 52px),linear-gradient(#fdf1dc 0%,#f9e2bd 52%,#f1c993 100%);border:3px solid #2b1a10;border-radius:28px;width:100%;position:relative;overflow:hidden;box-shadow:6px 6px #2b1a10;container-type:inline-size}.ftt-scene:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(112deg,#0000 0 14%,#fff4d6b3 20% 30%,#0000 38% 50%,#fff4d680 55% 61%,#0000 69%);animation:9s ease-in-out infinite alternate ftt-sun;position:absolute;inset:0}.ftt-lights{pointer-events:none;width:100%;height:56px;position:absolute;top:-2px;left:0}.ftt-bulb{filter:drop-shadow(0 0 4px #ffba54f2);animation:3.4s ease-in-out infinite ftt-bulb}.ftt-title{font:800 40px / 1.05 var(--font-display);letter-spacing:-.02em;color:#8c2433;text-shadow:0 2px #fff3d6,0 0 22px #f2c14e8c;overflow-wrap:anywhere}.ftt-board{background:linear-gradient(#fffaf099,#fffaf040);border-radius:22px;flex-direction:column;align-items:center;gap:clamp(12px,2.2cqw,26px);padding:clamp(10px,2cqw,22px) clamp(4px,1.4cqw,16px) clamp(8px,1.4cqw,14px);display:flex;box-shadow:inset 0 0 0 2px #7a442229}.ftt-shelf{justify-content:center;column-gap:clamp(2px,.7cqw,8px);width:100%;padding:0 clamp(4px,1.2cqw,14px) clamp(9px,1.4cqw,15px);display:grid;position:relative}.ftt-shelf:after{content:"";background:linear-gradient(#d08a52 0 38%,#a2602f 38% 100%);border-radius:6px;height:clamp(10px,1.5cqw,16px);position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 0 0 2px #6b3a1c,0 7px 12px #4a2a1738}.ftt-cover{z-index:1;aspect-ratio:6/5;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:14px;margin-bottom:-4%;padding:0;display:block;position:relative;container-type:inline-size}.ftt-cover:focus-visible{outline-offset:3px;outline:3px solid #8c2433}.ftt-cover:disabled{cursor:default}.ftt-plate,.ftt-peek,.ftt-lid{width:100%;height:100%;position:absolute;inset:0}.ftt-peek{animation:.35s ease-out both ftt-pop}.ftt-lidwrap{z-index:2;transform-origin:78% 88%;transition:transform .7s cubic-bezier(.3,1.3,.5,1),opacity .5s;position:absolute;inset:0}.ftt-cover:not(:disabled):hover .ftt-lidwrap{transform:translateY(-6%)rotate(-3deg)}.ftt-cover:not(:disabled):active .ftt-lidwrap{transform:translateY(-2%)}.ftt-cover.is-rattle .ftt-lidwrap{animation:.55s ease-in-out ftt-rattle}.ftt-cover.is-lifted .ftt-lidwrap{transform:translate(16%,-36%)rotate(24deg)}.ftt-cover.is-done .ftt-lidwrap{opacity:0;pointer-events:none;transform:translate(26%,-60%)rotate(32deg)}.ftt-num{aspect-ratio:1;color:#2b1a10;width:33cqw;font:800 clamp(13px, 19cqw, 46px) / 1 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;background:#fffaf0;border-radius:50%;place-items:center;display:grid;position:absolute;top:61%;left:50%;translate:-50% -50%;box-shadow:0 0 0 2px #4a2a17,0 2px 0 2px #4a2a1740}.ftt-cover.is-basket .ftt-num{top:45%}.ftt-under{z-index:1;place-items:end center;animation:.4s cubic-bezier(.3,1.6,.5,1) both ftt-pop;display:grid;position:absolute;inset:auto 0 11%}.ftt-under .ftt-dish{width:80%;height:auto}.ftt-cover.is-missed .ftt-under{filter:grayscale(.85)opacity(.5)}.ftt-tag{z-index:3;color:#2b1a10;font:800 clamp(11px, 11cqw, 22px) / 1.15 var(--font-display);white-space:nowrap;border:2px solid #2b1a10;border-radius:99px;padding:1px 8px 2px;position:absolute;bottom:-3%;left:50%;translate:-50%}.ftt-tag.dish{background:#f2c14e}.ftt-tag.good{background:#a9d39a}.ftt-tag.oops{background:#ef8f9b}.ftt-tag.missed{background:#e8dccb}.ftt-floor{background:linear-gradient(#2b160c47,#0000 26px),repeating-linear-gradient(#b6763f 0 30px,#9a5d32 30px 32px);border-top:3px solid #6b3a1c;align-items:start;position:relative}.ftt-table{--team:#f0913a;color:#2b1a10;background:#fffaf0;border:3px solid #2b1a10;border-radius:18px;flex-direction:column;min-width:0;transition:transform .3s cubic-bezier(.3,1.5,.5,1),box-shadow .3s;display:flex;position:relative;box-shadow:4px 4px #3a200f}.ftt-table.is-turn{box-shadow:0 0 0 4px var(--team), 0 0 26px var(--team), 4px 4px 0 #3a200f;transform:translateY(-5px)}.ftt-table-head{border-top:8px solid var(--team);border-radius:15px 15px 0 0;justify-content:space-between;align-items:center;gap:6px;padding:6px 10px;display:flex}.ftt-foot{color:#6b4f3a;font:600 12px / 1 var(--font-sans);justify-content:center;align-items:center;gap:4px;padding:0 6px 2px;display:flex}.is-big .ftt-foot{font-size:15px}.ftt-bump{color:#2b1a10!important;width:32px!important;height:32px!important}.ftt-bump:hover{background:#f2ecdd!important}.ftt-turn-note{color:#fffaf0;font:700 11px / 1.4 var(--font-sans);white-space:nowrap;background:#2b1a10;border-radius:0 0 9px 9px;padding:0 9px 2px;position:absolute;top:0;left:50%;translate:-50%}.is-big .ftt-turn-note{font-size:15px}.ftt-cloth{background:repeating-linear-gradient(0deg, #ffffff3d 0 6px, transparent 6px 12px) center / 100% 70% no-repeat, repeating-linear-gradient(90deg, #ffffff3d 0 6px, transparent 6px 12px) center / 100% 70% no-repeat, linear-gradient(var(--team), var(--team)) center / 100% 70% no-repeat, repeating-linear-gradient(180deg, #d08f58 0 16px, #c17f4a 16px 17px);border-top:2px solid #2b1a10;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:2px 4px;min-height:78px;padding:12px 8px 10px;display:flex;position:relative}.is-big .ftt-cloth{min-height:120px}.ftt-skirt{background:linear-gradient(#96552a,#6b3a1c);border-top:2px solid #2b1a10;height:10px}.ftt-chairs{flex-wrap:wrap;justify-content:center;gap:2px 6px;padding:5px 6px 3px;display:flex}.ftt-item{line-height:0;display:inline-block;position:relative}.ftt-pts{color:#2b1a10;min-width:18px;height:18px;font:800 11px / 15px var(--font-display);text-align:center;background:#fffaf0;border:1.5px solid #2b1a10;border-radius:99px;padding:0 4px;position:absolute;bottom:-3px;right:-3px}.ftt-pts.is-x2{background:#f2c14e}.is-big .ftt-pts{min-width:26px;height:26px;font-size:16px;line-height:23px}.ftt-empty{color:#6b4428;max-width:92%;font:650 15px / 1.2 var(--font-hand);text-align:center;background:#fffaf0e0;border-radius:10px;align-self:center;padding:3px 10px 4px}.is-big .ftt-empty{font-size:22px}.ftt-x2{font:800 12px / 1.3 var(--font-display);background:#f2c14e;border:2px solid #2b1a10;border-radius:99px;padding:1px 8px;animation:1.6s ease-in-out infinite alternate ftt-glow;position:absolute;top:4px;right:6px;box-shadow:0 0 12px #f2c14ee6}.is-big .ftt-x2{font-size:17px}.ftt-mini{width:min(100%,440px);box-shadow:3px 3px #3a200f}.ftt-mini.is-big{width:min(100%,640px)}.ftt-card{color:#2b1a10;background:#fffaf0;border:3px solid #2b1a10;border-radius:26px;box-shadow:8px 8px #3a200f}.ftt-card .muted{color:#6b4f3a}.ftt-card-head{color:#fff7ea;background:linear-gradient(100deg,#7a1f2d 0%,#9c3a26 55%,#b8642a 100%)}.ftt-burst{place-items:center;padding:10px 28px;display:inline-grid;position:relative}.ftt-burst:before{content:"";z-index:0;background:repeating-conic-gradient(from 0deg, #f2c14e57 0 10deg, transparent 10deg 22deg);border-radius:50%;animation:18s linear infinite ftt-spin;position:absolute;inset:-10% -6%;-webkit-mask:radial-gradient(closest-side,#000 40%,#0000);mask:radial-gradient(closest-side,#000 40%,#0000)}.ftt-burst>*{position:relative}.ftt-pill{background:#f2c14e;border:2px solid #2b1a10;border-radius:99px;padding:0 14px 2px;font-size:.85em}.ftt-starter{font:650 1em / 1.2 var(--font-hand);color:#8c2433}.ftt-gone{filter:grayscale(.7)opacity(.6)}.ftt-steam path{transform-box:fill-box;animation:2.4s ease-in-out infinite ftt-steam}.ftt-pass{animation:1.2s ease-in-out infinite ftt-nudge}.ftt-float{animation:2.4s ease-in-out infinite alternate ftt-float}.ftt-shine{animation:3s ease-in-out infinite ftt-bulb}.ftt-rank{box-shadow:inset 0 0 0 2px #4a2a1733, inset 8px 0 0 var(--team);background:#fffaf0d9;border-radius:18px;align-items:center;gap:12px;padding:8px 16px;display:flex}.ftt-rank[data-first]{box-shadow:inset 0 0 0 3px #f2c14e, inset 8px 0 0 var(--team), 0 0 22px #f2c14e80;background:#fff1c7}@keyframes ftt-sun{0%{opacity:.65}to{opacity:1}}@keyframes ftt-bulb{0%,to{opacity:1}50%{opacity:.62}}@keyframes ftt-glow{0%{box-shadow:0 0 6px #f2c14e99}to{box-shadow:0 0 16px #f2c14e}}@keyframes ftt-rattle{0%,to{transform:translateY(0)rotate(0)}15%{transform:translateY(-5%)rotate(-4deg)}35%{transform:translateY(0)rotate(3deg)}55%{transform:translateY(-4%)rotate(-3deg)}75%{transform:translateY(0)rotate(2deg)}}@keyframes ftt-pop{0%{opacity:0;scale:.5}to{opacity:1;scale:1}}@keyframes ftt-steam{0%{opacity:0;transform:translateY(6px)}40%{opacity:1}to{opacity:0;transform:translateY(-10px)}}@keyframes ftt-float{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-10px)rotate(3deg)}}@keyframes ftt-nudge{0%,to{transform:translate(0)}50%{transform:translate(6px)}}@keyframes ftt-spin{to{rotate:360deg}}@media (prefers-reduced-motion:reduce){.ftt-scene *,.ftt-scene :before,.ftt-scene :after,.ftt-scene:before,.ftt-card *,.ftt-card :before,.ftt-float,.ftt-shine,.ftt-pass{transition:none!important;animation:none!important}}@media print{.ftt-print-row{break-inside:avoid}.ftt-print-num{width:9mm;height:9mm;font:800 12pt/1 var(--font-display);border:.5mm solid #000;border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}}
