:root{--ink-980:#08080a;--ink-950:#0b0b0e;--ink-920:#101013;--ink-880:#16161a;--ink-840:#1b1b20;--ink-800:#212128;--ink-750:#292931;--ink-700:#34343e;--line:#ffffff13;--line-soft:#ffffff0b;--line-strong:#ffffff21;--tx-1:#f3f3f5;--tx-2:#9c9ca6;--tx-3:#65656f;--tx-on-red:#fff7f7;--red-800:#8f0f1c;--red-700:#be1626;--red-600:#e01d2f;--red-500:#f34;--red-400:#ff5d6a;--red-300:#ff8a93;--red-rgb:255,51,68;--ok:#38d68a;--ok-rgb:56,214,138;--warn:#f5b13d;--warn-rgb:245,177,61;--info:#5b9dff;--info-rgb:91,157,255;--violet:#a98bff;--violet-rgb:169,139,255;--du:1;--s1:calc(4px * var(--du));--s2:calc(8px * var(--du));--s3:calc(12px * var(--du));--s4:calc(16px * var(--du));--s5:calc(20px * var(--du));--s6:calc(24px * var(--du));--s8:calc(32px * var(--du));--s10:calc(40px * var(--du));--screen-max:1680px;--rm:1;--r-xs:calc(4px * var(--rm));--r-sm:calc(7px * var(--rm));--r-md:calc(11px * var(--rm));--r-lg:calc(16px * var(--rm));--r-xl:calc(22px * var(--rm));--r-pill:999px;--f-body:"IBM Plex Sans", system-ui, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, monospace;--f-display:"Archivo", var(--f-body);--display-spacing:-.02em;--display-weight:800;--glow-strength:0;--texture-opacity:.5;--shadow-card:0 1px 0 #ffffff05, 0 8px 24px -16px #000c;--ring:0 0 0 1px var(--line)}:root[data-direction=a]{--f-display:"Archivo", var(--f-body);--display-spacing:-.025em;--display-weight:800;--glow-strength:.05;--texture-opacity:.55;--rm:.62}:root[data-direction=b]{--f-display:"Chakra Petch", var(--f-body);--display-spacing:.01em;--display-weight:700;--glow-strength:.2;--texture-opacity:.85;--rm:1.5}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--ink-980);color:var(--tx-1);font-family:var(--f-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.5}::selection{background:rgba(var(--red-rgb), .35);color:#fff}.mono,.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}h1,h2,h3,h4{font-family:var(--f-display);letter-spacing:var(--display-spacing);font-weight:var(--display-weight);margin:0;line-height:1.05}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--ink-750);background-clip:content-box;border:3px solid #0000;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--ink-700);background-clip:content-box}.app-bg:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(60% 50% at 78% -5%, rgba(var(--red-rgb), var(--glow-strength)) 0%, transparent 60%), radial-gradient(50% 45% at 8% 108%, rgba(var(--red-rgb), calc(var(--glow-strength) * .55)) 0%, transparent 60%);position:fixed;inset:0}button{color:inherit}.btn{align-items:center;gap:var(--s2);font-family:var(--f-body);padding:var(--s2) var(--s4);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;letter-spacing:.01em;border:1px solid #0000;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,transform 60ms,box-shadow .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn svg{width:15px;height:15px}.btn-primary{background:var(--red-600);color:var(--tx-on-red);box-shadow:0 0 0 0 rgba(var(--red-rgb),0), 0 8px 22px -10px rgba(var(--red-rgb),.7)}.btn-primary:hover{background:var(--red-500);box-shadow:0 0 22px -4px rgba(var(--red-rgb),.55)}.btn-ghost{color:var(--tx-1);border-color:var(--line-strong);background:0 0}.btn-ghost:hover{background:var(--ink-840);border-color:var(--tx-3)}.btn-subtle{background:var(--ink-800);color:var(--tx-1)}.btn-subtle:hover{background:var(--ink-750)}.btn-icon{padding:var(--s2);justify-content:center;width:32px;height:32px}.btn-sm{padding:var(--s1) var(--s3);font-size:12px}.badge{letter-spacing:.02em;border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:3px 9px;font-size:11.5px;font-weight:600;line-height:1.4;display:inline-flex}.badge .dot{background:currentColor;border-radius:99px;width:6px;height:6px}.badge-red{color:var(--red-300);background:rgba(var(--red-rgb),.12);border-color:rgba(var(--red-rgb),.25)}.badge-ok{color:var(--ok);background:rgba(var(--ok-rgb),.12);border-color:rgba(var(--ok-rgb),.22)}.badge-warn{color:var(--warn);background:rgba(var(--warn-rgb),.12);border-color:rgba(var(--warn-rgb),.22)}.badge-info{color:var(--info);background:rgba(var(--info-rgb),.12);border-color:rgba(var(--info-rgb),.22)}.badge-violet{color:var(--violet);background:rgba(var(--violet-rgb),.12);border-color:rgba(var(--violet-rgb),.22)}.badge-mute{color:var(--tx-2);background:var(--ink-800);border-color:var(--line)}.card{background:var(--ink-880);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow-card);border-top-color:#ffffff1a;position:relative}.panel{background:linear-gradient(180deg, var(--ink-880), var(--ink-920));border:1px solid var(--line);border-radius:var(--r-lg);border-top-color:#ffffff1a;position:relative;box-shadow:inset 0 1px #ffffff0f,0 10px 26px -20px #000000d9}.card:after,.panel:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent, rgba(var(--red-rgb),.6), transparent);opacity:0;height:1px;transition:opacity .2s;position:absolute;top:0;left:14%;right:14%}.card:hover:after,.panel:hover:after{opacity:1}.hairline{background:var(--line);border:0;height:1px}@keyframes skeleton-pulse{0%,to{opacity:.5}50%{opacity:.85}}.skeleton{background:var(--ink-840);border-radius:var(--r-sm);animation:1.2s ease-in-out infinite skeleton-pulse}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}.field{flex-direction:column;gap:6px;display:flex}.field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--tx-3);font-size:11px;font-weight:600}.input,.select{background:var(--ink-920);color:var(--tx-1);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:var(--s2) var(--s3);font-size:13.5px;font-family:var(--f-body);width:100%;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--tx-3)}.input,.select,textarea.input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.input:focus,.select:focus{border-color:var(--red-500);box-shadow:0 0 0 3px rgba(var(--red-rgb),.18);outline:none}.input-mono{font-family:var(--f-mono)}.overlay{z-index:50;padding:var(--s6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050507a8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--ink-920);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:0 40px 100px -30px #000000e6, 0 0 0 1px rgba(var(--red-rgb),.06);flex-direction:column;width:100%;max-height:88vh;animation:.24s cubic-bezier(.2,.8,.2,1) modalIn;display:flex;overflow:hidden}@keyframes modalIn{0%{transform:translateY(14px)scale(.985)}to{transform:none}}.modal-body{padding:var(--s6);overflow-y:auto}.modal-foot{align-items:center;gap:var(--s3);padding:var(--s4) var(--s6);border-top:1px solid var(--line);background:var(--ink-950);justify-content:flex-end;display:flex}.req{color:var(--red-400)}.ph-title{font-size:22px}.toolbar{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.searchbox{background:var(--ink-920);border:1px solid var(--line-strong);border-radius:var(--r-sm);height:36px;color:var(--tx-3);align-items:center;gap:8px;min-width:240px;padding:0 12px;transition:border-color .15s;display:inline-flex}.searchbox:focus-within{border-color:var(--red-500);box-shadow:0 0 0 3px rgba(var(--red-rgb),.16)}.searchbox input{color:var(--tx-1);font-family:var(--f-body);background:0 0;border:0;outline:none;flex:1;font-size:13.5px}.searchbox input::placeholder{color:var(--tx-3)}.fsel{background:var(--ink-920);border:1px solid var(--line-strong);border-radius:var(--r-sm);height:36px;color:var(--tx-2);align-items:center;gap:7px;padding:0 30px 0 11px;transition:border-color .15s;display:inline-flex;position:relative}.fsel:hover{border-color:var(--tx-3);color:var(--tx-1)}.fsel.on{border-color:rgba(var(--red-rgb),.4);color:var(--tx-1);background:rgba(var(--red-rgb),.07)}.fsel select{appearance:none;color:inherit;font-family:var(--f-body);cursor:pointer;background:0 0;border:0;outline:none;height:100%;padding:0;font-size:13px;font-weight:500}.fsel .chev{pointer-events:none;color:var(--tx-3);position:absolute;right:9px}.iconbtn36{background:var(--ink-920);border:1px solid var(--line-strong);border-radius:var(--r-sm);width:36px;height:36px;color:var(--tx-2);cursor:pointer;flex:none;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:inline-flex}.iconbtn36:hover{border-color:var(--tx-3);color:var(--tx-1)}.btn-warn{background:var(--warn);color:#241900}.btn-warn:hover{background:color-mix(in srgb, var(--warn) 88%, #fff)}.vt button{justify-content:center;align-items:center;padding:6px 9px;display:inline-flex}.tabs{border-bottom:1px solid var(--line);gap:0;display:flex;overflow-x:auto}.tab{margin-right:var(--s5);font-family:var(--f-body);white-space:nowrap;color:var(--tx-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:11px 0;font-size:13.5px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.tab:hover{color:var(--tx-1)}.tab.active{color:var(--tx-1);border-bottom-color:var(--red-500)}.stage-chip{color:var(--tx-2);background:var(--ink-840);border:1px solid var(--line);border-radius:var(--r-xs);align-items:center;gap:6px;padding:4px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.topbar{align-items:center;gap:var(--s4);min-height:72px;padding:0 var(--s6);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--ink-950) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;flex:none;display:flex;position:relative}.topbar-title{font-family:var(--f-display);font-weight:var(--display-weight);letter-spacing:var(--display-spacing);font-size:25px;line-height:1}.filterbar{align-items:center;gap:var(--s2);padding:var(--s3) var(--s6);border-bottom:1px solid var(--line);background:var(--ink-950);z-index:2;flex-wrap:wrap;display:flex;position:relative}.filterbar .grow-sep{flex:1}.fpill{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--ink-920);height:36px;color:var(--tx-2);font-family:var(--f-body);cursor:pointer;white-space:nowrap;align-items:center;gap:7px;padding:0 11px;font-size:13px;transition:border-color .14s,color .14s,background .14s;display:inline-flex;position:relative}.fpill:hover{border-color:var(--tx-3);color:var(--tx-1)}.fpill b{color:var(--tx-1);font-weight:600}.fpill.on{background:rgba(var(--red-rgb),.1);border-color:rgba(var(--red-rgb),.42);color:var(--red-300)}.fpill.on b{color:var(--red-300)}.fpill .x{color:var(--red-300);border-radius:4px;margin:0 -3px 0 1px;padding:2px;display:inline-flex}.fpill .x:hover{background:rgba(var(--red-rgb),.22)}.fmenu{z-index:40;background:var(--ink-880);border:1px solid var(--line-strong);border-radius:var(--r-md);min-width:190px;max-height:300px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 22px 54px -18px #000000eb}.fitem{border-radius:var(--r-xs);color:var(--tx-1);cursor:pointer;align-items:center;gap:9px;padding:8px 10px;font-size:13px;display:flex}.fitem:hover{background:var(--ink-800)}.fitem.sel{background:rgba(var(--red-rgb),.1);color:var(--red-300);font-weight:600}.fclear{font-family:var(--f-body);color:var(--tx-3);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0 6px;font-size:12.5px;font-weight:500}.fclear:hover{color:var(--red-300)}.fcount{color:var(--tx-2);white-space:nowrap;font-size:12.5px}.fcount b{color:var(--tx-1);font-weight:700;font-family:var(--f-mono)}.drawer-overlay{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0505079e;display:flex;position:fixed;inset:0}.drawer-overlay.center{padding:var(--s6);justify-content:center;align-items:center}.drawer{background:var(--ink-920);border-left:1px solid var(--line-strong);flex-direction:column;width:552px;max-width:96vw;height:100%;margin-left:auto;animation:.26s cubic-bezier(.2,.8,.2,1) drawerIn;display:flex;box-shadow:-34px 0 90px -34px #000000eb}@keyframes drawerIn{0%{transform:translate(34px)}to{transform:none}}.drawer.center{border:1px solid var(--line-strong);border-radius:var(--r-lg);width:820px;height:auto;max-height:90vh;margin:0;animation:.24s cubic-bezier(.2,.8,.2,1) modalIn;box-shadow:0 40px 100px -30px #000000e6}.drawer-body{padding:var(--s5) var(--s6);flex:1;overflow-y:auto}.choice{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--ink-920);color:var(--tx-2);font-family:var(--f-body);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:10px;font-size:13px;font-weight:600;transition:all .14s;display:flex}.choice:hover{border-color:var(--tx-3);color:var(--tx-1)}.choice.on{background:rgba(var(--red-rgb),.14);border-color:rgba(var(--red-rgb),.45);color:var(--red-300)}.choice.on-ok{background:rgba(var(--ok-rgb),.16);border-color:rgba(var(--ok-rgb),.5);color:var(--ok)}.bant-btn{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--ink-920);width:38px;height:38px;color:var(--tx-2);font-family:var(--f-mono);cursor:pointer;justify-content:center;align-items:center;font-weight:600;transition:all .14s;display:inline-flex}.bant-btn:hover{border-color:var(--tx-3);color:var(--tx-1)}.bant-btn.on{background:var(--violet);color:#1a1320;border-color:#0000}.switch{background:var(--ink-750);border:1px solid var(--line-strong);cursor:pointer;border-radius:99px;flex:none;width:38px;height:22px;transition:background .18s;position:relative}.switch:after{content:"";background:var(--tx-2);border-radius:99px;width:16px;height:16px;transition:transform .18s,background .18s;position:absolute;top:2px;left:2px}.switch.on{background:rgba(var(--red-rgb),.9);border-color:#0000}.switch.on:after{background:#fff;transform:translate(16px)}.chip{border-radius:var(--r-xs);background:var(--ink-800);border:1px solid var(--line);color:var(--tx-1);white-space:nowrap;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:500;display:inline-flex}.chip-red{background:rgba(var(--red-rgb),.1);border-color:rgba(var(--red-rgb),.22);color:var(--red-300)}.seg{background:var(--ink-950);border:1px solid var(--line);border-radius:var(--r-sm);gap:2px;padding:3px;display:inline-flex}.seg button{font-family:var(--f-body);color:var(--tx-2);border-radius:calc(var(--r-sm) - 3px);cursor:pointer;letter-spacing:.01em;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:6px 13px;font-size:12.5px;font-weight:600;transition:color .18s,background .18s,box-shadow .18s;display:inline-flex;position:relative}.seg button.active{color:var(--tx-on-red);background:var(--red-600);box-shadow:0 6px 16px -8px rgba(var(--red-rgb),.85)}.seg button:hover:not(.active){color:var(--tx-1);background:#ffffff08}.stat-value{font-family:var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:600}.delta{font-family:var(--f-mono);align-items:center;gap:3px;font-size:12px;font-weight:600;display:inline-flex}.delta.up{color:var(--ok)}.delta.down{color:var(--red-400)}.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl thead th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--tx-3);padding:var(--s2) var(--s4);border-bottom:1px solid var(--line);white-space:nowrap;font-size:10.5px;font-weight:700}.tbl tbody td{padding:var(--s3) var(--s4);border-bottom:1px solid var(--line-soft);color:var(--tx-1);vertical-align:middle}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:#ffffff05}.tbl .td-num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums}.tbl-right{text-align:right}.avatar{background:var(--ink-750);font-family:var(--f-body);color:var(--tx-1);border:1px solid var(--line-strong);border-radius:99px;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.kcard{background:var(--ink-840);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3);cursor:grab;transition:border-color .15s,transform .1s,box-shadow .15s}.kcard:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 12px 30px -18px #000000e6}.kcard.dragging{border-color:rgba(var(--red-rgb),.5);box-shadow:0 0 0 1px rgba(var(--red-rgb),.4), 0 24px 50px -20px #000000f2;cursor:grabbing;transform:rotate(-1.2deg)scale(1.02)}.bar{background:var(--ink-800);border-radius:99px;height:5px;overflow:hidden}.bar>i{background:var(--red-500);border-radius:99px;height:100%;display:block}.seg-bar{gap:3px;display:flex}.seg-bar>i{background:var(--ink-750);border-radius:2px;flex:1;height:6px}.seg-bar>i.on{background:var(--red-500)}.trace{stroke:rgba(var(--red-rgb), .5);fill:none}.trace-dim{stroke:var(--line-strong);fill:none}.eyebrow{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--tx-3);font-size:11px;font-weight:600}.muted{color:var(--tx-2)}.faint{color:var(--tx-3)}.red{color:var(--red-400)}.row{align-items:center;display:flex}.col{flex-direction:column;display:flex}.gap1{gap:var(--s1)}.gap2{gap:var(--s2)}.gap3{gap:var(--s3)}.gap4{gap:var(--s4)}.gap6{gap:var(--s6)}.grow{flex:1}.screen{width:100%;max-width:var(--screen-max);margin-inline:auto}.divider-v{background:var(--line);align-self:stretch;width:1px}.pagination-bar .pg-compact{display:none}@media (max-width:640px){.pagination-bar .pg-nums{display:none!important}.pagination-bar .pg-compact{display:inline!important}}@keyframes fadeUp{0%{transform:translateY(8px)}to{transform:none}}.fade-in{animation:.3s fadeUp}:root[data-mono=on]{--ok:#c2c2cb;--ok-rgb:194,194,203;--warn:#9a9aa4;--warn-rgb:154,154,164;--info:#d6d6dd;--info-rgb:214,214,221;--violet:#82828c;--violet-rgb:130,130,140}:root[data-mono=on] .avatar{filter:grayscale(.7)}
