:root{--bg:#F3F5F7;--surface:#FFFFFF;--surface-2:#EDF0F4;--line:#D8DEE6;--line-soft:#E6EAF0;--ink:#141A22;--ink-2:#3F4A57;--ink-3:#6A7584;--accent:#1F5FBF;--accent-soft:#E2ECFA;--accent-ink:#FFFFFF;--bad:#B42318;--bad-soft:#FDE7E5;--warn:#9A5800;--warn-soft:#FDF0DA;--ok:#1B7A43;--ok-soft:#E1F3E8;--muted:#5B6574;--muted-soft:#EEF1F4;--eng:#6A3FB0;--eng-soft:#EFE7FB;--rule:rgba(31,95,191,.07);--sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0E1217;--surface:#151B22;--surface-2:#1B232C;--line:#2A3440;--line-soft:#212A34;--ink:#E7ECF2;--ink-2:#B6C0CC;--ink-3:#8793A2;--accent:#7EA8F0;--accent-soft:#18283F;--accent-ink:#0B1626;--bad:#F59A92;--bad-soft:#3A1A18;--warn:#F2B861;--warn-soft:#352612;--ok:#74D19B;--ok-soft:#153222;--muted:#9AA5B3;--muted-soft:#1E262F;--eng:#C3A6F2;--eng-soft:#2A2040;--rule:rgba(126,168,240,.07);color-scheme:dark}}:root[data-theme=dark]{--bg:#0E1217;--surface:#151B22;--surface-2:#1B232C;--line:#2A3440;--line-soft:#212A34;--ink:#E7ECF2;--ink-2:#B6C0CC;--ink-3:#8793A2;--accent:#7EA8F0;--accent-soft:#18283F;--accent-ink:#0B1626;--bad:#F59A92;--bad-soft:#3A1A18;--warn:#F2B861;--warn-soft:#352612;--ok:#74D19B;--ok-soft:#153222;--muted:#9AA5B3;--muted-soft:#1E262F;--eng:#C3A6F2;--eng-soft:#2A2040;--rule:rgba(126,168,240,.07);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background-color:var(--bg);background-image:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px);background-size:22px 22px;background-attachment:fixed;color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1{font-size:20px;margin:0;font-weight:600;text-wrap:balance}h2{font-size:16px;margin:0 0 10px;font-weight:600}h3{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);margin:14px 0 6px;font-weight:600}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--mono);font-size:12.5px}.small{font-size:12.5px;color:var(--ink-3)}.muted{color:var(--ink-3)}.simbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--surface);border-bottom:1px solid var(--line);padding:8px max(16px,env(safe-area-inset-left,0px))}.brand{display:flex;align-items:center;gap:9px;margin-right:6px}.avatar{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}.brand b{font-size:15px}.brand .small{display:block;line-height:1.1}.clock{font-size:12.5px;border:1px solid var(--line);border-radius:8px;padding:4px 9px;background:var(--surface-2)}.acting{display:flex;align-items:center;gap:8px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:999px;padding:4px 6px 4px 12px;max-width:100%;min-width:0}.acting .who{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.acting .btn{border-radius:999px}.grow{flex:1}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;padding:16px max(16px,env(safe-area-inset-left,0px));align-items:start}nav.side{position:sticky;top:64px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px}nav.side a{display:flex;justify-content:space-between;gap:6px;padding:7px 10px;border-radius:8px;color:var(--ink-2);text-decoration:none;font-size:13.5px}nav.side a.on{background:var(--accent);color:var(--accent-ink);font-weight:600}nav.side a:not(.on):hover{background:var(--surface-2)}nav.side .sep{height:1px;background:var(--line-soft);margin:6px 4px}main{min-width:0}@media(max-width:860px){.layout{grid-template-columns:minmax(0,1fr)}nav.side{position:static;flex-direction:row;flex-wrap:wrap}nav.side .sep{display:none}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0;margin-bottom:14px}.head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media(max-width:1100px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.grid2,.grid3{grid-template-columns:minmax(0,1fr)}}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.tile .v{font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.tile .l{font-size:12px;color:var(--ink-3)}.tile.alert .v{color:var(--warn)}.btn{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:5px 11px;font-size:13px;white-space:nowrap}.btn:hover{border-color:var(--accent)}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.bad{border-color:var(--bad);color:var(--bad)}.btn.sm{padding:2px 8px;font-size:12px}.btn[disabled]{opacity:.45;cursor:not-allowed}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 12px;align-items:end}.form .wide{grid-column:1/-1}label.f{display:grid;gap:3px;font-size:12.5px;color:var(--ink-2)}label.c{display:flex;gap:7px;align-items:flex-start;font-size:13px}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid var(--line);border-radius:8px;padding:6px 9px;background:var(--surface);min-width:0;width:100%}textarea{min-height:60px}.search{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.search input{flex:1 1 220px;width:auto}.search select{width:auto}.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:6px 8px;border-bottom:1px solid var(--line-soft);vertical-align:top}tr:last-child td{border-bottom:0}tr.click{cursor:pointer}tr.click:hover td{background:var(--surface-2)}.tag{display:inline-block;border-radius:5px;padding:0 6px;font-size:11.5px;font-weight:600;white-space:nowrap;background:var(--muted-soft);color:var(--muted)}.tag.ok{background:var(--ok-soft);color:var(--ok)}.tag.warn{background:var(--warn-soft);color:var(--warn)}.tag.bad{background:var(--bad-soft);color:var(--bad)}.tag.acc{background:var(--accent-soft);color:var(--accent)}.tag.eng{background:var(--eng-soft);color:var(--eng)}.pipe{display:flex;gap:3px;flex-wrap:wrap;align-items:center}.pipe span{font-size:11.5px;padding:2px 7px;border-radius:5px;background:var(--muted-soft);color:var(--muted)}.pipe span.done{background:var(--accent-soft);color:var(--accent)}.pipe span.cur{background:var(--accent);color:var(--accent-ink);font-weight:600}.pipe span.off{background:var(--bad-soft);color:var(--bad);font-weight:600}.note{border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 8px 8px 0;padding:8px 10px;font-size:13px;margin:8px 0}.note.warn{border-left-color:var(--warn);background:var(--warn-soft)}.note.ok{border-left-color:var(--ok);background:var(--ok-soft)}.note.bad{border-left-color:var(--bad);background:var(--bad-soft)}.err{background:var(--bad-soft);color:var(--bad);border-radius:8px;padding:7px 10px;font-size:13px;margin:8px 0}.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 12px;font-size:13px}.kv dt{color:var(--ink-3)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.more{display:flex;justify-content:center;padding:8px}.empty{color:var(--ink-3);font-style:italic;padding:10px}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:9px 14px;border-radius:9px;font-size:13px;z-index:60;max-width:calc(100vw - 32px)}.scrim{position:fixed;inset:0;background:#0a0e1473;z-index:40;display:flex;justify-content:center;align-items:flex-start;padding:6vh 16px 16px}.dialog{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;width:min(760px,100%);max-height:86vh;overflow:auto;box-shadow:0 10px 40px #00000040}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:var(--surface);border-left:1px solid var(--line);z-index:45;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0000002e}.drawer .dh{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:8px}.drawer .db{padding:12px 14px;overflow:auto;flex:1}.mail{border:1px solid var(--line);border-radius:10px;padding:9px 11px;margin-bottom:8px;background:var(--surface)}.mail .s{font-weight:600}.mail .meta{font-size:12px;color:var(--ink-3);display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.code{font-family:var(--mono);font-weight:600;background:var(--accent-soft);color:var(--accent);padding:0 5px;border-radius:4px}.persona{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin-bottom:6px}.persona:hover{border-color:var(--accent)}.qgrid,.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;margin-bottom:10px}.qgrid button,.pgrid button{text-align:left;border:1px solid var(--line);background:var(--surface-2);border-radius:9px;padding:7px 9px;font-size:12.5px}.qgrid button:hover,.pgrid button:hover{border-color:var(--accent)}.qgrid b,.pgrid b{display:block;font-size:13px}.pgrid{max-height:260px;overflow:auto}.loginp{max-width:380px;margin:10vh auto 0;display:grid;gap:12px;padding:20px}.loginp h2{margin:0}.bar{height:8px;background:var(--muted-soft);border-radius:9px;overflow:hidden}.bar i{display:block;height:100%;background:var(--accent)}.qr{background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;display:inline-block;line-height:0}.qr svg{width:150px;height:150px}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.steps li{display:flex;gap:9px;align-items:flex-start}.steps .n{width:22px;height:22px;border-radius:50%;background:var(--muted-soft);color:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:700;flex:none}.steps li.done .n{background:var(--ok-soft);color:var(--ok)}.steps li.cur .n{background:var(--accent);color:var(--accent-ink)}.crumbs{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;font-size:13px;margin:0 0 8px;padding:0;list-style:none}.crumbs li{display:flex;gap:6px;align-items:center;min-width:0}.crumbs li+li:before{content:"\203a";color:var(--ink-3)}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.crumbs [aria-current]{color:var(--ink-2);font-weight:600}.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line);margin:0 0 12px}.tabs a{padding:7px 12px;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;text-decoration:none;color:var(--ink-2);font-size:13.5px;margin-bottom:-1px;white-space:nowrap}.tabs a .n{color:var(--ink-3);font-size:12px;margin-left:4px;font-variant-numeric:tabular-nums}.tabs a.on{background:var(--surface);border-color:var(--line);color:var(--ink);font-weight:600}.tabs a:not(.on):hover{background:var(--surface-2)}.filters{display:grid;grid-template-columns:minmax(200px,2fr) repeat(auto-fit,minmax(150px,1fr));gap:8px;align-items:end;margin-bottom:10px}.filters label{display:grid;gap:3px;font-size:12px;color:var(--ink-3)}.filters .clear{align-self:end}@media(max-width:560px){.filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.filters .q{grid-column:1/-1}}.pager{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between;padding:8px 2px 0}.pager .pages{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.pager .btn[aria-current]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.pager .gap{color:var(--ink-3);padding:0 2px}.listhead{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;justify-content:space-between;margin-bottom:6px}.busy{opacity:.55;transition:opacity .15s}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:12px}.split a{display:block;border:1px solid var(--line);border-radius:10px;padding:9px 11px;text-decoration:none;color:var(--ink);background:var(--surface)}.split a:hover{border-color:var(--accent)}.split a .v{font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.split a .l{font-size:12.5px;color:var(--ink-3)}.tree{list-style:none;margin:0;padding:0}.tree .tree{padding-left:18px;border-left:1px solid var(--line-soft);margin-left:10px}.tree .node{display:flex;align-items:center;gap:8px;padding:3px 0;min-width:0}.tree .tg{width:22px;height:22px;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:0;line-height:1;flex:none;font-size:12px}.tree .tg.none{visibility:hidden}.tree .node a{font-weight:600}.tree .node .lvl{font-size:11.5px;color:var(--ink-3)}.tree .node .cnt{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--ink-2);white-space:nowrap}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.chips a{border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:12.5px;text-decoration:none;background:var(--surface)}.chips a:hover{border-color:var(--accent)}.chips a span{color:var(--ink-3);margin-left:4px;font-variant-numeric:tabular-nums}rp-dash{display:block}.cframe{max-width:1200px;margin:0 auto;padding:16px max(16px,env(safe-area-inset-left,0px))}rp-dash[hidden]{display:none}
