:root{--bg:#f3f3f2;--panel:#ffffffd1;--line:#00000024;--line-strong:#0000008c;--text:#141414;--dim:#6d6d6d;--danger:#b3261e;color:var(--text);font:14px/1.45 Inter,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;margin:0;overflow:hidden}#world{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer}[hidden]{display:none!important}.hud{z-index:5;pointer-events:none;align-items:center;gap:10px;display:flex;position:fixed;top:14px}.hud>*{pointer-events:auto}.hud-left{flex-direction:column;align-items:flex-start;gap:4px;left:16px}.hud-right{right:16px}.brand,.logo{letter-spacing:.34em;font-size:15px;font-weight:800}.brand span,.logo span{border:1.5px solid var(--text);text-align:center;letter-spacing:0;border-radius:50%;width:1.25em;line-height:1.2em;display:inline-block}.online{color:var(--dim);align-items:center;gap:6px;font-size:12px;display:flex}.online i{background:var(--text);border-radius:50%;width:7px;height:7px}.online b{color:var(--text);font-weight:600}.online em{font-style:normal}.attention,.chip,.ghost{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:17px;align-items:center;gap:7px;height:34px;padding:0 12px;display:flex}.attention svg{fill:none;width:16px;height:16px;stroke:var(--text);stroke-width:2px}.attention b{font-size:15px}.chip i{border:1.5px solid var(--text);border-radius:50%;width:9px;height:9px}.ghost:hover,.chip:hover{border-color:var(--line-strong)}.hint{z-index:4;color:var(--dim);background:var(--panel);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;border-radius:16px;max-width:calc(100vw - 32px);padding:7px 14px;font-size:12px;transition:opacity 1.2s;position:fixed;bottom:18px;left:50%;overflow:hidden;transform:translate(-50%)}.hint.faded{opacity:0}.tip{z-index:6;pointer-events:none;border:1px solid var(--line);white-space:nowrap;background:#ffffffeb;border-radius:8px;padding:6px 10px;font-size:12px;position:fixed;transform:translate(14px,14px)}.tip b{font-weight:650}.panel{z-index:6;background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;width:min(340px,100vw - 32px);padding:18px 18px 14px;position:fixed;top:64px;right:16px;box-shadow:0 10px 40px #00000014}.panel small{color:var(--dim);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.panel h2{margin:4px 0 6px;font-size:19px}.panel p{color:var(--dim);margin:0 0 10px}.panel dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 12px;font-size:13px;display:grid}.panel dt{color:var(--dim)}.panel dd{margin:0}.votes{gap:12px;margin-bottom:10px;display:flex}.actions{flex-wrap:wrap;gap:8px;display:flex}.actions button,.key button,#dev-login button{border:1px solid var(--text);background:var(--text);color:#fff;border-radius:9px;height:34px;padding:0 14px;font-weight:600}.actions button.secondary,.actions button.danger{border-color:var(--line-strong);color:var(--text);background:0 0}.actions button:disabled{opacity:.35;cursor:default}.msg{min-height:1.2em;font-size:12px;margin:10px 0 0!important}.msg.error{color:var(--danger)!important}.close{color:var(--dim);background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:8px;right:10px}.overlay{z-index:10;background:#f3f3f28c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.card{text-align:center;border:1px solid var(--line);background:#ffffffeb;border-radius:18px;width:min(420px,100%);padding:30px 28px 22px;position:relative;box-shadow:0 20px 80px #0000001a}.card.wide{text-align:left;width:min(640px,100%)}.card .logo{margin-bottom:12px;font-size:26px}.tagline{color:var(--dim);margin:0 0 22px}#gsi{justify-content:center;min-height:44px;margin-bottom:12px;display:flex}#dev-login{gap:8px;margin-bottom:12px;display:flex}#dev-login input,.key code{border:1px solid var(--line);min-width:0;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:9px;flex:1;padding:0 12px}.link{color:var(--dim);text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.fine{color:var(--dim);margin:10px 0 0;font-size:12px}.fine a{color:var(--text)}.key{gap:8px;margin:12px 0;display:flex}.key code{white-space:nowrap;text-overflow:ellipsis;align-items:center;font:13px ui-monospace,Consolas,monospace;display:flex;overflow:hidden}pre{white-space:pre-wrap;border:1px solid var(--line);background:#f6f6f5;border-radius:10px;padding:12px;font:12.5px/1.5 ui-monospace,Consolas,monospace}.card h2{margin:0 0 8px}.card p{color:var(--dim)}.toasts{z-index:9;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-size:13px;animation:4s forwards toast}.toast.error{border-color:#b3261e99}@keyframes toast{0%{opacity:0;transform:translateY(-6px)}8%,85%{opacity:1;transform:none}to{opacity:0}}@media (max-width:640px){.hud-right{flex-wrap:wrap;justify-content:flex-end;top:auto;bottom:56px;right:12px}.ghost{padding:0 10px}.hint{font-size:11px}.panel{top:auto;bottom:100px;right:16px}}
