.fire{--laser:125, 255, 94;--flame:#ffb13d;--pit:#000;--hall-text:#f1eadb;--hall-muted:#f1eadba8;z-index:3;padding-bottom:40px;position:relative}.hall{background:var(--pit);color:var(--hall-text);grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);margin:18px calc(50% - 50vw) 0;display:grid;position:relative}.hall-intro{z-index:3;width:100%;max-width:1272px;padding:28px 16px 0;padding-left:max(16px, env(safe-area-inset-left,0px));margin:0 auto;position:relative}.hall h1{font:400 clamp(46px, 11vw, 104px)/.9 var(--f-display);letter-spacing:-.02em;color:var(--cream);max-width:6.5em;margin:0}.life{font:700 15px/1.3 var(--f-body);font-variant-numeric:tabular-nums;margin:14px 0 0}.life span{color:var(--hall-muted);margin-left:.3em;font-weight:400}.lede{max-width:38ch;color:var(--hall-muted);text-shadow:0 0 6px #000,0 1px 2px #000;margin:10px 0 0;font-size:15px;line-height:1.5}.hall h1,.life{text-shadow:0 0 12px #000,0 0 4px #000,0 1px 2px #000}.lede,.tap-hint{text-shadow:0 0 8px #000,0 0 3px #000,0 1px 2px #000}.fc{--crowd:56%;--kg:0;--kfloor:0;--kl:max(var(--kg), var(--kfloor));--kx:50%;height:clamp(380px,62svh,520px);position:relative}.fc-edge{left:0;right:0;bottom:calc(var(--crowd) - 6%);border-top:1px solid rgba(var(--laser), calc(.1 + .45 * var(--kl)));background:linear-gradient(#0f0f12,#070708);height:8%;position:absolute}.fc-keith{--ks:calc(.74 + .26 * var(--kl));z-index:2;left:var(--kx);bottom:var(--crowd);height:var(--kh,46%);aspect-ratio:602/1100;pointer-events:none;margin:0;position:absolute;translate:-50%}.fc-grow{transform-origin:50% 100%;transform:scale(var(--ks));transition:transform 2.6s cubic-bezier(.3,.7,.25,1);animation:.9s cubic-bezier(.2,.8,.3,1) 1.75s backwards fc-punch;position:absolute;inset:0}.fc-rays{width:800%;max-width:none;height:105%;transform:translateY(calc((1 - var(--ks)) * 76.19%));opacity:clamp(0, (var(--kl) - .5) * 1.6, .85);transition:opacity 2.4s,transform 2.6s cubic-bezier(.3,.7,.25,1);animation:1.4s ease-out 1.6s backwards fc-in;position:absolute;top:-45%;left:-350%}.fc-scan{animation:1.6s cubic-bezier(.45,.05,.4,1) .35s backwards fc-scan;position:absolute;inset:-40% -74% 0;overflow:hidden}.fc-scan-in{animation:1.6s cubic-bezier(.45,.05,.4,1) .35s backwards fc-scan-in;position:absolute;inset:0}.fc-scan:before{content:"";z-index:1;height:2px;box-shadow:0 0 5px 1px rgba(var(--laser), .95), 0 0 16px 5px rgba(var(--laser), .45);opacity:0;background:#e6ffdc;border-radius:2px;animation:1.6s linear .35s fc-beam;position:absolute;top:0;left:25%;right:25%}.fc-fig{width:40.323%;height:71.429%;position:absolute;top:28.571%;left:29.839%}.fc-aura{position:absolute;inset:-40% -73.09%}.fc-fig img{max-width:none;display:block}.fc-glow{width:100%;height:100%;opacity:calc(.28 + .72 * var(--kl))}.fc-line,.fc-core{width:100%;height:100%;position:absolute;inset:0}.fc-line{opacity:calc(.62 + .38 * var(--kl))}.fc-core{opacity:clamp(.15, .15 + var(--kl) * 1.1, .95)}:is(.fc-glow,.fc-line,.fc-core){transition:opacity 2s;animation:2.8s ease-out .35s backwards fc-flare}.fc-spill{left:var(--kx);bottom:var(--crowd);aspect-ratio:4;pointer-events:none;width:min(92%,900px);opacity:calc(.1 + .86 * var(--kl));translate:-50% 50%;transform:scale(calc(.45 + .55 * var(--kl)));transition:opacity 2s,transform 2.6s cubic-bezier(.3,.7,.25,1);animation:1.6s ease-out 1.2s backwards fc-in;position:absolute}.fc-spill:before{content:"";background:radial-gradient(closest-side, rgba(var(--laser), .5), rgba(var(--laser), .16) 50%, rgba(var(--laser), 0));border-radius:50%;animation:3.5s ease-in-out 2.4s infinite fc-breathe;position:absolute;inset:0}@keyframes fc-scan{0%{transform:translateY(100%)}}@keyframes fc-scan-in{0%{transform:translateY(-100%)}}@keyframes fc-beam{0%{opacity:0}6%,50%{opacity:1}64%,to{opacity:0}}@keyframes fc-flare{0%{opacity:0}50%{opacity:1}}@keyframes fc-in{0%{opacity:0}}@keyframes fc-punch{0%,to{scale:1}30%{scale:1.04}}@keyframes fc-breathe{0%,to{opacity:.62}50%{opacity:1}}.fc.is-off .fc-spill:before{animation-play-state:paused}.fc.is-slow .fc-spill:before{animation:none}.fc-keith.bump :is(.fc-glow,.fc-line,.fc-core){animation:1.8s ease-out fc-bump}.fc-keith.bump .fc-rays{animation:2.2s ease-out fc-bump-rays}.fc-keith.bump .fc-grow{animation:1s cubic-bezier(.2,.8,.3,1) fc-jolt}.fc-keith.bump.big .fc-rays{animation-duration:3.6s}.fc-keith.bump.big .fc-grow{animation-name:fc-jolt-big;animation-duration:1.4s}@keyframes fc-bump{0%{opacity:1}}@keyframes fc-bump-rays{0%{opacity:.9}}@keyframes fc-jolt{0%,to{scale:1}18%{scale:1.06}}@keyframes fc-jolt-big{0%,to{scale:1}20%{scale:1.1}}.fc-cv{width:100%;height:var(--crowd);display:block;position:absolute;bottom:0;left:0}.fc-you{z-index:4;pointer-events:none;white-space:nowrap;background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--paper);font:700 12px/1.2 var(--f-body);opacity:0;border-radius:8px;padding:3px 8px;transition:opacity .5s;position:absolute;top:0;left:0;translate:-50% -100%}.fc-you:after{content:"";border:6px solid #0000;border-top-color:var(--ink);position:absolute;bottom:-10px;left:50%;translate:-50%}.fc-you.on{opacity:1}.fc-noscript{text-align:center;max-width:40ch;color:var(--hall-muted);margin:0 auto;font-size:14px;position:absolute;bottom:24px;left:16px;right:16px}.from{z-index:2;padding:11px max(16px, env(safe-area-inset-right,0px)) 11px max(16px, env(safe-area-inset-left,0px));border-top:1px solid #f1eadb24;align-items:center;gap:14px;display:flex;position:relative}.from>b{color:var(--hall-muted);white-space:nowrap;flex:none;font-size:13px;font-weight:500}.from ol{scrollbar-width:none;flex:1;gap:16px;min-width:0;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.from ol::-webkit-scrollbar{display:none}.from li{font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:6px;font-size:13px;display:flex}.from li svg{border-radius:1px;width:18px;height:12px;display:block;box-shadow:0 0 0 1px #fff3}.from li>span:last-child{color:var(--hall-muted)}.from li.mine b,.from li.mine>span:last-child{color:var(--flame)}.from li.empty{color:var(--hall-muted)}.act{align-items:center;gap:22px 40px;padding:30px 0 8px;display:grid}.count{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;display:flex}.count b{font:400 clamp(48px, 8vw, 84px)/1 var(--f-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.count span{font-size:17px;font-weight:500}.goal{background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 4px var(--paper), 5px 7px 0 4px #00000059;border-radius:10px;justify-self:start;gap:8px;max-width:340px;padding:12px 14px;display:grid;rotate:-1.2deg}.goal p{margin:0;font-size:14px;line-height:1.35}.goal .goal-left{min-height:1.35em;font-weight:700}.goal-bar{background:var(--ink);border-radius:4px;height:8px;display:block;overflow:hidden}.goal-bar i{background:rgb(var(--laser));transform-origin:0;height:100%;transform:scaleX(var(--fire));transition:transform 1.4s;display:block}.more{align-items:start;gap:28px;padding-top:30px;display:grid}.rules{max-width:620px;rotate:-.8deg}.rules h2{font:400 24px/1.05 var(--f-display);margin:0}.rules ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.rules li{grid-template-columns:14px 1fr;gap:10px;font-size:15px;line-height:1.4;display:grid}.rules li svg{width:12px;height:17px;fill:var(--carmine);margin-top:2px}.fire-days{align-content:start;gap:12px;margin:0;padding:0;list-style:none;display:grid}.fire-days li{font:400 clamp(18px, 2.2vw, 22px)/1.2 var(--f-display);border-left:4px solid;padding:2px 0 2px 14px}.fire-days .d1{border-color:#8a8a8a}.fire-days .d2{border-color:var(--carmine)}.fire-flash{z-index:70;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 42%, #fffffff2, rgba(var(--laser,125, 255, 94), .7) 32%, #7dff5e1f 72%, #0000);animation:3.2s ease-out forwards fire-flash;position:fixed;inset:0}@keyframes fire-flash{0%{opacity:0}16%{opacity:.9}to{opacity:0}}.fc.is-pick{cursor:pointer}.fc:focus{outline:none}.fc:focus-visible{outline:2px solid rgb(var(--laser));outline-offset:-4px}.fc-focus{z-index:4;pointer-events:none;opacity:0;border:2px solid #fff;border-radius:50%;width:20px;height:20px;position:absolute;top:0;left:0;box-shadow:0 0 0 2px #000,inset 0 0 0 1px #000}.fc-focus.on{opacity:1}.fcard{z-index:5;background:var(--paper);width:min(300px,100% - 20px);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--paper), 0 0 0 4.5px rgba(var(--laser), .75), 0 16px 34px #000000a6;border-radius:12px;gap:5px;margin:0;padding:11px 42px 12px 14px;font-size:14px;line-height:1.38;display:grid;position:absolute;top:0;left:0}.fcard[hidden]{display:none}.fcard:before{content:"";left:var(--tail,50%);border:8px solid #0000;display:none;position:absolute;translate:-50%}.fcard[data-tail=down]:before{border-top-color:var(--ink);display:block;top:calc(100% + 2px)}.fcard[data-tail=up]:before{border-bottom-color:var(--ink);display:block;bottom:calc(100% + 2px)}.fcard p{margin:0}.fcard-x{cursor:pointer;width:32px;height:32px;color:var(--ink);background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:6px;right:6px}.fcard-x svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;fill:none;width:12px;height:12px}.fcard-x:hover{background:#00000012}.fcard-x:focus-visible{outline:2px solid var(--carmine);outline-offset:1px}.fcard .flag{border-radius:1.5px;flex:none;display:block;box-shadow:0 0 0 1px #00000040}.fcard-who{align-items:center;gap:9px;min-height:26px;display:flex}.fcard-who .flag{width:27px;height:18px}.fcard-who b{font:400 21px/1.05 var(--f-display);letter-spacing:.005em;overflow-wrap:anywhere}.fcard[data-state=loading] .fcard-who b,.fcard[data-state=error] .fcard-who b{font:500 14px/1.38 var(--f-body)}.fcard[data-state=loading] .fcard-who .flag,.fcard[data-state=error] .fcard-who .flag{display:none}.fcard .fcard-sub{color:#0000009e;margin-top:-3px;font-size:13px}.fcard-date{font-variant-numeric:tabular-nums}.fcard .who{vertical-align:-1px;align-items:center;gap:5px;display:inline-flex}.fcard .who .flag{width:18px;height:12px}.fcard .fcard-reach{border-top:1.5px solid #00000024;margin-top:3px;padding-top:7px}.fcard-streak{color:#000000b3;font-size:13px}.tap-hint{color:var(--hall-muted);text-shadow:0 0 6px #000,0 1px 2px #000;margin:10px 0 0;font-size:13px}.fire:not([data-state=ready]) .tap-hint{visibility:hidden}.act-light{justify-items:start;gap:14px;display:grid}.got{background:var(--paper);max-width:46ch;color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--paper), 0 0 0 4.5px rgba(var(--laser), .75);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;padding:6px 11px;font-size:14px;line-height:1.35;display:inline-flex;rotate:-1deg}.got[hidden]{display:none}.got .who{align-items:center;gap:5px;display:inline-flex}.got .flag{border-radius:1.5px;width:21px;height:14px;display:block;box-shadow:0 0 0 1px #00000040}.my-fire{background:var(--paper);width:min(100%,560px);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 4px var(--paper), 5px 7px 0 4px #00000059;border-radius:12px;grid-column:1/-1;justify-self:start;gap:10px;padding:14px 16px 16px;display:grid;rotate:.6deg}.my-fire[hidden]{display:none}.my-fire h2{font:400 24px/1.05 var(--f-display);margin:0}.mine-reach{max-width:52ch;margin:0;font-size:15px;line-height:1.45}.mine-btns{flex-wrap:wrap;gap:12px;display:flex}.mine-btns .btn[hidden]{display:none}.my-fire .mine-pass{background:var(--carmine);color:var(--paper)}.mine-note{max-width:52ch;margin:0;font-size:14px;line-height:1.45}.mine-note:empty{display:none}.mine-field{width:100%;font:500 14px/1.3 var(--f-body);color:var(--ink);border:2px solid var(--ink);background:#fff;border-radius:8px;padding:9px 10px}.mine-field[hidden]{display:none}.mine-field:focus-visible{outline:3px solid var(--carmine);outline-offset:2px}.fmap{background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 4px var(--paper), 5px 7px 0 4px #00000059;border-radius:14px;gap:12px;margin-top:40px;padding:clamp(14px,2.4vw,24px);display:grid}.fmap-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 18px;display:grid}.fmap h2{font:400 clamp(24px, 3vw, 32px)/1.05 var(--f-display);margin:0}.fmap-head p{color:#444;grid-column:1;max-width:62ch;margin:0;font-size:15px;line-height:1.45}.fmap-head .seg{grid-area:1/2/span 2}.fmap-frame{--map-sea:#0c0c0e;--map-land:#25261f;--map-edge:#4a4c3e;--k:1}.fdot{--d:8px;--s:calc(var(--d) * var(--k));width:max(24px, var(--s));height:max(24px, var(--s));cursor:pointer;translate:-50% -50%;transform:scale(calc(1 / var(--zz)));background:0 0;border:0;border-radius:50%;padding:0;transition:transform .8s cubic-bezier(.5,0,.2,1);position:absolute}.fdot:before,.fdot:after{content:"";pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.fdot:before{width:calc(var(--s) * 3);height:calc(var(--s) * 3);background:radial-gradient(closest-side,#ffb13d80,#ff6a2429 55%,#ff6a2400)}.fdot:after{width:var(--s);height:var(--s);background:radial-gradient(circle at 50% 42%, #fff6d6 0 30%, var(--flame) 66%, #e0611f);box-shadow:0 0 0 1.5px #000000b3}.fdot.mine:after{box-shadow:0 0 0 1.5px #000, 0 0 0 3.5px rgb(var(--laser))}.fdot:hover:after,.fdot:focus-visible:after{box-shadow:0 0 0 2px #000,0 0 0 4px #fff6d6}.fdot[aria-pressed=true]:after{box-shadow:0 0 0 2px #000, 0 0 0 4.5px var(--paper), 0 0 0 6.5px var(--carmine)}.fdot:focus-visible{outline:none}.fmap-read{min-height:1.5em;margin:0;font-size:15px;line-height:1.5}.fmap .who{vertical-align:-2px;align-items:center;gap:6px;display:inline-flex}.fmap .flag{border-radius:1.5px;flex:none;width:21px;height:14px;display:block;box-shadow:0 0 0 1px #00000040}.fmap-foot{color:#555;flex-wrap:wrap;gap:4px 18px;font-size:13px;display:flex}.fmap-foot p{max-width:62ch;margin:0}.fmap-foot p[hidden]{display:none}.fmap-mine{align-items:center;gap:7px;display:inline-flex}.fmap-mine i{background:var(--flame);width:9px;height:9px;box-shadow:0 0 0 1.5px #000, 0 0 0 3.5px rgb(var(--laser));border-radius:50%}.fmap:not(.has-mine) .fmap-mine{display:none}.farch{gap:14px;margin-top:40px;display:grid}.farch h2{font:400 clamp(24px, 3vw, 32px)/1.05 var(--f-display);margin:0}.farch-empty{border:2px dashed;border-radius:12px;max-width:520px;margin:0;padding:14px 16px;font-size:15px;line-height:1.45}.farch-empty[hidden],.farch-list[hidden]{display:none}.farch-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.fseason{background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 4px var(--paper), 5px 7px 0 4px #00000059;border-radius:12px;gap:8px;padding-bottom:14px;display:grid;overflow:hidden;rotate:-.6deg}.fseason:nth-child(2n){rotate:.7deg}.fseason h3{background:var(--pit);color:var(--cream);font:400 22px/1 var(--f-display);border-bottom:2px solid var(--ink);margin:0;padding:13px 14px 12px}.fseason p{margin:0;padding:0 14px;font-size:14px;line-height:1.4}.fseason .fs-total{margin-top:4px;font-size:15px;font-weight:600}.fs-total b{font:400 44px/1 var(--f-display);color:var(--carmine);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-right:4px}.fseason .fs-at{color:#666;font-size:13px}.fs-top{border-top:1.5px solid #00000024;gap:5px;margin:2px 14px 0;padding:9px 0 0;list-style:none;display:grid}.fs-top li{grid-template-columns:21px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:14px;display:grid}.fs-top .flag{border-radius:1.5px;width:21px;height:14px;display:block;box-shadow:0 0 0 1px #00000040}.fs-top b{font-variant-numeric:tabular-nums}@media (width<=560px){.fmap-head{grid-template-columns:1fr}.fmap-head .seg{grid-area:auto/1;justify-self:start}.fmap-frame{--k:.62}}@media (width>=900px){.hall{grid-template-rows:1fr auto;height:clamp(540px,76svh,740px)}.hall-intro{pointer-events:none;padding-top:44px;position:absolute;top:0;left:0;right:0}.hall-intro>*{pointer-events:auto}.hall h1{max-width:none;font-size:clamp(56px,6.4vw,92px)}.life,.lede{text-shadow:0 0 6px #000,0 1px 2px #000}.fc{--kx:58%;height:auto}.act{grid-template-columns:auto auto 1fr}.act .goal{justify-self:end}.more{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding-inline:6px}}@media (width<=899px){.fc{--crowd:60%;height:clamp(640px,106svh,940px);margin-top:10px}.fc-edge{height:5%}.fc-keith{height:var(--kh,26%)}.hall{grid-template-rows:none}.hall-intro{display:contents}.hall h1{z-index:3;padding:28px 16px 0;padding-left:max(16px, env(safe-area-inset-left,0px));order:0;position:relative}.fc{order:1}.hall-note{padding:14px 16px 0;padding-left:max(16px, env(safe-area-inset-left,0px));order:2}.from{order:3}.fc-spill{width:130%}}@media (prefers-reduced-motion:reduce){.fc-spill:before{animation-duration:9s}@keyframes fc-breathe{0%,to{opacity:.9}50%{opacity:1}}.fc-scan,.fc-scan-in,.fc-scan:before{animation-duration:3s}:is(.fc-glow,.fc-line,.fc-core){animation-duration:4.5s}.fc-keith.bump :is(.fc-glow,.fc-line,.fc-core),.fc-keith.bump .fc-rays{animation-duration:3.5s}@keyframes fc-punch{0%,to{scale:1}30%{scale:1.015}}@keyframes fc-jolt{0%,to{scale:1}18%{scale:1.02}}@keyframes fc-jolt-big{0%,to{scale:1}20%{scale:1.03}}.fc-grow,.fc-spill{transition-duration:4s}.fc-rays{transition-duration:3s,4s}.fc-glow,.fc-line,.fc-core,.goal-bar i{transition-duration:3s}.fdot{transition-duration:1.4s}.fire-flash{animation-duration:6s}@keyframes fire-flash{0%{opacity:0}30%{opacity:.45}to{opacity:0}}}.count-box{align-content:center;gap:6px;display:grid}.count-candles{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.count-candles:before{content:"";width:9px;height:9px;box-shadow:0 0 0 1.5px var(--ink), 0 0 8px 2px #ebf0ffcc;background:#fff;border-radius:50%}.count-candles[hidden]{display:none}.fbadges-mine{grid-column:1/-1}.act>.fs-day{grid-column:1/-1;margin:6px 0 4px 6px}:root[data-mode=memorial] .fc{--kfloor:.55}:root[data-mode=memorial] .fc-rays{display:none}:root[data-mode=memorial] .fc-core{opacity:calc(.4 + .5 * var(--kl))}:root[data-mode=memorial] .fc-spill:before{animation-duration:6s}@media (prefers-reduced-motion:reduce){:root[data-mode=memorial] .fc-spill:before{animation-duration:9s}}.story-btn{cursor:pointer;color:var(--ink);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--paper), 4px 5px 0 3px var(--ink);font:700 16px/1.1 var(--f-body);background:#ffb13d;border-radius:10px;align-items:center;gap:9px;padding:10px 16px 10px 12px;transition:transform .12s,box-shadow .12s;display:inline-flex;rotate:-1.5deg}.story-btn svg{flex:none;width:15px;height:21px}.story-btn rect{fill:var(--ink)}.story-btn path{fill:#ffb13d}.story-btn:hover{transform:translate(-1px,-1px)}.story-btn:active{box-shadow:0 0 0 3px var(--paper), 1px 1px 0 3px var(--ink);transform:translate(2px,2px)}.story-btn:focus-visible{outline:3px solid var(--cream);outline-offset:7px}.story-btn[aria-busy=true],.fcard-story[aria-busy=true]{cursor:progress;opacity:.75}.fcard-story{cursor:pointer;color:var(--ink);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);font:700 13px/1.1 var(--f-body);background:#ffb13d;border-radius:8px;justify-self:start;align-items:center;gap:7px;margin-top:4px;padding:7px 12px 7px 9px;display:inline-flex}.fcard-story[hidden]{display:none}.fcard-story svg{width:11px;height:16px;fill:var(--ink);flex:none}.fcard-story:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.fcard-story:focus-visible{outline:3px solid var(--carmine);outline-offset:2px}@media (prefers-reduced-motion:reduce){.story-btn,.fcard-story{transition-duration:.3s}}
