:root{--ink:#090d13;--ink-2:#0e131b;--ink-3:#141a24;--ink-4:#1a212d;--line:#212936;--line-hi:#2e3849;--silver-hi:#f1f4fa;--silver:#b9c1cf;--silver-dim:#99a3b4;--silver-mute:#8792a3;--acc:#8fa2f7;--acc-lit:#b3c0fb;--acc-deep:#3d4c92;--acc-ink:#0b1020;--bad:#f0776c;--bad-line:#f0776c6b;--bad-fill:#f0776c1f;--glass:#0b0f16e0;--ring:0 0 0 3px #8fa2f738;--lift:0 1px 0 #ffffff0a inset;--cast:0 24px 60px #0000008c;--ease:cubic-bezier(.32, .72, 0, 1);--f-ui:"Outfit", system-ui, sans-serif;--f-mark:"Source Sans 3", system-ui, sans-serif;--r:12px}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body.adm{background:radial-gradient(120% 70% at 80% -10%, #131a2a, transparent 60%), var(--ink);color:var(--silver);font-family:var(--f-ui);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-size:15px;line-height:1.5}button,input,textarea{font:inherit;color:inherit}a{color:var(--silver)}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.boot-note{text-align:center;max-width:46ch;color:var(--silver-dim);margin:22vh auto 0;padding-inline:1.5rem}.btn{border:1px solid var(--line-hi);background:var(--ink-3);height:38px;color:var(--silver-hi);letter-spacing:.01em;cursor:pointer;box-shadow:var(--lift);transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding-inline:1rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:focus-visible,.icon:focus-visible,.tab:focus-visible,.fld__open:focus-visible,.fld__box:focus-visible{border-color:var(--acc);box-shadow:var(--ring);outline:none}.btn:hover{background:var(--ink-4);border-color:var(--silver-mute)}.btn:disabled{opacity:.5;cursor:default}.btn--pri{background:linear-gradient(180deg, var(--acc-lit), var(--acc));border-color:var(--acc-lit);color:var(--acc-ink);box-shadow:0 2px 14px #8fa2f738}.btn--pri:hover{background:var(--acc-lit);border-color:var(--acc-lit);box-shadow:0 3px 20px #8fa2f757}.btn--ghost{box-shadow:none;background:0 0}.btn--sm{height:30px;padding-inline:.7rem;font-size:.78rem}.icon{border:1px solid var(--line);background:var(--ink-3);width:28px;height:28px;color:var(--silver);cursor:pointer;transition:background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease);border-radius:7px;place-items:center;display:grid}.icon:hover:not(:disabled){background:var(--ink-4);color:var(--silver-hi);border-color:var(--silver-mute)}.icon:disabled{opacity:.3;cursor:default}.icon--warn:hover:not(:disabled){color:var(--bad);border-color:var(--bad)}.gate{background:radial-gradient(58% 46% at 50% 26%, #8fa2f71a, transparent 72%), radial-gradient(90% 60% at 50% 120%, #101728, transparent 65%), var(--ink);place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.gate__card{border:1px solid var(--line);background:var(--ink-2);width:min(400px,100%);box-shadow:var(--cast), var(--lift);border-radius:16px;gap:1rem;padding:clamp(1.6rem,4vw,2.4rem);display:grid}.gate__h{letter-spacing:-.01em;color:var(--silver-hi);margin:0;font-size:1.5rem;font-weight:800}.gate__p{color:var(--silver-dim);margin:-.5rem 0 .4rem;font-size:.88rem}.gate__err{border:1px solid var(--bad-line);background:var(--bad-fill);color:var(--bad);border-radius:8px;margin:0;padding:.6rem .8rem;font-size:.85rem}.gate__back{text-align:center;color:var(--silver-mute);margin-top:.3rem;font-size:.82rem;text-decoration:none}.gate__back:hover{color:var(--silver)}.wrap{grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.bar{z-index:5;border-bottom:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:.75rem clamp(.9rem,2vw,1.4rem);display:flex;position:sticky;top:0}.bar__id{color:var(--silver-hi);align-items:baseline;gap:.7rem;display:flex}.bar__who{color:var(--silver-mute);font-size:.8rem}.bar__acts{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.bar__state{font-family:var(--f-mark);letter-spacing:.04em;color:var(--silver-mute);margin-right:.4rem;font-size:.78rem}.bar__state.is-dirty{color:var(--acc-lit)}.bar__state.is-bad{color:var(--bad)}.cols{grid-template-columns:210px 1fr;min-height:0;display:grid}.side{border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:2px;max-height:calc(100dvh - 61px);padding:1rem .6rem;display:flex;position:sticky;top:61px;overflow-y:auto}.tab{text-align:left;color:var(--silver-dim);cursor:pointer;transition:background .18s var(--ease), color .18s var(--ease);background:0 0;border:0;border-radius:8px;padding:.55rem .75rem;font-size:.9rem;font-weight:600}.tab:hover{background:var(--ink-2);color:var(--silver)}.tab.is-on{background:linear-gradient(90deg, var(--ink-3), #8fa2f714);color:var(--acc);box-shadow:inset -2px 0 0 var(--acc)}.pane{width:100%;max-width:940px;padding:clamp(1.1rem,2.5vw,2rem)}.pane__head{border-bottom:1px solid var(--line);gap:.4rem;margin-bottom:1.6rem;padding-bottom:1rem;display:grid;position:relative}.pane__h{letter-spacing:-.02em;color:var(--silver-hi);margin:0;font-size:clamp(1.7rem,3.2vw,2.4rem);font-weight:800;line-height:1.1}.pane__p{max-width:60ch;color:var(--silver-dim);margin:0;font-size:.95rem}.pane__reset{position:absolute;top:0;right:0}.pane__grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem 1.2rem;margin-bottom:2rem;display:grid}.fld{align-content:start;gap:.35rem;display:grid}.fld--row{grid-template-columns:auto 1fr;align-items:center;gap:.6rem}.fld--row .fld__hint{grid-column:2}.fld--adv{opacity:.75}.fld--adv:focus-within{opacity:1}.fld__label{font-family:var(--f-mark);letter-spacing:.1em;text-transform:uppercase;color:var(--silver-mute);font-size:.74rem;font-weight:600}.fld__in{border:1px solid var(--line);background:var(--ink-2);width:100%;color:var(--silver-hi);transition:border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);border-radius:10px;padding:.55rem .7rem;font-size:.92rem}.fld__in:hover{border-color:var(--line-hi)}.fld__in:focus{border-color:var(--acc);background:var(--ink-3);box-shadow:var(--ring);outline:none}.fld__in--area{resize:vertical;font-family:inherit;line-height:1.55}.fld__box{width:17px;height:17px;accent-color:var(--acc)}.fld__hint{color:var(--silver-mute);font-size:.76rem;line-height:1.45}.fld__thumb{object-fit:cover;border:1px solid var(--line);background:var(--ink-3);border-radius:8px;width:100%;max-height:120px}.fld__thumb.is-broken{border-color:var(--bad-line);border-style:dashed;min-height:44px}.fld__open{border:1px solid var(--line);background:var(--ink-3);color:var(--silver-dim);cursor:pointer;border-radius:6px;justify-self:end;margin-bottom:-1.7rem;padding:.1rem .5rem;font-size:.72rem}.fld__open:hover{color:var(--silver-hi);border-color:var(--silver-mute)}.list{margin-top:2rem}.list__head{align-items:center;gap:.8rem;margin-bottom:.5rem;display:flex}.list__h{color:var(--silver-hi);margin:0;font-size:1.05rem;font-weight:700}.list__count{font-family:var(--f-mark);color:var(--silver-mute);flex:1;font-size:.78rem}.list__hint{max-width:72ch;color:var(--silver-mute);margin:0 0 1rem;font-size:.82rem}.list__body{gap:.8rem;display:grid}.list__empty{border:1px dashed var(--line-hi);border-radius:var(--r);text-align:center;color:var(--silver-mute);padding:1.2rem;font-size:.88rem}.card{border:1px solid var(--line);border-radius:var(--r);background:var(--ink-2);box-shadow:0 2px 10px #00000038, var(--lift);overflow:hidden}.card__bar{border-bottom:1px solid var(--line);background:var(--ink-3);align-items:center;gap:.7rem;padding:.6rem .75rem;display:flex}.card__n{font-family:var(--f-mark);letter-spacing:.08em;color:var(--acc);font-size:.75rem}.card__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--silver-hi);flex:1;font-size:.92rem;overflow:hidden}.card__tools{gap:.3rem;display:flex}.card__grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.9rem 1.1rem;padding:1rem;display:grid}@media (max-width:46rem){.cols{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;max-height:none;padding:.6rem;position:static;overflow-x:auto}.tab{white-space:nowrap}.tab.is-on{box-shadow:inset 0 -2px 0 var(--acc)}.bar{position:static}.bar__acts{width:100%}.bar__acts .btn{height:32px;padding-inline:.65rem;font-size:.8rem}.bar__state{width:100%;margin:0}.pane__reset{justify-self:start;margin-top:.4rem;position:static}}
