@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-latin-var.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/jetbrains-mono-latin-var.woff2) format("woff2")}:root{--bg: #0b0c0e;--panel: #101114;--panel2: #131418;--line: #202227;--line2: #1a1c20;--ink: #f2f3f5;--ink2: #9ea3ac;--ink3: #646973;--ink4: #474b53;--accent: #ff7a33;--good: #46c98a;--bad: #ef6258;--warn: #e7b34a;--sans: "Inter", ui-sans-serif, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}.mono{font-family:var(--mono)}.console{height:100vh;display:grid;grid-template-columns:216px 1fr;grid-template-rows:52px 1fr;grid-template-areas:"brand top" "side main"}.brand{grid-area:brand;display:flex;align-items:center;gap:9px;padding:0 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.brand .m{width:24px;height:24px;border-radius:6px;border:1px solid var(--line);display:grid;place-items:center;color:var(--accent);font-size:13px}.brand b{font-weight:700;font-size:14px;letter-spacing:.02em}.brand .ed{font-size:9px;letter-spacing:.18em;color:#160c04;font-weight:800;background:var(--accent);border-radius:3px;padding:2px 5px}.top{grid-area:top;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--line)}.top .env{font-size:11px;color:var(--warn);border:1px solid var(--line);border-radius:999px;padding:4px 10px}.top .sp{flex:1}.top .who{display:flex;align-items:center;gap:9px}.top .who .av{width:30px;height:30px;border-radius:50%;background:var(--panel2);border:1px solid var(--line);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--accent)}.top .who b{font-size:12.5px;display:block;line-height:1.15}.top .who span{font-size:11px;color:var(--ink3)}.top .logout{font-size:11.5px;font-weight:600;color:var(--ink2);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:7px 11px;cursor:pointer}.top .logout:hover{color:var(--ink)}.side{grid-area:side;border-right:1px solid var(--line);padding:14px 10px;display:flex;flex-direction:column;gap:2px}.side h4{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink3);font-weight:600;padding:4px 10px 10px}.snav{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:var(--ink2);font-size:13px;font-weight:600;cursor:pointer}.snav .ic{width:16px;text-align:center;color:var(--ink4)}.snav.on{background:#ff7a331a;color:var(--accent)}.snav.on .ic{color:var(--accent)}.main{grid-area:main;overflow:auto;padding:22px 26px}.head{display:flex;align-items:flex-end;gap:14px;margin-bottom:18px}.head h1{font-size:21px;font-weight:800;letter-spacing:-.01em}.head .subh{color:var(--ink3);font-size:13px;padding-bottom:2px}.head .sp{flex:1}.soon{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:22px 24px;display:flex;flex-direction:column;gap:6px;color:var(--ink3)}.soon b{color:var(--ink2);font-size:14px}.soon span{font-size:12.5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:9px;font-weight:700;font-size:13px;border:1px solid var(--line);background:var(--panel);color:var(--ink2);cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:#160c04}.btn:disabled{opacity:.45;cursor:not-allowed}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.kpi{border:1px solid var(--line);border-radius:12px;padding:13px 16px;background:var(--panel)}.kpi .k{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);font-weight:600}.kpi .v{font-size:22px;font-weight:800;margin-top:5px}.kpi .v small{font-size:12px;color:var(--ink3);font-weight:600}.kpi .v.g{color:var(--good)}.kpi .v.w{color:var(--warn)}.panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:600;padding:10px 16px;border-bottom:1px solid var(--line2)}td{padding:12px 16px;border-top:1px solid var(--line2);font-size:13px;vertical-align:middle}td .nm{font-weight:700;font-size:13.5px}td .sub{color:var(--ink3);font-size:11.5px;font-family:var(--mono);margin-top:2px}.lic{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;border-radius:999px;padding:5px 11px}.lic .dot{width:6px;height:6px;border-radius:50%}.lic.full{color:var(--good);background:#46c98a1a}.lic.full .dot{background:var(--good)}.lic.trial{color:var(--warn);background:#e7b34a1a}.lic.trial .dot{background:var(--warn)}.lic.exp{color:var(--bad);background:#ef62581a}.lic.exp .dot{background:var(--bad)}.lic.none{color:var(--ink3);background:var(--panel2)}.lic.none .dot{background:var(--ink4)}.sync{font-family:var(--mono);font-size:12px;color:var(--ink2)}.sync.bad{color:var(--bad)}.rowact{color:var(--accent);font-weight:700;font-size:12.5px;white-space:nowrap}.muted{color:var(--ink3)}.tstate{padding:22px 18px;color:var(--ink3);font-size:12.5px}.tstate.bad{color:var(--bad)}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login .card{width:360px;border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:26px 24px;display:flex;flex-direction:column;gap:12px;box-shadow:0 30px 80px #00000080}.login .card .brand{border:0;padding:0;margin-bottom:6px}.login .card h1{font-size:18px;font-weight:800}.login .card .sub{color:var(--ink3);font-size:12.5px;margin-top:-6px;margin-bottom:4px}.login label{display:flex;flex-direction:column;gap:5px}.login label span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);font-weight:600}.login .in{border:1px solid var(--line);border-radius:8px;background:var(--panel2);padding:10px 12px;font-size:13px;color:var(--ink);font-family:var(--sans)}.login .in.mono{font-family:var(--mono)}.login .in:focus{outline:none;border-color:#ff7a338c}.login .err{color:var(--bad);font-size:12.5px}.login .btn{margin-top:6px}.catwrap{display:grid;grid-template-columns:1fr 344px;gap:16px;align-items:start}.catsec{margin-bottom:16px}.catsec>h4{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink3);font-weight:600;margin:0 0 7px 2px}.provtag{display:inline-block;font-size:11px;font-weight:600;border-radius:999px;padding:3px 9px;color:var(--ink2);background:var(--panel2);border:1px solid var(--line)}.provtag.prov{color:var(--warn);border-color:#e7b34a66;background:#e7b34a14}.catform{padding:16px;position:sticky;top:0}.catformhead{font-size:13px;font-weight:700;margin-bottom:12px;color:var(--ink)}.catform label{display:block;margin-bottom:10px}.catform label>span{display:block;font-size:11px;color:var(--ink2);margin-bottom:4px}.catform .in{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--ink);border-radius:7px;padding:8px 10px;font-family:var(--sans);font-size:13px}.catform .in.mono{font-family:var(--mono)}.catform textarea.in{resize:vertical;min-height:76px}.catform .in:focus{outline:none;border-color:#ff7a338c}.catform label.chk{display:flex;align-items:center;gap:8px}.catform label.chk>span{margin:0;color:var(--ink);font-size:13px}.catform .ferr{color:var(--bad);font-size:12px;margin:6px 0}.catform .fact{display:flex;gap:8px;margin-top:12px}.kpis.has-ca{grid-template-columns:repeat(4,1fr)}.linkact{border:0;background:none;padding:0;cursor:pointer;color:var(--accent);font-weight:700;font-size:12.5px;font-family:var(--sans);white-space:nowrap}.linkact:hover{text-decoration:underline}.drawerwrap{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;justify-content:flex-end;z-index:40}.drawer{width:420px;max-width:92vw;height:100vh;overflow:auto;background:var(--panel);border-left:1px solid var(--line);padding:18px 20px 40px;box-shadow:-30px 0 80px #00000080}.drawerhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line2)}.dclose{border:1px solid var(--line);background:var(--panel2);color:var(--ink2);border-radius:8px;width:30px;height:30px;font-size:18px;line-height:1;cursor:pointer}.dclose:hover{color:var(--ink)}.dsec{padding:15px 0;border-bottom:1px solid var(--line2)}.dsec>h4{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:600;margin-bottom:10px}.drow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 0;font-size:12.5px}.drow>span{color:var(--ink3)}.dfield{display:block;margin-bottom:10px}.dfield>span{display:block;font-size:11px;color:var(--ink2);margin-bottom:4px}.dfield .in{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--ink);border-radius:7px;padding:8px 10px;font-size:13px}.dfield .in:focus{outline:none;border-color:#ff7a338c}.dbtn{width:100%;margin-top:4px}.drenew{margin-top:10px}.dnote{color:var(--ink3);font-size:12px;line-height:1.5}.derr{color:var(--bad);font-size:12px}.dhist{display:flex;flex-direction:column;gap:2px}.devent{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:12.5px;border-top:1px solid var(--line2)}.devent:first-child{border-top:0}.devent .det{font-weight:600;color:var(--ink)}.devent .ded{color:var(--ink3);font-size:11.5px}.wizard{display:grid;grid-template-columns:1fr 380px;gap:18px;min-height:520px;align-items:start}.steps{display:flex;flex-direction:column;gap:12px}.step{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:16px 18px}.step .st{display:flex;align-items:center;gap:10px;margin-bottom:10px}.step .n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;background:var(--panel2);border:1px solid var(--line);color:var(--ink3)}.step.done .n{background:#46c98a26;border-color:#46c98a66;color:var(--good)}.step.cur .n{background:#ff7a3326;border-color:#ff7a3380;color:var(--accent)}.step .st b{font-size:14px}.step .st .ok{margin-left:auto;color:var(--good);font-size:12px;font-weight:700}.fieldrow{display:flex;gap:10px;margin-top:8px}.field{flex:1;min-width:0}.field label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);font-weight:600;margin-bottom:5px}.field .in{display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--panel2);padding:9px 12px;font-size:13px;color:var(--ink);font-family:var(--sans)}select.in{-webkit-appearance:none;-moz-appearance:none;appearance:none}.field .in.mono{font-family:var(--mono)}.field input.in:focus,.field select.in:focus{outline:none;border-color:#ff7a338c}.linkbtn{border:0;background:none;color:var(--accent);font-weight:700;font-size:12px;cursor:pointer;padding:0}.gab{display:flex;gap:10px}.gabopt{flex:1;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--panel2);text-align:left;cursor:pointer;color:var(--ink);font-family:var(--sans)}.gabopt.on{border-color:#ff7a338c;background:#ff7a3312}.gabopt b{font-size:13px;display:block}.gabopt span{font-size:11.5px;color:var(--ink3);display:block;margin-top:3px}.recap{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:18px;display:flex;flex-direction:column;min-height:520px}.recap h3{font-size:13px;font-weight:700;margin-bottom:12px}.recap .line{display:flex;justify-content:space-between;font-size:12.5px;padding:7px 0;border-bottom:1px solid var(--line2)}.recap .line span{color:var(--ink3)}.recap .line b{font-family:var(--mono);font-weight:600}.recap .warn{margin-top:12px;font-size:12px;color:var(--warn);border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--panel2)}.recap .sp{flex:1}.recap .cta{margin-top:14px;text-align:center;padding:14px;border-radius:11px;background:var(--accent);border:1px solid var(--accent);color:#160c04;font-weight:800;font-size:15px;cursor:pointer}.recap .cta:disabled{opacity:.45;cursor:not-allowed}.recap .hint{text-align:center;color:var(--ink3);font-size:11px;margin-top:8px}.benchnote{border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--warn);font-size:12.5px;padding:10px 14px;margin-bottom:14px}.benchnote b{color:var(--ink)}.benchnote.bad{color:var(--bad)}.benchdirty{font-size:11px;color:var(--warn);border:1px solid var(--line);border-radius:999px;padding:4px 10px;margin-right:4px}.bench{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}.bricklist{padding:6px;max-height:72vh;overflow:auto}.bricklisthead{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:600;padding:8px 10px}.brickrow{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;color:var(--ink2);padding:8px 10px;border-radius:8px;cursor:pointer;font-family:var(--sans)}.brickrow:hover{background:var(--panel2)}.brickrow.on{background:#ff7a331a;color:var(--accent)}.brickrow .bid{font-size:12.5px;font-weight:700;min-width:52px}.brickrow .bstatus{margin-left:auto;font-size:9.5px;letter-spacing:.08em;color:var(--ink3);font-weight:600}.calibdot{width:8px;height:8px;border-radius:50%;flex:none}.calibdot[data-s=ok]{background:var(--good)}.calibdot[data-s=bad]{background:var(--bad)}.calibdot[data-s=na]{background:var(--ink4)}.benchmain{display:flex;flex-direction:column;gap:16px}.editor,.refpanel{padding:16px 18px}.benchsub{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--ink2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.coefgrid+.benchsub,.modlist+.benchsub{margin-top:16px}.coefgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.benchfield{display:flex;flex-direction:column;gap:5px}.benchfield span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);font-weight:600}.benchin{border:1px solid var(--line);border-radius:8px;background:var(--panel2);padding:9px 12px;font-size:13px;color:var(--ink);font-family:var(--sans)}select.benchin{-webkit-appearance:none;-moz-appearance:none;appearance:none}.benchin:focus{outline:none;border-color:#ff7a338c}.benchmuted{color:var(--ink3);font-size:12.5px;padding:6px 0}.modlist{display:flex;flex-direction:column;gap:8px}.modrow{display:flex;align-items:center;gap:12px}.modrow .modname{font-size:12.5px;font-weight:700;min-width:90px}.modrow .modslot{font-size:11px;color:var(--ink3);border:1px solid var(--line);border-radius:999px;padding:3px 9px}.modfac{margin-left:auto;width:120px;text-align:right;border:1px solid var(--line);border-radius:8px;background:var(--panel2);padding:8px 10px;font-size:12.5px;color:var(--ink)}.modfac:focus{outline:none;border-color:#ff7a338c}.refpill{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.1em;border-radius:999px;padding:3px 9px}.refpill.ok{color:var(--good);background:#46c98a1f}.refpill.bad{color:var(--bad);background:#ef62581f}.reftable{width:100%;border-collapse:collapse}.reftable th{text-align:left;font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line2)}.reftable td{padding:9px 10px;border-top:1px solid var(--line2);font-size:12.5px}.reftable td.g{color:var(--good)}.reftable td.b{color:var(--bad)}
