:root{--night: #15102a;--panel: rgba(28, 21, 52, .9);--panel-solid: #1c1534;--edge: #4a3d7a;--edge-hi: #7b6bb8;--ink: #f6eedb;--ink-soft: #c9bde6;--amber: #ffd866;--amber-deep: #e0a93a;--mint: #7dffa0;--rose: #ff8fa3;--sky: #8fd3ff;--px: 3px;--font: "VT323", "DotGothic16", "Apple SD Gothic Neo", "Malgun Gothic", ui-monospace, monospace;--safe-b: env(safe-area-inset-bottom, 0px);color-scheme:dark}:lang(ja),:lang(zh){--font: "DotGothic16", "VT323", "PingFang SC", "Hiragino Sans", sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--night)}html,button,a,input,select,canvas{touch-action:manipulation}body{font-family:var(--font);font-size:22px;line-height:1.15;color:var(--ink);-webkit-font-smoothing:none;user-select:none;touch-action:pan-y}::selection{background:var(--amber);color:var(--night)}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}button,input,select{font:inherit;color:inherit}[hidden]{display:none!important}#scene{position:fixed;inset:0;width:100%;height:100%;image-rendering:pixelated;transition:filter .08s linear}.panel{position:relative;background:var(--panel);clip-path:polygon(0 var(--px),var(--px) var(--px),var(--px) 0,calc(100% - var(--px)) 0,calc(100% - var(--px)) var(--px),100% var(--px),100% calc(100% - var(--px)),calc(100% - var(--px)) calc(100% - var(--px)),calc(100% - var(--px)) 100%,var(--px) 100%,var(--px) calc(100% - var(--px)),0 calc(100% - var(--px)));box-shadow:inset 0 0 0 var(--px) var(--edge),inset 0 calc(var(--px) * 2) 0 calc(var(--px) * -1) var(--edge-hi);padding:18px 20px;backdrop-filter:blur(6px) saturate(1.2);-webkit-backdrop-filter:blur(6px) saturate(1.2)}.panel h2{margin:0 0 6px;font-size:34px;font-weight:400;color:var(--amber);letter-spacing:.02em}.panel h3{margin:18px 0 8px;font-size:22px;font-weight:400;color:var(--sky)}.muted{color:var(--ink-soft)}#top{position:fixed;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;gap:10px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;pointer-events:none}#top>*{pointer-events:auto}.brandbox{display:flex;align-items:center;gap:10px;margin-right:auto;text-shadow:0 2px 0 rgba(0,0,0,.5)}.brandbox b{font-weight:400;font-size:26px}.logo{width:24px;height:24px;background:url(/favicon.svg) center / contain no-repeat;image-rendering:pixelated}.chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;background:#15102ab8;border:0;box-shadow:inset 0 0 0 2px var(--edge);font-size:20px}.chip:empty{display:none}.chip span{color:var(--ink-soft)}select.chip{appearance:none;cursor:pointer;padding-right:12px}select option{background:var(--panel-solid)}body.signed-out #top,body.signed-out #pager,body.signed-out #tabs,body.signed-out #hint{display:none}body:not(.signed-in):not(.signed-out) #pager,body:not(.signed-in):not(.signed-out) #tabs{visibility:hidden}#pager{position:fixed;inset:0;overflow:hidden;z-index:2}#track{display:flex;height:100%;will-change:transform}.page{flex:0 0 100%;height:100%;position:relative}#hud,#cityhud{position:absolute;left:0;right:0;bottom:calc(88px + var(--safe-b));display:flex;justify-content:center;padding:0 16px;will-change:opacity}#cityhud{justify-content:flex-start}.card{width:min(540px,100%);text-align:center;padding:16px 20px 14px}.clock{display:grid;gap:8px;justify-items:center}#big{font-size:clamp(64px,14vw,96px);line-height:.9;color:var(--amber);font-variant-numeric:tabular-nums;text-shadow:0 0 18px rgba(255,216,102,.35),0 3px 0 #6b4a12;transition:color .4s}.card[data-state=soon] #big,.card[data-state=go] #big{color:var(--mint);text-shadow:0 0 22px rgba(125,255,160,.45),0 3px 0 #1d6b3a}.card[data-state=go] #big{font-size:clamp(48px,10vw,72px);animation:pulse 1.2s steps(4) infinite}.card[data-state=done] #big{color:var(--ink-soft);text-shadow:none}@keyframes pulse{50%{transform:translateY(-3px)}}.progress{width:100%;height:12px;background:#120d24;box-shadow:inset 0 0 0 2px var(--edge);position:relative}.progress i{position:absolute;left:2px;top:2px;bottom:2px;width:calc((100% - 4px) * var(--p, 0));background:repeating-linear-gradient(90deg,var(--amber) 0 6px,var(--amber-deep) 6px 8px);transition:width .9s linear}.card[data-state=soon] .progress i,.card[data-state=go] .progress i{background:repeating-linear-gradient(90deg,var(--mint) 0 6px,#3fcf72 6px 8px)}#sub{margin:10px 0 2px;font-size:22px}#sub b{color:var(--amber);font-weight:400;font-size:26px}#meta{margin:0 0 12px;font-size:18px;min-height:18px}.actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.manual{display:flex;gap:8px;justify-content:center;margin-top:10px}.btn{--c: #3a2f63;--hi: #5a4a94;--lo: #221a3f;cursor:pointer;border:0;padding:8px 18px 10px;font-size:22px;min-height:44px;background:var(--c);box-shadow:inset 0 -4px 0 var(--lo),inset 0 2px 0 var(--hi),0 4px 10px #00000059;transition:transform .12s cubic-bezier(.16,1,.3,1),filter .15s}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.btn:active{transform:translateY(2px);box-shadow:inset 0 -1px 0 var(--lo),inset 0 2px 0 var(--hi)}.btn.primary{--c: #f2b84b;--hi: #ffe39a;--lo: #a86f1c;color:#2a1a05}.card[data-state=go] .btn.primary,.card[data-state=soon] .btn.primary{--c: #5fe08a;--hi: #b8ffcf;--lo: #23864a;color:#062612}.btn.ghost{--c: transparent;--hi: transparent;--lo: transparent;box-shadow:inset 0 0 0 2px var(--edge)}.btn.busy{pointer-events:none;opacity:.6;animation:pulse .5s steps(2) infinite}.btn:disabled{opacity:.45;cursor:default}.icon-btn{cursor:pointer;border:0;width:44px;height:44px;display:grid;place-items:center;background:#2b2250;box-shadow:inset 0 0 0 2px var(--edge)}.icon-btn:hover{background:#3a2f63;color:var(--amber)}.ico{display:block}#tabs{position:fixed;z-index:6;left:50%;bottom:calc(14px + var(--safe-b));transform:translate(-50%);display:flex;gap:4px;padding:5px;background:#15102ad1;box-shadow:inset 0 0 0 2px var(--edge),0 6px 18px #0006;backdrop-filter:blur(6px)}.tab{--k: 0;cursor:pointer;border:0;background:transparent;display:flex;align-items:center;gap:6px;height:46px;padding:0 12px;color:var(--ink-soft);font-size:19px;position:relative}.tab span{max-width:calc(var(--k) * 8em);overflow:hidden;white-space:nowrap;opacity:var(--k)}.tab:after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:3px;background:var(--amber);transform:scaleX(var(--k))}.tab.on{color:var(--amber)}.tab:hover{color:var(--ink)}.hint{position:fixed;z-index:4;bottom:calc(70px + var(--safe-b));width:100%;text-align:center;margin:0;font-size:16px;color:var(--ink-soft);opacity:0;animation:hint 6s 1.5s ease-out;pointer-events:none}@keyframes hint{10%,70%{opacity:.85}}#tags{position:fixed;inset:0;pointer-events:none;z-index:1;transition:opacity .2s}.tag{position:absolute;left:0;top:0;font-size:15px;padding:0 5px 1px;background:#15102abf;color:var(--ink-soft);white-space:nowrap;will-change:transform}.tag-me{color:var(--night);background:var(--amber);font-size:16px}.tag-me:after{content:"";position:absolute;left:50%;bottom:-4px;margin-left:-4px;border:4px solid transparent;border-bottom:0;border-top-color:var(--amber)}.bubble{position:fixed;left:0;top:0;z-index:3;width:min(300px,80vw);display:grid;gap:4px;padding:12px 34px 12px 14px;background:#fff7e0;color:#2a1d3d;font-size:19px;box-shadow:inset 0 0 0 3px #2a1d3d,0 8px 20px #00000059;animation:pop .45s cubic-bezier(.16,1,.3,1)}.bubble:after{content:"";position:absolute;left:clamp(16px,var(--tail, 50%),calc(100% - 16px));bottom:-12px;width:12px;height:12px;background:#fff7e0;box-shadow:3px 3px #2a1d3d;transform:translate(-50%) rotate(45deg);clip-path:polygon(100% 0,100% 100%,0 100%)}.bubble strong{font-weight:400;font-size:24px;color:#1f7a45}.bubble em{font-style:normal;color:#6b4a8f}.bubble[data-state=go]{animation:pop .45s cubic-bezier(.16,1,.3,1),bob 1.6s .5s ease-in-out infinite}.bubble .x{position:absolute;right:6px;top:6px;border:0;background:transparent;cursor:pointer;color:#2a1d3d;padding:4px}@keyframes pop{0%{opacity:0;scale:.6}}@keyframes bob{50%{translate:0 -4px}}.city{width:min(420px,100%);display:grid;gap:8px}.city .lm small{color:var(--sky);font-size:18px}.city .lm h2{margin:0}.city .count{color:var(--ink-soft);font-size:18px}.lmnav{position:absolute;right:16px;top:16px;display:flex;gap:6px}.wxbig{display:flex;gap:14px;align-items:center;color:var(--amber)}.wxbig b{display:block;font-size:34px;font-weight:400;color:var(--ink)}.wxbig span{display:block;color:var(--ink-soft);font-size:18px}.advice{margin:0;color:var(--mint)}.credit{margin:4px 0 0;font-size:14px;color:var(--ink-soft);opacity:.8}.credit a{color:inherit;text-underline-offset:3px}.sheet{position:absolute;left:50%;top:calc(70px + env(safe-area-inset-top,0px));bottom:calc(84px + var(--safe-b));width:min(620px,calc(100% - 32px));transform:translate(-50%);display:flex;flex-direction:column}.scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--edge-hi) transparent;user-select:text;touch-action:pan-y}.scroll::-webkit-scrollbar{width:8px}.scroll::-webkit-scrollbar-thumb{background:var(--edge-hi)}.day .d b{display:block;font-weight:400;color:var(--amber)}.day .d span{font-size:18px;color:var(--ink-soft)}.day .h{text-align:right;font-variant-numeric:tabular-nums}.form{display:grid;gap:4px;padding-right:6px}.form section{display:grid;gap:12px}label{display:grid;gap:4px;font-size:19px;color:var(--ink-soft)}label i{font-style:normal;opacity:.7}label small{font-size:15px;opacity:.8}input,select{background:#120d24;border:0;box-shadow:inset 0 0 0 2px var(--edge);padding:8px 10px;font-size:22px;min-height:42px;color:var(--ink);caret-color:var(--amber)}input:focus,select:focus{box-shadow:inset 0 0 0 2px var(--amber);outline:none}input::placeholder{color:#7f72a8}input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.85) sepia(.5) hue-rotate(10deg)}.num{display:flex;align-items:center;gap:8px}.num input{width:7em}.check{grid-template-columns:auto 1fr;align-items:center;gap:10px;color:var(--ink)}.check input{appearance:none;width:24px;height:24px;min-height:0;padding:0;cursor:pointer}.check input:checked{background:var(--amber);box-shadow:inset 0 0 0 2px var(--amber),inset 0 0 0 5px #120d24}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--ink-soft);flex-wrap:wrap}.seg{display:inline-flex;gap:0;box-shadow:inset 0 0 0 2px var(--edge);padding:2px}.seg button{border:0;background:transparent;padding:6px 14px;cursor:pointer;color:var(--ink-soft);min-height:38px}.seg button.on{background:var(--amber);color:var(--night)}.results{display:grid}.results button{text-align:left;border:0;background:#2b2250;padding:8px 12px;cursor:pointer;box-shadow:inset 0 -1px 0 var(--edge)}.results button:hover{background:#3a2f63}.results small{margin-left:8px;color:var(--ink-soft);font-size:16px}.formula{margin:0;padding:10px 12px;font-size:17px;color:var(--mint);background:#7dffa00f;box-shadow:inset 0 0 0 1px #7dffa040}.foot{display:flex!important;justify-content:space-between;align-items:center;margin-top:18px}#login,#onboard{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at center,#15102a26,#15102abf)}#onboard.out{animation:fade .4s ease-in forwards}@keyframes fade{to{opacity:0;transform:scale(1.04)}}.hero{width:min(460px,100%);text-align:center;display:grid;gap:14px;justify-items:center;padding:28px 24px;animation:rise .8s cubic-bezier(.16,1,.3,1)}.hero h1{margin:0;font-size:clamp(48px,11vw,72px);font-weight:400;line-height:.9;color:var(--amber);text-shadow:0 4px 0 #6b4a12,0 0 30px rgba(255,216,102,.3)}.hero p{margin:0;max-width:26em}.hero form{display:flex;gap:8px;width:100%}.hero form input{flex:1;min-width:0}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}.ob{width:min(520px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;display:grid;gap:8px;animation:rise .6s cubic-bezier(.16,1,.3,1)}.ob h3{margin-bottom:0}.ob .seg{margin-right:8px}.ob .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ob #ob-done{margin-top:14px}#toast{position:fixed;z-index:20;left:50%;top:70px;transform:translate(-50%,-20px);opacity:0;padding:8px 16px;background:var(--amber);color:var(--night);pointer-events:none;transition:.3s cubic-bezier(.16,1,.3,1);font-size:20px}#toast.on{opacity:1;transform:translate(-50%)}@media(max-width:640px){body{font-size:20px}.brandbox b{display:none}.tab{padding:0 10px}#hud,#cityhud{bottom:calc(80px + var(--safe-b))}.card{padding:12px 14px}}@media(max-height:560px)and (orientation:landscape){#top{padding-top:max(6px,env(safe-area-inset-top));padding-bottom:6px;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.chip{height:30px;font-size:17px}#hud{justify-content:flex-end;top:48px;bottom:calc(64px + var(--safe-b));align-items:flex-end;padding-right:max(10px,env(safe-area-inset-right))}.card,.card[data-state]{width:min(330px,42vw);padding:8px 12px;text-align:center;max-height:100%;overflow-y:auto}.clock{gap:4px}#big,.card[data-state=go] #big{font-size:40px}#sub{font-size:16px;margin:4px 0 0}#sub b{font-size:18px}#meta{font-size:13px;margin:2px 0 6px}.btn,.card[data-state=idle] #btn-checkin{font-size:16px;min-height:36px;padding:4px 10px 6px}.card[data-state=idle] #btn-checkin{min-height:44px;font-size:20px}#tabs{bottom:calc(8px + var(--safe-b));left:50%;transform:translate(-50%)}.tab{height:40px}#chat-fab{bottom:calc(8px + var(--safe-b));width:46px;height:46px}.sheet{top:48px;bottom:calc(60px + var(--safe-b))}.hint{display:none}#cityhud .city{max-height:calc(100dvh - 120px);overflow-y:auto}}@media(max-width:380px){.tab{padding:0 8px}.tab span,.brandbox .logo{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(min-width:700px)and (min-height:600px)and (orientation:landscape){.card{width:min(780px,100%);display:grid;grid-template-columns:minmax(250px,auto) 1fr;column-gap:24px;text-align:left;align-items:center;padding:14px 20px}.card .clock{grid-row:1 / span 4;justify-items:stretch}#big{font-size:84px;text-align:center}#sub{margin:0}#meta{margin:2px 0 8px}.actions,.manual{justify-content:flex-start}}@media(max-width:640px){.hint{display:none}}#chat-fab{position:fixed;z-index:7;right:16px;bottom:calc(14px + var(--safe-b));width:56px;height:56px;background:#15102adb;box-shadow:inset 0 0 0 2px var(--edge),0 6px 18px #0006;color:var(--amber)}body:not(.signed-in) #chat-fab{display:none}body.chat-open #chat-fab{color:var(--night);background:var(--amber)}.badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:15px;font-style:normal;font-weight:400;background:var(--rose);color:var(--night)}#chat-fab .badge{position:absolute;top:-6px;right:-6px}.chat-tabs .badge,.room .badge{margin-left:6px;min-width:18px;height:18px;font-size:13px;vertical-align:1px}#chat{position:fixed;z-index:8;right:16px;top:calc(70px + env(safe-area-inset-top,0px));bottom:calc(84px + var(--safe-b));width:min(400px,calc(100% - 32px));display:flex;flex-direction:column;gap:10px;padding:14px 14px 12px;background:#18122ef5;animation:rise .35s cubic-bezier(.16,1,.3,1)}.chat-head{display:flex;align-items:center;gap:8px}.chat-tabs,.chat-tabs button{flex:1}.chat-head .icon-btn{width:38px;height:38px}.chat-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px}.small{font-size:16px;margin:0}.room-pick{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;border:0;cursor:pointer;padding:8px 12px;background:#2b2250;box-shadow:inset 0 0 0 2px var(--edge);color:var(--amber);text-align:left}.room-pick:hover{background:#3a2f63}.msgs{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;padding:4px 4px 4px 0}.msgs .empty{margin:auto 0;text-align:center}.msg{max-width:86%;align-self:flex-start;display:grid;gap:2px}.msg p{margin:0;padding:6px 10px 7px;background:#2b2250;box-shadow:inset 0 0 0 1px var(--edge);font-size:19px;line-height:1.2;overflow-wrap:anywhere;white-space:pre-wrap}.msg.mine{align-self:flex-end}.msg.mine p{background:#f2b84b;color:#2a1a05;box-shadow:none}.msg.mine .who{justify-content:flex-end}.who{display:flex;gap:8px;align-items:baseline;font-size:15px;color:var(--ink-soft);position:relative}.who time,.convo time{font-size:14px;opacity:.75}.name{border:0;background:transparent;padding:0;cursor:pointer;font-size:16px;color:var(--sky);text-decoration:underline dotted;text-underline-offset:3px}.name.female,.convo b.female{color:var(--rose)}.pmenu{position:absolute;left:0;top:100%;z-index:2;display:grid;min-width:9em;background:var(--panel-solid);box-shadow:inset 0 0 0 2px var(--edge-hi),0 6px 14px #00000080}.pmenu button{border:0;background:transparent;text-align:left;padding:8px 12px;cursor:pointer;font-size:18px}.pmenu button:hover{background:#3a2f63;color:var(--amber)}.composer{display:flex;gap:6px}.composer input{flex:1;min-width:0;font-size:20px;user-select:text}.composer .btn{min-height:42px;padding:0 14px;display:grid;place-items:center}.privacy{opacity:.7;font-size:14px}.picker-head{display:flex;gap:8px;align-items:center}.picker-head input{flex:1;min-width:0}.picker-head .icon-btn{width:40px;height:40px;flex:none}.dm-name{flex:1;font-weight:400;color:var(--amber);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn.small{min-height:36px;padding:2px 10px 4px;font-size:17px}.rooms,.convos{flex:1;min-height:0;display:grid;align-content:start;gap:4px}.rooms h4{margin:10px 0 2px;font-weight:400;font-size:17px;color:var(--sky)}.room{display:flex;justify-content:space-between;gap:8px;border:0;cursor:pointer;padding:8px 12px;text-align:left;background:#ffffff08;box-shadow:inset 0 0 0 1px #7b6bb840}.room small{color:var(--ink-soft);font-size:15px;margin-left:auto}.room.top{color:var(--amber)}.room.home:after{content:"★";color:var(--amber);margin-left:auto}.room.on,.room:hover{background:#3a2f63}.convo{display:grid;grid-template-columns:1fr auto auto;gap:2px 8px;align-items:baseline;border:0;cursor:pointer;padding:8px 12px;text-align:left;background:#ffffff08;box-shadow:inset 0 0 0 1px #7b6bb840}.convo:hover{background:#3a2f63}.convo b{font-weight:400;color:var(--sky)}.convo span{grid-column:1 / -1;font-size:17px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:640px){#chat-fab{right:12px;width:50px;height:50px;bottom:calc(14px + var(--safe-b))}#tabs{left:12px;transform:none}#chat{inset:0;width:100%;padding:max(12px,env(safe-area-inset-top)) 12px calc(12px + var(--safe-b));z-index:9;clip-path:none}body.chat-open #chat-fab,body.chat-open #tabs{display:none}.composer input{font-size:16px}input,select{font-size:18px}#hud{bottom:calc(76px + var(--safe-b));padding:0 10px}.card{padding:10px 12px}.clock{gap:6px}#big{font-size:56px}.card[data-state=go] #big{font-size:44px}#sub{margin:6px 0 0;font-size:19px}#sub b{font-size:22px}#meta{font-size:15px;margin:2px 0 8px;min-height:0}.btn{font-size:19px;min-height:42px;padding:6px 14px 8px}.chip{height:32px;font-size:18px;padding:0 10px}.sheet{width:calc(100% - 20px);top:calc(60px + env(safe-area-inset-top,0px));bottom:calc(76px + var(--safe-b));padding:14px}.panel h2{font-size:28px}.city{width:100%}#cityhud{padding:0 10px}.ob .two{grid-template-columns:1fr}}.card[data-state=idle] #btn-checkin{font-size:30px;min-height:64px;padding:10px 34px 14px;flex:1 1 100%;animation:nudge 2.4s 1s ease-in-out infinite}.card[data-state=idle] #btn-manual{flex:1 1 100%;min-height:40px;font-size:18px}.card[data-state=idle] .actions{max-width:420px;margin:0 auto}@keyframes nudge{50%{transform:translateY(-2px);filter:brightness(1.1)}}@media(min-width:900px)and (min-height:600px){.card[data-state=idle] .actions{margin:0}}@media(max-width:640px){.card[data-state=idle] #btn-checkin{font-size:28px;min-height:60px}}#donate{position:fixed;inset:0;z-index:12;display:grid;place-items:center;padding:16px;background:#15102ab3}.donate{width:min(420px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;display:grid;gap:8px;justify-items:center;text-align:center;animation:rise .5s cubic-bezier(.16,1,.3,1)}.donate .x{position:absolute;right:12px;top:12px;width:38px;height:38px}.donate p{margin:0}#dn-canvas{width:min(320px,78vw);aspect-ratio:1;cursor:pointer;background:#fbf3e2;box-shadow:inset 0 0 0 3px var(--edge)}.dn-hint{font-size:17px;color:var(--mint)}.dn-acct{display:grid;gap:4px;justify-items:center}.dn-acct b{font-weight:400;color:var(--amber);font-size:24px}.dn-acct span{color:var(--ink-soft);font-size:18px}.dn-acct code{font-family:inherit;color:var(--ink);user-select:text}.donate-chip{color:var(--rose);cursor:pointer}#chat{background:#15102a6b;backdrop-filter:blur(1.5px) saturate(1.1);-webkit-backdrop-filter:blur(1.5px) saturate(1.1)}#chat .msg p{background:#2b2250c7}#chat .msg.mine p{background:#f2b84beb}#chat .room-pick,#chat .room,#chat .convo{background:#2b22509e}#chat .who,#chat .privacy,#chat .small,#chat .rooms h4{text-shadow:0 1px 0 rgba(0,0,0,.8),0 0 4px rgba(0,0,0,.6)}#chat .composer input{background:#120d24cc}@media(max-width:640px){body.chat-open #top,body.chat-open #hud,body.chat-open #tags,body.chat-open #bubble,body.chat-open #hint{visibility:hidden}#chat .chat-tabs{background:#120d24bf}}@media(min-width:900px){body.chat-open #hud{padding-right:432px;transition:padding .3s}}#music-chip{cursor:pointer;color:var(--mint)}#music-chip.off{color:var(--ink-soft)}.music-pop{position:fixed;z-index:9;top:calc(56px + env(safe-area-inset-top,0px));right:16px;display:grid;gap:10px;padding:12px 14px;width:220px}.mu-vol{display:flex;align-items:center;gap:8px;color:var(--mint)}.mu-vol input{flex:1;min-height:0;padding:0;box-shadow:none;background:transparent;accent-color:var(--amber)}#donate .donate{background:#f6f1e7;color:#4a3b2c;box-shadow:inset 0 0 0 3px #e6dccb,0 20px 60px #00000073;backdrop-filter:none}#donate .donate h2{color:#7a4a2a}#donate .donate .muted{color:#8a7a68}#donate #dn-canvas{background:transparent;box-shadow:none;width:min(340px,82vw)}#donate .dn-hint{color:#8a7a68;font-size:16px;padding:4px 12px;border-radius:999px;background:#efe7d8}#donate .dn-acct b{color:#4a3b2c}#donate .dn-acct span{color:#8a7a68}#donate .dn-acct code{color:#4a3b2c}#donate .seg{box-shadow:none;background:#efe7d8;gap:4px;padding:4px}#donate .seg button{color:#6a5a48;background:#f8f3ea;border-radius:8px}#donate .seg button.on{background:#e8dcc6;color:#3a2b1c}#donate .icon-btn{background:#efe7d8;box-shadow:none;color:#6a5a48}.bubble[data-state=care] strong{color:#b5651d}.linkish{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:4px}.linkish:hover{color:var(--amber)}#help{position:fixed;inset:0;z-index:12;display:grid;place-items:center;padding:16px;background:#15102ab3}.help{width:min(640px,100%);max-height:calc(100dvh - 32px);animation:rise .4s cubic-bezier(.16,1,.3,1)}.help .x{position:absolute;right:12px;top:12px;width:38px;height:38px}.help ul{margin:0;padding-left:1.1em;display:grid;gap:6px;font-size:19px;color:var(--ink)}.help li::marker{color:var(--amber)}.help-chip{cursor:pointer;color:var(--sky);font-size:20px;min-width:34px;justify-content:center}.group-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.g-join{display:flex;gap:6px;flex:1;min-width:180px}.g-join input{flex:1;min-width:0;text-transform:uppercase;font-size:18px;min-height:36px}.gform{gap:12px}.group-chip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);white-space:nowrap;border:0;cursor:pointer;padding:2px 10px;background:#8fd3ff26;color:var(--sky);box-shadow:inset 0 0 0 1px #8fd3ff66;font-size:16px}.group-chip:hover{background:#8fd3ff47}.chat-tabs button{white-space:nowrap;padding:6px 8px}@media(pointer:coarse),(max-width:820px){.panel,#tabs,#chat{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.panel{background:#1c1534f0}#chat{background:#15102a8c}}.duel-ask{position:fixed;z-index:30;left:50%;top:70px;transform:translate(-50%);width:min(380px,calc(100% - 24px));display:grid;gap:10px;text-align:center;animation:rise .4s cubic-bezier(.16,1,.3,1)}.duel-ask b{font-weight:400;color:var(--amber)}#duel{position:fixed;inset:0;z-index:40;background:#000;display:grid;place-items:center;animation:fade-in .5s ease-out;touch-action:none;user-select:none}#duel.out{animation:fade .4s ease-in forwards}@keyframes fade-in{0%{opacity:0}}#duel canvas{grid-area:stage;width:100%;max-height:100%;aspect-ratio:16 / 9;object-fit:contain;image-rendering:pixelated}#duel{grid-template-areas:"stage";grid-template-columns:min(100vw,calc(100dvh * 16 / 9))}.duel-hud{position:absolute;top:max(10px,env(safe-area-inset-top));left:12px;right:12px;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.duel-hud .hp b{display:block;font-weight:400;font-size:18px;color:var(--ink);text-shadow:0 2px 0 #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duel-hud .hp i{display:block;height:12px;background:#3a1020;box-shadow:inset 0 0 0 2px #1a0a10}.duel-hud .hp u{display:block;height:100%;width:100%;background:linear-gradient(#ffd866,#e0a93a);transition:width .2s}.duel-hud .right{text-align:right}.duel-hud .right i{transform:scaleX(-1)}.duel-hud .timer{font-size:34px;color:var(--amber);text-shadow:0 3px 0 #6b4a12;min-width:2.2em;text-align:center}.duel-msg{position:absolute;top:34%;left:0;right:0;text-align:center;font-size:clamp(30px,7vw,64px);color:#fff;text-shadow:0 4px 0 #000,0 0 20px rgba(255,216,102,.6);margin:0;pointer-events:none}.duel-help{position:absolute;bottom:max(10px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;font-size:15px;color:var(--ink-soft);text-shadow:0 1px 0 #000;padding:0 12px}.duel-quit{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 70px);right:12px;font-size:16px;min-height:34px;padding:2px 10px}.pad{display:none}@media(pointer:coarse){.pad{display:contents}.pad .dir{grid-area:dir}.pad .act{grid-area:act}#duel{gap:10px;padding:52px max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}}@media(pointer:coarse)and (orientation:landscape){#duel{grid-template-areas:"dir stage act";grid-template-columns:auto minmax(0,calc((100dvh - 70px) * 16 / 9)) auto;justify-content:center}.pad .dir,.pad .act{flex-direction:column}}@media(pointer:coarse)and (orientation:portrait){#duel{grid-template-areas:"stage stage" "dir act";grid-template-columns:1fr 1fr;align-content:center}.pad .dir{justify-self:start}.pad .act{justify-self:end}}.pad>div{display:flex;gap:14px;pointer-events:auto}.pad button{width:64px;height:64px;border:0;font:inherit;font-size:28px;color:#fff;background:#3a2f63;box-shadow:inset 0 -6px #221a3f,inset 0 3px #5a4a94,0 4px #000;border-radius:50%;display:grid;place-items:center;line-height:1;touch-action:none}.pad .act button{font-size:30px;font-weight:700}.pad .act button small{display:block;font-size:11px;font-weight:400;opacity:.85}.pad .b1{background:#2f8f5a;box-shadow:inset 0 -6px #1d5a38,inset 0 3px #5fe08a,0 4px #000}.pad .b2{background:#c23b3b;box-shadow:inset 0 -6px #7a1f1f,inset 0 3px #ff8f8f,0 4px #000}.pad button.on{transform:translateY(3px);box-shadow:inset 0 -2px #0006,0 1px #000}.g-panel{display:grid;gap:6px;max-height:40%}.g-panel .members{max-height:220px;display:grid;gap:4px}.member,.room.invite{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;background:#2b22509e}.member small{color:var(--amber)}#chat .picker-head .btn.small{padding:2px 8px 4px}.inapp{margin:0;padding:10px 12px;font-size:17px;color:#2a1d3d;background:#ffd866;box-shadow:inset 0 0 0 2px #e0a93a;text-align:left}.save-bar{position:sticky;bottom:0;z-index:2;margin-top:12px;padding:10px 0 4px;background:linear-gradient(transparent,var(--panel-solid) 35%)}.save-bar .btn{width:100%}.save-bar .btn:disabled{opacity:.45;filter:grayscale(.6);cursor:default}.clock{position:relative}.fx{position:absolute;left:-16px;top:-28px;width:calc(100% + 32px);height:calc(100% + 56px);pointer-events:none;image-rendering:pixelated;z-index:1}.card[data-state=go] #big{animation:rainbow 1.4s steps(7) infinite,pulse 1.2s steps(4) infinite;cursor:pointer}@keyframes rainbow{0%{color:#ff6b6b}14%{color:#ffb05c}28%{color:#ffe66b}43%{color:#7dffa0}57%{color:#6bd5ff}71%{color:#8f8bff}85%{color:#e88bff}to{color:#ff6b6b}}.bubble .dont-forget{font-weight:400;color:#b3261e}.say{position:absolute;left:0;top:0;max-width:min(220px,60vw);padding:3px 7px 4px;font-size:15px;line-height:1.25;background:#fff7e0;color:#2a1d3d;box-shadow:0 0 0 2px #2a1d3d,3px 3px 0 2px #00000059;white-space:normal;overflow-wrap:anywhere;will-change:transform;animation:pop .3s cubic-bezier(.16,1,.3,1)}.say:after{content:"";position:absolute;left:50%;bottom:-6px;margin-left:-4px;border:4px solid transparent;border-bottom:0;border-top:6px solid #2a1d3d}.menu-board{display:grid;gap:6px;justify-items:center;padding:22px 16px;border:0;cursor:pointer;font:inherit;color:#f4f1e4;background:#2d4a3a;box-shadow:inset 0 0 0 4px #7a5530,inset 0 0 0 6px #4e341b,6px 6px #00000059}.menu-board b{font-weight:400;font-size:28px;color:#ffe9a8;text-shadow:0 2px 0 rgba(0,0,0,.3)}.menu-board span{font-size:16px;color:#cfe3d4}.menu-board:active{transform:translateY(2px)}.dishes{list-style:none;margin:0;padding:0;display:grid;gap:8px}.dishes li{display:flex;gap:12px;align-items:center;padding:10px 12px;font-size:20px;background:#ffffff0d;box-shadow:inset 0 0 0 2px var(--edge);animation:pop .35s cubic-bezier(.16,1,.3,1) backwards}.dishes i{font-style:normal;font-size:28px}@media(max-width:420px){#wx span{display:none}}#menu-pop{position:fixed;inset:0;z-index:9;display:grid;place-items:center;padding:12px;background:#15102a8c}.menu-book{position:relative;width:min(460px,100%);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;padding:14px;gap:10px;background:#5a3a24;box-shadow:inset 0 0 0 3px #3a2416,inset 0 0 0 6px #8a5a34,8px 8px #0006}.menu-book .x{position:absolute;right:6px;top:6px;z-index:2}.menu-head{display:grid;justify-items:center;gap:2px;padding:14px 40px 10px;text-align:center;background:#f3e6c8;color:#3a2416;box-shadow:inset 0 0 0 2px #c9a46a,inset 0 0 0 4px #f3e6c8,inset 0 0 0 5px #c9a46a}.menu-kicker{font-size:14px;letter-spacing:3px;text-transform:uppercase;color:#8a5a34}.menu-head b{font-weight:400;font-size:28px;line-height:1.1}.menu-region{font-size:15px;color:#6b4a2a}.menu-page{overflow-y:auto;padding:10px 12px 12px;background:#fbf3e0;color:#2e1c10;background-image:repeating-linear-gradient(0deg,rgba(120,80,40,.06) 0 1px,transparent 1px 26px);box-shadow:inset 0 0 0 2px #c9a46a}.menu-section{margin:4px 0 8px;text-align:center;font-weight:400;font-size:18px;color:#a0442a;letter-spacing:1px}.menu-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.menu-list li{animation:pop .35s cubic-bezier(.16,1,.3,1) backwards}.menu-item{width:100%;display:flex;gap:10px;align-items:center;padding:8px 6px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-bottom:2px dotted rgba(120,80,40,.35)}.menu-item:hover,.menu-item:focus-visible{background:#c9a46a2e;outline:none}.mi-text{flex:1;display:grid;gap:2px;min-width:0}.mi-text b{font-weight:400;font-size:20px;line-height:1.15}.mi-origin{font-size:14px;color:#8a5a34}.mi-ing{font-size:14px;color:#6b5444;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mi-more{font-size:24px;color:#a0442a}.dish-pic{flex:none;width:64px;height:64px;image-rendering:pixelated;display:grid;place-items:center;font-size:36px;background:radial-gradient(circle at 50% 55%,#fff 0 52%,#e9dcc0 53% 60%,transparent 61%)}.dish-pic.big{width:144px;height:144px;font-size:72px}.menu-one{display:grid;justify-items:center;text-align:center;gap:4px;padding-bottom:4px}.menu-one h3{margin:4px 0 0;font-weight:400;font-size:26px}.menu-one h4{margin:10px 0 0;font-weight:400;font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#a0442a}.menu-one p{margin:2px 0 0;font-size:17px;line-height:1.45;max-width:36ch}.menu-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}.menu-actions .btn.ghost{color:#5a3a24;box-shadow:inset 0 0 0 2px #c9a46a}.menu-book.drinks{background:#1c1426;box-shadow:inset 0 0 0 3px #ff5fa8,inset 0 0 0 6px #4a1d3a,0 0 18px #ff5fa859,8px 8px #0006}.drinks .menu-head{background:#241a30;color:#ffe9f3;box-shadow:inset 0 0 0 2px #ff5fa8}.drinks .menu-kicker{color:#ff8fc4}.drinks .menu-region{color:#c9b4e6}.drinks .menu-page{background:#2a2233;color:#f4ecff;background-image:none;box-shadow:inset 0 0 0 2px #4a3a5a}.drinks .menu-section,.drinks .mi-more,.drinks .menu-one h4{color:#7dffd0}.drinks .mi-origin{color:#ffb3d6}.drinks .mi-ing{color:#c9b4e6}.drinks .menu-item{border-bottom-color:#c9b4e640}.drinks .menu-item:hover{background:#ff5fa81f}.drinks .dish-pic{background:radial-gradient(circle at 50% 55%,rgba(125,255,208,.18) 0 55%,transparent 61%)}.drinks .menu-actions .btn.ghost{color:#f4ecff;box-shadow:inset 0 0 0 2px #ff5fa8}.scene-hint{position:absolute;left:50%;top:calc(64px + env(safe-area-inset-top,0px));transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);padding:6px 12px;font-size:16px;text-align:center;background:#15102ac7;color:var(--ink);box-shadow:inset 0 0 0 2px var(--edge);pointer-events:none}@media(max-width:640px){#tabs{left:12px;transform:none;max-width:calc(100% - 92px)}.tab{padding:0 8px}}@media(max-width:420px){.tab span{font-size:16px}.tab{padding:0 7px;gap:4px}}.spam-note{display:block;margin:-4px 0 6px 30px;font-size:15px}.menu-book h3,.menu-book h4{text-shadow:none}.menu-book .menu-one h3{color:#2e1c10}.menu-book .menu-section{color:#a0442a}.menu-book.drinks .menu-one h3{color:#fff}.menu-book.drinks .menu-section{color:#7dffd0}
