:root{--ink:#2b2d42;--paper:#fffaf3;--paper-2:#fff1de;--accent:#ff8a5b;--accent-ink:#fff;--muted:#7a6f65;--good:#06d6a0;--warn:#ffd166;--bad:#ef476f;--info:#5bc0eb;--shadow:0 4px 0 var(--ink);--radius:16px;--font:"Nunito", ui-rounded, "SF Pro Rounded", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{background:#bfe3ff;height:100%;margin:0;overflow:hidden}body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased}button{font-family:inherit}.hidden{display:none!important}.panel{background:var(--paper);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{color:var(--ink);border:3px solid var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--ink);white-space:nowrap;background:#fff;border-radius:12px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;font-weight:800;transition:transform 50ms;display:inline-flex}.btn:hover{background:var(--paper-2)}.btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.btn.on{background:var(--good);color:#fff}.btn.danger{background:var(--bad);color:#fff}.btn.primary{background:var(--accent);color:#fff}.btn:disabled{opacity:.5;cursor:default}.dot{border:2px solid var(--ink);border-radius:50%;flex:none;width:12px;height:12px}.pill{border:2px solid var(--ink);white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:900}.pill.starting,.pill.idle{background:#e0f2fe}.pill.working{background:var(--warn)}.pill.needs_input{background:var(--bad);color:#fff;animation:1s infinite pulse}.pill.done{background:var(--good);color:#fff}.pill.exited,.pill.offline{background:#dee2e6}.pill.lost{background:#ffb703}.empty{color:var(--muted);font-size:13px;font-weight:600}@keyframes pulse{50%{transform:scale(1.08)}}.key{background:var(--paper);min-width:26px;color:var(--ink);text-align:center;border-radius:7px;margin-right:5px;padding:1px 7px;font-weight:900;display:inline-block;box-shadow:0 2px #999}#toasts{flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%);pointer-events:none!important}.toast{background:var(--paper);border:3px solid var(--ink);box-shadow:var(--shadow);border-radius:12px;padding:8px 14px;font-size:14px;font-weight:800;animation:.25s ease-out toast-in}.toast.warn{background:#fff3c4}.toast.error{background:#ffd6e0}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)}}.conn{background:var(--bad);color:#fff;border:3px solid var(--ink);border-radius:12px;padding:6px 14px;font-weight:900;position:absolute;top:12px;left:50%;transform:translate(-50%)}.backdrop{z-index:50;background:#2b2d4273;place-items:center;padding:16px;animation:.15s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--paper);border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);border-radius:20px;flex-direction:column;width:min(560px,100%);max-height:calc(100vh - 32px);animation:.18s ease-out pop;display:flex;overflow:hidden}@keyframes pop{0%{opacity:.5;transform:scale(.96)}}.modal header{border-bottom:3px solid var(--ink);background:var(--paper-2);align-items:center;gap:10px;padding:12px 16px;display:flex}.modal header h2{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:18px;font-weight:900;overflow:hidden}.modal .body{padding:16px;overflow:auto}.modal footer{border-top:3px solid var(--ink);background:var(--paper-2);justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;display:flex}.modal footer .grow{color:var(--muted);flex:1;font-size:12px;font-weight:700}.modal textarea,.modal input[type=text],.modal input[type=password]{width:100%;font:inherit;border:3px solid var(--ink);resize:vertical;background:#fff;border-radius:12px;outline:none;padding:10px 12px;font-size:15px}.modal textarea:focus,.modal input[type=text]:focus,.modal input[type=password]:focus{border-color:var(--accent)}.modal label{margin-bottom:6px;font-size:14px;font-weight:800;display:block}.close{justify-content:center;width:34px;height:34px;padding:0}.close.corner{z-index:1;position:absolute;top:10px;right:10px}.seg{flex-wrap:wrap;gap:8px;display:flex}.setting-note{color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:600;line-height:1.4}.setting-note.bad{color:var(--bad)}.webhook{gap:8px;display:flex}.webhook input[type=text]{flex:1;min-width:0}.swatches{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.swatch{border:3px solid var(--ink);cursor:pointer;border-radius:50%;width:34px;height:34px}.swatch.sel{outline:3px solid var(--accent);outline-offset:2px}.svc-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.svc-list li{border:3px solid var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.svc-list li:hover{background:var(--paper-2)}.svc-list li.on{border-color:var(--accent);background:#fff1de}.svc-list li:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.svc-list .dot{border:2px solid var(--ink);border-radius:50%;flex:none;width:14px;height:14px}.svc-main{flex:1;min-width:0}.svc-title{text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.svc-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.svc-list .btn{color:inherit;padding:3px 10px;font-size:13px;text-decoration:none}.jb-icon{flex:none;font-size:18px}.spinner{border:3px solid #2b2d4233;border-top-color:var(--ink);border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.when{color:var(--muted);font-weight:700;text-decoration:none}a.when:hover{text-decoration:underline}.provider-choice label{white-space:nowrap;margin:0}.provider-model label{margin:0;font-size:12px}.provider-model input:invalid{border-color:var(--bad)}.provider-summary .btn{box-shadow:0 2px 0 var(--ink);border-width:2px;border-radius:9px;padding:3px 9px;font-size:12px}.charsel-opts label{margin:14px 0 8px}.col-search input[type=text]{border-width:2px;border-radius:9px;padding:5px 26px 5px 9px;font-size:13px}.gh-label-edit{box-shadow:0 2px 0 var(--ink);padding:1px 9px;font-size:12px}.pd-side input[type=text]{width:100%;font:inherit;border:2px solid var(--ink);background:#fff;border-radius:10px;outline:none;padding:5px 9px;font-size:13px}.elevator .dir-change{box-shadow:0 2px 0 var(--ink);vertical-align:baseline;border-width:2px;border-radius:9px;margin-left:6px;padding:1px 8px;font-size:12px}.meeting-field label{margin:0}#app{position:fixed;inset:0}#scene{outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#hud{pointer-events:none;position:absolute;inset:0}#hud>*{pointer-events:auto}.topbar{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute;top:12px;left:12px;right:12px}.topbar>*{pointer-events:auto}.project{cursor:pointer;min-width:0;max-width:40vw;padding:8px 14px}.project-name{align-items:center;display:flex}.project-name #project-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.project:hover{background:var(--paper-2)}.project-name{white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:900;overflow:hidden}.project-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.dock{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;display:flex}.dock-btn{gap:6px;height:44px;padding:0 12px;font-size:17px}.dock-btn .lbl{font-size:14px}.dock-btn .n{font-variant-numeric:tabular-nums;font-size:14px}.dock-btn .svc-count{margin-left:0}.dock-btn.dim,.menu-item.dim{opacity:.5}.dock-panel[aria-pressed=true]{background:var(--paper-2);box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.dock-menu{justify-content:center;width:44px;padding:0}.dock-menu[aria-expanded=true]{background:var(--paper-2)}.burger{flex-direction:column;gap:3px;display:flex}.burger i{background:var(--ink);border-radius:2px;width:18px;height:3px;display:block}.hud-off{display:none!important}.chat.hud-off.peek{display:flex!important}.project-meta.hud-off.lobby{display:block!important}.panel-x{width:22px;height:22px;color:var(--muted);font:900 12px/1 var(--font);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:7px;flex:none;align-self:center;margin-left:auto;padding:0;transition:opacity .12s}.side h3 :is(.cost,.plan)~.panel-x{margin-left:2px}.side section:hover .panel-x,.panel-x:focus-visible{opacity:1}.panel-x:hover{background:var(--paper-2);color:var(--ink)}@media (hover:none){.panel-x{opacity:.6}}.side{pointer-events:none;flex-direction:column;gap:12px;width:250px;max-height:calc(100vh - 90px);display:flex;position:absolute;top:72px;right:12px}.side>*{pointer-events:auto}.side h3{text-transform:uppercase;letter-spacing:.04em;align-items:baseline;gap:5px;margin:0 0 6px;font-size:14px;font-weight:900;display:flex}.side .count{color:var(--muted);font-weight:700}.side section{padding:10px 12px;overflow:auto}.side ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.people li,.workers li{border-radius:8px;align-items:center;gap:8px;padding:3px 4px;font-size:14px;font-weight:700;display:flex}.workers li{cursor:pointer}.workers li:hover{background:var(--paper-2)}.people .you{color:var(--muted);font-weight:600}.people .mic{margin-left:auto;font-size:12px}.people li.walk{cursor:pointer}.people li.walk:hover{background:var(--paper-2)}.people .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.people .sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;display:block;overflow:hidden}.people .speaking{color:var(--good)}.workers .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.workers .sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;display:block;overflow:hidden}.workers h3 .cost{text-transform:none;letter-spacing:0;margin-left:auto;font-size:12px}.workers .cost{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}.workers .name .cost{white-space:normal;overflow-wrap:anywhere;display:block}.side .spend{flex:none}.spend:has(>.usage.hidden){display:none}.usage{flex-direction:column;gap:5px;font-size:12px;font-weight:700;display:flex}.usage .row{white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:4px;display:flex;overflow:hidden}.usage .row.muted{white-space:normal;overflow-wrap:anywhere;display:block;overflow:visible}.usage .row b{font-variant-numeric:tabular-nums;font-weight:900}.usage .muted{color:var(--muted);font-weight:600}.usage.over .row b{color:var(--bad)}.budget,.meter{border:2px solid var(--ink);background:#fff;border-radius:999px;height:10px;overflow:hidden}.budget .fill,.meter .fill{background:var(--good);height:100%;transition:width .3s}.budget.near .fill,.meter.near .fill{background:var(--warn)}.budget.over .fill,.meter.over .fill{background:var(--bad)}.side .limits{cursor:pointer;flex-direction:column;flex:none;gap:4px;font-size:12px;font-weight:700;display:flex}.limits h3{margin-bottom:2px}.limits .plan{text-transform:none;letter-spacing:0;color:var(--muted);margin-left:auto;font-size:12px;font-weight:800}.limits .row{white-space:nowrap;align-items:baseline;gap:5px;display:flex}.limits .what{text-overflow:ellipsis;min-width:0;overflow:hidden}.limits .row b{font-variant-numeric:tabular-nums;font-weight:900}.limits .row b.over{color:var(--bad)}.limits .reset{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px;font-weight:600}.limits .meter+.row{margin-top:3px}.limits .muted{color:var(--muted);font-weight:600}#waiting{border:2px solid var(--ink);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffe3ea;border-radius:10px;align-items:center;gap:6px;margin:0 0 8px;padding:5px 8px;font-size:13px;font-weight:900;display:flex}#waiting:hover{background:#ffd0dc}#waiting.needs-you-now{background:var(--bad);color:#fff}#waiting.needs-you-now:hover{background:#e23a62}.workers.needs-you-panel{border-color:var(--bad)}.workers li.needs-you-row{border:2px solid var(--bad);box-shadow:inset 5px 0 0 var(--bad);background:#ffe3ea;flex-wrap:wrap;row-gap:3px;padding:6px 6px 6px 12px}.workers li.needs-you-row:hover{background:#ffd0dc}.workers li.needs-you-row .name{font-weight:900}.workers .ask{color:#b3123d;overflow-wrap:anywhere;flex:0 0 100%;font-size:12px;font-weight:800;line-height:1.3}#waiting.all-done{background:#d8f5e3}#waiting.all-done:hover{background:#c3efd5}#waiting .key{background:var(--ink);color:var(--paper);box-shadow:none;margin:0 0 0 auto}.chat{flex-direction:column;align-items:flex-start;gap:6px;width:330px;max-width:calc(100vw - 24px);display:flex;position:absolute;bottom:12px;left:12px}#hud>.chat{pointer-events:none}#chat-log{scrollbar-width:none;flex-direction:column;align-items:flex-start;gap:4px;width:100%;max-height:190px;margin:0;padding:0 0 3px;font-size:13px;list-style:none;display:flex;overflow:auto}#chat-log:empty{display:none}#chat-log li{border:2px solid var(--ink);max-width:100%;box-shadow:0 2px 0 var(--ink);overflow-wrap:anywhere;background:#fffaf3f0;border-radius:10px;padding:3px 9px;animation:.6s ease-in forwards chat-out}@keyframes chat-out{to{opacity:0;visibility:hidden}}.chat:is(:hover,:focus-within) #chat-log{pointer-events:auto;scrollbar-width:thin}.chat:is(:hover,:focus-within) #chat-log li{animation:none}#chat-log b{font-weight:900}#chat-log .sys{color:var(--muted);font-style:italic}#chat-input{pointer-events:auto;border:2px solid var(--ink);width:180px;font:inherit;box-shadow:0 2px 0 var(--ink);background:#ffffffeb;border-radius:10px;outline:none;padding:7px 10px;font-size:14px;transition:width .15s}#chat-input:focus{border-color:var(--accent);background:#fff;width:100%}.hint{background:var(--ink);color:var(--paper);border:3px solid var(--paper);border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;max-width:min(720px,100vw - 380px);padding:10px 16px;font-size:15px;font-weight:800;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 4px #00000059;pointer-events:none!important}.hint .title{color:#ffd166}.hint .cost{color:#a5ecfb;font-weight:700}.shot-meter{background:var(--ink);border:3px solid var(--paper);border-radius:10px;width:240px;height:18px;position:absolute;bottom:92px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px #00000059;pointer-events:none!important}.shot-meter .sweet{top:0;bottom:0;left:calc((var(--sweet) - var(--width) / 2) * 100%);width:calc(var(--width) * 100%);background:var(--good);display:none;position:absolute}.shot-meter.aimed .sweet{display:block}.shot-meter .mark{width:calc(var(--at) * 100%);border-right:4px solid var(--paper);background:linear-gradient(90deg,#ffd16640,#ff8a5bbf);position:absolute;top:0;bottom:0;left:0}.crosshair{background:var(--paper);border:2px solid var(--ink);opacity:.85;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;transition:transform .1s,background .1s;position:absolute;top:50%;left:50%;pointer-events:none!important}.crosshair.on{background:var(--accent);opacity:1;transform:scale(1.6)}.crosshair .look-hint{white-space:nowrap;background:var(--ink);color:var(--paper);border-radius:10px;padding:4px 10px;font-size:13px;font-weight:800;display:none;position:absolute;top:18px;left:50%;transform:translate(-50%)}.crosshair.free .look-hint{display:block}.crosshair.on .look-hint{transform-origin:top;transform:translate(-50%)scale(.625)}.telescope-view{z-index:40;pointer-events:none;display:none;position:absolute;inset:0;overflow:hidden}.telescope-view.active{display:block}.telescope-view:before{content:"";background:radial-gradient(circle,#0000 0 39vmin,#080a12b8 43vmin,#080a12 48vmin);position:absolute;inset:0}.telescope-glass{mix-blend-mode:multiply;background:radial-gradient(circle,#0000 52%,#08121c4d 72%,#03070ec2 100%);border-radius:50%;position:absolute;inset:5vmin;box-shadow:inset 0 0 4vmin #64bedc33}.telescope-reticle{border:1px solid #e6f5f54d;border-radius:50%;width:8vmin;height:8vmin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.telescope-reticle:before,.telescope-reticle:after{content:"";background:#e6f5f547;position:absolute}.telescope-reticle:before{width:1px;height:12vmin;top:-2vmin;left:50%}.telescope-reticle:after{width:12vmin;height:1px;top:50%;left:-2vmin}.telescope-exit{z-index:2;pointer-events:auto;white-space:nowrap;position:absolute;bottom:5vmin;left:50%;transform:translate(-50%)}body.telescope-active #hud{visibility:hidden}.emote-pop{animation:emote-pop var(--secs,2s) ease-out forwards;font-size:56px;line-height:1;position:absolute;bottom:96px;left:50%;pointer-events:none!important}@keyframes emote-pop{0%{opacity:1;transform:translate(-50%)scale(0)}12%{transform:translate(-50%)scale(1.25)}20%{transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%)translateY(-40px)}}@media (prefers-reduced-motion:reduce){.emote-pop{animation:emote-fade var(--secs,2s) linear forwards;transform:translate(-50%)}}@keyframes emote-fade{80%{opacity:1}to{opacity:0}}#shares{flex-direction:column;gap:8px;display:flex;position:absolute;top:72px;left:12px}.caffeine{align-items:center;gap:8px;padding:5px 10px;font-size:13px;font-weight:900;display:flex;position:absolute;top:72px;left:12px;pointer-events:none!important}.caffeine .bar{border:2px solid var(--ink);background:#f1e4d3;border-radius:999px;width:96px;height:12px;overflow:hidden}.caffeine .bar span{background:#9c6644;width:0;height:100%;transition:width 1s linear;display:block}.caffeine .left{font-variant-numeric:tabular-nums;min-width:24px}.caffeine.jittery{animation:.1s steps(2,end) infinite jitters}.golf{text-align:center;gap:6px;width:min(300px,100vw - 32px);padding:8px 12px 9px;font-size:13px;font-weight:900;display:grid;position:absolute;top:14px;left:50%;transform:translate(-50%);pointer-events:none!important}.golf-meter{border:3px solid var(--ink);background:linear-gradient(90deg,#caffbf,#ffd166 70%,#ef476f);border-radius:999px;height:16px;position:relative;overflow:hidden}.golf-rest{background:#f1e4d3;width:100%;position:absolute;inset:0 0 0 auto}.golf-last{background:var(--ink);width:3px;margin-left:-1px;position:absolute;top:-2px;bottom:-2px}.golf-info{font-variant-numeric:tabular-nums;font-weight:800}#hud:has(.golf:not(.hidden)) #toasts{translate:0 48px}.throw{text-align:center;gap:6px;width:min(320px,100vw - 32px);padding:8px 12px 9px;font-size:13px;font-weight:900;display:grid;position:absolute;top:14px;left:50%;transform:translate(-50%);pointer-events:none!important}.throw-meter{border:3px solid var(--ink);background:#f1e4d3;border-radius:999px;height:16px;position:relative;overflow:hidden}.throw-sweet{background:var(--good);position:absolute;top:0;bottom:0}.throw-fill{border-right:3px solid var(--ink);background:linear-gradient(90deg,#ffd1664d,#ff8a5bbf);position:absolute;inset:0 auto 0 0}.throw-last{background:var(--ink);opacity:.45;width:3px;margin-left:-1px;position:absolute;top:-2px;bottom:-2px}.throw-info{font-variant-numeric:tabular-nums;font-weight:800}#hud:has(.throw:not(.hidden)) #toasts{translate:0 48px}.caffeine.jittery .bar span{background:var(--bad)}@keyframes jitters{50%{transform:translate(1px,-1px)rotate(-1.5deg)}}@media (prefers-reduced-motion:reduce){.caffeine.jittery{animation:none}}.caffeine:not(.hidden)~#shares{top:120px}#hud:has(#project-meta:not(.hud-off)) :is(.caffeine,#shares){translate:0 16px}.share-thumb{border:3px solid var(--ink);width:220px;box-shadow:var(--shadow);cursor:pointer;background:#000;border-radius:12px;position:relative;overflow:hidden}.share-thumb video{aspect-ratio:16/9;object-fit:contain;background:#111;width:100%;display:block}.share-thumb .who{background:var(--paper);border:2px solid var(--ink);border-radius:8px;padding:1px 6px;font-size:12px;font-weight:800;position:absolute;bottom:6px;left:6px}.modal.viewer{background:#111;width:min(1400px,100%)}.modal.viewer video{background:#111;width:100%;max-height:calc(100vh - 120px);display:block}@media (width<=800px){.side{width:min(250px,100vw - 24px);max-height:calc(100vh - 290px)}.dock-btn .lbl{display:none}.hint{max-width:calc(100vw - 24px);bottom:190px}.shot-meter{bottom:254px}.chat{width:calc(100vw - 24px)}}.acct{color:var(--good);font-size:11px;font-weight:900}.svc-count{background:var(--accent);color:#fff;border-radius:999px;margin-left:6px;padding:0 7px;font-size:12px}#whoosh{pointer-events:none;z-index:5;opacity:0;background:repeating-conic-gradient(#ffffff8c 0deg 1.2deg,#0000 1.2deg 9deg);position:fixed;inset:0;-webkit-mask:radial-gradient(circle,#0000 38%,#000 78%);mask:radial-gradient(circle,#0000 38%,#000 78%)}#fade.quick{transition-duration:.16s}#fade{opacity:0;pointer-events:none;z-index:40;background:#1b1d2e;transition:opacity .3s;position:fixed;inset:0}#fade.on{opacity:1}.people .where{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:800;overflow:hidden}.backdrop.clear{background:0 0;padding:0;animation:none}#app:has(.backdrop.clear) :is(.topbar,.side,.chat){visibility:hidden}.arcade{animation:.25s .3s both fade;position:relative}.arcade-screen{background:#0b1320;width:100%;height:100%;overflow:hidden}.arcade canvas{cursor:pointer;touch-action:none;width:100%;height:100%;display:block}.arcade-bar{white-space:nowrap;background:var(--paper);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:14px;align-items:center;gap:12px;padding:6px 6px 6px 14px;font-size:14px;font-weight:800;display:flex;position:absolute;top:calc(100% + 10px);left:50%;translate:-50%}.arcade-bar .tip{color:var(--muted);font-size:12px}.arcade>.close.corner{top:0;left:calc(100% + 10px);right:auto}.arcade.cabinet canvas{cursor:default}.cabinet-call{white-space:nowrap;background:var(--warn);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:14px;align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:15px;font-weight:900;animation:.18s ease-out pop;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;translate:-50%}#loading{z-index:100;background:#bfe3ff;place-items:center;padding:16px;transition:opacity .35s;display:grid;position:fixed;inset:0}#loading.gone{opacity:0;pointer-events:none}.loading-card{text-align:center;background:var(--paper);border:3px solid var(--ink);border-radius:var(--radius);width:min(320px,100%);box-shadow:var(--shadow);padding:22px 26px 20px}.loading-paw{width:54px;height:54px;fill:var(--accent);stroke:var(--ink);stroke-width:3px;stroke-linejoin:round;transform-origin:50% 100%;margin:0 auto;animation:1.1s ease-in-out infinite loading-hop;display:block}.loading-shadow{background:#2b2d422e;border-radius:50%;width:38px;height:7px;margin:3px auto 12px;animation:1.1s ease-in-out infinite loading-shadow;display:block}.loading-name{margin-bottom:14px;font-size:26px;font-weight:900}.loading-bar{border:3px solid var(--ink);background:#fff;border-radius:999px;height:18px;padding:2px;overflow:hidden}.loading-fill{background:var(--accent);border-radius:999px;width:0;height:100%;transition:width .3s;display:block}.loading-say{color:var(--muted);margin:12px 0 0;font-size:14px;font-weight:800}@keyframes loading-hop{0%,to{transform:translateY(0)scale(1.1,.9)}20%,80%{transform:translateY(0)scale(1)}50%{transform:translateY(-12px)rotate(-8deg)}}@keyframes loading-shadow{50%{opacity:.6;transform:scaleX(.6)}}@media (prefers-reduced-motion:reduce){.loading-paw,.loading-shadow{animation:none}#loading,.loading-fill{transition:none}}.modal.charsel{width:min(780px,100%)}.charsel .body{grid-template-columns:250px 1fr;gap:18px;display:grid}.charsel-stage{border:3px solid var(--ink);background:radial-gradient(circle at 50% 30%,#fff 0,#e3f3ff 55%,#bfe3ff 100%);border-radius:16px;min-height:360px;position:relative;overflow:hidden}.charsel-stage canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.charsel-stage canvas:active{cursor:grabbing}.charsel-stage .tip{text-align:center;color:var(--muted);pointer-events:none;font-size:12px;font-weight:800;position:absolute;bottom:8px;left:0;right:0}.charsel-opts label:first-child,.charsel .swatches{margin-top:0}.charsel .seg{gap:6px}.charsel .seg .btn{padding:4px 10px;font-size:13px}@media (width<=640px){.charsel .body{grid-template-columns:1fr}.charsel-stage{min-height:230px}}.modal.elevator{width:min(640px,100%)}.elevator .intro{margin:0 0 12px;font-weight:700}.elevator .floors{gap:8px;display:grid}.elevator .floor-btn{text-align:left;width:100%;font:inherit;color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 12px;transition:transform 50ms;display:grid}.elevator .floor-btn:hover:not(:disabled){background:var(--paper-2)}.elevator .floor-btn:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.elevator .floor-btn:disabled{cursor:default}.elevator .floor-btn.here{background:var(--paper-2);box-shadow:none;transform:translateY(2px)}.elevator .floor-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.elevator .floor-off{padding:0 12px;font-size:16px}.elevator .floor-off:hover{background:#ffe3d6}.elevator .floor-no{border:3px solid var(--ink);color:#fff;text-shadow:0 1px #00000059;border-radius:50%;place-items:center;width:34px;height:34px;font-size:15px;font-weight:900;display:grid}.elevator .floor-text{flex-direction:column;min-width:0;display:flex}.elevator .floor-name{align-items:baseline;gap:8px;font-size:15px;font-weight:900;display:flex}.elevator .here-tag{color:var(--muted);font-size:11px;font-weight:800}.elevator .floor-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.elevator .floor-stats{white-space:nowrap;font-size:13px;font-weight:800}.elevator .floor-stats .waiting{color:var(--bad)}.elevator .clone-bar{border:2px solid var(--ink);background:var(--paper-2);border-radius:6px;height:7px;margin-top:5px;display:block;overflow:hidden}.elevator .clone-bar>span{background:var(--good);height:100%;transition:width .6s;display:block}.elevator .note+.clone-bar{margin-top:6px}.elevator .add{margin-top:16px}.elevator .add h3{margin:0 0 8px;font-size:15px;font-weight:900}.elevator .repo-search{gap:8px;display:flex}.elevator .repo-search input{flex:1}.elevator .repo-list{border:3px solid var(--ink);background:#fff;border-radius:12px;max-height:280px;margin-top:8px;overflow:auto}.elevator .repo{border-bottom:2px solid var(--paper-2);cursor:pointer;align-items:baseline;gap:8px;padding:7px 10px;display:flex}.elevator .repo:last-child{border-bottom:0}.elevator .repo:hover{background:var(--paper-2)}.elevator .repo.sel{background:#ffe3d6}.elevator .repo .nm{white-space:nowrap;font-weight:800}.elevator .repo .desc{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.elevator .repo .when{color:var(--muted);white-space:nowrap;font-size:11px}.elevator .note{color:var(--muted);overflow-wrap:anywhere;margin:8px 0 0;font-size:12px;font-weight:700}.elevator .note.busy{color:var(--ink)}.elevator .dir-pick{margin-top:8px}.elevator .err{color:var(--bad);overflow-wrap:anywhere;margin:8px 0 0;font-size:13px;font-weight:800}.lite-offer{left:12px;right:12px;bottom:max(16px, env(safe-area-inset-bottom));z-index:110;max-width:440px;margin:0 auto;padding:14px 16px;animation:.25s ease-out toast-in;position:fixed}.lite-offer p{margin:0 0 12px;font-size:15px;font-weight:800;line-height:1.35}.lite-offer-btns{flex-wrap:wrap;gap:8px;display:flex}.lite-offer-btns .btn{flex:1;justify-content:center;min-height:44px;text-decoration:none}.accounts .dot{background:#dee2e6}.accounts .dot.on{background:var(--good)}.accounts .you{color:var(--muted);font-weight:600}.accounts .invite-row select{font:inherit;border:3px solid var(--ink);color:var(--ink);background:#fff;border-radius:12px;padding:0 8px;font-weight:800}.accounts .cmd{margin-top:10px}.accounts .team-head .btn{padding:3px 10px;font-size:13px}.role{border:2px solid var(--ink);background:#e0f2fe;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:900}.role.admin{background:var(--warn)}.conn.upgrading{background:var(--warn);color:var(--ink)}.upgrade .version{font-weight:700;display:block}.upgrade .version small{color:var(--muted);font-weight:600}.upgrade code,.restart code{background:var(--paper-2);border-radius:5px;padding:1px 5px;font:12px ui-monospace,Menlo,monospace}.upgrade .note{color:var(--muted);margin:12px 0 0;font-size:13px;font-weight:600;line-height:1.45}.upgrade-status{border:2px solid var(--ink);background:#e0f2fe;border-radius:10px;align-items:center;gap:8px;margin:12px 0 0;padding:8px 12px;font-size:14px;font-weight:800;display:flex}.upgrade-status.ok{background:#d8f5e3}.upgrade-status.error{background:#ffd6e0}.upgrade-error{white-space:pre-wrap;overflow-wrap:anywhere;border:2px solid var(--ink);background:#ffd6e0;border-radius:10px;max-height:240px;margin:12px 0 0;padding:10px;font:12px/1.45 ui-monospace,Menlo,monospace;overflow:auto}.changes{flex-direction:column;gap:4px;max-height:220px;margin:0;padding:0;font-size:14px;font-weight:700;list-style:none;display:flex;overflow:auto}.modal.restart{text-align:center;width:min(480px,100%)}.modal.restart .body p{margin:10px 0 0;font-weight:700}.modal.restart .upgrade-status{justify-content:center}.modal.restart .note{color:var(--muted);font-size:13px}.restart-art{font-size:64px;line-height:1;animation:1.6s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-6px)}}.wb-window{background:var(--paper);border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);border-radius:20px;flex-direction:column;width:min(1600px,100%);height:calc(100vh - 32px);animation:.18s ease-out pop;display:flex;overflow:hidden}.wb-window>header{border-bottom:3px solid var(--ink);background:var(--paper-2);align-items:center;gap:10px;padding:10px 16px;display:flex}.wb-window>header h2{flex:none;margin:0;font-size:18px;font-weight:900}.wb-people{flex:1;align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:800;display:flex;overflow:hidden}.wb-live{background:var(--bad);color:#fff;letter-spacing:.06em;border-radius:6px;flex:none;padding:1px 6px;font-size:11px}.wb-person{border:2px solid var(--ink);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:1px 9px 1px 4px;display:inline-flex}.wb-person .dot{width:11px;height:11px}.wb-alone{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.wb-host{background:#fff;flex:1;min-height:0;position:relative}.wb-loading{text-align:center;height:100%;color:var(--muted);place-items:center;padding:16px;font-size:16px;font-weight:800;display:grid}.svc-port{font:800 14px ui-monospace,Menlo,monospace}.svc-empty{text-align:center;border:3px dashed var(--muted);border-radius:14px;padding:18px 8px}.svc-empty p{margin:0;font-weight:800}.services .team-status{margin-top:12px}.modal header .os-tabs{margin-right:4px}.svc-auto{border:2px solid var(--ink);background:var(--paper-2);border-radius:12px;margin:0 0 12px;padding:10px 12px}.svc-auto>p:first-child{margin:0;font-weight:800}.services .svc-auto .note{margin-top:4px}.svc-auto code{white-space:nowrap}.modal.bookshelf{width:min(1240px,100%);height:min(880px,100vh - 32px)}.modal.bookshelf .body{flex:1;grid-template-columns:300px minmax(0,1fr);min-height:0;padding:0;display:grid;overflow:hidden}.modal.bookshelf header .bs-project{color:var(--muted);font-weight:800}.modal.bookshelf header .bs-sound{padding:4px 10px;font-size:15px}.bs-side{border-right:3px solid var(--ink);background:var(--paper-2);flex-direction:column;min-height:0;display:flex}.bs-find{padding:12px 12px 6px}.modal .bs-find input[type=text]{padding:8px 12px;font-size:14px}.bs-count{color:var(--muted);min-height:20px;padding:0 16px 6px;font-size:12px;font-weight:800}.bs-list{flex:1;min-height:0;margin:0;padding:0 8px 12px;list-style:none;overflow:auto}.bs-item{cursor:pointer;border:2px solid #0000;border-radius:10px;min-width:0;padding:7px 10px}.bs-item+.bs-item{margin-top:2px}.bs-item:hover{background:#ffffffb3}.bs-item.sel{border-color:var(--accent);background:#fff}.bs-item.open{background:var(--ink);color:#fff;border-color:var(--ink)}.bs-item.open .bs-path{color:#ffffffb3}.bs-item.open .bs-title:before{content:"📖 "}.bs-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;line-height:1.3;overflow:hidden}.bs-path{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font:11.5px/1.4 ui-monospace,SF Mono,Menlo,Consolas,monospace;overflow:hidden}.bs-item mark{background:var(--warn);color:var(--ink);border-radius:3px;padding:0 1px}.bs-none{color:var(--muted);padding:10px;font-size:13px;font-weight:700}.bs-reader{background:#fffdf8;flex-direction:column;min-width:0;min-height:0;display:flex}.bs-bar{border-bottom:2px solid #2b2d421f;align-items:center;gap:12px;min-height:44px;padding:8px 16px;display:flex}.bs-crumbs{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:900;overflow:hidden}.bs-crumbs .dir{color:var(--muted);font-weight:700}.bs-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.bs-meta a{color:#1d6fd6;font-weight:800;text-decoration:none}.bs-meta a:hover{text-decoration:underline}.bs-toc{font:inherit;color:var(--ink);border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;max-width:220px;padding:4px 8px;font-size:12.5px;font-weight:800}.bs-page{outline:none;flex:1;min-height:0;overflow:auto}.bs-page .md{max-width:860px;margin:0 auto;padding:28px 44px 72px;font-size:15.5px;line-height:1.7}.bs-page .md h1{font-size:28px}.bs-page .md h2{margin-top:30px;font-size:22px}.bs-page .md h3{margin-top:24px;font-size:18px}.bs-page .md [data-anchor]{scroll-margin-top:14px}.bs-page .md a:not([href]){color:inherit;font-weight:800}.bs-page .md pre code,.bs-page .md code{font-size:13px}.bs-empty{text-align:center;height:100%;color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:40px;font-weight:700;display:flex}@media (width<=760px){.modal.bookshelf .body{grid-template-rows:minmax(0,36%) minmax(0,1fr);grid-template-columns:1fr}.bs-side{border-right:0;border-bottom:3px solid var(--ink)}.bs-meta{display:none}.bs-page .md{padding:18px 18px 48px}}.emote-wheel{background:radial-gradient(circle,#2b2d4247,#0000 45%);place-items:center;display:grid;position:absolute;inset:0}.emote-wheel .ring{border:3px solid var(--ink);width:288px;height:288px;box-shadow:var(--shadow);background:#fffaf3e0;border-radius:50%;animation:.12s ease-out wheel-in;position:relative}.emote-wheel .emote{width:64px;height:64px;transform:translate(var(--x), var(--y));border:3px solid var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:50%;margin:-32px 0 0 -32px;padding:0;font-size:32px;line-height:1;transition:transform 80ms,background 80ms;position:absolute;top:50%;left:50%}.emote-wheel .emote.on{background:var(--accent);transform:translate(var(--x), var(--y)) scale(1.18)}.emote-wheel .num{background:var(--ink);min-width:20px;height:20px;color:var(--paper);border-radius:999px;font-size:12px;font-weight:900;line-height:20px;position:absolute;bottom:-6px;right:-6px}.emote-wheel .middle{pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.emote-wheel .middle b{font-size:17px;font-weight:900}.emote-wheel .middle small{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:800}@keyframes wheel-in{0%{opacity:0;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.emote-wheel .ring{animation:none}}.modal.hang{width:min(560px,100%)}.hang .seg{gap:6px}.hang .seg .btn{padding:4px 10px;font-size:13px}.hang .seg .dot{width:12px;height:12px}.hang-preview{justify-content:center;margin-top:14px;display:flex}.hang-preview:empty{display:none}.hang-preview img{border:12px solid var(--frame,#c98b5a);outline:3px solid var(--ink);max-width:100%;max-height:240px;box-shadow:0 4px 0 var(--ink);background:#fff;display:block}.hang-status{color:var(--muted);align-items:center;gap:8px;margin:12px 0 0;font-size:13px;font-weight:700;line-height:1.45;display:flex}.hang-status:empty{display:none}.hang-status.error{color:var(--ink);border:2px solid var(--ink);background:#ffd6e0;border-radius:10px;padding:8px 12px}.modal.picture{width:min(980px,100%)}.picture-stage{border:3px solid var(--ink);background:#2b2d42;border-radius:14px;place-items:center;min-height:200px;padding:16px;display:grid}.picture-stage img{object-fit:contain;max-width:100%;max-height:calc(100vh - 260px);display:block}.picture-stage .spinner{border-color:#fff #ffffff40 #ffffff40}.picture-meta{color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:700}.picture-meta a{color:#1d6fd6;font-weight:800}.project.open{background:var(--paper-2)}.floor-menu{z-index:30;gap:6px;width:min(380px,100vw - 24px);max-height:calc(100vh - 110px);padding:8px;animation:.12s ease-out floor-menu-in;display:grid;position:fixed;overflow:auto}@keyframes floor-menu-in{0%{opacity:0;transform:translateY(-6px)}}.floor-menu-head{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:2px 6px 0;font-size:12px;font-weight:900}.floor-item{text-align:left;width:100%;font:inherit;color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 10px;transition:transform 50ms;display:grid}.floor-item:hover:not(:disabled){background:var(--paper-2)}.floor-item:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.floor-item:disabled{cursor:default}.floor-item.here{background:var(--paper-2);box-shadow:none;transform:translateY(2px)}.floor-item.add{background:var(--paper);box-shadow:none;border-style:dashed}.floor-item .floor-no{border:3px solid var(--ink);color:#fff;text-shadow:0 1px #00000059;border-radius:50%;place-items:center;width:30px;height:30px;font-size:14px;font-weight:900;display:grid}.floor-item.add .floor-no{text-shadow:none;background:#fff}.floor-item .floor-text{flex-direction:column;min-width:0;display:flex}.floor-item .floor-name{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900;overflow:hidden}.floor-item .floor-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.floor-item .floor-stats{white-space:nowrap;gap:6px;font-size:12px;font-weight:800;display:flex}.floor-item .floor-stats .waiting{color:var(--bad)}.help-grid{grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;font-weight:700;display:grid}.backdrop.menu-backdrop{background:0 0;padding:0;animation:none;display:block}.hud-menu{background:var(--paper);border:3px solid var(--ink);width:min(560px,100vw - 16px);box-shadow:0 5px 0 var(--ink);transform-origin:100% 0;border-radius:18px;grid-template-columns:1fr 1fr;gap:0 14px;padding:8px 10px 6px;animation:.14s ease-out menu-in;display:grid;position:absolute;overflow:auto}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}.menu-col{flex-direction:column;gap:1px;min-width:0;display:flex}.menu-sec{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:10px 8px 3px;font-size:11px;font-weight:900}.menu-sec:first-child{margin-top:4px}.menu-row{align-items:center;gap:2px;display:flex}.menu-item{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:9px;padding:6px 8px;font-size:14px;font-weight:800;display:flex}.menu-item:hover{background:var(--paper-2)}.menu-item:focus-visible,.menu-pin:focus-visible{background:var(--paper-2);box-shadow:inset 0 0 0 2px var(--accent);outline:none}.mi-icon{text-align:center;flex:none;width:22px;font-size:16px}.mi-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.mi-label small{color:var(--muted);text-overflow:ellipsis;font-size:11px;font-weight:600;display:block;overflow:hidden}.menu-item .svc-count{margin-left:0}.mi-key,.menu-foot kbd{text-align:center;min-width:20px;color:var(--ink);border:1.5px solid var(--ink);background:#fff;border-bottom-width:3px;border-radius:6px;flex:none;padding:0 5px;font:800 11px/16px ui-monospace,Menlo,monospace}.menu-item.on .mi-label:after{content:"";background:var(--good);border:1.5px solid var(--ink);vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-left:7px;display:inline-block}.menu-item.on.danger .mi-label:after{background:var(--bad)}.menu-item.primary .mi-label{color:#d9480f}.menu-pin{width:30px;height:30px;color:var(--ink);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;transition:opacity .12s;display:grid}.menu-pin svg{transition:transform .15s;transform:rotate(45deg)}.menu-pin svg path{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round}.menu-row:hover .menu-pin{opacity:.5}.menu-pin:hover,.menu-pin:focus-visible{opacity:1;background:var(--paper-2)}.menu-pin[aria-pressed=true]{opacity:1}.menu-pin[aria-pressed=true] svg{transform:none}.menu-pin[aria-pressed=true] svg path{fill:var(--accent);stroke:var(--ink);stroke-width:1.5px}@media (hover:none){.menu-pin{opacity:.45}}.switch{border:2px solid var(--ink);background:#dee2e6;border-radius:999px;flex:none;width:34px;height:20px;transition:background .15s;position:relative}.switch:after{content:"";border:2px solid var(--ink);background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:1px;left:1px}.menu-toggle[aria-checked=true] .switch{background:var(--good)}.menu-toggle[aria-checked=true] .switch:after{transform:translate(14px)}.menu-foot{color:var(--muted);border-top:2px dashed #2b2d422e;grid-column:1/-1;margin:8px 0 0;padding:8px 8px 2px;font-size:12px;font-weight:700}@media (width<=600px){.hud-menu{grid-template-columns:1fr}}.modal.settings{width:min(960px,100%);height:min(760px,100vh - 32px)}.settings-body{flex:1;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid}.settings-nav{background:var(--paper-2);border-right:3px solid var(--ink);flex-direction:column;gap:4px;padding:12px 10px;display:flex;overflow:auto}.settings-tab{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:9px 12px;font-size:15px;font-weight:800;display:flex}.settings-tab .icon{text-align:center;flex:none;width:22px;font-size:18px}.settings-tab:hover{background:#fff}.settings-tab.on{border-color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff}.settings-tab:focus-visible{outline:3px solid var(--accent);outline-offset:1px}.settings-pane{flex-direction:column;gap:12px;min-width:0;min-height:0;padding:18px 22px 24px;display:flex;overflow:auto}.settings-head h3{margin:0;font-size:20px;font-weight:900}.settings-head p{color:var(--muted);margin:4px 0 0;font-size:13.5px;font-weight:600;line-height:1.4}.setting{background:#fff;border:2px solid #2b2d422e;border-radius:14px;flex:none;padding:14px 16px}.setting-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.setting-head h4{margin:0;font-size:15px;font-weight:900}.scope{white-space:nowrap;border:2px solid var(--ink);cursor:default;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:11px;font-weight:900}.scope.you{background:#dff3fb}.scope.floor{background:#d7f7ec}.scope.office{background:#ffe6d9}@media (width<=720px){.settings-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-nav{border-right:0;border-bottom:3px solid var(--ink);flex-direction:row;overflow-x:auto}.settings-tab{white-space:nowrap;flex:none;width:auto}.settings-pane{padding:14px}}.outside-now{margin:0;font-size:15px;font-weight:800}.volume{align-items:center;gap:12px;display:flex}.volume .btn{flex:none;justify-content:center;min-width:112px}.vol-pct{text-align:right;flex:none;min-width:52px;font-size:14px;font-weight:900}.volume input[type=range]{cursor:pointer;appearance:none;--fill:70%;background:0 0;flex:1;min-width:0;height:28px;margin:0}.volume input[type=range]:focus{outline:none}.volume input[type=range]::-webkit-slider-runnable-track{border:3px solid var(--ink);background:linear-gradient(to right, var(--accent) var(--fill), #fff var(--fill));border-radius:999px;height:14px}.volume input[type=range]::-moz-range-track{border:3px solid var(--ink);background:#fff;border-radius:999px;height:8px}.volume input[type=range]::-moz-range-progress{background:var(--accent);border-radius:999px;height:8px}.volume input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--ink);background:var(--paper);width:24px;height:24px;box-shadow:0 2px 0 var(--ink);border-radius:50%;margin-top:-8px}.volume input[type=range]::-moz-range-thumb{border:3px solid var(--ink);background:var(--paper);width:18px;height:18px;box-shadow:0 2px 0 var(--ink);border-radius:50%}.volume input[type=range]:focus-visible::-webkit-slider-thumb{border-color:var(--accent)}.volume.muted input[type=range],.volume.muted .vol-pct{opacity:.45}.modal.jukebox{width:min(520px,100%)}.jb-now{border:3px solid var(--ink);background:var(--paper-2);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.jb-now .btn{flex:none;padding:4px 10px;font-size:13px}.jb-disc{flex:none;font-size:30px;line-height:1}.jb-disc.spin{animation:2.4s linear infinite jb-spin}@keyframes jb-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.jb-disc.spin{animation:none}}.needs-you{z-index:2;border:3px solid var(--ink);border-radius:var(--radius);background:var(--bad);color:#fff;--rest:var(--shadow);max-width:min(640px,100vw - 24px);box-shadow:var(--rest);align-items:stretch;animation:.3s cubic-bezier(.2,1.4,.4,1) needs-you-in,1.6s ease-out .3s infinite needs-you-ring;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%)}.needs-you button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}.needs-you-go{text-align:left;border-radius:12px 0 0 12px;align-items:center;gap:10px;min-width:0;padding:8px 6px 8px 14px;display:flex}.needs-you-go:hover,.needs-you-x:hover{background:#2b2d422e}.needs-you-icon{transform-origin:50% 90%;font-size:26px;line-height:1;animation:1.2s ease-in-out infinite needs-you-wave}.needs-you-text{min-width:0;display:grid}.needs-you-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:900;line-height:1.2;overflow:hidden}.needs-you-ask{opacity:.95;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.needs-you-more{background:var(--ink);white-space:nowrap;border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:900}.needs-you .key{box-shadow:0 2px 0 var(--ink);flex:none;margin:0}.needs-you-x{border-left:2px solid #2b2d4259;border-radius:0 12px 12px 0;flex:none;width:34px;font-size:13px;font-weight:900}#hud:has(.needs-you:not(.hidden)) #toasts{translate:0 64px}#hud:has(:is(.golf,.throw):not(.hidden)) .needs-you{translate:0 48px}#hud:has(.needs-you:not(.hidden)):has(:is(.golf,.throw):not(.hidden)) #toasts{translate:0 112px}.needs-you-flash{z-index:60;opacity:0;box-shadow:inset 0 0 0 8px var(--bad), inset 0 0 150px 36px #ef476fcc;position:fixed;inset:0;pointer-events:none!important}.needs-you-flash.on{animation:2.4s ease-out needs-you-flash}.dock-btn[data-action=waiting].danger{--rest:0 3px 0 var(--ink);animation:1.6s ease-out infinite needs-you-ring}#waiting.needs-you-now{--rest:0 0 0 0 transparent;animation:1.6s ease-out infinite needs-you-ring}@keyframes needs-you-in{0%{opacity:0;transform:translate(-50%)translateY(-18px)scale(.9)}}@keyframes needs-you-ring{0%{box-shadow:var(--rest), 0 0 0 0 #ef476fbf}to{box-shadow:var(--rest), 0 0 0 16px #ef476f00}}@keyframes needs-you-wave{0%,60%,to{transform:rotate(0)}15%,45%{transform:rotate(-14deg)}30%{transform:rotate(12deg)}}@keyframes needs-you-flash{0%,to{opacity:0}12%,46%,80%{opacity:1}29%,63%{opacity:.25}}@media (prefers-reduced-motion:reduce){.needs-you,.needs-you-icon,.dock-btn[data-action=waiting].danger,#waiting.needs-you-now{animation:none}.needs-you-flash.on{animation:1.6s ease-out needs-you-fade}}@keyframes needs-you-fade{0%{opacity:1}to{opacity:0}}.backdrop:has(>.modal.palette){place-items:start center;padding-top:12vh}.modal.palette{width:min(640px,100%);max-height:min(560px,88vh - 16px)}.palette-find{padding:12px 12px 8px}.palette-list{flex-direction:column;flex:1;gap:2px;min-height:0;margin:0;padding:0 8px 8px;list-style:none;display:flex;overflow:auto}.palette-row{cursor:pointer;border:2px solid #0000;border-radius:10px;align-items:center;gap:10px;min-width:0;padding:6px 10px;display:flex}.palette-row.on{border-color:var(--accent);background:#fff}.palette-icon{text-align:center;flex:none;width:24px;font-size:18px}.palette-text{flex-direction:column;flex:1;min-width:0;display:flex}.palette-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.palette-detail{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.palette-kind{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:11px;font-weight:800}.palette-row mark{background:var(--warn);color:var(--ink);border-radius:3px;padding:0 1px}.palette-empty{color:var(--muted);margin:4px 20px 14px;font-size:13px;font-weight:700}#compass{position:absolute;inset:0;overflow:hidden;pointer-events:none!important}.compass-mark{--mark:var(--bad);width:0;height:0;position:absolute;top:0;left:0}.compass-mark.done{--mark:var(--good)}.compass-arrow{border:3px solid var(--ink);background:var(--mark);border-radius:50% 50% 50% 0;width:38px;height:38px;position:absolute;top:-19px;left:-19px}.compass-dial{place-items:center;width:38px;height:38px;font-size:17px;line-height:1;display:grid;position:absolute;top:-19px;left:-19px}.compass-mark.needs_input .compass-dial{animation:1s infinite pulse}.compass-who{text-overflow:ellipsis;white-space:nowrap;background:var(--ink);max-width:120px;color:var(--paper);border-radius:8px;padding:1px 7px;font-size:11px;font-weight:900;position:absolute;top:24px;left:0;overflow:hidden;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.compass-mark.needs_input .compass-dial{animation:none}}.modal.search{width:min(820px,100%);height:min(720px,100vh - 32px)}.modal.search .body{flex-direction:column;flex:1;min-height:0;display:flex}.search-status{color:var(--muted);margin:10px 0 4px;font-size:13px;font-weight:700}.search-results{flex-direction:column;flex:1;gap:14px;min-height:0;padding:4px 2px 2px;display:flex;overflow:auto}.search-group h4{align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:900;display:flex}.search-group ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.search-hit{background:#fff;border:2px solid #2b2d4226;border-radius:10px;min-width:0;padding:6px 10px;font-size:14px}.search-hit.term{color:#e6e6f0;cursor:pointer;background:#1e1f2e;border-color:#1e1f2e}.search-hit.term:hover,.search-hit.term:focus-visible{outline:3px solid var(--accent);outline-offset:0}.search-hit code{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}.search-meta{color:var(--muted);align-items:baseline;gap:8px;font-size:12px;font-weight:700;display:flex}.search-text{overflow-wrap:anywhere}.search-hit mark{background:var(--warn);color:var(--ink);border-radius:3px;padding:0 1px}.modal.desklabel{width:min(520px,100%)}.sign-preview{border:3px solid var(--ink);text-align:center;overflow-wrap:anywhere;border-radius:14px;place-items:center;min-height:92px;padding:12px 18px;font-size:34px;font-weight:900;line-height:1.1;display:grid;box-shadow:inset 0 0 0 6px #ffffff2e}.sign-preview.placeholder{opacity:.45}.label-ideas{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.label-ideas .btn{padding:3px 10px;font-size:13px}.desklabel .swatches{margin-top:0}.modal.expand{width:min(500px,100%)}.expand-status p{margin:0 0 10px;font-weight:700}.expand-rows{gap:8px;margin:4px 0 12px;display:flex}.expand-rows span{text-align:center;border:3px dashed var(--muted);color:var(--muted);border-radius:12px;flex:1;padding:8px 0;font-weight:800}.expand-rows span.on{border-style:solid;border-color:var(--ink);background:var(--paper-2);color:var(--ink)}.repo-pulls{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.repo-pulls li{border:3px solid var(--ink);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;font-weight:800;display:flex}.repo-pulls li .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.repo-pulls li .name small{color:var(--muted);font-size:12px;font-weight:600;display:block}.repo-pulls li .none{color:var(--muted);font-size:13px;font-weight:700}.repo-pulls li .btn{padding:3px 10px;font-size:13px}
