@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2)format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fraunces-latin-700-normal-CEOla-zY.woff2)format("woff2"),url(/assets/fraunces-latin-700-normal-DTjk5d1Q.woff)format("woff")}@font-face{font-family:Fraunces;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-italic-ChpO6tcr.woff2)format("woff2"),url(/assets/fraunces-latin-400-italic-B7iDoVhm.woff)format("woff")}:root{--night:#070a1c;--panel:#111739;--panel-2:#1a2150;--line:#a0afff21;--ink:#eeebf8;--muted:#a3aad0;--amber:#ffb547;--amber-2:#f29a2e;--amber-ink:#2a1a00;--tender:#ff9db0;--petty:#b9e36a;--mundane:#b7bfd8;--neon:#8dffc1;--gutter:16px;--nav-h:64px;--radius:14px;--display:"Fraunces", Georgia, "Times New Roman", serif;--town-glow:#1c2654;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--night);color:var(--ink);margin:0}body{-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:radial-gradient(120% 60% at 50% 0%, var(--town-glow), transparent 70%), var(--night);background-attachment:fixed;font:15px/1.4 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}button{font:inherit;color:inherit;cursor:pointer}h2{font:600 1.2rem/1.2 var(--display);letter-spacing:.005em;margin:0 0 .5rem}.muted{color:var(--muted)}[hidden]{display:none!important}svg{display:block}#app{max-width:560px;min-height:100dvh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 64px);flex-direction:column;margin:0 auto;display:flex}.hud{padding:calc(10px + env(safe-area-inset-top)) var(--gutter) 8px;z-index:5;background:linear-gradient(var(--night) 88%, #070a1c00);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2px 12px;display:grid;position:sticky;top:0}.brand{min-width:0;font:italic 600 1.05rem var(--display);color:var(--amber);letter-spacing:.01em;align-items:center;gap:6px;display:flex}.brand span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand svg{flex:none;width:22px;height:22px}.money{text-align:right}.coins{font:700 2rem/1 var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.coins svg{width:22px;height:22px;color:var(--amber)}.rate{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.chips{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:4px;min-height:22px;display:flex}.chip{color:var(--amber);font-variant-numeric:tabular-nums;white-space:nowrap;background:#ffb5471f;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.chip svg{width:13px;height:13px}.chip.neon{color:var(--neon);background:#8dffc11f}.chip.warn{color:var(--tender);background:#ff9db024}.scene{height:clamp(200px,33vh,290px);margin:0 var(--gutter);cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 0 0 1px var(--line), 0 18px 40px #00000073;background:var(--sky-top,#070b22);border-radius:18px;position:relative;overflow:hidden;container-type:inline-size}.scene svg{width:100%;height:100%}.scene .far2{fill:var(--far2)}.scene .far{fill:var(--far)}.scene .mid{fill:var(--mid)}.scene .near{fill:var(--near)}.scene .rim{fill:none;stroke:var(--rim);stroke-width:.9px;opacity:.4}.scene .rim-fill{fill:var(--rim);opacity:.3}.scene .door,.scene .dormer{fill:var(--near)}.scene .porch{fill:var(--win)}.scene .win{fill:var(--near);transition:fill 1.2s}.scene .win.lit{fill:var(--win)}.scene .win.occupied{fill:#fff0cc}.scene .win-halo{opacity:0;transition:opacity 1.2s}.scene .win-halo.lit{opacity:1}.scene .mullion{fill:none;stroke:var(--mid);stroke-width:.7px;opacity:.85}.scene .win.pulse{animation:1s ease-out winpulse}@keyframes winpulse{0%{fill:#fff6dc}to{}}.scene .far-light{fill:var(--win);opacity:.7;animation:9s ease-in-out infinite alternate breathe}.scene .far-light.soft{fill:var(--win-glow)}.scene .far-light.big{opacity:.9}@keyframes breathe{0%{opacity:.45}to{opacity:.85}}.scene .clock,.scene .beacon{fill:var(--win);opacity:.85}.scene .depot-flag{fill:#d9546f;opacity:.85}.scene .hedge{fill:var(--far)}.scene .gate rect{fill:var(--near)}.scene .gate{opacity:.85}.scene .sea{fill:var(--sea,var(--far2))}.scene .sea-glint rect{fill:var(--rim);opacity:.3}.scene .falls{fill:var(--fog);opacity:.5}.scene .smoke circle{fill:var(--fog);opacity:.14}.scene .smoke{animation:14s ease-in-out infinite alternate smoke}@keyframes smoke{0%{transform:translate(0)}to{transform:translate(8px,-4px)}}.scene .beam path{fill:var(--win);opacity:.08}.scene .beam{animation:16s ease-in-out infinite alternate beam}@keyframes beam{0%{transform:rotate(-24deg)}to{transform:rotate(150deg)}}.scene .sails{animation:60s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.scene .moon-disc{fill:#f3ead2}.scene .moon-crater{fill:#cbbd98;opacity:.45}.scene .star{fill:#e2e6ff}.scene .twinkle{animation:7s ease-in-out infinite alternate twinkle-group}@keyframes twinkle-group{0%{opacity:.3}to{opacity:1}}@keyframes twinkle{0%{opacity:.25}to{opacity:.85}}.scene .stars,.scene .dawn-glow{transition:opacity 2s}.scene .lantern-bob{animation:7s ease-in-out infinite alternate bob}.scene .sky-lantern.leaving{animation:2.5s ease-in forwards drift-off}@keyframes drift-off{to{opacity:0;transform:translateY(-40px)}}.scene .lantern-body{fill:#ffe1a6}@keyframes bob{0%{transform:translateY(0)}to{transform:translateY(-3px)}}.scene .rising-lantern{animation:6s ease-out forwards rise}@keyframes rise{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-170px)}}.scene .fog ellipse{fill:var(--fog);opacity:calc(.06 + var(--fog-strength,.1) * .35)}.scene .fog{animation:30s ease-in-out infinite alternate drift}.scene .fog-band{opacity:calc(.18 + var(--fog-strength,.1) * 1.1)}@keyframes drift{0%{transform:translate(-18px)}to{transform:translate(18px)}}.scene .lamp-light{fill:var(--win)}.scene .mailbox-body{fill:#2b3a86}.scene .mailbox-slot{fill:var(--win);opacity:.8}.scene .mailbox-flag{fill:#d9546f}.scene[data-moment=dim] .win.lit{fill:#4a3320;transition:fill 2.5s}.scene[data-moment=dim] .win-halo.lit{opacity:.15;transition:opacity 2.5s}.scene .fx-face{animation:7s ease-in-out forwards fadeinout}.scene .fx-letter{animation:7s ease-in-out forwards floatletter}.scene .fx-shadow,.scene .fx-candle{animation:7s ease-in-out forwards fadeinout}.scene .fx-candle .flame{transform-origin:0 4px;animation:7s ease-in-out forwards lean}@keyframes fadeinout{0%{opacity:0}35%{opacity:1}70%{opacity:1}to{opacity:0}}@keyframes floatletter{0%{opacity:0;transform:translate(0)rotate(-6deg)}30%{opacity:1}to{opacity:0;transform:translate(120px,30px)rotate(8deg)}}@keyframes lean{0%,20%{transform:rotate(0)}60%{transform:rotate(-28deg)}to{transform:rotate(0)}}.scene-caption{-webkit-backdrop-filter:blur(4px);font:italic 400 .93rem/1.38 var(--display);opacity:0;pointer-events:none;z-index:3;background:#060816cc;border-radius:12px;margin:0;padding:9px 12px;transition:opacity .8s,transform .8s;position:absolute;bottom:10px;left:10px;right:10px;transform:translateY(6px)}.scene-caption.show{opacity:1;transform:none}.wisp{z-index:2;background:radial-gradient(circle,#e6f6ff 0 18%,#8fd3ff 30%,#8fd3ff00 70%);border:0;border-radius:50%;width:44px;height:44px;animation:10s ease-in-out forwards wander;position:absolute}@keyframes wander{0%{opacity:0;transform:translate(0)}10%{opacity:1}50%{transform:translate(40px,-12px)}85%{opacity:1}to{opacity:0;transform:translate(80px,-30px)}}.person{z-index:2;background:0 0;border:0;width:44px;height:44px;margin:-26px 0 0 -22px;padding:0;animation:.9s ease-out appear;position:absolute}.person:before{content:"";background:radial-gradient(circle,#ffd68c8c,#ffc76b00 70%);border-radius:50%;width:36px;height:36px;animation:2.6s ease-in-out infinite glowpulse;position:absolute;top:10px;left:4px}.person .who{fill:#1a1206;opacity:.8;width:14px;height:17px;position:absolute;top:20px;left:15px}.person .env{filter:drop-shadow(0 0 4px #ffb547cc);width:18px;height:14px;animation:2.4s ease-in-out infinite alternate bob;position:absolute;top:1px;left:13px}.person .env rect{fill:#f4ead2;stroke:#a08e62;stroke-width:1px}.person .env path{fill:none;stroke:#a08e62;stroke-width:1px}.person.rare:before{background:radial-gradient(circle,#ffec96bf,#ffdc6b00 70%)}.person.rare .env rect{fill:#ffe38a;stroke:#b98a1a}.person.rare .env{filter:drop-shadow(0 0 6px #ffd24a)}@keyframes glowpulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.12)}}.person.memory:before{background:radial-gradient(circle,#ece2ffcc,#d2c4ff00 70%)}.person.memory .env rect{fill:#f4eeff;stroke:#9a8ac8}.person.memory .env{filter:drop-shadow(0 0 7px #d8ccff)}.person.leaving{opacity:0;pointer-events:none;transition:opacity .6s}@keyframes appear{0%{opacity:0}to{opacity:1}}.courier{top:var(--y);opacity:.8;pointer-events:none;z-index:1;filter:drop-shadow(0 0 6px #dce4ff73);width:20px;height:24px;animation:20s linear infinite courier;position:absolute;left:-30px}.courier svg{width:100%;height:100%;animation:1.8s ease-in-out infinite alternate bob}@keyframes courier{0%{transform:translate(0)}to{transform:translate(calc(100cqw + 60px))}}.hunter{z-index:2;background:0 0;border:0;width:44px;height:64px;padding:0;position:absolute;bottom:6px}.hunter svg{width:24px;height:40px;position:absolute;bottom:0;left:10px}.hunter .beam{transform-origin:0;clip-path:polygon(0 45%,100% 0,100% 100%,0 55%);pointer-events:none;background:linear-gradient(90deg,#fff4c473,#fff4c400);width:120px;height:60px;animation:5s ease-in-out infinite alternate sweep;position:absolute;bottom:26px;left:30px}.hunter[data-kind=certified] .beam{background:linear-gradient(90deg,#bee6ff80,#bee6ff00)}@keyframes sweep{0%{transform:rotate(-35deg)}to{transform:rotate(-5deg)}}.scene .office-body{fill:#07120f}.scene .office-window{fill:#1b5a44;filter:drop-shadow(0 0 5px #7dffb059)}.scene .office-awning{fill:#0d2a21}.scene .office-stripe{fill:#3dbb7a;opacity:.5}.scene .office-dim{fill:#0e221d}.scene .office-door{fill:#12302a}.scene .office-knob{fill:var(--neon)}.express-sign{letter-spacing:.12em;text-transform:uppercase;text-align:center;color:#c8ffe0;text-shadow:0 0 4px #3dff95,0 0 9px #3dff9599;pointer-events:none;white-space:nowrap;z-index:1;background:#04140e99;border:1px solid #8dffc1b3;border-radius:3px;padding:1px 5px;font:700 8px/1.05 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:absolute;transform:translate(-50%,-100%);box-shadow:0 0 10px #3dff9559,inset 0 0 6px #3dff9533}.vane{z-index:2;background:0 0;border:0;width:44px;height:44px;margin:-22px 0 0 -22px;padding:0;position:absolute}.vane svg{fill:#02030a;opacity:.75;width:20px;height:30px;transition:opacity .6s;position:absolute;top:8px;left:12px}.vane[data-mode=idle] svg{opacity:.45}.vane .coin{opacity:0;background:radial-gradient(circle at 35% 35%,#fff3c4,#e0a93a 60%,#8a5a12);border-radius:50%;width:10px;height:10px;margin-left:-5px;transition:opacity .6s;position:absolute;top:-4px;left:50%;box-shadow:0 0 6px #ffb547}.vane[data-mode=offer] svg{opacity:1}.vane[data-mode=offer] .coin{opacity:1;animation:1.6s ease-in-out infinite alternate bob}.express-sign.merged{color:#fff0d0;text-shadow:0 0 4px #ffb547,0 0 10px #3dff9580;border-color:#ffc878cc;box-shadow:0 0 12px #ffb54766,inset 0 0 6px #3dff9540}.vane[data-mode=letter] svg{opacity:1}.vane[data-mode=letter] .coin{opacity:1;background:#f3e7c8;border-radius:2px;width:14px;height:10px;margin-left:-7px;animation:1.6s ease-in-out infinite alternate bob;box-shadow:0 0 8px #ffd48a}.vane[data-mode=letter]:before,.vane[data-mode=offer]:before{content:"";background:radial-gradient(circle,#7dffb059,#7dffb000 70%);border-radius:50%;width:36px;height:36px;animation:2.6s ease-in-out infinite glowpulse;position:absolute;top:4px;left:4px}.long-letter{z-index:2;filter:drop-shadow(0 4px 10px #00000080)drop-shadow(0 0 8px #ffbe6e8c);background:0 0;border:0;width:48px;height:44px;padding:0;animation:2.8s ease-in-out infinite alternate bob;position:absolute;top:38%;right:10px}.long-letter svg{width:40px;height:30px;margin:7px 4px}.long-letter .ll-paper,.dead-letter .ll-paper{fill:#f3e7c8;stroke:#a38c5c;stroke-width:1px}.long-letter .ll-flap,.dead-letter .ll-flap{fill:none;stroke:#a38c5c;stroke-width:1px}.long-letter .ll-seal{fill:#b8323f}.ticker{margin:10px var(--gutter) 0;font:italic 400 .8rem/1.3 var(--display);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;overflow:hidden}.ticker.open{white-space:normal}.goal{cursor:pointer;margin:8px var(--gutter) 0;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);border-radius:12px;align-items:center;gap:8px;padding:9px 12px;font-size:.88rem;display:flex;position:relative;overflow:hidden}.goal:before{content:"";background:var(--amber);width:8px;height:8px;box-shadow:0 0 8px var(--amber);z-index:1;border-radius:50%;flex:none;position:relative}.goal-text{z-index:1;text-overflow:ellipsis;white-space:nowrap;min-width:0;position:relative;overflow:hidden}.goal-bar{transform-origin:0;background:linear-gradient(90deg,#ffb5473d,#ffb54712);transition:transform .3s linear;position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleX(0)}.letter-card{border-left:3px solid var(--mundane);color:#2a2214;font:italic 400 .92rem/1.38 var(--display);opacity:0;pointer-events:none;z-index:4;background:linear-gradient(#f6ecd4,#ecdfbf);border-radius:6px;max-height:calc(100% - 20px);padding:9px 13px;transition:opacity .5s,transform .5s;position:absolute;top:10px;left:10px;right:10px;overflow:auto;transform:translateY(-8px)rotate(-.4deg);box-shadow:0 8px 22px #00000073}.letter-card.show{opacity:1;pointer-events:auto;transform:rotate(-.4deg)}.letter-card[data-tone=tender]{border-left-color:#d9546f}.letter-card[data-tone=petty]{border-left-color:#6a9a1f}.panel{padding:10px var(--gutter) 0;flex-direction:column;flex:1;gap:8px;display:flex}.intro{margin:4px 0}.amounts,.segmented{gap:6px;display:flex}.amounts button,.segmented button{background:var(--panel);min-height:40px;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);border:0;border-radius:10px;flex:1;font-weight:600}.amounts button.active,.segmented button.active{background:linear-gradient(var(--amber), var(--amber-2));color:var(--amber-ink);box-shadow:0 2px 10px #ffaa3c4d}.route,.ghost,.upgrade,.dawn,.settings,.drawer,.odds,.account,.stats,.promise,.town{border-radius:var(--radius);background:linear-gradient(180deg, #ffffff09, #ffffff02), var(--panel);box-shadow:inset 0 0 0 1px var(--line), inset 0 1px 0 #ffffff0a, 0 6px 18px #00000038;padding:12px;position:relative}.route{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;grid-template-columns:1fr auto;gap:8px 10px;padding:10px 12px;display:grid}.route.locked{opacity:.55}.route.locked .track,.route.locked .route-info{visibility:hidden}.route.staffed{cursor:default}.route-head{align-items:center;gap:12px;min-width:0;display:flex}.route-title{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.route-title strong{font:600 1rem/1.2 var(--display)}.route-title small{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.tag{letter-spacing:.02em;white-space:nowrap;border-radius:999px;margin-top:3px;padding:1px 7px;font-size:.7rem;font-weight:600;display:inline-block}.tag.loved{color:var(--amber);background:#ffb54729}.tag.shrug{color:var(--muted);background:#a3aad024}.tag.remember{color:var(--neon);background:#8dffc11f}.tag.echo{color:#c3ccff;background:#96aaff24}.route.boosted{box-shadow:inset 0 0 0 1.5px #8dffc180,0 0 18px #8dffc129,0 6px 18px #00000038}.trick{min-height:42px;color:var(--neon);text-align:left;touch-action:manipulation;background:linear-gradient(#8dffc129,#8dffc112);border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;padding:5px 12px;display:flex;box-shadow:inset 0 0 0 1px #8dffc159}.route .trick{grid-column:1/-1}.sheet .trick{width:100%;margin-top:10px}.trick:disabled{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}.trick-name{font-size:.9rem;font-weight:700}.trick-detail{opacity:.85;font-size:.76rem}.trick-text{color:#bff5d8}.ring{--p:0;background:conic-gradient(var(--amber) calc(var(--p) * 1turn), #a0afff29 0);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;display:grid;position:relative}.ring .icon{width:38px;height:38px;color:var(--amber);background:radial-gradient(circle at 50% 35%,#232b66,#121840);border-radius:50%;place-items:center;display:grid}.ring .icon svg{width:22px;height:22px}.route.staffed .ring .icon{color:#ffd690}.owned{min-width:22px;height:18px;box-shadow:0 0 0 1.5px var(--amber);font-variant-numeric:tabular-nums;color:var(--ink);background:#0b0f2a;border-radius:9px;place-items:center;padding:0 5px;font:700 .66rem/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue;display:grid;position:absolute;bottom:-4px;right:-7px}.owned.bump{animation:.35s ease-out bump}@keyframes bump{50%{transform:scale(1.25)}}.track{background:#00000059;border-radius:4px;grid-column:1/-1;height:8px;overflow:hidden;box-shadow:inset 0 1px 2px #0006}.bar{background:linear-gradient(90deg, #d9862b, var(--amber) 70%, #ffd892);transform-origin:0;will-change:transform;border-radius:4px;height:100%;transform:scaleX(0)}.bar.blur{background:repeating-linear-gradient(90deg, #d98b2b 0 10px, var(--amber) 10px 20px);background-size:40px 100%;animation:1s linear infinite flow}@keyframes flow{to{background-position:40px 0}}.route-info{grid-column:1/-1;margin-top:-2px;font-size:.78rem}.buy{background:linear-gradient(#ffc766, var(--amber-2));min-width:118px;min-height:44px;color:var(--amber-ink);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;border:0;border-radius:12px;padding:0 12px;font-weight:700;transition:transform 80ms,box-shadow 80ms;position:relative;box-shadow:inset 0 1px #ffffff73,0 3px #b86f18,0 6px 14px #ff962838}.buy:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 1px #ffffff73,0 1px #b86f18}.route .buy{flex-direction:column;grid-area:1/2;justify-content:center;align-self:center;min-width:96px;padding:4px 12px;line-height:1.1;display:flex}.route .buy .verb{opacity:.75;font-size:.72rem;font-weight:600}.route .buy .cost{font-size:1.02rem}.buy:disabled{background:var(--panel-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);cursor:default}.buy.hint,.deliver.hint{animation:1.6s ease-in-out infinite hint}@keyframes hint{0%,to{box-shadow:0 0 #ffb54799}50%{box-shadow:0 0 0 7px #ffb54700}}.route.milestone{animation:1.6s ease-out glow}.route.milestone .ring{animation:1.6s ease-out ringflare}@keyframes glow{0%{box-shadow:inset 0 0 0 2px var(--amber), 0 0 26px #ffb54780}to{}}@keyframes ringflare{0%{box-shadow:0 0 #ffc864cc}to{box-shadow:0 0 0 16px #ffc86400}}.pop{color:var(--amber);font:700 .95rem var(--display);pointer-events:none;text-shadow:0 2px 6px #0009;animation:.9s ease-out forwards pop;position:absolute;top:6px;right:16px}@keyframes pop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-22px)}}.spark{z-index:20;pointer-events:none;background:radial-gradient(circle at 35% 35%,#fff4c8,#ffb547 60%,#a8680f);border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;animation:.7s cubic-bezier(.2,.7,.4,1) forwards spark;position:fixed}@keyframes spark{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--dx), var(--dy)) scale(.4);opacity:0}}.ghost{grid-template-columns:56px 1fr;align-items:start;gap:4px 12px;display:grid}.ghost .portrait{background:radial-gradient(circle at 50% 40%,#2a3478,#131a44);border-radius:16px;grid-row:span 5;place-items:center;width:56px;height:56px;display:grid}.ghost .portrait svg{width:48px;height:48px}.ghost.hired .portrait{box-shadow:0 0 0 2px #ffb54799,0 0 18px #ffb54740}.ghost strong{font:600 1.05rem var(--display)}.ghost p,.upgrade p{margin:0;font-size:.88rem}.ghost .flaw{color:var(--tender)}.ghost .buy{justify-self:start;margin-top:6px}.ghost>:not(.portrait){grid-column:2}.ghost .trick{justify-self:start;margin-top:6px}.upgrade{flex-direction:column;gap:4px;display:flex}.upgrade strong{font:600 1rem var(--display)}.upgrade .buy{align-self:flex-start;margin-top:6px}.g-body{fill:#eef0ff}.g-eye{fill:#121634}.g-line{fill:none;stroke:#121634;stroke-width:1.5px;stroke-linecap:round}.g-line.thick{stroke-width:2.4px}.g-blush{fill:#ff9db0;opacity:.6}.g-acc{fill:#ff9db0}.g-hat{fill:#1a1f44}.g-paper{fill:#f3e7c8}.g-ink{fill:none;stroke:#9c8e6a;stroke-width:1px}.g-glow{fill:#ffd780;opacity:.35}.g-bulb{fill:#ffe7a0;stroke:#b88a2a;stroke-width:.8px}.g-coin{fill:#ffc24a;stroke:#a8680f;stroke-width:.8px}.g-candy{fill:#ff8fb0}.g-candy-swirl{fill:none;stroke:#fff;stroke-width:1.2px}.g-quill{fill:#f3e7c8;stroke:#9c8e6a;stroke-width:.8px}.g-veil{fill:#1a1f44;opacity:.88}.g-lit{fill:#ffc56a}.g-beak{fill:#f0a830}.g-shine{fill:#fff}.g-sou{fill:#f2c230}.g-aurora{fill:none;stroke:#6dffb0;stroke-width:2.2px;stroke-linecap:round;opacity:.85}.g-aurora.dim{opacity:.45}.g-ink-dot{fill:#3a8a5a}.g-moon{fill:#f3ead2}.v-glow{fill:#3dff95;opacity:.12}.v-suit{fill:#0b1a15}.v-shirt{fill:#d8f5e6}.v-face{fill:#cfe8dc}.v-band{fill:#3dbb7a}.v-eye{fill:#0b1a15}.dawn p,.settings p,.drawer p,.odds p,.account p,.stats p,.promise p,.town p{margin:.35rem 0}.big{font:700 1.6rem var(--display);color:var(--amber)}.primary{background:linear-gradient(#ffc766, var(--amber-2));width:100%;min-height:48px;color:var(--amber-ink);border:0;border-radius:14px;margin-top:8px;font-weight:700;box-shadow:inset 0 1px #ffffff73,0 3px #b86f18}.primary:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 1px #ffffff73,0 1px #b86f18}.primary:disabled{background:var(--panel-2);color:var(--muted);box-shadow:none}.secondary{background:var(--panel-2);width:100%;min-height:44px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);border:0;border-radius:12px;margin-top:8px}.toggle{justify-content:space-between;align-items:center;min-height:44px;display:flex}.toggle input{width:22px;height:22px;accent-color:var(--amber)}.drawer blockquote{color:#2a2214;font:italic .92rem/1.42 var(--display);background:linear-gradient(#f6ecd4,#ecdfbf);border-radius:6px;margin:.5rem 0;padding:9px 11px}.drawer h3{font:600 .95rem var(--display);color:var(--amber);margin:.8rem 0 .2rem}.drawer .from{color:#6b5a3a;margin-top:4px;font:.75rem system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue;display:block}.code{letter-spacing:.06em;color:var(--amber);-webkit-user-select:all;user-select:all;font:600 1.1rem ui-monospace,Menlo,monospace}.code-input{border:1px solid var(--line);background:var(--night);width:100%;min-height:44px;color:var(--ink);text-transform:uppercase;border-radius:10px;margin:6px 0;padding:0 10px;font:1rem ui-monospace,monospace}.account button:not(.primary){background:var(--panel-2);min-height:44px;box-shadow:inset 0 0 0 1px var(--line);border:0;border-radius:10px;padding:0 16px}.account .save-status{color:var(--ink)}.account .backup{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.account .backup h3{font:600 .95rem var(--display);color:var(--amber);margin:0 0 .2rem}.account .backup-buttons{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.account .backup-buttons button{flex:140px}.backup-input{border:1px solid var(--line);background:var(--night);width:100%;color:var(--ink);word-break:break-all;resize:vertical;border-radius:10px;margin:6px 0;padding:8px 10px;font:.8rem/1.35 ui-monospace,Menlo,monospace;display:block}.account .confirm:empty{display:none}.collection{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:6px;display:grid}.collection span{background:#0003;border-radius:10px;padding:6px 8px;font-size:.82rem}.collection span.met{color:#ffe38a;box-shadow:inset 0 0 0 1px #ffe38a59}.deliver{left:50%;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 10px);z-index:6;min-width:180px;min-height:52px;color:var(--ink);font:600 1.05rem var(--display);touch-action:manipulation;background:#2a3270;border:0;border-radius:26px;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #00000080}.deliver.ready{background:linear-gradient(#ffc766, var(--amber-2));color:var(--amber-ink)}.tabs{z-index:6;padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);background:#090c20f0;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{max-width:96px;height:var(--nav-h);color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:0 2px;font-size:.72rem;display:flex;position:relative}.tab svg{width:22px;height:22px}.tab.active{color:var(--amber);font-weight:600}.tab.active:before{content:"";background:var(--amber);height:2px;box-shadow:0 0 8px var(--amber);border-radius:0 0 2px 2px;position:absolute;top:0;left:30%;right:30%}.tab.badge:after{content:"";background:var(--amber);border-radius:50%;width:8px;height:8px;position:absolute;top:10px;right:calc(50% - 18px);box-shadow:0 0 0 2px #090c20f0}.overlay{z-index:10;padding:var(--gutter);padding-bottom:calc(var(--gutter) + env(safe-area-inset-bottom));background:#03040c9e;place-items:end center;animation:.25s ease-out fadein;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fadein{0%{opacity:0}}.sheet{background:linear-gradient(180deg, #1a2150, var(--panel) 40%);width:100%;max-width:528px;max-height:calc(100dvh - 40px);box-shadow:inset 0 0 0 1px var(--line), 0 24px 60px #0009;border-radius:20px;padding:18px;animation:.35s cubic-bezier(.2,.8,.3,1) slideup;overflow-y:auto}@keyframes slideup{0%{opacity:0;transform:translateY(30px)}}.sheet p{margin:.4rem 0}.sheet .dusk{color:var(--amber)}.sheet .kicker,.town .kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--amber);margin:0;font-size:.72rem}.haunt h2{margin:.15rem 0 .3rem;font-size:1.4rem}.haunt .descriptor{font:italic .96rem/1.38 var(--display);margin:0}.haunt .mood{color:var(--tender);margin:.4rem 0 0;font-size:.88rem}.haunt.rare .kicker{color:#ffe38a}.paper{border-left:3px solid var(--mundane);color:#2a2214;font:italic .97rem/1.42 var(--display);background:linear-gradient(#f6ecd4,#ecdfbf);border-radius:6px;margin:.7rem 0 .4rem;padding:11px 13px;box-shadow:0 4px 12px #0000004d}.paper[data-tone=tender]{border-left-color:#d9546f}.paper[data-tone=petty]{border-left-color:#6a9a1f}.haunt .hint{margin:.2rem 0 .6rem;font-size:.82rem}.spooks{flex-direction:column;gap:6px;display:flex}.spook{background:var(--panel-2);min-height:46px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);touch-action:manipulation;border:0;border-radius:12px;justify-content:space-between;align-items:center;padding:0 14px;font-weight:600;display:flex}.spook:active{background:var(--amber);color:var(--amber-ink)}.spook-dots{letter-spacing:2px;color:var(--amber);font-size:.7rem}.haunt.result h2{font-size:1.7rem}.haunt.result[data-outcome=right] h2{color:var(--amber)}.haunt.result[data-outcome=much] h2{color:var(--tender)}.haunt.result[data-outcome=little] h2{color:var(--muted)}.reaction{font:italic 1.02rem/1.42 var(--display)}.streak{color:var(--amber);font-weight:600}.offering{color:var(--petty)}.collect{color:#ffe38a;font-weight:600}.sheet.long-sheet{color:#2a2214;background:linear-gradient(#f7eed8,#ebdcb8)}.long-sheet .kicker{color:#9a3a3a}.long-sheet h2{color:#2a2214;font-size:1.45rem}.long-sheet .meta{color:#6b5a3a;margin:0 0 .6rem;font-size:.8rem}.long-sheet .body{font:italic 1.02rem/1.55 var(--display)}.long-sheet .seal{color:#b8323f;float:right;width:38px;height:38px;margin:0 0 6px 10px}.long-sheet .primary{color:#f7eed8;box-shadow:none;background:linear-gradient(#3a2a18,#22180c)}.long-sheet .next{color:#6b5a3a;font-size:.82rem}.haunt.memory .kicker{color:#cfc2ff}.memory-text{font:italic 1rem/1.45 var(--display);color:#ece6ff;background:#cfc2ff1a;border-radius:10px;margin:.7rem 0 .3rem;padding:10px 12px;box-shadow:inset 0 0 0 1px #cfc2ff40}.door-lines .reaction{opacity:0;margin:.35rem 0;animation:1.2s ease-out forwards linein}@keyframes linein{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.remembered{color:#4a3c28;margin:.2rem 0 .6rem;padding-left:1.1rem;font-size:.88rem;line-height:1.45}.remembered li{margin:.25rem 0}.last-letter .desk-option{color:#2a2214;background:#ffffff80;box-shadow:inset 0 0 0 1px #5a462840}.last-letter .desk-option strong{font:600 1.05rem var(--display);color:#2a2214}.last-letter .desk-option span{font:italic .92rem/1.35 var(--display);color:#4a3c28}.last-letter .desk-option[data-tone=tender]{box-shadow:inset 3px 0 #d9546f,inset 0 0 0 1px #5a462840}.last-letter .desk-option[data-tone=petty]{box-shadow:inset 3px 0 #6a9a1f,inset 0 0 0 1px #5a462840}.last-letter .desk-option[data-tone=mundane]{box-shadow:inset 3px 0 #8a92b0,inset 0 0 0 1px #5a462840}.sheet.ending-sheet{background:linear-gradient(#2a2050 0%,#6a4a78 45%,#d8987e 100%)}.ending-sheet .kicker{color:#ffe0b0}.ending-sheet .reaction{color:#fff6ea}.ending-sheet .vane-line{color:#c8ffe0;font-size:.9rem}.ledger-rows{grid-template-columns:1fr auto;gap:6px 12px;margin:.6rem 0;font-size:.92rem;display:grid}.ledger-rows dt{color:var(--muted)}.ledger-rows dd{text-align:right;font:600 .98rem var(--display);color:var(--amber);font-variant-numeric:tabular-nums;margin:0}.pop-row{grid-template-columns:7.5em 1fr 3em;align-items:center;gap:8px;margin:6px 0;font-size:.88rem;display:grid}.pop-bar{background:#0000004d;border-radius:4px;height:8px;position:relative;overflow:hidden}.pop-bar:after{content:"";width:var(--w);background:var(--mundane);border-radius:4px;position:absolute;top:0;bottom:0;left:0;right:auto}.pop-bar[data-side=good]:after{background:var(--tender)}.pop-bar[data-side=bad]:after{background:var(--petty)}.pop-share{text-align:right;font-variant-numeric:tabular-nums}.segmented button[aria-checked]{font-variant-numeric:tabular-nums}.meter{background:#0000004d;border-radius:5px;height:10px;overflow:hidden}.meter-fill{transform-origin:0;background:linear-gradient(90deg,#b9e36a,#ff9db0);height:100%;transition:transform .5s linear;display:block;transform:scaleX(0)}.guide-row{border-top:1px solid var(--line);justify-content:space-between;gap:10px;padding:8px 0;font-size:.9rem;display:flex}.guide-row:first-of-type{border-top:0}.twist{align-items:center;gap:10px;padding:6px 0;display:flex}.twist .icon{width:34px;height:34px;color:var(--amber);background:#ffb5471f;border-radius:10px;flex:none;place-items:center;display:grid}.twist .icon svg{width:20px;height:20px}.twist.shrug .icon{color:var(--muted);background:#a3aad01f}.twist-why{font-size:.82rem}.desk-options{flex-direction:column;gap:8px;margin:.6rem 0 .2rem;display:flex}.desk-option{background:var(--panel-2);width:100%;min-height:44px;box-shadow:inset 0 0 0 1px var(--line);text-align:left;touch-action:manipulation;border:0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.desk-option strong{font:600 1.05rem var(--display)}.desk-option .effects{color:var(--muted);font-size:.8rem}.desk-option[data-desk=blessings] strong{color:var(--tender)}.desk-option[data-desk=grudges] strong{color:var(--petty)}.desk-option.current{box-shadow:inset 0 0 0 2px var(--amber)}.desk-option .tag{letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin:0;padding:0;font-size:.7rem}.vane-sheet .kicker{color:var(--neon)}.vane-sheet .vane-head{align-items:center;gap:12px;display:flex}.vane-sheet .vane-head svg{background:radial-gradient(circle at 50% 40%,#12382a,#07120f);border-radius:16px;flex:none;width:56px;height:56px}.vane-sheet .offer{font:italic 1.04rem/1.42 var(--display)}.vane-sheet .stakes{color:var(--amber)}.bet-bar{background:#0000004d;border-radius:4px;height:8px;margin:.5rem 0;overflow:hidden}.bet-bar span{background:linear-gradient(90deg, #3dbb7a, var(--neon));transform-origin:0;height:100%;display:block}.breakdown{font-size:.85rem}.keepsakes{border-radius:var(--radius);background:linear-gradient(180deg, #ffffff09, #ffffff02), var(--panel);box-shadow:inset 0 0 0 1px var(--line), 0 6px 18px #00000038;flex-direction:column;gap:8px;padding:12px;display:flex;position:relative}.keepsakes h2,.keepsakes>p{margin:0}.keepsake{box-shadow:inset 0 0 0 1px var(--line);background:#0000002e;border-radius:12px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.keepsake.kept{box-shadow:inset 0 0 0 1px #ffb54759}.keepsake p{margin:0;font-size:.88rem}.keepsake-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.keepsake-head strong{font:600 1rem var(--display)}.pips{color:var(--amber);letter-spacing:.12em;white-space:nowrap;font-size:.72rem}.keepsake .blurb{font:italic .8rem/1.3 var(--display);color:var(--muted)}.keepsake .trade{font-variant-numeric:tabular-nums;font-size:.8rem}.keepsake-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.keepsake .buy{flex:none;min-width:0;min-height:40px}.buy.armed{background:linear-gradient(#ffe2a8,#ffc766)}.reveal{color:var(--neon);background:#8dffc11f;border-radius:10px;margin:.4rem 0;padding:7px 10px;font-size:.9rem}.scene .marks .mark{display:none}.scene .marks .mark.on{animation:1.2s ease-out mark-in;display:inline}.scene .marks .mark.unveil{animation:2.4s cubic-bezier(.2,.8,.3,1) mark-unveil}@keyframes mark-in{0%{opacity:0}to{opacity:1}}@keyframes mark-unveil{0%{opacity:0;transform:translateY(8px)}45%{opacity:1}to{opacity:1;transform:none}}.scene .unveil-dot{fill:#ffe7a8;animation:1.4s ease-out forwards unveil-dot}@keyframes unveil-dot{0%{opacity:1;transform:translate(0)}to{transform:translate(var(--dx), var(--dy));opacity:0}}.scene .unveil-ring{fill:none;stroke:#ffe7a8;stroke-width:.8px;animation:1.4s ease-out forwards unveil-ring}@keyframes unveil-ring{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}.scene .marks .brass,.scene .marks .brass-ring{fill:none;stroke:#d9a651;stroke-width:.8px}.scene .marks .brass{fill:#d9a651}.scene .marks .ripple{fill:none;stroke:var(--rim);stroke-width:.9px;stroke-linecap:round;opacity:0}.scene .marks .mark.stir .ripple{animation:1.2s ease-out ripple}.scene .marks .mark.stir .ripple.r2{animation-delay:.15s}.scene .marks .mark.stir .ripple.r3{animation-delay:.3s}@keyframes ripple{0%{opacity:0}25%{opacity:.9}to{opacity:0}}.scene .marks .breathe{animation:5s ease-in-out infinite alternate lamp-breathe}.scene .marks .bulb-string{fill:none;stroke:var(--near);stroke-width:.7px}.scene .marks .bulb{fill:var(--win)}.scene .marks .bulb,.scene .marks .bulb-glow{animation:4.5s ease-in-out infinite alternate lamp-breathe}.scene .marks .b1{animation-delay:1.5s}.scene .marks .b2{animation-delay:3s}.scene .marks .mark.stir .bulb-glow{animation:1.6s ease-out bulb-warm}@keyframes bulb-warm{30%{opacity:1;transform:scale(1.3)}}@keyframes lamp-breathe{0%{opacity:.55}to{opacity:1}}.scene .marks .bracket{fill:none;stroke:var(--near);stroke-width:1.2px}.scene .marks .lantern-box{fill:var(--win);stroke:var(--near);stroke-width:.8px}.scene .marks .whisper{fill:none;stroke:#cfe2ff;stroke-width:1.1px;stroke-linecap:round;opacity:.38}.scene .marks .whisper.faint{opacity:.22}.scene .marks .drift-slow{animation:26s linear infinite drift-slow}@keyframes drift-slow{0%{transform:translate(-150px)}to{transform:translate(300px)}}.scene .marks .sway{animation:6s ease-in-out infinite alternate sway}@keyframes sway{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}.scene .marks .sign{fill:#3a2616;stroke:#d9a651;stroke-width:.7px}.scene .marks .sign-eye{fill:var(--win);opacity:.85}.scene .marks .wire{fill:none;stroke:var(--near);stroke-width:.8px;opacity:.95}.scene .marks .wire-spark{fill:none;stroke:#fff1c2;stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:3 400;stroke-dashoffset:3px;opacity:0}.scene .marks .mark.stir .wire-spark{animation:1.3s ease-in-out wire-spark}.scene .marks .mark.stir .wire-spark.late{animation-delay:.35s}@keyframes wire-spark{0%{opacity:0;stroke-dashoffset:3px}15%{opacity:1}85%{opacity:1}to{opacity:0;stroke-dashoffset:-96px}}.scene .marks .darkroom{fill:#ff5a4a;opacity:.8}.scene .marks .darkroom-glow{fill:#ff4a3a;opacity:.18}.scene .marks .mullion-dark{stroke:var(--mid);stroke-width:.7px}.scene .marks .mast{fill:none;stroke:var(--near);stroke-width:.9px}.scene .marks .radio-light{fill:#ff5a4a;animation:3.6s ease-in-out infinite alternate radio-light}@keyframes radio-light{0%{opacity:.35}to{opacity:.95}}.scene .marks .dream-z{fill:none;stroke:#d7dcff;stroke-width:.9px;stroke-linejoin:round;opacity:0;animation:7.5s ease-out infinite dream-z}.scene .marks .dream-z.z1{animation-delay:2.5s}.scene .marks .dream-z.z2{animation-delay:5s}@keyframes dream-z{0%{opacity:0;transform:translateY(4px)}20%{opacity:.8}to{opacity:0;transform:translateY(-16px)}}.scene .marks .page-fall{animation:18s linear infinite page-fall}.scene .marks .page-tilt{transform-origin:340px 151px;animation:3s ease-in-out infinite alternate sway}@keyframes page-fall{0%{opacity:0;transform:translate(-6px,-40px)}10%{opacity:.9}90%{opacity:.9}to{opacity:0;transform:translate(8px,44px)}}.scene .marks .page{fill:#f1e8d0}.scene .marks .page-ink{stroke:#5b4c33;stroke-width:.5px}.scene .marks .pole{fill:var(--near)}.scene .marks .insulator{fill:#9fd0c8}.scene .marks .tube{fill:none;stroke:#b5793a;stroke-width:3.2px;stroke-linejoin:round}.scene .marks .tube-shine{fill:none;stroke:#f0c27a;stroke-width:.8px;opacity:.5}.scene .marks .capsule{fill:none;stroke:#fff1c2;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:3.5 400;stroke-dashoffset:3.5px;opacity:0}.scene .marks .mark.stir .capsule{animation:1.6s ease-in-out capsule}@keyframes capsule{0%{opacity:0;stroke-dashoffset:3.5px}10%{opacity:1}90%{opacity:1}to{opacity:0;stroke-dashoffset:-110px}}.scene .marks .glint{fill:#eef4ff;opacity:0;animation:9s ease-in-out infinite glint}.scene .marks .glint.g1{animation-delay:2.2s}.scene .marks .glint.g2{animation-delay:4.5s}.scene .marks .glint.g3{animation-delay:6.7s}@keyframes glint{0%,12%,to{opacity:0}6%{opacity:.85}}.scene .marks .tower{fill:var(--mid)}.scene .marks .tower-rim{fill:var(--rim);opacity:.35}.scene .marks .belfry{fill:var(--win-glow);opacity:.35}.scene .marks .bell-body{fill:#d9a651}.scene .marks .mark.stir .bell{animation:1.6s ease-in-out bell-swing}@keyframes bell-swing{0%,to{transform:rotate(0)}25%{transform:rotate(16deg)}55%{transform:rotate(-12deg)}80%{transform:rotate(6deg)}}.scene .marks .crow{fill:var(--near)}.scene .marks .crow-letter{fill:#f1e8d0}.scene .marks .fly{animation:34s linear infinite fly}@keyframes fly{0%{transform:translate(-130px,6px)}50%{transform:translate(120px,-4px)}to{transform:translate(370px,4px)}}.scene .marks .mark.stir .crow{transform-box:fill-box;transform-origin:50%;animation:.5s ease-in-out 2 flap}@keyframes flap{50%{transform:scaleY(.55)}}.scene .marks .train{fill:var(--far2)}.scene .marks .train-win,.scene .marks .train-lamp{fill:var(--win);opacity:.9}.scene .marks .rail{stroke:var(--far2);stroke-width:.8px}.scene .marks .rail-run{animation:46s linear infinite rail-run}@keyframes rail-run{0%{transform:translate(-280px)}to{transform:translate(170px)}}.scene .marks .steam circle{fill:#dfe4ff;opacity:.16}.scene .marks .mark.stir .steam{animation:1.8s ease-out steam}@keyframes steam{0%{opacity:1;transform:translateY(0)}to{opacity:.2;transform:translateY(-6px)}}.scene .marks .lighthouse{fill:var(--far)}.scene .marks .lighthouse-stripe{fill:#c9d2f5;opacity:.35}.scene .marks .lamp-room{fill:#ffe7a8}.scene .marks .beam-sweep{fill:#fff3c8;opacity:.14;animation:11s ease-in-out infinite alternate beam}.scene .marks .mark.stir .lamp-room{animation:1.6s ease-out lamp-up}@keyframes lamp-up{30%{fill:#fffbe8}}.scene .marks .aurora{fill:none;stroke:#6dffb0;stroke-width:2.4px;stroke-linecap:round;opacity:.32}.scene .marks .aurora.dim{stroke:#7fd7ff;opacity:.2}.scene .marks .aurora-wave{animation:14s ease-in-out infinite alternate aurora}@keyframes aurora{0%{opacity:.7;transform:translate(-8px)}to{opacity:1;transform:translate(8px)}}.scene .marks .moon-post,.scene .marks .moon-ladder{fill:none;stroke:#c9bfa0;stroke-width:.8px}.scene .marks .moon-post{fill:#c9bfa0}.scene .marks .moon-box{fill:#3b5bd6;stroke:#f3ead2;stroke-width:.5px}.scene .marks .moon-flag{fill:none;stroke:#ff6a5a;stroke-width:.8px}.scene .marks .comet-head{fill:#fff6e0}.scene .marks .comet-tail{fill:#cfe0ff;opacity:.45}.scene .marks .comet-letter{fill:#f1e8d0}.scene .marks .comet-run{animation:30s linear infinite comet}@keyframes comet{0%{opacity:0;transform:translate(-140px,-10px)}4%{opacity:1}26%{opacity:1;transform:translate(150px,12px)}30%,to{opacity:0;transform:translate(190px,14px)}}.scene .marks .constellation{fill:none;stroke:#cdd5ff;stroke-width:.5px;stroke-dasharray:1.5 2;opacity:.45}.scene .marks .c-star{fill:#f1f3ff;animation:6s ease-in-out infinite alternate twinkle}.scene .marks .c-star.s1{animation-delay:1.5s}.scene .marks .c-star.s2{animation-delay:3s}.scene .marks .c-star.s4{animation-delay:4.5s}.scene .marks .door-glow{fill:#ffd48a;opacity:.12}.scene .marks .sky-door{fill:#2a1d0e;stroke:#ffd48a;stroke-width:.8px}.scene .marks .sky-door-leaf{fill:#ffe3a8;opacity:.55}.scene .marks .sky-step{stroke:#ffd48a;stroke-width:.7px;opacity:.6}.scene .marks .mark.stir .door-glow{animation:1.8s ease-out door-glow}@keyframes door-glow{30%{opacity:.35}}.scene .clerk-star-shape{fill:#fff0c0}.scene .clerk-glow{animation:6s ease-in-out infinite alternate lamp-breathe}.dead-letter{z-index:3;filter:drop-shadow(0 0 6px #ffd48a99);background:radial-gradient(circle,#ffd48a80,#ffd48a00 70%);border:0;border-radius:50%;width:44px;height:44px;margin:-22px 0 0 -22px;padding:0;animation:3s ease-in-out infinite alternate bob;position:absolute}.dead-letter svg{width:26px;height:20px;margin:12px 9px;display:block}.suspects{flex-direction:column;gap:8px;margin-top:10px;display:flex}.suspect{background:var(--panel-2);min-height:52px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);text-align:left;border:0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 12px;display:flex}.suspect strong{font:600 1rem var(--display)}.suspect span{color:var(--muted);font-size:.84rem}.suspect:active{transform:translateY(1px)}.route-section{margin:10px 2px 0}.route-section h3{font:600 .78rem var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin:0}.route-section p{color:var(--muted);margin:2px 0 0;font-size:.78rem}.route.tier-town{background:linear-gradient(180deg, #c9894a1a, #c9894a05), var(--panel);box-shadow:inset 3px 0 0 #c9894a, inset 0 0 0 1px var(--line), 0 6px 18px #00000038}.route.tier-far{background:radial-gradient(1px 1px at 18% 30%,#ffffff80,#0000),radial-gradient(1px 1px at 62% 18%,#fff6,#0000),radial-gradient(1px 1px at 84% 64%,#ffffff73,#0000),radial-gradient(1.2px 1.2px at 40% 80%,#ffffff59,#0000),linear-gradient(#151b4a,#0e1234);box-shadow:inset 3px 0 #8aa0ff,inset 0 0 0 1px #8aa0ff38,0 6px 18px #00000047}.route.tier-far .ring{background:conic-gradient(#9fb2ff calc(var(--p) * 1turn), #a0afff29 0)}.route.tier-far .ring .icon{color:#c9d4ff}.route.unveil{overflow:hidden}.route.unveil:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(100deg,#0000 30%,#ffe7a838 50%,#0000 70%);animation:1.6s ease-out forwards unveil-sweep;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}@keyframes unveil-sweep{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.courier{left:calc(20% + var(--y));animation:none}.hunter .beam{animation:none;transform:rotate(-20deg)}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scene .rising-lantern,.scene .fx-letter,.spark{display:none}.scene .marks *,.scene .marks .mark.on,.scene .marks .mark.unveil{animation:none!important}.scene .marks .ripple,.scene .marks .wire-spark,.scene .marks .capsule,.scene .marks .glint,.scene .marks .dream-z{opacity:.5}.scene .unveil-burst,.route.unveil:after{display:none}.dead-letter{animation:none}.door-lines .reaction{opacity:1}.wisp{opacity:1;animation:none}}.away{display:none!important}html[data-world=other]{--night:#0b0a1f;--town-glow:#2a2361}.otherworld{--amber:#a9c7ff;--amber-2:#7d9ff0;--amber-ink:#0b1433;--panel:#15143a;--panel-2:#201d4e;--line:#c8beff24;--muted:#aeaad6;--lk-sky-top:#150f3a;--lk-sky-low:#3a2f73;--lk-water-top:#2c3b7a;--lk-water-low:#0b1030;flex-direction:column;display:flex}.otherworld .hud{background:linear-gradient(var(--night) 88%, #0b0a1f00)}.otherworld .brand{color:#c9b8ff}.otherworld .coins svg{color:#e0a86a}.otherworld .buy,.otherworld .primary{background:linear-gradient(#c3d8ff, var(--amber-2));box-shadow:inset 0 1px #ffffff80,0 3px #4a64b8,0 6px 14px #7896ff38}.otherworld .buy:active:not(:disabled),.otherworld .primary:active:not(:disabled){box-shadow:inset 0 1px #ffffff80,0 1px #4a64b8}.otherworld .buy:disabled,.otherworld .primary:disabled{background:var(--panel-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.otherworld .bar{background:linear-gradient(90deg, #6f86d8, var(--amber) 70%, #e3ecff)}.otherworld .ring .icon{background:radial-gradient(circle at 50% 35%,#2d2a72,#151242)}.otherworld .owned{background:#0e0c2a}.otherworld .route.locked{opacity:.72}.otherworld .route .keeper-hire{background:var(--panel-2);min-height:40px;color:var(--amber);border:0;border-radius:10px;grid-column:1/-1;font-weight:600;box-shadow:inset 0 0 0 1px #a9c7ff59}.otherworld .route .keeper-hire:disabled{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.otherworld .intro{margin:0 2px;font-size:.88rem}.otherworld .neon-text{color:var(--neon);font-size:.85rem}.otherworld .ghost .flaw{color:#ffb3c4}.chip.shy{color:#d8ccff;background:#c9b8ff24}.world-switch{color:#d6cbff;cursor:pointer;font:inherit;background:#a99bff29;border:0;gap:5px;margin-right:auto;font-size:.75rem;font-weight:600}.world-switch svg{width:14px;height:14px}.world-switch.news{position:relative;box-shadow:0 0 0 1px #d6cbff80}.world-switch.news:after{content:"";background:#a9c7ff;border-radius:50%;width:7px;height:7px;position:absolute;top:-2px;right:-2px;box-shadow:0 0 6px #a9c7ff}.otherworld .world-switch{color:#ffcf85;background:#ffb54724}.world-switch .satchel{background:#ffffff1a;border-radius:999px;margin-left:1px;padding:0 5px;font-size:.7rem}.world-switch .satchel.full{color:#fff;background:#a9c7ff4d}.chip.post{color:#cfe0ff;background:#a9c7ff24}.ferry{border-radius:var(--radius);background:linear-gradient(135deg, #7864dc38, #3c50aa1f), var(--panel);grid-template-columns:1fr auto;gap:4px 12px;padding:12px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #beafff4d,0 6px 18px #00000040}.ferry>*{grid-column:1}.ferry h3{font:600 1rem var(--display);color:#d6cbff;margin:0}.ferry p{margin:0;font-size:.86rem}.ferry .ferry-icon{color:#c9b8ff;opacity:.7;width:26px;height:26px;position:absolute;top:10px;right:12px}.ferry .ferry-icon svg{width:26px;height:26px}.ferry .buy{flex-direction:column;grid-column:1/-1;justify-self:start;align-items:flex-start;margin-top:6px;padding:4px 14px;line-height:1.1;display:flex}.ferry .buy .verb{opacity:.75;font-size:.72rem;font-weight:600}.sheet.ferry-sheet{background:linear-gradient(180deg, #2a2361, var(--panel) 55%)}.reply-sheet .seal{color:#6f8fe0}.otherworld .replies blockquote{color:#1c2140;background:linear-gradient(#eef1fb,#dde3f5)}.otherworld .replies .from{color:#4a5680}.other-ending p,.other-ending-sheet p{font:italic 1rem/1.5 var(--display)}.other-ending{background:#a9c7ff14;border-radius:12px;margin-top:10px;padding:10px 12px}.sheet.other-ending-sheet{background:linear-gradient(#151040 0%,#3a3a8a 55%,#8ab0d8 100%)}.scene.lake{background:var(--lk-sky-top)}.lake .lk-star{fill:#f0ecff;opacity:.6}.lake .lk-moon{fill:#f4efe0}.lake .lk-deep{fill:var(--lk-water-low)}.lake .lk-reflection path{fill:#8a80d0;opacity:.32}.lake .lk-reflection .lk-rwin{fill:#e8f4ff;opacity:.75}.lake .lk-ghost{fill:#f2f0ff;opacity:.9}.lake .lk-ghosts{transition:transform .9s,opacity .9s}.lake .lk-ghosts.hide{opacity:.12;transform:translateY(5px)}.lake .lk-moonpath{fill:#f4efe0;opacity:.12}.lake .lk-shimmer{fill:#cfe0ff;opacity:.3;animation:6s ease-in-out infinite alternate breathe}.lake .lk-house{fill:#0d0a24}.lake .lk-win{fill:#231d4a;transition:fill 1.2s}.lake .lk-win.lit{fill:#ffcf7a}.lake .lk-mark{opacity:0;transition:opacity 1.4s}.lake .lk-mark.on{opacity:1}.lake .lk-stone path{fill:#b9b3e6;opacity:.55}.lake .lk-flower circle,.lake .lk-floaters circle{fill:#8fb8ff;opacity:.85}.lake .lk-string{fill:none;stroke:#d8d2f5;stroke-width:.6px;opacity:.6}.lake .lk-balloon{fill:#ff9db0;opacity:.85}.lake .lk-balloon.b2{fill:#ffd27a}.lake .lk-balloons{animation:5s ease-in-out infinite alternate bob}.lake .lk-smoke path{fill:none;stroke:#cfc8ee;stroke-width:2px;stroke-linecap:round;opacity:.35}.lake .lk-mast{fill:none;stroke:#5d56a0;stroke-width:1px}.lake .lk-wave{fill:none;stroke:#a9c7ff;stroke-width:1px;opacity:.7}.lake .lk-table rect,.lake .lk-table path{fill:#d7d0ff;stroke:#d7d0ff;stroke-width:.8px;opacity:.55}.lake .lk-table .lk-candle{fill:#f4efe0;opacity:.8}.lake .lk-flame{fill:#ffcf7a}.lake .lk-heart{fill:#ff9db0;opacity:.9}.lake .lk-screen{fill:#bfe0ff;opacity:.85}.lake .lk-voice path{fill:none;stroke:#a9c7ff;stroke-width:1.1px;opacity:.7}.lake .lk-toast path{fill:none;stroke:#e6e0ff;stroke-width:1px;opacity:.65}.lake .lk-red{fill:#ff6b6b}.lake .lk-lamp{fill:#fff2c8}.lake .lk-boat path{fill:#1a1540;stroke:#b9b3e6;stroke-width:.8px}.lake .lk-boat{transition:opacity 2s}.lake .lk-letter rect{fill:#f7eed8}.lake .lk-paper-fall{animation:2.6s ease-in forwards lk-fall}.lake .lk-ripple{fill:none;stroke:#e3ecff;stroke-width:.8px;opacity:0;transform-box:fill-box;transform-origin:50%;animation:1.6s ease-out 2.5s forwards lk-ripple}@keyframes lk-fall{0%{opacity:0;transform:translate(0)rotate(0)}12%{opacity:1}50%{transform:translate(6px, calc(var(--fall) * .5)) rotate(12deg)}92%{opacity:1}to{transform:translate(-2px, var(--fall)) rotate(-6deg);opacity:0}}@keyframes lk-ripple{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.8)}}@media (prefers-reduced-motion:reduce){.lake .lk-paper-fall{display:none}.lake .lk-ripple{opacity:.6;animation:none}.lake .lk-ghosts{transition:none}}.otherworld .route.locked .track,.otherworld .route.locked .route-info{display:none}html[data-world=other] .sheet:not(.long-sheet) .primary{color:#0b1433;background:linear-gradient(#c3d8ff,#7d9ff0);box-shadow:inset 0 1px #ffffff80,0 3px #4a64b8}.caller{z-index:2;background:0 0;border:0;width:44px;height:44px;margin:-40px 0 0 -22px;padding:0;animation:.9s ease-out appear;position:absolute}.caller:before{content:"";background:radial-gradient(circle,#bed2ff8c,#a9c7ff00 70%);border-radius:50%;width:36px;height:36px;animation:2.8s ease-in-out infinite glowpulse;position:absolute;top:10px;left:4px}.caller .who{fill:#0a0820;opacity:.95;width:14px;height:17px;position:absolute;top:20px;left:15px}.caller .env{filter:drop-shadow(0 0 4px #a9c7ffe6);width:18px;height:14px;animation:2.4s ease-in-out infinite alternate bob;position:absolute;top:1px;left:13px}.caller .env rect{fill:#eef1fb;stroke:#7d8fc0;stroke-width:1px}.caller .env path{fill:none;stroke:#7d8fc0;stroke-width:1px}.caller.rose:before{background:radial-gradient(circle,#ffd6a099,#ffc76b00 70%)}.caller.leaving{opacity:0;transition:opacity .6s}.sheet.reading{background:linear-gradient(#221d58,#15143a 55%)}.reading .meta{color:#aeaad6;margin:.2rem 0 0;font-size:.82rem}.reading .read-text{color:#1c2140;font:italic 1.02rem/1.45 var(--display);background:linear-gradient(#eef1fb,#dde3f5);border-radius:10px;margin:.3rem 0 .6rem;padding:10px 12px}.reading .read-text.petty{box-shadow:inset 3px 0 0 var(--petty)}.reading .read-text.tender{box-shadow:inset 3px 0 0 var(--tender)}.reading-who{grid-template-columns:52px 1fr;align-items:start;gap:10px;display:grid}.reading-who .portrait{background:radial-gradient(circle at 50% 40%,#2d2a72,#151242);border-radius:14px;place-items:center;width:52px;height:52px;display:grid}.reading-who .portrait svg{width:44px;height:44px}.reading-who strong{font:600 1rem var(--display)}.reading-who p{margin:.15rem 0;font-size:.86rem}.reading-who .known{color:var(--neon)}.ways{flex-direction:column;gap:8px;margin-top:12px;display:flex}.way{min-height:52px;color:var(--ink);text-align:left;background:#201d4e;border:0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 12px;display:flex;box-shadow:inset 0 0 0 1px #c8beff33}.way strong{font:600 1rem var(--display);color:#d6cbff}.way span{color:#aeaad6;font-size:.82rem}.way:active{transform:translateY(1px)}.reading .small,.otherworld .small{font-size:.78rem}.read-result .body{font:italic 1rem/1.5 var(--display)}.read-result.right .kicker{color:var(--neon)}.read-result .gain{color:#e0a86a;font-weight:700}.read-result .beyond{background:#a9c7ff1a;border-radius:10px;padding:9px 11px;font-style:italic}.otherworld .planting.planted{box-shadow:inset 3px 0 0 #8fd18a, inset 0 0 0 1px var(--line)}.otherworld .guide p{margin:.3rem 0;font-size:.88rem}.otherworld .route-section.beyond h3{color:#c9d4ff}.lake .lk-bank{fill:#0c1426}.lake [data-lv]{opacity:0;transition:opacity 1.6s}.lake [data-lv].on{opacity:1}.lake .lk-trunk{fill:none;stroke:#2a2440;stroke-width:2.2px;stroke-linecap:round}.lake .lk-trunk.thick{stroke-width:3.4px}.lake .lk-leaf{fill:none;stroke:#5f8f6a;stroke-width:1.2px;stroke-linecap:round;opacity:.85}.lake .lk-bush{fill:#264a34}.lake .lk-rose{fill:#ff8fa6}.lake .lk-stone2{fill:#8e89b8;opacity:.8}.lake .lk-pad{fill:#3f7a57;opacity:.9}.lake .lk-lily{fill:#ffe2ef}.lake .lk-vine{fill:none;stroke:#4c7a5a;stroke-width:1px}.lake .lk-jas{fill:#fbf7ff;filter:drop-shadow(0 0 1.5px #fff)}.lake .lk-crown{fill:#1f3a2c;opacity:.95}.lake .lk-benchline{fill:none;stroke:#7a6a90;stroke-width:1.2px;stroke-linecap:round}.lake .lk-bench path{fill:none;stroke:#6b6394;stroke-width:1.1px;stroke-linecap:round}.lake .lk-plaque{fill:#e0c070}.lake .lk-bottle path{fill:#aadcc859;stroke:#bfe8d8;stroke-width:.7px}.lake .lk-bottle{animation:3.6s ease-in-out infinite alternate bob}.lake .lk-paper{fill:#f7eed8}.lake .lk-cake rect{fill:#f4d6e4}.lake .lk-cake .lk-candle{fill:#fff6e0}@media (prefers-reduced-motion:reduce){.caller,.caller:before,.caller .env,.lake .lk-bottle{animation:none}}.lake .lk-still{transform:translateZ(0)}.lake .lk-fx{pointer-events:none;will-change:transform;position:absolute;top:0;bottom:0;left:0;right:0}.lake .scene-caption{top:10px;bottom:auto;transform:translateY(-6px)}.lake .scene-caption.show{transform:none}.stamp{width:100%;height:auto;display:block}.stamp .perf{stroke:var(--panel)}.stamp.empty{color:#d6cbff59}.almanac-sheet{background:linear-gradient(180deg, #2a2138, var(--panel) 30%)}.almanac-sheet .album-count{color:#e8c26a;margin-top:0;font-weight:600}.night-choice{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffff0f;border:0;border-radius:12px;margin:8px 0 4px;padding:10px 12px}.night-choice.chosen{color:var(--neon);background:#8dffc11f}.almanac-page{box-shadow:inset 0 0 0 1px var(--line);background:#f4e8cc0d;border-radius:14px;grid-template-columns:76px 1fr;gap:12px;margin:10px 0;padding:12px;display:grid}.almanac-page.chosen{background:#8dffc10d;box-shadow:inset 0 0 0 1.5px #8dffc18c}.almanac-page .stamp-row{align-content:start;gap:6px;display:grid}.almanac-page.longest{background:linear-gradient(135deg,#e8c26a1f,#f4e8cc0a);grid-template-columns:76px 1fr}.stamp-slot{width:72px;display:block}.stamp-row .reprints{color:#e8c26a;text-align:center;font-size:.72rem}.page-text h3{font:600 1.05rem var(--display);color:#f4e8cc;margin:0}.page-text .host{color:var(--muted);margin:0 0 4px;font-size:.8rem;font-style:italic}.page-text .rule{margin:4px 0}.page-text .aim{color:var(--amber);margin:4px 0 8px;font-size:.88rem}.page-text .aim.done{color:var(--neon)}.page-text .perk{color:var(--muted);font-size:.82rem}.page-text .perk.earned,.perk-box strong{color:#e8c26a}.page-text .perk.earned:before{content:"✦ "}.page-text .secondary,.almanac-card .secondary,.tonight-strange .secondary{margin-top:4px}.page-text .secondary.chosen,.page-text .primary.chosen{color:var(--neon);background:#8dffc124}.pages summary{color:var(--muted);cursor:pointer;margin-top:6px;font-size:.85rem}.pages .intro{color:var(--muted);font-style:italic}.pages blockquote{color:#2a2214;font:italic .92rem/1.42 var(--display);background:linear-gradient(#f6ecd4,#ecdfbf);border-radius:6px;margin:.5rem 0;padding:9px 11px}.tonight-strange{background:#8dffc112;border-radius:12px;margin:8px 0;padding:10px 12px;box-shadow:inset 0 0 0 1px #8dffc140}.tonight-strange .kicker{color:var(--neon)}.tonight-strange .aim{color:var(--muted);font-size:.88rem}.almanac-card{background:linear-gradient(135deg,#e8c26a1a,#ffffff05);border-radius:14px;margin-top:14px;padding:12px;box-shadow:inset 0 0 0 1px #e8c26a40}.almanac-card h3{font:600 1rem var(--display);color:#e8c26a;margin:0 0 4px}.strange-note{color:var(--neon);background:#8dffc112;border-radius:12px;padding:10px 12px}.route.closed{opacity:.5}.route.closed .track{visibility:hidden}.stamp-sheet{text-align:center;background:linear-gradient(180deg, #2a2138, var(--panel) 45%)}.stamp-sheet .big-stamp{filter:drop-shadow(0 6px 12px #00000073);width:120px;margin:10px auto 6px;transform:rotate(-3deg)}@media (prefers-reduced-motion:no-preference){.stamp-sheet .big-stamp{animation:.5s cubic-bezier(.2,1.4,.4,1) stampin}}@keyframes stampin{0%{opacity:0;transform:rotate(-12deg)scale(1.4)}to{opacity:1;transform:rotate(-3deg)scale(1)}}.stamp-sheet .page,.finale-sheet .page{text-align:left;font:italic 1rem/1.5 var(--display)}.stamp-sheet .gain{color:#e8c26a;font-weight:600}.stamp-sheet .beyond{background:#e8c26a1f;border-radius:10px;padding:9px 11px;font-style:italic}.perk-box{text-align:left;background:#e8c26a1f;border-radius:12px;gap:2px;margin:10px 0;padding:10px 12px;display:grid;box-shadow:inset 0 0 0 1px #e8c26a59}.finale-sheet{--dawn:0;background:linear-gradient(180deg, #151040, color-mix(in srgb, #3a2a6a calc(100% - var(--dawn) * 100%), #d8987e) 55%, color-mix(in srgb, #2a2050 calc(100% - var(--dawn) * 100%), #ffd9a0) 100%)}.finale-sheet.credits{background:linear-gradient(#2a2050,#6a4a78 45%,#d8987e 100%)}.credits-list{margin:8px 0}.credits-list dt{font:600 .95rem var(--display);color:#fff1c4;margin-top:10px}.credits-list dd{margin:2px 0 0;font-size:.9rem}.the-end{font:italic 1.05rem/1.5 var(--display);text-align:center;margin-top:14px}.stamp-strip{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;margin:8px 0;display:grid}.almanac-gift{background:linear-gradient(180deg, #1f3a2a, var(--panel) 50%)}.scene[data-strange=bluemoon] .moon-disc{fill:#a9c8ff}.scene[data-strange=bluemoon] .sky-lanterns{opacity:.06;transition:opacity 2s}.scene .strange-fx{pointer-events:none}.scene .door-guest,.scene .door-spill{display:none}.scene .door-guest{fill:var(--near)}.scene[data-strange=longest] .door,.scene[data-strange=longest] .office-door{fill:#ffcf7a}.scene[data-strange=longest] .door-guest,.scene[data-strange=longest] .door-spill{display:inline}.scene.sunrise:after{content:"";pointer-events:none;background:linear-gradient(#ffaa7800 0%,#ffbe8273 60%,#ffe6aacc 100%);position:absolute;top:0;bottom:0;left:0;right:0}@media (prefers-reduced-motion:no-preference){.scene.sunrise:after{animation:12s ease-out sunup}}@keyframes sunup{0%{opacity:0}to{opacity:1}}.finale-sheet .perk-box{color:#fff1c4;background:#2a1a2899}.scene .fx-bike{transform:translate(210px)}@media (prefers-reduced-motion:no-preference){.scene .fx-bike{transform:translate(-80px)}.scene .fx-bike.riding{animation:16s linear forwards ride}}@keyframes ride{0%{transform:translate(-60px)}to{transform:translate(470px)}}.host-head{grid-template-columns:40px 1fr;align-items:center;gap:8px;display:grid}.host-head .portrait{background:radial-gradient(circle at 50% 40%,#2a3478,#131a44);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.host-head .portrait svg{width:36px;height:36px}.almanac-gift .cover-art{filter:drop-shadow(0 8px 16px #00000080);width:132px;margin:6px auto 4px}.almanac-gift .cover-art svg{width:100%;height:auto;display:block}@media (prefers-reduced-motion:no-preference){.almanac-gift .cover-art{animation:.6s cubic-bezier(.2,1.2,.4,1) stampin}}.pages .margin{font:italic .8rem/1.35 var(--display);color:#9fd8b8;margin:-2px 0 10px 12px}.stamp-sheet .margin{text-align:left;font:italic .85rem/1.35 var(--display);color:#9fd8b8;margin-top:-2px}.shed-note .margin{margin-bottom:4px}.shed-note .margin.gus{color:#f2c38b;font-style:normal}.shed-note{margin-bottom:8px}.pages .volume-two{letter-spacing:.08em;text-transform:uppercase;color:#e0503c;margin:12px 0 6px;font-size:.72rem}.scene .bike-line{fill:none;stroke:#fff0c0;stroke-opacity:.22;stroke-width:.5px}.scene .bike-star{fill:#fff6d8}.almanac-head{grid-template-columns:58px 1fr;align-items:center;gap:12px;display:grid}.cover-thumb svg{filter:drop-shadow(0 4px 8px #00000073);width:100%;height:auto;display:block}.almanac-head .cover-thumb{width:58px}.album-full{text-align:left;background:#e8c26a1f;border-radius:12px;gap:4px;margin:10px 0;padding:12px;font-style:italic;display:grid;box-shadow:inset 0 0 0 1px #e8c26a66}.album-full .cover-thumb{width:64px;margin:0 auto 4px}.strange-chip{cursor:pointer;font:inherit;border:0;font-size:.75rem;font-weight:600}.errands{flex-direction:column;gap:8px;margin-bottom:6px;display:flex}.errands-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.errands-head h2{margin:0}.errands-head .muted,.errands>p{font-size:.82rem}.errands>p{margin:0}.errand{border-radius:var(--radius);background:linear-gradient(180deg, #ffffff09, #ffffff02), var(--panel);box-shadow:inset 0 0 0 1px var(--line), 0 6px 18px #00000038;padding:12px;position:relative}.errand .portrait,.picker .portrait,.errand-sheet .portrait{background:radial-gradient(circle at 50% 40%,#2a3478,#131a44);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.errand .portrait svg,.picker .portrait svg{width:34px;height:34px}.errand.out{grid-template-columns:40px 1fr auto;align-items:center;gap:6px 10px;display:grid;box-shadow:inset 0 0 0 1px #ffb5474d,0 6px 18px #00000038}.errand.out .track,.errand.out .eta{grid-column:1/-1}.errand.out .eta{font-variant-numeric:tabular-nums;margin-top:-2px}.errand-words{flex-direction:column;min-width:0;display:flex}.errand-words strong{font:600 .98rem var(--display)}.errand-words small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.call-home{background:var(--panel-2);min-height:36px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);touch-action:manipulation;border:0;border-radius:10px;padding:0 12px;font-size:.82rem}.call-home.armed{color:var(--tender);box-shadow:inset 0 0 0 1px #ff9db080}.errand.offer{flex-direction:column;gap:4px;padding-top:17px;display:flex}.errand.offer.waiting{opacity:.8;gap:6px;padding-bottom:10px}.errand.offer:before{content:"";background:radial-gradient(circle at 35% 35%, #ffe2a8, var(--amber-2));border-radius:50%;width:8px;height:8px;margin-left:-4px;position:absolute;top:4px;left:50%;box-shadow:0 1px 2px #00000080}.errand-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.errand-top strong{font:600 1rem/1.2 var(--display)}.trip{color:var(--amber);font-variant-numeric:tabular-nums;flex:none;font-size:.78rem}.errand .for{margin-top:-3px}.brief{font:italic .92rem/1.4 var(--display);margin:2px 0}.errand .been{color:var(--neon);font-size:.78rem}.errand .buy{align-self:flex-start;margin-top:4px}.errands .next{font-size:.8rem}.traits{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.ghost .traits{margin-top:4px}.traits .label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:.66rem}.traits .label+.trait{margin-left:-1px}.traits .trait+.label{margin-left:6px}.trait{color:#c3ccff;white-space:nowrap;background:#96aaff24;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:600;display:inline-block}.trait.flaw{color:#ffc2cf;background:#ff9db01f}.trait.met{color:var(--neon);background:#8dffc129;box-shadow:inset 0 0 0 1px #8dffc173}.trait.avoid{color:var(--tender);background:0 0;text-decoration:line-through;text-decoration-thickness:1px;box-shadow:inset 0 0 0 1px #ff9db08c}.ghost .stars{color:var(--amber);letter-spacing:.05em;font-size:.85rem}.tag.errand-away{color:var(--amber);white-space:normal;background:#ffb54729;justify-self:start}.postcard-wall summary{min-height:40px;color:var(--amber);cursor:pointer;align-items:center;padding:0 2px;font-weight:600;display:flex}.postcard-wall>p{margin:8px 2px 0;font-size:.8rem}.postcards{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px 8px;margin-top:4px;display:grid}.postcard-btn{color:var(--muted);touch-action:manipulation;background:0 0;border:0;padding:0}.postcard-btn svg{width:100%;height:auto}.postcard-btn.earned svg{filter:drop-shadow(0 3px 5px #00000073)}.postcard-btn.earned:nth-child(3n+1) svg{transform:rotate(-1.5deg)}.postcard-btn.earned:nth-child(3n+2) svg{transform:rotate(1deg)}.sheet.errand-sheet{background:linear-gradient(180deg, #2a2148, var(--panel) 50%)}.errand-sheet h2{margin:.15rem 0 .3rem;font-size:1.3rem}.errand-sheet .portrait.big{border-radius:18px;width:64px;height:64px;margin:8px auto}.errand-sheet .portrait.big svg{width:54px;height:54px}.errand-sheet>.traits{margin:6px 0 10px}.pickers{gap:8px;display:grid}.picker{background:var(--panel);width:100%;box-shadow:inset 0 0 0 1px var(--line);text-align:left;touch-action:manipulation;border:0;border-radius:12px;grid-template-columns:40px 1fr;align-items:start;gap:10px;padding:10px;display:grid}.picker.perfect{box-shadow:inset 0 0 0 1.5px #8dffc173}.picker:active{transform:translateY(1px)}.picker-words{flex-direction:column;gap:3px;min-width:0;display:flex}.picker-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.picker-top strong{font:600 .98rem var(--display)}.fit{flex:none;font-size:.74rem;font-weight:700}.fit.perfect{color:var(--neon)}.fit.good{color:var(--amber)}.fit.muddled{color:var(--muted)}.picker small{color:var(--muted);font-size:.78rem}.picker .gets{color:var(--ink)}.picker .slip-warn{color:var(--tender)}.big-postcard{width:min(280px,82%);color:var(--muted);filter:drop-shadow(0 8px 14px #00000080);margin:10px auto 8px;transform:rotate(-2deg)}.big-postcard svg{width:100%;height:auto}@media (prefers-reduced-motion:no-preference){.errand-sheet.back .big-postcard{animation:.5s cubic-bezier(.2,1.2,.4,1) cardin}}@keyframes cardin{0%{opacity:0;transform:rotate(-8deg)translateY(16px)}to{opacity:1;transform:rotate(-2deg)}}.errand-sheet .story{font:italic 1rem/1.5 var(--display)}.errand-sheet .slip{color:#ffc2cf;background:#ff9db01a;border-radius:10px;padding:8px 10px;font-size:.9rem}.errand-sheet .ps{color:#2a2214;font:italic .92rem/1.4 var(--display);background:linear-gradient(#f6ecd4,#ecdfbf);border-radius:6px;margin:.6rem 0;padding:9px 12px;transform:rotate(-.6deg);box-shadow:0 4px 10px #0000004d}.errand-sheet .gains{margin:.5rem 0;padding-left:1.1rem}.errand-sheet .gains li{margin:3px 0}.errand-sheet.perfect .kicker{color:var(--neon)}.errand-sheet.muddled .kicker{color:var(--muted)}.sort-chip{cursor:pointer;font:inherit;color:#f4e8cc;background:#f4e8cc29;border:0;font-size:.75rem;font-weight:600}.sheet.sort-sheet{background:linear-gradient(180deg, #1d2346, var(--panel) 40%);padding-bottom:0}.sort-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sort-head .rank{color:var(--amber);background:#ffb54724;border-radius:999px;flex:none;padding:1px 8px;font-size:.7rem;font-weight:600}.sort-tabs{gap:6px;margin:8px 0 2px;display:flex}.sort-tab{background:var(--panel-2);width:34px;height:34px;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);touch-action:manipulation;border:0;border-radius:50%;font-weight:700}.sort-tab.active{color:#2a2214;box-shadow:none;background:#f4e8cc}.sort-tab.done{color:var(--amber)}.sort-tab.done.first{color:var(--neon)}.sort-tab.active.done{color:#2a6a3a}.sort-letter{margin:10px 0 8px;font-size:.95rem}.sort-letter p{margin:.25rem 0}.sort-letter .to{font-style:normal;font-weight:600;font-family:var(--display)}.sort-letter .ps{font-size:.88rem}.sort-letter .from{text-align:right;font-size:.86rem}.sort-letter.delivered{opacity:.7}.sort-help{margin:0 0 8px;font-size:.8rem}.street{gap:6px;display:grid}.street .house{background:var(--panel);width:100%;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);text-align:left;font:inherit;touch-action:manipulation;border:0;border-radius:12px;grid-template-columns:52px 1fr;align-items:center;gap:10px;padding:6px 10px 6px 6px;display:grid}button.house:active:not(:disabled){transform:translateY(1px)}.street .house.picked{box-shadow:inset 0 0 0 2px var(--amber);background:#ffb5471a}.street .house.out{opacity:.42}.street .house.out .house-top strong{text-decoration:line-through}.street .house.it{background:#8dffc112;box-shadow:inset 0 0 0 2px #8dffc199}.street .house:disabled{cursor:default}.house-art svg{width:52px;height:39px}.house-words{flex-direction:column;gap:3px;min-width:0;display:flex}.house-top{align-items:baseline;gap:8px;display:flex}.house-top strong{font:600 .95rem var(--display)}.house-name{font:italic .85rem var(--display);color:#f4e8cc;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.facts{flex-wrap:wrap;gap:3px;display:flex}.fact{color:#c3ccff;background:#96aaff1f;border-radius:999px;padding:0 6px;font-size:.68rem;line-height:1.5}.fact.seen{color:var(--muted);background:#ffffff0f}.fact.job{color:var(--amber);background:#ffb54724}.fact.pet{color:var(--neon);background:#8dffc11f}.fact.habit{color:#dcc2ff;background:#c896ff24}.fact.nature{color:#ffc2cf;background:#ff9db01f}.fact.unknown{box-shadow:inset 0 0 0 1px var(--line);color:#a3aad099;background:0 0}.verdict{color:var(--tender);font-size:.72rem}.verdict.it{color:var(--neon)}.sort-bar{padding:10px 18px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg, #111739e6, var(--panel) 30%);margin:10px -18px 0;position:sticky;bottom:0;box-shadow:0 -8px 16px #00000059}.sort-bar .primary{margin-top:0}.sort-row{gap:6px;display:flex}.sort-row .secondary{flex:1;min-height:40px;margin-top:6px;font-size:.88rem}.sort-said{background:#ff9db014;border-radius:10px;margin-bottom:8px;padding:8px 10px;box-shadow:inset 0 0 0 1px #ff9db040}.sort-said.right{background:#8dffc114;box-shadow:inset 0 0 0 1px #8dffc14d}.sort-said p{margin:.15rem 0;font-size:.86rem}.sort-said .line{font:italic .92rem/1.4 var(--display)}.sort-said .gain{color:var(--amber);font-weight:600}.sort-said .note{color:#c3ccff;font-size:.8rem}.street-book .street{margin-top:8px}.street-book>.secondary{margin-top:4px}.sort-letter[data-kind=poison]{color:#2a1f44;background:repeating-linear-gradient(#eef0f6 0 22px,#c9d2ea 22px 23px);border-left-color:#6a4aa0}.sort-letter[data-kind=poison] .ps{font-size:.9rem}.sort-letter[data-kind=across]{color:#16243e;background:linear-gradient(#e6eefb,#cfdcf2);border-left-color:#4a78c8}.street .house.ghostly .house-art{background:radial-gradient(circle at 50% 40%,#2a3478,#131a44);border-radius:12px;place-items:center;width:44px;height:44px;margin:0 4px;display:grid}.street .house.ghostly .house-art svg{width:38px;height:38px}.verdict.to{color:#c8b6ff}.sort-bar .secondary.to-vane{color:#8dffc1;min-height:40px;margin-top:6px;box-shadow:inset 0 0 0 1px #8dffc14d}.sort-bar .secondary.to-vane:disabled{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.sort-bar>button{width:100%;display:block}html[data-world=bright]{--night:#fff3e3;--panel:#fff;--panel-2:#fff3e6;--ink:#2b2140;--muted:#7d6e8c;--line:#5a326424;--amber:#ff6b5b;--amber-2:#ff8f5a;--amber-ink:#fff;--neon:#0fb3a3;--bc-font:ui-rounded, "SF Pro Rounded", "Nunito", "Varela Round", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-world=bright] body{background:linear-gradient(#ffe9cf 0%,#fff6ec 45%,#e8fbff 100%) fixed}.brightworld{font-family:var(--bc-font);flex-direction:column;display:flex}.brightworld .hud{background:linear-gradient(#ffe9cf 86%,#ffe9cf00)}.brightworld .brand{font:800 1.08rem var(--bc-font);color:#ff6b5b;letter-spacing:0}.brightworld .brand svg{color:#ffb703}.brightworld .coins{font:800 1.9rem/1 var(--bc-font);color:#2b2140}.brightworld .coins svg{color:#ff8f5a}.brightworld .world-switch,.otherworld .world-switch.to-bright{color:#e0483a;background:#ff6b5b21}.otherworld .world-switch.to-bright{color:#ffd2a8;background:#ffbe7829}.world-switch.pair{margin-right:0}.brightworld h2,html[data-world=bright] .sheet h2{font:800 1.22rem/1.2 var(--bc-font)}.brightworld h3{font:800 1rem var(--bc-font);margin:0 0 4px}html[data-world=bright] .sheet{font-family:var(--bc-font);color:var(--ink);background:linear-gradient(#fff3e3,#fff 38%);box-shadow:0 24px 60px #783c284d}html[data-world=bright] .overlay{background:#50284652}.brightworld .primary,html[data-world=bright] .sheet .primary{color:#fff;background:linear-gradient(#ff8a7a,#ff5a4a);border-radius:16px;font-weight:800;box-shadow:inset 0 1px #fff6,0 4px #c43c2e,0 8px 16px #ff5a4a40}.brightworld .primary:active:not(:disabled),html[data-world=bright] .sheet .primary:active:not(:disabled){box-shadow:inset 0 1px #fff6,0 1px #c43c2e}.brightworld .primary:disabled,html[data-world=bright] .sheet .primary:disabled{color:#b3a39a;box-shadow:none;background:#f3e7dc}html[data-world=bright] .sheet .secondary{color:var(--ink);background:#fff3e6;font-weight:700;box-shadow:inset 0 0 0 2px #f6dcc6}.brightworld .tabs{background:#fffffff2;border-top:1px solid #f6dcc6}.brightworld .tab{color:#a294b0;font-weight:600}.brightworld .tab.active{color:#ff6b5b}.brightworld .tab.badge:after{background:#ff6b5b;box-shadow:0 0 0 2px #fff}.brightworld .trait,html[data-world=bright] .sheet .trait{color:#4f46e5;background:#eef0ff}.brightworld .trait.met,html[data-world=bright] .sheet .trait.met{color:#047857;background:#d1fae5;box-shadow:inset 0 0 0 1px #6ee7b7}.brightworld .trait.avoid,html[data-world=bright] .sheet .trait.avoid{color:#e11d48;background:0 0;box-shadow:inset 0 0 0 1px #fda4af}html[data-world=bright] .sheet .traits .label{color:var(--muted)}.brightworld .small,.bc-sheet .small{font-size:.8rem}.bc-chart{aspect-ratio:360/420;background:linear-gradient(#5ee7df,#1fa2c8);border-radius:22px;margin:8px 0;position:relative;overflow:hidden;box-shadow:0 0 0 3px #fff,0 10px 26px #1fa2c84d}.bc-chart svg{width:100%;height:100%}.bc-chart .bc-stop.go{cursor:pointer}.bc-chart .bc-rings{will-change:opacity;animation:1.4s ease-in-out infinite alternate bc-ring}.bc-chart .bc-clouds{will-change:transform;animation:38s ease-in-out infinite alternate bc-drift}.bc-chart .bc-kites{will-change:transform;animation:3.6s ease-in-out infinite alternate bc-bob}@keyframes bc-ring{0%{opacity:.25}to{opacity:1}}@keyframes bc-drift{0%{transform:translate(-8px)}to{transform:translate(26px)}}@keyframes bc-bob{0%{transform:translateY(-3px)}to{transform:translateY(3px)}}.bc-say{left:50%;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 12px);z-index:7;width:calc(min(100vw, 560px) - 2 * var(--gutter));color:#fff;opacity:0;pointer-events:none;background:#2b2140;border-radius:14px;margin:0;padding:10px 14px;font-size:.9rem;font-weight:600;transition:opacity .3s,transform .3s;position:fixed;transform:translate(-50%,12px);box-shadow:0 10px 24px #2b21404d}.bc-say.on{opacity:1;transform:translate(-50%)}.bc-card{background:#fff;border-radius:18px;padding:14px;position:relative;box-shadow:0 4px #f6dcc6,0 10px 24px #a05a3c1a}.bc-card p{margin:.35rem 0}.bc-card .kicker{letter-spacing:.08em;text-transform:uppercase;color:#ff6b5b;margin:0;font-size:.72rem;font-weight:800}.bc-how{background:linear-gradient(135deg,#fffbe8,#fff)}.bc-how p{font-size:.88rem}.bc-stats{text-align:center}.bc-label{font-variant-numeric:tabular-nums;margin:6px 0 4px;font-size:.85rem;font-weight:700}.bc-satchel{color:#b45309;font-weight:700}.bc-meter{background:#f3e7dc;border-radius:6px;height:12px;overflow:hidden}.bc-fill{transform-origin:0;will-change:transform;border-radius:6px;height:100%;transition:transform .45s}.bc-meter.spirit .bc-fill{background:linear-gradient(90deg,#34d399,#10b981)}.bc-meter.stubborn .bc-fill{background:linear-gradient(90deg,#c4b5fd,#7c5cff)}.bc-meter.xp{height:6px;margin:3px 0}.bc-meter.xp .bc-fill{background:linear-gradient(90deg,#ffd166,#ffb703)}.bc-strip{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.bc-mini{color:var(--ink);font:inherit;background:#fff;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;display:flex;position:relative;box-shadow:0 3px #f6dcc6}.bc-mini.empty{color:#c9b5a5;background:0 0;box-shadow:inset 0 0 0 2px #f6dcc6}.bc-face{background:radial-gradient(circle at 50% 35%,#b9a7ff,#6d5bd0);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:1.4rem;font-weight:800;display:grid}.bc-mini.empty .bc-face{background:#fff7ef}.bc-face svg{width:40px;height:40px}.bc-lv{color:#fff;background:#ff6b5b;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:800;display:grid;position:absolute;top:4px;right:8px;box-shadow:0 0 0 2px #fff}.bc-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.75rem;font-weight:700;overflow:hidden}.bc-head{font:800 .95rem var(--bc-font);color:#7d6e8c;margin:8px 2px 0}.bc-courier{background:#fff;border-radius:18px;grid-template-columns:56px 1fr;gap:3px 12px;padding:12px;display:grid;position:relative;box-shadow:0 3px #f6dcc6}.bc-courier.in{box-shadow:0 3px #ffc2b8,inset 0 0 0 2px #ffd9d2}.bc-courier>.bc-face{grid-row:span 5;width:56px;height:56px}.bc-courier.spare{grid-template-columns:44px 1fr auto;align-items:center;padding:8px 10px}.bc-courier.spare>.bc-face{width:44px;height:44px}.bc-courier.spare>.bc-face svg{width:38px;height:38px}.bc-courier.spare .bc-ctop{padding-right:0}.bc-courier.spare .bc-actions{grid-column:3;margin:0}.bc-courier.spare .bc-meter.xp{display:none}.bc-blurb{color:var(--muted);font-size:.9rem}.bc-courier>.bc-face svg{width:48px;height:48px}.bc-courier>:not(.bc-face){grid-column:2}.bc-ctop{justify-content:space-between;align-items:baseline;gap:8px;padding-right:64px;display:flex}.bc-ctop strong{font-weight:800}.bc-lvl{white-space:nowrap;color:#ff6b5b;flex:none;font-size:.85rem;font-weight:800}.bc-front{color:#c2410c;background:#ffedd5;position:absolute;top:10px;right:12px}.bc-carry{color:#9a3412;font:inherit;text-align:left;background:#fff7ed;border:0;border-radius:10px;justify-self:stretch;margin-top:4px;padding:6px 10px;font-size:.8rem;font-weight:600}.bc-carry.none{color:var(--muted);background:0 0;box-shadow:inset 0 0 0 1.5px #f6dcc6}.bc-carry:disabled{opacity:.7}.bc-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.bc-small{min-height:36px;color:var(--ink);font:inherit;background:#fff3e6;border:0;border-radius:10px;padding:0 12px;font-size:.82rem;font-weight:700}.bc-small.go{color:#fff;background:#ff6b5b}.bc-small:disabled{color:#b3a39a;background:#f6efe8}.bc-legend p{font-size:.84rem}.bc-legend .trait{margin-right:2px}.bc-soul-art{background:radial-gradient(circle at 50% 60%,#fff3c4,#fff3c400 70%);border-radius:50%;width:132px;margin:4px auto 2px;padding:6px}.bc-soul-art svg{width:120px;height:96px;animation:2.8s ease-in-out infinite alternate bc-bob}.bc-sheet h2{text-align:center}.bc-sheet .kicker{text-align:center;color:#ff6b5b;font-weight:800}.bc-stuck,.bc-story{font-size:1rem;font-style:italic;line-height:1.5}.bc-facts{margin-top:6px}.bc-nums{font-variant-numeric:tabular-nums;font-weight:800}.bc-good,.bc-warn,.bc-unknown{border-radius:10px;padding:8px 10px;font-size:.88rem;font-weight:600}.bc-good{color:#047857;background:#ecfdf5}.bc-warn{color:#c0262d;background:#fff1f0}.bc-unknown{color:#475569;background:#f1f5f9}.bc-now{text-align:center}.bc-round{text-align:center;min-height:2.6em;margin:8px 0 0;font-size:.86rem;font-weight:700}.bc-who{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.bc-hitter{background:#fff7ef;border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:2px 8px;padding:6px 8px;display:grid}.bc-hitter .bc-face{grid-row:span 2;width:40px;height:40px}.bc-hitter .bc-face svg{width:34px;height:34px}.bc-hitter .bc-hit{color:#7c5cff;font-variant-numeric:tabular-nums;font-weight:800}.bc-hitter .traits{grid-column:2/-1}.bc-hitter .trait{padding:0 6px;font-size:.66rem}.bc-skip{margin-top:12px}.bc-after{margin-top:10px}.bc-gain{color:#0f9d8a;margin:.3rem 0;font-weight:800}.bc-gain.xp{color:#b7791f}.bc-loss{color:#dc2626;font-weight:800}.bc-level{color:#7c3aed;font-weight:800}.bc-level:before{content:"★ "}html[data-world=bright] .sheet.bc-result.cleared,html[data-world=bright] .sheet.bc-page{background:linear-gradient(#bfeaff 0%,#fff6ec 50%,#fff 100%)}html[data-world=bright] .sheet.bc-result.overwhelmed{background:linear-gradient(#dfe4ee 0%,#fff 45%)}.sheet.bc-arrive{color:#2b2140;background:linear-gradient(#ffd2b0 0%,#ffe9cf 40%,#fff8ef 100%);font-family:ui-rounded,SF Pro Rounded,Nunito,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.sheet.bc-arrive .kicker{color:#e0483a;font-weight:800}.sheet.bc-arrive h2{font:800 1.3rem/1.2 ui-rounded,SF Pro Rounded,Nunito,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.sheet.bc-arrive .muted{color:#7d6e8c}html[data-world] .sheet.bc-arrive:not(.long-sheet) .primary{color:#fff;background:linear-gradient(#ff8a7a,#ff5a4a);font-weight:800;box-shadow:inset 0 1px #fff6,0 4px #c43c2e}.bc-fountain{text-align:center;background:linear-gradient(#e8fbff,#fff 55%)}.bc-fountain-art svg{width:150px;height:100px;margin:0 auto}.bc-fountain-art .bc-jet{will-change:opacity;animation:1.8s ease-in-out infinite alternate bc-ring}.bc-odds{flex-wrap:wrap;justify-content:center;gap:6px;margin:8px 0 4px;display:flex}.bc-odd{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:800}.bc-odd.rare{color:#6d28d9;background:#ede9fe}.bc-odd.wondrous{color:#b45309;background:#fef3c7}.bc-curios{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px 8px;margin-top:6px;display:grid}.bc-curio{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.bc-curio .bc-curio-art svg{width:46px;height:46px}.bc-curio strong{font-size:.76rem;line-height:1.2}.bc-curio small{color:var(--muted);font-size:.68rem;line-height:1.2}.bc-curio.unknown{opacity:.55}.bc-curio.wondrous:not(.unknown) .bc-curio-art svg{filter:drop-shadow(0 0 6px #ffc40099)}.bc-draw-art{width:120px;margin:6px auto}.bc-draw-art svg{width:120px;height:120px;animation:.7s cubic-bezier(.2,.8,.3,1.2) bc-rise}@keyframes bc-rise{0%{opacity:0;transform:translateY(24px)scale(.7)}to{opacity:1;transform:none}}.bc-draw{text-align:center}html[data-world=bright] .sheet.bc-draw.rare{background:linear-gradient(#ede9fe,#fff 50%)}html[data-world=bright] .sheet.bc-draw.wondrous{background:linear-gradient(#fff1b8,#fff 55%)}.bc-curio-list{flex-direction:column;gap:8px;margin:8px 0;display:flex}.bc-curio-pick{color:var(--ink);font:inherit;text-align:left;background:#fff7ef;border:0;border-radius:14px;grid-template-columns:44px 1fr;align-items:center;gap:10px;padding:8px 10px;display:grid}.bc-curio-pick.on{box-shadow:inset 0 0 0 2px #ff6b5b}.bc-curio-pick .bc-curio-art svg{width:44px;height:44px}.bc-curio-words{flex-direction:column;gap:1px;font-size:.85rem;display:flex}.bc-stage{margin:0 var(--gutter);background:#38bdf8;border-radius:22px;height:min(62vh,520px);position:relative;overflow:hidden;box-shadow:0 0 0 3px #fff,0 10px 26px #1fa2c84d}.bc-scene{background:linear-gradient(#67e8f9,#0ea5e9);position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.bc-ground{transform-origin:0 0;will-change:transform;pointer-events:none;position:absolute;top:0;left:0}.bc-canvas{touch-action:none;cursor:pointer;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.bc-stage-hud{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:6px;display:flex;position:absolute;top:8px;left:8px;right:8px}.bc-stage-hud>*{pointer-events:auto}.bc-hud-left{background:#ffffffe6;border-radius:12px;flex-direction:column;gap:3px;min-width:124px;padding:6px 9px;display:flex;box-shadow:0 2px #2b21401f}.bc-stage-hud.home .bc-hud-left{visibility:hidden}.bc-meter.mini{height:7px}.bc-hud-num{font-variant-numeric:tabular-nums;color:#2b2140;font-size:.72rem;font-weight:800}.bc-hud-num.satchel{color:#b45309}.bc-hud-right{gap:6px;display:flex}.bc-chip{color:#2b2140;min-height:34px;font:inherit;background:#ffffffeb;border:0;border-radius:999px;padding:0 13px;font-size:.8rem;font-weight:800;box-shadow:0 2px #2b214026}.bc-chip.auto.on{color:#fff;background:#10b981;box-shadow:0 2px #047857}.bc-caption{opacity:0;pointer-events:none;background:#fffffff5;border-radius:14px;padding:10px 12px;font-size:.86rem;line-height:1.4;transition:opacity .25s,transform .25s;position:absolute;bottom:8px;left:8px;right:8px;transform:translateY(8px);box-shadow:0 6px 16px #2b21402e}.bc-caption.on{opacity:1;transform:none}.bc-caption p{margin:0}.bc-caption .bc-cap-extra{color:#0f9d8a;margin-top:4px;font-size:.78rem;font-weight:800}.bc-caption.good{box-shadow:inset 4px 0 #10b981,0 6px 16px #2b21402e}.bc-caption.warn{box-shadow:inset 4px 0 #ef4444,0 6px 16px #2b21402e}.bc-caption.loot{box-shadow:inset 4px 0 #a855f7,0 6px 16px #2b21402e}.bc-caption.loot .bc-cap-extra{color:#7c3aed}.bc-battle{background:#fffffff7;border-radius:16px;padding:8px 9px;position:absolute;bottom:6px;left:6px;right:6px;box-shadow:0 8px 24px #2b214040}.bc-battle.waiting .bc-moves{opacity:.45;pointer-events:none}.bc-bt-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;font-size:.84rem;display:flex}.bc-bt-bars{grid-template-columns:1fr 1fr;gap:8px;display:grid}.bc-bt-bar span{font-variant-numeric:tabular-nums;color:#7d6e8c;margin-bottom:2px;font-size:.68rem;font-weight:800;display:block}.bc-bt-bar .bc-meter{height:8px}.bc-bt-top strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bc-bt-round{color:var(--muted);flex:none;font-size:.74rem;font-weight:800}.bc-intent{color:#334155;background:#f1f5f9;border-radius:10px;margin:6px 0 0;padding:5px 8px;font-size:.74rem;line-height:1.3}.bc-intent.storm{color:#5b21b6;background:#ede9fe}.bc-intent.dig{color:#92400e;background:#fef3c7}.bc-intent.wobble{color:#065f46;background:#d1fae5}.bc-moves{grid-template-columns:1fr 1fr;gap:5px;margin-top:6px;display:grid}.bc-move{min-height:44px;color:var(--ink);font:inherit;text-align:left;touch-action:manipulation;background:#fff3e6;border:0;border-radius:12px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:5px;padding:4px 7px;display:grid;box-shadow:0 3px #f6dcc6}.bc-move .bc-face{width:30px;height:30px}.bc-move .bc-face svg{width:26px;height:26px}.bc-move-words strong{font-size:.8rem;display:block}.bc-move-words small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:.64rem;line-height:1.25;display:block;overflow:hidden}.bc-move.good{box-shadow:inset 0 0 0 2px #6ee7b7,0 3px #a7f3d0}.bc-move:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #f6dcc6}.bc-move:disabled{opacity:.5}.bc-bt-foot{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:6px;display:grid}.bc-bt-foot .bc-small{min-height:32px;padding:0 6px;font-size:.74rem}.bc-small.warn{color:#c0262d;background:#fff1f0}.bc-timing{touch-action:none;cursor:pointer;background:#2b214024;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.bc-target,.bc-ring{pointer-events:none;border-radius:50%;grid-area:1/1;width:88px;height:88px}.bc-target{box-shadow:inset 0 0 0 5px #ff6b5b,0 0 0 3px #fffc}.bc-ring{will-change:transform;border:4px solid #fff;transform:scale(2.6);box-shadow:0 0 0 2px #2b214033}.bc-ring.go{transition:transform 1.3s linear;transform:scale(.6)}.bc-timing-hint{text-align:center;color:#fff;text-shadow:0 1px 3px #00000073;margin:0;font-weight:800;position:absolute;bottom:22%;left:0;right:0}.bc-finds{margin-top:6px}.bc-chart-sheet .bc-chart{box-shadow:0 0 0 3px #fff,0 6px 16px #1fa2c840}.bc-isles{flex-wrap:wrap;gap:6px;display:flex}.bc-isle{min-height:36px;color:var(--ink);font:inherit;background:#fff;border:0;border-radius:999px;padding:0 14px;font-size:.85rem;font-weight:800;box-shadow:0 2px #f6dcc6}.bc-isle.on{color:#fff;background:#ff6b5b;box-shadow:0 2px #c43c2e}.bc-watch{color:var(--muted);margin:2px 0 0;padding-left:18px;font-size:.84rem}.bc-watch li{margin:2px 0}.bc-talents{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:6px;display:grid}.bc-talent-slot{color:#5b21b6;min-height:30px;font:inherit;white-space:nowrap;text-overflow:ellipsis;background:#ede9fe;border:0;border-radius:8px;padding:0 4px;font-size:.7rem;font-weight:800;overflow:hidden}.bc-talent-slot.locked{color:#b3a39a;background:#f6efe8}.bc-talent-slot.open{color:#fff;background:#ff6b5b;box-shadow:0 2px #c43c2e}.bc-tier{font:800 .9rem var(--bc-font);color:#7d6e8c;margin:12px 0 4px}.bc-talent-row{flex-direction:column;gap:6px;display:flex}.bc-talent{color:var(--ink);font:inherit;text-align:left;background:#fff7ef;border:0;border-radius:12px;flex-direction:column;gap:1px;padding:8px 12px;display:flex;box-shadow:inset 0 0 0 2px #f6dcc6}.bc-talent span{color:var(--muted);font-size:.82rem}.bc-talent.on{background:#fff1f0;box-shadow:inset 0 0 0 2px #ff6b5b}.bc-talent:disabled{opacity:.55}.bc-provision.bought{box-shadow:0 4px #c7f0e0,0 10px 24px #a05a3c1a}.bc-provision h3{font-variant-numeric:tabular-nums}.bc-hitter.snub{opacity:.55;box-shadow:inset 0 0 0 1.5px #fda4af}.bc-courier.spare>.bc-face{grid-row:span 4}.bc-courier.spare .bc-actions{grid-row:1/span 4}.bc-ticket{background:linear-gradient(135deg, #ffaa6e3d, #ff6b5b1a), var(--panel);box-shadow:inset 0 0 0 1px #ffbe8c61,0 6px 18px #00000040}.bc-ticket h3{color:#ffd2a8}.bc-ticket .ferry-icon{color:#ffc98a}@media (prefers-reduced-motion:reduce){.bc-chart .bc-rings,.bc-chart .bc-clouds,.bc-chart .bc-kites,.bc-soul-art svg,.bc-fountain-art .bc-jet,.bc-draw-art svg{animation:none!important}.bc-fill{transition:none}}
