:root{--paper:#F1F2F4;--surface:#FFFFFF;--ink:#000000;--ink-2:#4E535A;--ink-3:#767C86;--line:#DBDEE3;--line-soft:#ECEEF1;--rail:#14161B;--rail-ink:#AEB4BE;--ok:#16713D;--ok-dim:#E8F1EC;--warn:#7D4E00;--warn-dim:#F6F0E4;--danger:#A3241B;--danger-dim:#FBF0EF;--idle:#7A818B;--focus:#2B5FD9;--data:#2F5FA8;--data-soft:#7FA6D8;--data-dim:#F0F5FC;--data-line:#C9D8EC;--ground:var(--paper);--panel:var(--surface);--elevated:#F4F5F7;--hover:#FAFBFC;--border:var(--line);--border-soft:var(--line-soft);--text:var(--ink);--muted:var(--ink-2);--faint:var(--ink-3);--accent:var(--ink);--accent-dim:#F0F1F3;--accent-press:#23262B;--success:var(--ok);--success-dim:var(--ok-dim);--warning:var(--warn);--warning-dim:var(--warn-dim);--danger-soft:var(--danger-dim);--rail-w:208px;--t:150ms;--font:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:3px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#C9CDD4;border-radius:8px;border:3px solid var(--paper)}::-webkit-scrollbar-track{background:transparent}.app{display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);min-height:100vh;min-height:100dvh}.rail{background:var(--rail);color:var(--rail-ink);position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:9px;padding:16px 16px 12px}.bmark{flex:none;color:currentColor}.wordmark{font-size:17px;font-weight:600;letter-spacing:-.02em;color:#fff;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav{display:flex;flex-direction:column;gap:2px;padding:6px 8px}.nav button{display:flex;align-items:flex-start;gap:10px;background:transparent;border:0;color:var(--rail-ink);padding:9px 10px;border-radius:5px;font-size:13px;text-align:left;width:100%;transition:background var(--t),color var(--t)}.nav button:hover{background:#1C1F25;color:#fff}.nav button.active{background:#24272F;color:#fff;box-shadow:inset 2px 0 0 #fff}.nav .ico{width:16px;height:16px;flex:none;margin-top:1px}.nav .navtext{display:flex;flex-direction:column;gap:2px;min-width:0}.nav .navtext b{font-weight:600;line-height:1.2}.nav .navtext small{font-size:11px;line-height:1.3;color:#6E747E}.nav button.active .navtext small,.nav button:hover .navtext small{color:#98A0AC}.nav .badge{margin-left:auto;font:11px var(--mono);color:#6E747E;padding-top:1px}.nav button.active .badge{color:#98A0AC}.rail-copy{margin-top:auto;padding:8px 12px;font:11px var(--mono);color:#4E535C}.rail-copy a{color:#6E747E;text-decoration:none}.rail-copy a:hover{color:#AEB4BE}.rail-copy+.rail-foot{margin-top:0}.rail-foot{margin-top:auto;border-top:1px solid #22252c;padding:10px 12px;display:flex;align-items:center;gap:9px}.avatar{width:26px;height:26px;border-radius:3px;background:#2E323A;flex:none;display:grid;place-items:center;font-weight:600}.avatar,.rail-foot .who{color:#fff;font-size:12px}.rail-foot .who{line-height:1.3}.rail-foot .who small{display:block;color:#767C86;font:11px var(--mono)}.rail-foot .iconbtn{margin-left:auto;color:#767C86}.rail-foot .iconbtn:hover{background:#22252C;color:#fff;border-color:transparent}.main{min-width:0;display:flex;flex-direction:column}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:0 20px;height:55px}.topbar h1{font-size:17px;margin:0;font-weight:600;letter-spacing:-.01em}.topbar .sub{color:var(--ink-3);font:12px var(--mono)}.topbar .spacer{margin-left:auto}.search{display:flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:0 9px;height:30px;color:var(--ink-3);font-size:13px;min-width:240px}.search svg{width:15px;height:15px;flex:none}.search input{background:transparent;border:0;color:var(--ink);outline:none;font-size:13px;width:100%;font-family:inherit}.search input::placeholder{color:var(--ink-3)}.btn{display:inline-flex;align-items:center;gap:6px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-weight:500;padding:0 11px;height:30px;border-radius:4px;font-size:13px;transition:background var(--t),border-color var(--t)}.btn:hover{background:#23262B}.btn svg{width:15px;height:15px}.btn.ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn.ghost:hover{background:var(--hover);border-color:#C3C8CF}.btn.sm{height:26px;padding:0 8px;font-size:12px}.btn.danger{background:var(--surface);border-color:#E3C9C6;color:var(--danger)}.btn.danger:hover{background:var(--danger-dim)}.btn:disabled{opacity:.55;cursor:default}.drop{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 9px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font:13px var(--font);color:var(--ink-2);transition:border-color var(--t),background var(--t)}.drop:hover{border-color:#C3C8CF;background:var(--hover)}.drop b{font-weight:500;color:var(--ink)}.drop svg{width:14px;height:14px;color:var(--ink-3)}.drop select{border:0;background:transparent;font:500 13px var(--font);color:var(--ink);outline:none;padding:0}.screen{padding:16px 20px 24px}.section-title{font-size:12px;color:var(--ink-3);font-weight:500;margin:4px 0 10px}.tiles{display:grid;grid-template-columns:repeat(5,1fr);background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden}.tile{padding:11px 14px;border-right:1px solid var(--line-soft);position:relative}.tile:last-child{border-right:0}.tile .k{color:var(--ink-3);font-size:12px;display:flex;align-items:center;gap:6px}.tile .k svg{width:13px;height:13px}.tile .tico{display:none}.tile .v{font:22px/1.2 var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:3px;letter-spacing:-.02em}.tile .v s{text-decoration:none;font-size:13px;color:var(--ink-3)}.tile .d{font-size:12px;margin-top:2px;color:var(--ink-2);display:flex;align-items:center;gap:5px}.tile .tilerow{display:flex;align-items:flex-end;gap:10px}.tile .tilerow .spark{margin-left:auto;margin-bottom:3px}.up{color:var(--ok)}.down{color:var(--danger)}.spark{display:block}.spark .ar{fill:#E8EFF8}.spark .ln{fill:none;stroke:var(--data);stroke-width:1.4}.spark.down .ln{stroke:var(--danger)}.spark.flat .ln{stroke:#9AA0A8}.grid2{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:14px;gap:14px;margin-top:14px}.grid2.even{grid-template-columns:1fr 1fr}.grid2.side{grid-template-columns:340px minmax(0,1fr)}.card{background:var(--surface);border:1px solid var(--line);border-radius:5px}.card h3{margin:0;font-size:13px;font-weight:600}.card .hint{color:var(--ink-3);font-size:12px;margin:0}.card-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line-soft)}.card-head h3{margin:0;white-space:nowrap}.card-head svg{width:14px;height:14px;color:var(--ink-3)}.card-head .hint{margin-left:auto}.card-body,.chart{padding:14px}.chartpeak{display:none}.chartbars{gap:3px;height:176px}.chartbars,.chartcol{display:flex;align-items:flex-end}.chartcol{flex:1 1;min-width:0;height:100%}.chartstack{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:1px}.chartstack>i{display:block;width:100%;border-radius:1px 1px 0 0}.chartlegend .ms,.chartstack .ms{background:var(--data-soft)}.chartlegend .rt,.chartstack .rt{background:var(--data)}.chartlegend .fail,.chartstack .fail{background:var(--danger)}.chartaxis{display:flex;gap:3px;margin-top:7px}.chartaxis span{flex:1 1;min-width:0;font:10px var(--mono);color:var(--ink-3);text-align:center}.chartlegend{display:flex;gap:16px;margin-top:12px;font-size:12px;color:var(--ink-2)}.chartlegend span{display:inline-flex;align-items:center;gap:6px}.chartlegend i{width:9px;height:9px;border-radius:2px;display:block}.donut{display:flex;align-items:center;gap:18px;padding:14px}.donut .legend{flex:1 1;display:flex;flex-direction:column;gap:7px}.donut .legend div{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2)}.donut .legend b{margin-left:auto;font:13px var(--mono);color:var(--ink)}.ranks{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.rank{display:grid;grid-template-columns:130px 1fr 56px;align-items:center;grid-gap:10px;gap:10px;font-size:12px}.rank .track{height:8px;background:var(--line-soft);border-radius:2px;overflow:hidden}.rank .track i{display:block;height:100%;background:var(--data)}.rank .v{text-align:right;font:12px var(--mono);color:var(--ink-2)}.rank span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heat{padding:12px 14px}.heatgrid{display:grid;grid-template-columns:34px repeat(24,1fr);grid-gap:3px;gap:3px;align-items:center}.heatgrid span{font:10px var(--mono);color:var(--ink-3)}.heatgrid i{height:14px;border-radius:2px;background:#EEF0F3;display:block}.heatgrid i.l1{background:#DCE5F1}.heatgrid i.l2{background:#B7CCE6}.heatgrid i.l3{background:#8AA9D4}.heatgrid i.l4{background:#5A82BE}.heatgrid i.l5{background:var(--data)}.heatfoot{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:11px;color:var(--ink-3)}.heatfoot i{width:14px;height:14px;border-radius:2px;display:block;background:#EEF0F3}.prog{height:3px;background:var(--line-soft);border-radius:2px;overflow:hidden}.prog>i{display:block;height:100%;background:var(--data)}.prog.warn>i{background:var(--warn)}.prog.ok>i{background:var(--ok)}.filterbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filterbar.busy{opacity:.55}.attlist{display:flex;flex-direction:column}.attrow{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line-soft);color:inherit;align-items:flex-start}.attrow:last-child{border-bottom:0}.attrow:hover{background:var(--hover)}.attdot{width:7px;height:7px;border-radius:50%;margin-top:6px;flex:none;background:var(--idle)}.attdot.warn{background:var(--warn)}.attdot.bad{background:var(--danger)}.attbody{display:flex;flex-direction:column;gap:1px;min-width:0}.attbody b{font-size:13px;font-weight:500}.atttitle{font-size:12px;color:var(--ink-2)}.attdetail{font-size:12px;color:var(--ink-3);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.attmore{display:inline-block;margin:10px 0 0 14px;font-size:12px;color:var(--ink-2)}.tablewrap{border:1px solid var(--line);border-radius:5px;overflow:hidden}.tablewrap,.toolbar{background:var(--surface)}.toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line)}.toolbar .chips{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}.chip{background:transparent;border:0;border-right:1px solid var(--line-soft);color:var(--ink-2);padding:0 11px;height:30px;font-size:13px;display:inline-flex;align-items:center;gap:6px;transition:background var(--t)}.chip:last-child{border-right:0}.chip:hover{background:var(--hover)}.chip.on{background:#F0F1F3;color:var(--ink);font-weight:500}.chip svg{width:14px;height:14px;color:var(--ink-3)}.chip.on svg{color:var(--ink)}.chip .n{font:11px var(--mono);color:var(--ink-3)}.chip .n.active{color:var(--ok)}.chip .n.warming{color:var(--warn)}.chip .n.banned{color:var(--danger)}.chip .n.all{color:var(--ink-2)}.sep{width:1px;height:20px;background:var(--line)}.toolbar .search.inline{margin-left:auto}.tscroll{overflow-x:auto}.rangebar{flex-wrap:wrap}.rangebar .rangeico{display:inline-flex;color:var(--ink-3)}.rangebar .rangeico svg{width:14px;height:14px}.daterange{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}.daterange input{border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font:12px var(--mono);padding:4px 7px}.rangecount{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font:11px var(--mono);color:var(--ink-3)}.workerwarn{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding:9px 12px;font-size:13px;color:var(--danger);background:var(--danger-dim);border:1px solid #e9c8c5;border-radius:5px}.workerwarn svg{flex:none}.loadmore{display:flex;justify-content:center;padding:12px;border-top:1px solid var(--line-soft)}td.nowrap,th.nowrap{white-space:nowrap}.pickcell{width:34px;padding-right:0!important}.pickcell input{width:14px;height:14px;accent-color:var(--data);cursor:pointer;margin:0;display:block}.bulkbar{position:-webkit-sticky;position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding:8px 12px;background:var(--data-dim);border:1px solid var(--data-line);border-radius:5px}.bulkbar>b{font:13px var(--mono);color:var(--data)}.bulkbar .bulklabel{font-size:12px;color:var(--ink-2);margin-right:2px}.bulkbar .sep{background:var(--data-line)}.bulkbar .btn.ghost,.bulkbar .drop{background:var(--surface)}.bulkbar .iconbtn{margin-left:auto}.memberseen{color:var(--muted);font-size:13px}.memberseen span{border-bottom:1px dotted var(--line);cursor:default}.memberseen .online{display:inline-flex;align-items:center;gap:6px;color:var(--ok);border-bottom:0}.memberseen .online i{width:6px;height:6px;border-radius:50%;background:var(--ok);flex:none}table{width:100%;border-collapse:collapse;font-size:13px}thead th{text-align:left;color:var(--ink-3);font-weight:500;font-size:12px;padding:7px 10px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;background:#FAFAFB;white-space:nowrap}thead th.sorted{color:var(--ink)}tbody td{padding:7px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle;height:40px}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--hover)}.acct{display:flex;align-items:center;gap:9px}.acct .av{width:26px;height:26px;border-radius:3px;flex:none;display:grid;place-items:center;color:#fff;font-weight:600;font-size:12px;position:relative;background:#8A9099}.acct .av .vf{position:absolute;bottom:-3px;right:-3px;width:13px;height:13px;border-radius:50%;background:var(--surface);display:grid;place-items:center}.acct .av .vf svg{width:11px;height:11px;color:var(--ink-2)}.acct .nm{font-weight:500;font-size:13px;line-height:1.2;gap:5px}.acct .nm,.acct .sub{display:flex;align-items:center}.acct .sub{color:var(--ink-3);font:11px var(--mono);margin-top:1px;gap:6px}.acct .sub b{color:var(--ink-2);font-weight:400}.acct .xid{display:none}.synced{color:var(--ok)}.grouptag,.synced{display:inline-flex;align-items:center}.grouptag{gap:6px;white-space:nowrap;background:#FBFBFC;color:var(--ink-2);border:1px solid var(--line);padding:0 7px;height:20px;border-radius:3px;font-size:12px}.grouptag svg{width:12px;height:12px;color:var(--ink-3)}.mono{font-family:var(--mono);font-size:12px;color:var(--ink-2)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td.num,th.num{text-align:right}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap;color:var(--ink-2);background:#F4F5F7;border:1px solid var(--line);border-radius:3px;padding:0 8px;height:22px}.pill .dot{width:6px;height:6px;border-radius:50%;background:var(--idle);flex:none}.pill.active{color:var(--ok);background:var(--ok-dim);border-color:#C4DFD1}.pill.active .dot{background:var(--ok)}.pill.paused{color:var(--ink-2)}.pill.banned{color:var(--danger);background:var(--danger-dim);border-color:#E9C8C5}.pill.banned .dot{background:var(--danger)}.pill.warming{color:var(--warn);background:var(--warn-dim);border-color:#E6D6B4}.pill.warming .dot{background:var(--warn)}.pill.plain{color:var(--ink-3);background:transparent;border-color:transparent;padding:0;height:auto}.bundle{display:inline-flex;align-items:center;font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:0 7px;height:20px;border-radius:3px;color:var(--data);background:var(--data-dim);border:1px solid var(--data-line)}.bundle.swap{color:var(--ink-3);background:#FBFBFC;border-color:var(--line)}.tier{font:11px var(--mono);padding:1px 6px;border-radius:3px;border:1px solid var(--line);color:var(--ink-2);background:#FBFBFC}.tier.blue{color:var(--data);background:var(--data-dim);border-color:var(--data-line)}.tier.free{color:var(--ink-3)}.tier.x{color:var(--data);background:var(--data-dim);border-color:var(--data-line)}.tier.panel{color:var(--ink-3)}.restext{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}.restext:before{content:"";width:6px;height:6px;border-radius:50%;flex:none;background:var(--ok)}.restext.bad{color:var(--danger)}.restext.bad:before{background:var(--danger)}.rowactions{display:flex;gap:2px;justify-content:flex-end}.iconbtn{width:28px;height:28px;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--ink-2);display:grid;place-items:center;transition:background var(--t),border-color var(--t),color var(--t)}.iconbtn svg{width:16px;height:16px}.iconbtn:hover{background:#F5F6F8;border-color:var(--line);color:var(--ink)}.iconbtn.d:hover{background:var(--danger-dim);border-color:#E3C9C6;color:var(--danger)}.iconbtn:disabled{opacity:.45;cursor:default}.cell-prog{min-width:118px}.cell-prog .lbl{display:flex;justify-content:space-between;font:12px var(--mono);color:var(--ink-3);margin-bottom:4px}.counter b{font:13px var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.counter small{font:11px var(--mono);color:var(--ink-3);margin-top:2px}.counter small,.lastact .what{display:block;white-space:nowrap}.lastact .what{font-size:13px;line-height:1.35;max-width:190px;overflow:hidden;text-overflow:ellipsis}.lastact .what.bad{color:var(--danger)}.lastact .what.none,.lastact .when{color:var(--ink-3)}.lastact .when{display:block;font:11px var(--mono);margin-top:2px}.nextcell{white-space:nowrap;font:13px var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:block}.nextcell small{display:block;font:11px var(--mono);color:var(--ink-3);margin-top:2px}.nextcell.due{color:var(--ok)}.nextcell.held{color:var(--ink-3)}.nextcell.held.off{color:var(--danger)}.lasttoggle{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left}.lasttoggle .chev{display:inline-flex;color:var(--ink-3);transition:transform var(--t)}.lasttoggle .chev svg{width:14px;height:14px}.lasttoggle.open .chev{transform:rotate(180deg);color:var(--ink)}.lasttoggle:hover .chev{color:var(--ink)}.lasttoggle .lastact{display:block;min-width:0}tr.logrow>td,tr.open>td{background:#F7F8FA}tr.logrow>td{padding:0 14px 12px}.rowlog{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--surface)}.logline{display:grid;grid-template-columns:92px 210px 1fr 66px;grid-gap:12px;gap:12px;align-items:baseline;padding:7px 12px;font-size:12px;border-bottom:1px solid var(--line-soft)}.logline:last-child{border-bottom:0}.logline .lwhen{color:var(--ink-3);font-family:var(--mono);white-space:nowrap}.logline .lkind{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logline .llat{color:var(--ink-3);text-align:right;white-space:nowrap;font-family:var(--mono)}.logline.bad .ltext{color:var(--danger)}.logempty{padding:12px 2px;color:var(--ink-3);font-size:13px}.livetag{display:inline-flex;align-items:center;gap:6px;color:var(--ink-3);font-size:12px}.livetag i{width:6px;height:6px;border-radius:50%;background:var(--ok)}.formgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.field{margin-bottom:14px}.field label{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-2);margin-bottom:4px}.field .req{color:var(--danger)}.field .desc{color:var(--ink-3);font-size:12px;margin-top:5px}.field input[type=number],.field input[type=password],.field input[type=text],.field select,.field textarea{width:100%;background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:0 9px;height:32px;font-size:13px;font-family:var(--mono);outline:none}.field textarea{height:auto;padding:8px 9px;line-height:1.5;resize:vertical}.field select,.field textarea{font-family:var(--font)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink)}.field input::placeholder,.field textarea::placeholder{color:var(--ink-3)}.unit{position:relative}.unit span{position:absolute;right:9px;top:8px;font:12px var(--mono);color:var(--ink-3);pointer-events:none}.switchrow{display:flex;align-items:center;gap:12px;padding:10px 0}.switch{width:34px;height:20px;border-radius:9999px;background:#DCDFE4;border:0;position:relative;flex:none;transition:background var(--t)}.switch:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:2px;left:2px;transition:transform var(--t)}.switchrow input.switchinput{position:absolute;opacity:0;width:0;height:0}.switchrow input.switchinput:checked+.switch{background:var(--ink)}.switchrow input.switchinput:checked+.switch:after{transform:translateX(14px)}.switchrow input.switchinput:focus-visible+.switch{outline:2px solid var(--focus);outline-offset:2px}.switchrow .stxt b{display:block;font-size:13px;font-weight:500}.switchrow .stxt small{color:var(--ink-2);font-size:12px}.tip{position:relative;display:inline-flex;outline:none}.tip .q{width:15px;height:15px;border-radius:50%;border:1px solid var(--line);color:var(--ink-3);font-size:10px;display:grid;place-items:center;cursor:help}.tip:focus-visible .q,.tip:hover .q{border-color:var(--ink-3);color:var(--ink)}.bubble{position:fixed;z-index:80;width:230px;box-sizing:border-box;background:var(--rail);color:#F3F4F6;border-radius:5px;padding:8px 10px;font-size:12px;line-height:1.45;box-shadow:0 10px 26px rgba(15,17,21,.22);pointer-events:none}.pagehead{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:11px 14px;background:var(--surface);border:1px solid var(--line);border-radius:5px}.pagehead .pico{width:32px;height:32px;border-radius:4px;background:var(--elevated);color:var(--ink-2);display:grid;place-items:center;flex:none}.pagehead .ptext{flex:1 1;min-width:0}.pagehead .ptext b{font-size:13px;font-weight:600}.pagehead .ptext p{margin:2px 0 0;color:var(--ink-2);font-size:12px}.pagehead .btn{flex:none}.bubble.floating{position:fixed;background:#1B1E23;border:0;color:#fff;font-size:12px;font-weight:400;line-height:1.45;padding:8px 10px;border-radius:5px;width:240px;pointer-events:none;z-index:200;box-shadow:0 6px 20px rgba(16,18,22,.24)}.formmsg{border-radius:4px;padding:9px 12px;font-size:13px;margin-bottom:12px;display:flex;align-items:center;gap:8px;border:1px solid}.formmsg svg{width:15px;height:15px}.formmsg.err{background:var(--danger-dim);color:var(--danger);border-color:#E3C9C6}.formmsg.ok{background:var(--ok-dim);color:var(--ok);border-color:#C6DBCF}.empty{padding:46px 20px;text-align:center;color:var(--ink-2)}.empty .eico{width:34px;height:34px;color:var(--ink-3);display:grid;place-items:center;margin:0 auto 10px}.empty .eico svg{width:22px;height:22px}.empty b{display:block;color:var(--ink);font-size:14px;margin-bottom:4px}.empty p{margin:0 auto 12px;max-width:46ch;font-size:13px;line-height:1.5}.audit{display:flex;flex-direction:column}.arow{display:grid;grid-template-columns:150px 1fr;grid-gap:14px;gap:14px;padding:10px 4px;border-bottom:1px solid var(--line-soft)}.arow .when{color:var(--ink-3);font:12px var(--mono)}.arow .what b{font-weight:600}.arow .who2{color:var(--ink-3);font-size:12px;margin-top:2px}.modal-back{position:fixed;inset:0;background:rgba(16,18,22,.42);display:none;align-items:flex-start;justify-content:center;z-index:50;padding:40px 16px;overflow-y:auto}.modal-back.open{display:flex}.modal{background:var(--surface);border:1px solid var(--line);border-radius:6px;width:100%;max-width:460px;padding:20px;box-shadow:0 16px 48px rgba(16,18,22,.18)}.modal h2{margin:0 0 16px;font-size:16px;font-weight:600}.modal .chk{display:flex;align-items:flex-start;gap:10px;padding:10px 0 4px}.modal .chk .box{width:17px;height:17px;border:1px solid var(--line);border-radius:3px;flex:none;margin-top:1px}.modal .chk .box.on{background:var(--ink);border-color:var(--ink);display:grid;place-items:center;color:#fff}.modal .chk b{font-size:13px;font-weight:500}.modal .chk small{color:var(--ink-2);font-size:12px;display:block;overflow-wrap:anywhere}.modal .add{width:100%;margin-top:16px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:4px;height:34px;font-weight:500;font-size:13px}.modal .add:hover{background:#23262B}.modal .add:disabled{opacity:.55}.modal .x{float:right;width:28px;height:28px;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--ink-2);display:grid;place-items:center;margin:-4px -4px 0 0}.modal .x:hover{background:#F5F6F8;border-color:var(--line);color:var(--ink)}.extactions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.extactions .btn{height:36px;justify-content:center;white-space:nowrap}.extkey{margin-bottom:14px;padding:12px;background:var(--elevated);border:1px solid var(--line);border-radius:5px}.extkey-head{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-2)}.extkey-head svg{color:var(--ink-3)}.extkey-once{margin-left:auto;font:11px var(--mono);color:var(--warn);background:var(--warn-dim);border-radius:3px;padding:1px 6px}.extkey-row{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 8px 8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:4px}.extkey-value{flex:1 1;min-width:0;font:600 17px/1.3 var(--mono);letter-spacing:.1em;color:var(--ink);overflow-wrap:anywhere;-webkit-user-select:all;-moz-user-select:all;user-select:all}.extkey-copy{flex:none}.extkey-copy.done{color:var(--ok);border-color:#C6DBCF;background:var(--ok-dim)}.extkey-note{margin-top:8px;font-size:12px;line-height:1.45;color:var(--ink-3)}@media (max-width:440px){.extactions{grid-template-columns:1fr}}.drawer-back{position:fixed;inset:0;background:rgba(16,18,22,.42);display:none;z-index:60}.drawer-back.open{display:block}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(880px,100vw);background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(16,18,22,.14)}.dhead{padding:12px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.dhead .acct .nm{font-size:15px;font-weight:600}.dhead .acct .av{width:36px;height:36px;border-radius:4px;font-size:14px}.dhead .acct .av .vf{width:15px;height:15px}.dhead .acct .av .vf svg{width:12px;height:12px}.dhead .right{margin-left:auto;display:flex;align-items:center;gap:8px}.dbody{padding:16px 18px 20px;overflow-y:auto;flex:1 1}.dfoot{border-top:1px solid var(--line);padding:11px 18px;display:flex;align-items:center;gap:10px;background:#FBFBFC}.dfoot .hint{margin-right:auto;color:var(--ink-3);font-size:12px}.tabs{display:flex;gap:2px;padding:0 12px;border-bottom:1px solid var(--line);background:#FBFBFC}.tab{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--ink-2);font-size:13px;padding:9px 11px;margin-bottom:-1px;display:inline-flex;align-items:center;gap:6px;transition:color var(--t)}.tab svg{width:14px;height:14px;color:var(--ink-3)}.tab.on,.tab:hover{color:var(--ink)}.tab.on{font-weight:500;border-bottom-color:var(--ink)}.tab.on svg{color:var(--ink)}.summary{display:flex;border:1px solid var(--line);border-radius:5px;margin-bottom:18px;background:#FBFBFC}.summary>div{padding:9px 13px;border-right:1px solid var(--line-soft);flex:1 1;min-width:0}.summary>div:last-child{border-right:0}.summary .k{font-size:12px;color:var(--ink-3)}.summary .v{font:14px var(--mono);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section{margin-bottom:22px}.blockhead{font-size:13px;font-weight:600;margin:0 0 2px}.subnote{color:var(--ink-2);font-size:12px;margin-bottom:10px;max-width:64ch}.gridtwo{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.note{border-left:2px solid var(--ink);padding:7px 0 7px 11px;color:var(--ink-2);font-size:12px}.minipanel{border:1px solid var(--line);border-radius:5px;margin-bottom:18px}.minipanel .h{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line-soft);font-size:12px;color:var(--ink-2)}.minipanel .h b{color:var(--ink);font-weight:600;font-size:13px}.minipanel .h svg{width:14px;height:14px;color:var(--ink-3)}.minipanel .h .hint{margin-left:auto;color:var(--ink-3)}.minipanel .c{padding:12px}.hours{display:flex;align-items:flex-end;gap:2px;height:64px}.hours i{flex:1 1;background:#CACED5;border-radius:1px 1px 0 0}.hours i.hi{background:#3A3F47}.stack{display:flex;height:10px;border-radius:3px;overflow:hidden;background:var(--line-soft)}.stack i{display:block;height:100%}.stack .a{background:#2C3138}.stack .b{background:#8A9099}.stack .c{background:#DCDFE4}.stacklegend{display:flex;gap:16px;margin-top:8px;font-size:12px;color:var(--ink-2);flex-wrap:wrap}.stacklegend span{display:inline-flex;align-items:center;gap:6px}.stacklegend i{width:8px;height:8px;border-radius:2px;display:block}.bundles{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:16px}.bundlecard{position:relative;display:block;border:1px solid var(--line);border-radius:5px;padding:10px 12px 10px 34px;cursor:pointer;transition:border-color var(--t)}.bundlecard:hover{border-color:#C3C8CF}.bundlecard input{position:absolute;left:12px;top:13px;width:14px;height:14px;accent-color:var(--ink)}.bundlecard b{display:block;font-size:13px;font-weight:500}.bundlecard small{display:block;color:var(--ink-2);font-size:12px;margin-top:3px;line-height:1.45}.bundlecard:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.bundlecard.off{opacity:.5;cursor:default}.bundlecard .soon{position:absolute;top:9px;right:11px;font:11px var(--mono);color:var(--ink-3)}.checkline{display:inline-flex;align-items:center;gap:7px;padding:6px 18px 6px 0;font-size:13px;cursor:pointer}.checkline input{width:15px;height:15px;accent-color:var(--ink)}.checkrow{display:flex;flex-wrap:wrap}.formatrow{display:flex;flex-direction:column;margin-bottom:10px}.flag{font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:0 7px;height:20px;border-radius:3px;color:var(--danger);background:var(--danger-dim);border:1px solid #e9c8c5;vertical-align:middle}.confirmrow,.flag{display:inline-flex;align-items:center}.confirmrow{gap:6px}.confirmrow .tiny{font-size:12px;color:var(--danger)}.ghost{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:4px;height:32px;font-size:13px;font-weight:500}.ghost:hover{background:var(--hover);border-color:#C3C8CF}.ghost:disabled{opacity:.55}.ghost.wide{width:100%}.tmpllist{border:1px solid var(--line);border-radius:5px;max-height:340px;overflow-y:auto}.tmpl{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line-soft)}.tmpl:last-child{border-bottom:0}.tmpl .t{flex:1 1;min-width:0;font-size:13px}.tmpl .t .body{white-space:pre-wrap;word-break:break-word;line-height:1.5}.tmpl .t .body.clamped{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tmpl .t .more{margin-top:3px;padding:0;border:0;background:none;color:var(--ink-3);font-size:12px}.tmpl .t .more:hover{color:var(--ink);text-decoration:underline}.tmpl.paused .t{color:var(--ink-3)}.tmpl.editing{align-items:flex-start}.tmpl.editing .dot{margin-top:6px}.tmpl .e{flex:1 1;min-width:0}.tmpl .efoot{gap:8px;margin-top:8px}.tmpl .b,.tmpl .efoot{display:flex;align-items:center}.tmpl .b{gap:4px;flex:none}.tmpl .n{font:12px var(--mono);color:var(--ink-3);white-space:nowrap}.usebar{width:84px;height:4px;background:var(--line-soft);border-radius:2px;overflow:hidden;flex:none}.usebar i{display:block;height:100%;background:#3A3F47}.tmpl.paused .usebar i{background:#B9BEC6}.tmpl .dot{width:6px;height:6px;border-radius:50%;background:var(--ok);flex:none}.tmpl.paused .dot{background:var(--idle)}.growfield textarea{display:block;width:100%;box-sizing:border-box;background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:8px 9px;font:13px/1.5 var(--font);resize:none;outline:none;overflow-y:auto}.growfield textarea:focus{border-color:var(--ink)}.growfield textarea::placeholder{color:var(--ink-3)}.growfield textarea:disabled{color:var(--ink-3)}.addtext{margin-top:12px}.addtext .foot{display:flex;align-items:center;gap:10px;margin-top:8px}.addtext .formmsg{margin:10px 0 0}.chord{font:11px var(--mono);border:1px solid var(--line);border-radius:3px;padding:2px 5px}.chord,.hint{color:var(--ink-3)}.hint{margin-left:auto;font:12px var(--mono)}.hint.over{color:var(--danger)}.tmpl .efoot .hint{margin-left:4px}.gifs{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:10px;gap:10px}.gif{border:1px solid var(--line);border-radius:5px;overflow:hidden;position:relative;background:var(--surface)}.gif .im{height:84px;background:repeating-conic-gradient(#EDEFF2 0 25%,#F7F8F9 0 50%) 50% /14px 14px}.gif img{width:100%;height:84px;object-fit:cover;display:block}.gif .m{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 8px;border-top:1px solid var(--line-soft);font:11px var(--mono);color:var(--ink-3)}.gif .del{margin-left:auto;width:24px;height:24px;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--ink-2);display:grid;place-items:center}.gif .del svg{width:14px;height:14px}.gif .del:hover{background:var(--danger-dim);border-color:#E3C9C6;color:var(--danger)}.gif.add{border-style:dashed}.gif.add button{width:100%;height:84px;border:0;background:none;color:var(--ink-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:12px}.gif.add button svg{width:18px;height:18px}.gif.add button:hover{background:var(--hover);color:var(--ink)}.health{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-left-width:2px;border-radius:5px;padding:11px 14px;margin-bottom:16px}.health.ok{border-left-color:var(--ok);background:var(--ok-dim)}.health.warn{border-left-color:var(--warn);background:var(--warn-dim)}.health.bad{border-left-color:var(--danger);background:var(--danger-dim)}.health .dot{width:7px;height:7px;border-radius:50%;flex:none;margin-top:6px}.health.ok .dot{background:var(--ok)}.health.warn .dot{background:var(--warn)}.health.bad .dot{background:var(--danger)}.healthtext{flex:1 1;min-width:0}.healthtext b{display:block;font-size:13px;font-weight:600}.healthtext small{display:block;color:var(--ink-2);font-size:12px;margin-top:3px}.healthtags{display:flex;align-items:center;gap:8px;flex:none}.facts{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 22px;gap:0 22px;margin-bottom:6px}.fact{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:5px 0;font-size:13px;border-bottom:1px solid var(--line-soft)}.fact>span{color:var(--ink-2);flex:none}.fact>b{font-weight:400;font-family:var(--mono);font-size:12px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fact>b svg{vertical-align:-2px;margin-left:5px;color:var(--ink-3)}.cardactions{gap:8px;margin:14px 0 4px}.cardactions,.opener{display:flex;align-items:center}.opener{gap:9px;width:100%;border:0;border-top:1px solid var(--line-soft);background:transparent;color:var(--ink);font-size:13px;font-weight:500;padding:12px 2px;margin-top:8px}.opener svg{width:15px;height:15px;color:var(--ink-3)}.opener:hover{color:var(--ink)}.opener svg:last-child{margin-left:auto;transition:transform var(--t)}.opener.on svg:last-child{transform:rotate(180deg)}.accessform{padding:0 2px 6px}.accessform .desc{color:var(--ink-2);font-size:12px;margin-bottom:12px}.accessform .add{margin-top:6px}.cardblock{border:1px solid var(--line);border-radius:5px;padding:12px 14px;margin-bottom:16px}.cardrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px}.cardrow span,.role{color:var(--ink-2)}.role{display:inline-flex;align-items:center;gap:6px;font-size:12px}.role svg{width:12px;height:12px;color:var(--data)}.memberav{width:26px;height:26px;border-radius:3px;display:grid;place-items:center;color:#fff;font-weight:600;font-size:12px;flex:none;background:#8A9099}.dotsep,.foot-brand{color:var(--ink-3)}.foot-brand{text-align:center;font-size:12px;padding:18px}.foot-brand a{color:var(--ink-2)}.avatarimg{width:100%;height:100%;border-radius:3px;object-fit:cover}.linkbtn{background:none;border:0;color:var(--ink-2);font-size:12px;padding:0;text-decoration:underline;text-underline-offset:2px}.linkbtn:hover{color:var(--ink)}.rowform{display:inline}.syncwarn{display:inline-flex;align-items:center;gap:4px;font:11px var(--mono);color:var(--warn)}.selectinline{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:3px 8px;font-size:12px;font-family:inherit}.search.inline{margin-left:auto}.failtext{color:var(--danger)}.btnrow{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.modal.wide{max-width:640px}.loginwrap{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--paper)}.loginbox{width:100%;max-width:340px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:24px}.loginbox .brand{justify-content:center;padding:0 0 14px}.loginbox .wordmark{color:var(--ink)}.loginbox h1{font-size:17px;font-weight:600;margin:0 0 4px;text-align:center}.loginbox .sub{color:var(--ink-2);font-size:12px;text-align:center;margin-bottom:20px}.loginbox .add{width:100%;margin-top:8px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:4px;height:34px;font-weight:500;font-size:13px}.loginbox .add:hover{background:#23262B}.loginbox .add:disabled{opacity:.55}.acards,.topout{display:none}@media (max-width:1100px){.tiles{grid-template-columns:repeat(3,1fr)}.tile{border-bottom:1px solid var(--line-soft)}.grid2,.grid2.even,.grid2.side{grid-template-columns:minmax(0,1fr)}.gifs{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.app{grid-template-columns:minmax(0,1fr)}.rail{position:fixed;inset:auto 0 0 0;width:100%;height:auto;flex-direction:row;align-items:center;border-top:1px solid #22252c;padding:4px 6px calc(4px + env(safe-area-inset-bottom));z-index:30}.rail .brand,.rail-copy,.rail-foot{display:none}.nav{flex-direction:row;width:100%;gap:0;padding:0}.navlink{flex:1 1;min-width:0}.nav button{flex-direction:column;gap:3px;padding:7px 2px}.nav button span{display:block;font-size:10.5px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.nav .navtext{align-items:center;max-width:100%}.nav .badge,.nav .navtext small{display:none}.main{padding-bottom:calc(62px + env(safe-area-inset-bottom))}.topout{display:block}.topbar{flex-wrap:wrap;height:auto;min-height:52px;padding:9px 12px;gap:8px}.search{order:5;flex:1 0 100%;min-width:0}.search.inline{margin-left:0}.screen{padding:12px}.tiles{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap;padding:8px}.toolbar .chips{max-width:100%;overflow-x:auto;scrollbar-width:none}.toolbar .chips::-webkit-scrollbar{display:none}.gifs{grid-template-columns:repeat(2,1fr)}.facts,.formgrid,.gridtwo{grid-template-columns:1fr}.rank{grid-template-columns:96px 1fr 46px}.heatgrid{grid-template-columns:28px repeat(24,1fr);gap:2px}.heatgrid i{height:10px}.wide-only{display:none}.acard,.acards{display:flex;flex-direction:column}.acard{gap:10px;padding:12px;border-bottom:1px solid var(--line-soft)}.acard:last-child{border-bottom:0}.acard.open{background:#F7F8FA}.acard-top{display:flex;align-items:flex-start;gap:10px}.acard-top .acct{flex:1 1;min-width:0}.acard-btns{display:flex;gap:4px;flex:none}.acard-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.acard-nums{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;background:#FAFBFC;border:1px solid var(--line-soft);border-radius:4px;padding:10px 12px}.acard-k{display:block;font-size:11px;color:var(--ink-3);margin-bottom:4px}.lastact .what{max-width:none;white-space:normal}.logline{grid-template-columns:auto auto 1fr;gap:3px 10px;padding:8px 11px}.logline .lwhen{grid-area:1/1}.logline .lkind{grid-area:1/2}.logline .llat{grid-area:1/3}.logline .ltext{grid-area:2/1/3/4}.hide-sm{display:none}.audittable,.audittable tbody,.audittable td:not(.hide-sm),.audittable tr{display:block}.audittable thead{display:none}.audittable tr{padding:11px 12px;border-bottom:1px solid var(--line-soft)}.audittable td{border:0;padding:2px 0;height:auto}.audittable td:nth-child(-n+3):not(.hide-sm){display:inline-block;margin-right:9px;vertical-align:middle}.drawer{width:100vw}.dbody{padding:14px}.modal-back{padding:10px 10px calc(10px + env(safe-area-inset-bottom))}.modal,.modal.wide{max-width:none}}@media (max-width:380px){.acard-nums,.tiles{grid-template-columns:1fr}.acard-nums{gap:8px}}