:root{--panel:#251f1adb;--panel-solid:#251f1a;--panel-line:#ffecc824;--ink:#f6ecd9;--ink-soft:#d4c6ad;--accent:#f2b45a;--accent-ink:#2a1d0e;--life:#f29ab2;--social:#8fd0f5;--work:#b9d98a;--danger:#ff9a7a;--god:#e3c1ff;--r:12px;--gap:8px;--font:"Pixelify Sans", "Segoe UI", system-ui, sans-serif;--shadow:0 6px 24px #00000059;--sky:#9fd2ee;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--sky);height:100%;font-family:var(--font);color:var(--ink);margin:0;overflow:hidden}#app,#app canvas{touch-action:none;display:block;position:fixed;inset:0}#app canvas:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}#loading{letter-spacing:.04em;color:#2a1d0e;z-index:50;background:linear-gradient(#9fd2ee,#e6d29a);place-items:center;font-size:20px;display:grid;position:fixed;inset:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.panel{background:var(--panel);border:1px solid var(--panel-line);border-radius:var(--r);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}button{font:inherit;color:var(--ink);border:1px solid var(--panel-line);cursor:pointer;background:#ffecc814;border-radius:9px;min-width:40px;min-height:40px;padding:0 10px}button:hover{background:#ffecc829}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}#topbar{top:calc(10px + env(safe-area-inset-top,0px));z-index:10;align-items:center;gap:10px;max-width:calc(100vw - 20px);padding:6px 10px;display:flex;position:fixed;left:50%;transform:translate(-50%)}#clock{white-space:nowrap;font-variant-numeric:tabular-nums;min-width:150px;font-weight:650}#speeds{gap:4px;display:flex}#speeds button{min-width:44px;padding:0 6px}#res{font-variant-numeric:tabular-nums;color:var(--ink-soft);white-space:nowrap;gap:12px;display:flex}#res b{color:var(--ink);font-weight:650}#feed{left:calc(10px + env(safe-area-inset-left,0px));z-index:9;flex-direction:column;width:min(360px,100vw - 20px);max-height:calc(100vh - 170px);display:flex;position:fixed;top:64px}#feed header{border-bottom:1px solid var(--panel-line);flex-wrap:wrap;align-items:center;gap:4px;padding:8px;display:flex}#feed header h2{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 6px 0 2px;font-size:14px}#feed header button{min-height:32px;padding:0 8px;font-size:13px}#feed ol{flex-direction:column-reverse;gap:2px;margin:0;padding:4px 6px 8px;list-style:none;display:flex;overflow-y:auto}#feed li button{text-align:left;background:0 0;border:0;border-left:3px solid #0000;border-radius:6px;grid-template-columns:22px 1fr auto;align-items:start;gap:6px;width:100%;min-height:0;padding:5px 6px;font-size:13.5px;line-height:1.3;display:grid}#feed li button:hover{background:#ffecc81a}#feed li .t{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:11.5px}#feed li.big button{font-weight:600}#feed li.life button{border-left-color:var(--life)}#feed li.social button{border-left-color:var(--social)}#feed li.work button{border-left-color:var(--work)}#feed li.danger button{border-left-color:var(--danger)}#feed li.god button{border-left-color:var(--god)}#feed li.fresh button{animation:1.2s ease-out flash}@keyframes flash{0%{background:#f2b45a59}to{background:0 0}}#feed.collapsed ol{display:none}#feed li.empty{color:var(--ink-soft);padding:10px 8px;font-size:13px}#headline{z-index:11;opacity:0;pointer-events:none;text-align:center;max-width:calc(100vw - 40px);padding:8px 16px;font-weight:650;transition:opacity .3s;position:fixed;top:64px;left:50%;transform:translate(-50%)}#headline.show{opacity:1}#inspector{right:calc(10px + env(safe-area-inset-right,0px));z-index:9;width:min(320px,100vw - 20px);max-height:calc(100vh - 170px);padding:12px 14px;position:fixed;top:64px;overflow-y:auto}#inspector[hidden]{display:none}#inspector h2{align-items:center;gap:8px;margin:0;font-size:20px;display:flex}#inspector .sub{color:var(--ink-soft);margin:2px 0 10px;font-size:13px}#inspector .doing{background:#ffecc814;border-radius:8px;margin-bottom:10px;padding:6px 8px}#inspector h3{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:12px 0 6px;font-size:12px}.need{grid-template-columns:70px 1fr 34px;align-items:center;gap:8px;margin:3px 0;font-size:13px;display:grid}.bar{background:#ffecc81f;border-radius:4px;height:8px;overflow:hidden}.bar i{background:var(--work);border-radius:4px;height:100%;display:block}.bar i.low{background:var(--danger)}.rel{justify-content:space-between;padding:2px 0;font-size:13px;display:flex}.rel button{text-underline-offset:3px;background:0 0;border:0;min-height:28px;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.mem{color:var(--ink-soft);margin:2px 0;font-size:12.5px}.row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.close{min-width:32px;min-height:32px;margin-left:auto}#stats{right:calc(10px + env(safe-area-inset-right,0px));z-index:9;width:min(420px,100vw - 20px);max-height:calc(100vh - 170px);padding:12px 14px;position:fixed;top:64px;overflow-y:auto}#stats[hidden]{display:none}#stats h2{align-items:center;margin:0 0 8px;font-size:18px;display:flex}.tiles{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px;display:grid}.tile{background:#ffecc812;border-radius:8px;padding:6px 8px}.tile .k{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.tile .v{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.chart{margin:8px 0}.chart .k{color:var(--ink-soft);justify-content:space-between;font-size:12px;display:flex}.chart canvas{width:100%;height:54px;display:block}.counts{grid-template-columns:repeat(2,1fr);gap:2px 14px;font-size:13px;display:grid}.counts div{border-bottom:1px dotted var(--panel-line);justify-content:space-between;padding:2px 0;display:flex}.leader{margin:3px 0;font-size:13px}.leader button{min-height:26px;padding:0 6px;font-size:13px}#tools{bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:10;gap:4px;max-width:calc(100vw - 20px);padding:6px;display:flex;position:fixed;left:50%;overflow-x:auto;transform:translate(-50%)}#tools button{flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:58px;min-height:52px;padding:2px 6px;font-size:11px;display:flex}#tools button .i{font-size:20px;line-height:1}#tools .sep{background:var(--panel-line);width:1px;margin:4px 2px}#hint{color:var(--ink-soft);z-index:10;pointer-events:none;text-align:center;max-width:calc(100vw - 20px);padding:6px 12px;font-size:13px;position:fixed;bottom:76px;left:50%;transform:translate(-50%)}#hint:empty{display:none}#labels{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.bubble{transform:translate(-50%, -100%) scale(var(--s,1));transform-origin:50% 100%;color:#2a1d0e;white-space:nowrap;text-overflow:ellipsis;background:#fffaf0f2;border-radius:12px;max-width:220px;padding:3px 8px;font-size:13px;transition:opacity .3s,transform .3s;position:absolute;overflow:hidden;box-shadow:0 2px 8px #00000040}.bubble:after{content:"";border:5px solid #0000;border-top-color:#fffaf0f2;border-bottom:0;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.bubble.emoji-only{padding:2px 6px;font-size:16px}.bubble.pip{background:#fffaf0cc;border-radius:10px;padding:1px 4px;font-size:13px;box-shadow:0 1px 4px #00000040}.bubble.pip:after{display:none}.bubble.gone,.nametag.gone{opacity:0!important}.nametag{color:#fff;text-shadow:0 1px 3px #000,0 0 2px #000;white-space:nowrap;font-size:12px;font-weight:600;transition:opacity .3s;position:absolute;transform:translate(-50%,-100%)}.nametag.sel{color:var(--accent);font-size:14px}#menu{right:calc(10px + env(safe-area-inset-right,0px));z-index:12;width:min(340px,100vw - 20px);padding:12px 14px;position:fixed;top:64px}#menu h2{align-items:center;margin:0 0 6px;font-size:18px;display:flex}#menu h3{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:12px 0 0;font-size:12px}#menu .confirm p{margin:8px 0 0;font-size:14px}button.danger{color:#fff7ee;background:#b9543f;border-color:#b9543f}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:650}#overlay{z-index:30;background:#14100c73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}#overlay[hidden]{display:none}.recap{width:min(520px,100%);max-height:calc(100vh - 32px);padding:16px 18px;overflow-y:auto}.recap h2{margin:0 0 4px;font-size:22px}.recap .tile .d{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12px}.recap .tile .d.up{color:var(--work)}.recap .tile .d.down{color:var(--danger)}.recap .tally{letter-spacing:.02em;font-size:15px}.recap-list{gap:4px;margin:8px 0;padding:0;list-style:none;display:grid}.recap-list li{grid-template-columns:22px 1fr auto;gap:6px;font-size:13.5px;line-height:1.3;display:grid}.recap-list .t{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:11.5px}.bar.wide{height:10px;margin:10px 0 4px}@media (max-width:720px){#res span.opt{display:none}#feed{width:calc(100vw - 20px);max-height:32vh;top:auto;bottom:76px}#inspector,#stats{max-height:45vh;top:64px}#tools button{min-width:50px}#clock{min-width:0}}@media (prefers-reduced-motion:reduce){#feed li.fresh button{animation:none}#headline,.bubble,.nametag{transition:none}}body.wallpaper #topbar,body.wallpaper #feed,body.wallpaper #tools,body.wallpaper #hint,body.wallpaper #inspector,body.wallpaper #stats,body.wallpaper #menu,body.wallpaper #labels{display:none!important}body.wallpaper{cursor:none}body.wallpaper #headline{box-shadow:none;color:#f6ecd9d9;background:#0a0c1873;border:none;padding:4px 12px;font-size:13px;font-weight:500;transition:opacity 1.2s;top:auto;bottom:24px}#speedCycle,#toolFab,#toolSheet{display:none}body.phone #speeds,body.phone #res,body.phone #tools,body.phone #hint{display:none!important}body.phone #topbar{left:calc(8px + env(safe-area-inset-left,0px));top:calc(8px + env(safe-area-inset-top,0px));gap:6px;max-width:calc(100vw - 16px);padding:4px 6px;transform:none}body.phone #topbar button{min-width:44px;min-height:44px;padding:0 8px}body.phone #speedCycle{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;min-width:52px;font-weight:650;display:inline-flex}body.phone #clock{min-width:0;padding-left:4px;font-size:15px}body.phone #headline{top:calc(64px + env(safe-area-inset-top,0px));max-width:calc(100vw - 24px);padding:6px 12px;font-size:14px}body.phone #feed{left:calc(8px + env(safe-area-inset-left,0px));top:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:calc(100vw - 96px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-height:60vh}body.phone #feed header .close{min-width:44px;min-height:44px}body.phone #feed header button{min-height:40px}body.phone #feed.collapsed header{border:0;padding:2px;position:absolute;top:0;right:0}body.phone #feed.collapsed header>:not(.close){display:none}body.phone #feed.collapsed ol{padding:2px 48px 2px 4px;display:flex;overflow:hidden}body.phone #feed.collapsed ol li:not(:first-child){display:none}body.phone #feed.collapsed li button{align-items:center;min-height:44px}body.phone #feed.collapsed li button span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body.phone #toolFab{z-index:14;right:calc(10px + env(safe-area-inset-right,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));background:var(--accent);width:64px;height:64px;color:var(--accent-ink);border-color:var(--accent);box-shadow:var(--shadow);border-radius:50%;place-items:center;padding:0;font-size:28px;display:grid;position:fixed}body.phone #toolSheet:not([hidden]){z-index:13;max-height:72vh;padding:10px 12px calc(84px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;display:block;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}#toolSheet header{align-items:center;display:flex}#toolSheet h2{margin:0;font-size:18px}#toolSheet h3{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:12px 0 6px;font-size:12px}#toolSheet .grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}#toolSheet .grid button{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:64px;padding:4px;font-size:12px;display:flex}#toolSheet .grid .i{font-size:24px;line-height:1}body.phone #inspector{z-index:12;touch-action:pan-y;width:auto;max-height:45vh;padding:20px 14px calc(84px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;inset:auto 0 0}body.phone #inspector:before{content:"";background:#ffecc859;border-radius:3px;width:44px;height:5px;margin-left:-22px;position:absolute;top:7px;left:50%}body.phone #inspector.full{max-height:88vh}body.phone #inspector .close,body.phone .rel button,body.phone .leader button{min-width:44px;min-height:44px}body.phone #stats,body.phone #menu{z-index:15;width:auto;max-height:85vh;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;inset:auto 0 0}@media (orientation:landscape){body.phone #feed{width:min(46vw,420px)}body.phone #headline{top:calc(8px + env(safe-area-inset-top,0px));max-width:46vw;left:auto;right:12px;transform:none}body.phone #inspector,body.phone #inspector.full{left:auto;right:calc(8px + env(safe-area-inset-right,0px));top:calc(8px + env(safe-area-inset-top,0px));border-radius:16px;width:min(42vw,380px);max-height:none;padding-bottom:84px;bottom:8px}body.phone #inspector:before{display:none}body.phone:has(#inspector:not([hidden])) #headline{opacity:0}body.phone #toolSheet:not([hidden]){border-radius:16px 0 0 16px;width:min(50vw,440px);max-height:none;top:0;left:auto;right:0}body.phone #stats,body.phone #menu{border-radius:16px;width:min(60vw,480px);max-height:none;inset:8px 8px 8px auto}}
