:root{color-scheme:dark;--ink:#e8edf2;--muted:#8793a1;--line:#27313c;--panel:#121a22;--panel2:#17212b;--bg:#0b1117;--acid:#b9f36b;--cyan:#78d9d1;--danger:#ff8a82}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{border:1px solid var(--acid);background:var(--acid);color:#0b1117;border-radius:4px;padding:9px 14px;font-weight:700;cursor:pointer;transition:.18s ease}button:hover{transform:translateY(-1px);filter:brightness(1.08)}button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}button.ghost:hover{border-color:var(--cyan);color:var(--cyan)}input,select,textarea{background:#0d151d;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:10px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #78d9d11f}.hidden{display:none!important}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 15%,#1c363c 0,#0b1117 44%)}.login-card{width:min(500px,100%);padding:44px;border:1px solid var(--line);background:#111b24e8;box-shadow:0 24px 80px #0008}.login-card h1{font:600 clamp(32px,5vw,56px)/.98 Georgia,serif;letter-spacing:-.04em;margin:14px 0 18px}.login-card p{color:var(--muted);max-width:390px;margin-bottom:28px}.login-card input{width:100%;margin-bottom:12px}.error-text{color:var(--danger);min-height:24px;margin-top:10px}.console{min-height:100vh;display:flex}.sidebar{width:240px;flex:none;border-right:1px solid var(--line);padding:28px 18px;display:flex;flex-direction:column;background:#0d151d}.brand{display:flex;gap:12px;align-items:center;margin:0 10px 52px}.brand-mark{display:grid;place-items:center;width:32px;height:32px;background:var(--acid);color:#0b1117;font-size:22px;font-weight:800}.brand strong{display:block;font-size:15px;letter-spacing:.16em}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.nav-label,.eyebrow{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.nav-label{margin:0 10px 10px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:0;color:var(--muted);padding:12px 10px;font-weight:500}.nav-item span{font-size:10px;color:#536170}.nav-item.active{background:#192630;color:var(--ink);border-left:2px solid var(--acid)}.nav-item.active span{color:var(--acid)}.sidebar-foot{margin-top:auto;color:#5d6a77;font-size:11px;padding:10px}.workspace{flex:1;min-width:0;padding:32px clamp(20px,4vw,60px);max-width:1500px}.topbar,.section-head,.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.topbar{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}.topbar h2{font:600 38px/1.1 Georgia,serif;letter-spacing:-.03em;margin:6px 0 0}.top-actions,.button-row,.toolbar,.provider-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notice{color:var(--cyan);font-size:12px}.page{display:none}.page.active{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.metric{background:var(--panel);border:1px solid var(--line);padding:20px;min-height:118px}.metric .value{font-size:30px;letter-spacing:-.04em;margin:8px 0}.metric .label{color:var(--muted);font-size:12px}.split-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);padding:24px}.panel h3,.section-head h3{margin:4px 0 18px;font:600 24px Georgia,serif}.accent-panel{background:linear-gradient(135deg,#1b302d,#14221f);border-color:#466851}.accent-panel p{color:#b6c5bd;max-width:480px}.policy-line{color:var(--acid);font-weight:700;margin-top:24px}.live-dot{color:var(--acid);font-size:10px;letter-spacing:.12em}.health-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.health-row:last-child{border:0}.state-ok{color:var(--acid)}.state-bad{color:var(--danger)}.section-head{align-items:center;margin-bottom:24px}.toolbar,.provider-toolbar{margin-bottom:14px}.toolbar input{min-width:min(420px,100%)}.provider-toolbar input{flex:1}.provider-toolbar select{min-width:180px}.table-wrap{overflow:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;min-width:760px;background:var(--panel)}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}td{font-size:13px}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:#23342b;color:var(--acid);font-size:11px}.badge.revoked,.badge.expired{background:#372522;color:var(--danger)}.empty{border:1px dashed var(--line);padding:28px;text-align:center;color:var(--muted)}.editor-shell{border:1px solid var(--line);background:#0d151d;overflow:hidden}.CodeMirror{height:520px;font:13px/1.55 "SFMono-Regular",Consolas,monospace;background:#0d151d;color:#dce6ee}.CodeMirror-gutters{background:#101a23;border-color:var(--line)}#editorIssues{display:grid;gap:6px;margin-top:10px}.issue{border-left:3px solid var(--danger);background:#2b1c1d;color:#ffb4ad;padding:7px 10px;font-size:12px}.issue.clean{border-left-color:var(--acid);background:#172a22;color:#b9f36b}.console-output{white-space:pre-wrap;background:#091016;border:1px solid var(--line);padding:14px;min-height:80px;color:#b7d3e5;overflow:auto}.console-output.tall{min-height:420px}.test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.test-grid label{color:var(--muted);font-size:12px}.test-grid input,.test-grid select{display:block;width:100%;margin-top:6px}.small{width:100%;min-height:100px;margin:14px 0;resize:vertical}.billing-note{margin-top:16px}.modal{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:20px;z-index:20}.modal-card{position:relative;width:min(560px,100%);background:var(--panel2);border:1px solid var(--line);padding:28px;box-shadow:0 20px 80px #0009}.modal-close{position:absolute;right:10px;top:8px;background:transparent;border:0;color:var(--muted);font-size:24px;padding:2px 8px}.secret{font:14px monospace;word-break:break-all;background:#091016;border:1px solid #466851;padding:14px;color:var(--acid)}kbd{border:1px solid var(--line);padding:1px 5px;color:var(--muted);font-size:10px}@media(max-width:800px){.console{display:block}.sidebar{width:100%;border-right:0;border-bottom:1px solid var(--line);padding:14px}.brand{margin:0 0 12px}.nav-label,.sidebar-foot{display:none}#nav{display:flex;overflow:auto}.nav-item{white-space:nowrap;width:auto}.workspace{padding:24px 16px}.metric-grid{grid-template-columns:repeat(2,1fr)}.split-grid,.test-grid{grid-template-columns:1fr}.topbar{align-items:flex-end}.top-actions{flex-wrap:wrap}}
:root{color-scheme:dark;--ink:#e8edf2;--muted:#8793a1;--line:#27313c;--panel:#121a22;--panel2:#17212b;--bg:#0b1117;--acid:#b9f36b;--cyan:#78d9d1;--danger:#ff8a82}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{border:1px solid var(--acid);background:var(--acid);color:#0b1117;border-radius:4px;padding:9px 14px;font-weight:700;cursor:pointer;transition:.18s ease}button:hover{transform:translateY(-1px);filter:brightness(1.08)}button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}button.ghost:hover{border-color:var(--cyan);color:var(--cyan)}input,select,textarea{background:#0d151d;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:10px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #78d9d11f}.hidden{display:none!important}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 15%,#1c363c 0,#0b1117 44%)}.login-card{width:min(500px,100%);padding:44px;border:1px solid var(--line);background:#111b24e8;box-shadow:0 24px 80px #0008}.login-card h1{font:600 clamp(32px,5vw,56px)/.98 Georgia,serif;letter-spacing:-.04em;margin:14px 0 18px}.login-card p{color:var(--muted);max-width:390px;margin-bottom:28px}.login-card input{width:100%;margin-bottom:12px}.error-text{color:var(--danger);min-height:24px;margin-top:10px}.console{min-height:100vh;display:flex}.sidebar{width:240px;flex:none;border-right:1px solid var(--line);padding:28px 18px;display:flex;flex-direction:column;background:#0d151d}.brand{display:flex;gap:12px;align-items:center;margin:0 10px 52px}.brand-mark{display:grid;place-items:center;width:32px;height:32px;background:var(--acid);color:#0b1117;font-size:22px;font-weight:800}.brand strong{display:block;font-size:15px;letter-spacing:.16em}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.nav-label,.eyebrow{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.nav-label{margin:0 10px 10px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:0;color:var(--muted);padding:12px 10px;font-weight:500}.nav-item span{font-size:10px;color:#536170}.nav-item.active{background:#192630;color:var(--ink);border-left:2px solid var(--acid)}.nav-item.active span{color:var(--acid)}.sidebar-foot{margin-top:auto;color:#5d6a77;font-size:11px;padding:10px}.workspace{flex:1;min-width:0;padding:32px clamp(20px,4vw,60px);max-width:1500px}.topbar,.section-head,.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.topbar{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}.topbar h2{font:600 38px/1.1 Georgia,serif;letter-spacing:-.03em;margin:6px 0 0}.top-actions,.button-row,.toolbar,.provider-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notice{color:var(--cyan);font-size:12px}.page{display:none}.page.active{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.metric{background:var(--panel);border:1px solid var(--line);padding:20px;min-height:118px}.metric .value{font-size:30px;letter-spacing:-.04em;margin:8px 0}.metric .label{color:var(--muted);font-size:12px}.split-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);padding:24px}.panel h3,.section-head h3{margin:4px 0 18px;font:600 24px Georgia,serif}.accent-panel{background:linear-gradient(135deg,#1b302d,#14221f);border-color:#466851}.accent-panel p{color:#b6c5bd;max-width:480px}.policy-line{color:var(--acid);font-weight:700;margin-top:24px}.live-dot{color:var(--acid);font-size:10px;letter-spacing:.12em}.health-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.health-row:last-child{border:0}.state-ok{color:var(--acid)}.state-bad{color:var(--danger)}.section-head{align-items:center;margin-bottom:24px}.toolbar,.provider-toolbar{margin-bottom:14px}.toolbar input{min-width:min(420px,100%)}.provider-toolbar input{flex:1}.provider-toolbar select{min-width:180px}.table-wrap{overflow:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;min-width:760px;background:var(--panel)}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}td{font-size:13px}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:#23342b;color:var(--acid);font-size:11px}.badge.revoked,.badge.expired{background:#372522;color:var(--danger)}.empty{border:1px dashed var(--line);padding:28px;text-align:center;color:var(--muted)}.editor-shell{border:1px solid var(--line);background:#0d151d;overflow:hidden}.CodeMirror{height:520px;font:13px/1.55 "SFMono-Regular",Consolas,monospace;background:#0d151d;color:#dce6ee}.CodeMirror-gutters{background:#101a23;border-color:var(--line)}#editorIssues{display:grid;gap:6px;margin-top:10px}.issue{border-left:3px solid var(--danger);background:#2b1c1d;color:#ffb4ad;padding:7px 10px;font-size:12px}.issue.clean{border-left-color:var(--acid);background:#172a22;color:#b9f36b}.console-output{white-space:pre-wrap;background:#091016;border:1px solid var(--line);padding:14px;min-height:80px;color:#b7d3e5;overflow:auto}.console-output.tall{min-height:420px}.test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.test-grid label{color:var(--muted);font-size:12px}.test-grid input,.test-grid select{display:block;width:100%;margin-top:6px}.small{width:100%;min-height:100px;margin:14px 0;resize:vertical}.billing-note{margin-top:16px}.modal{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:20px;z-index:20}.modal-card{position:relative;width:min(560px,100%);background:var(--panel2);border:1px solid var(--line);padding:28px;box-shadow:0 20px 80px #0009}.modal-close{position:absolute;right:10px;top:8px;background:transparent;border:0;color:var(--muted);font-size:24px;padding:2px 8px}.secret{font:14px monospace;word-break:break-all;background:#091016;border:1px solid #466851;padding:14px;color:var(--acid)}kbd{border:1px solid var(--line);padding:1px 5px;color:var(--muted);font-size:10px}@media(max-width:800px){.console{display:block}.sidebar{width:100%;border-right:0;border-bottom:1px solid var(--line);padding:14px}.brand{margin:0 0 12px}.nav-label,.sidebar-foot{display:none}#nav{display:flex;overflow:auto}.nav-item{white-space:nowrap;width:auto}.workspace{padding:24px 16px}.metric-grid{grid-template-columns:repeat(2,1fr)}.split-grid,.test-grid{grid-template-columns:1fr}.topbar{align-items:flex-end}.top-actions{flex-wrap:wrap}}

/* Modal forms use a strict field grid: labels never share a baseline with controls. */
.modal-card h3{margin:6px 0 24px;font:600 28px/1.1 Georgia,serif;letter-spacing:-.03em}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin:0 0 24px}.modal-card label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.modal-card label input{width:100%;min-width:0}.modal-card .muted{font-weight:400;font-size:11px}.modal-actions{display:flex;justify-content:flex-end;padding-top:4px;border-top:1px solid var(--line)}.modal-actions button{min-width:132px}@media(max-width:620px){.form-grid{grid-template-columns:1fr}.modal-card{padding:24px 20px}}
.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.model-card{border:1px solid var(--line);background:var(--panel);padding:18px;min-height:150px;display:flex;flex-direction:column;gap:7px}.model-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.model-card h3{margin:0;font-size:16px;overflow-wrap:anywhere}.model-card p,.model-card small{margin:0;color:var(--muted)}.model-card strong{font-size:13px;line-height:1.5}@media(max-width:980px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.model-grid{grid-template-columns:1fr}}
/* Light Chinese console theme */
:root{color-scheme:light;--ink:#24313d;--muted:#657483;--line:#d7e0e7;--panel:#fff;--panel2:#f7fafc;--bg:#f3f6f8;--acid:#176b63;--cyan:#167a88;--danger:#b64242}body{background:var(--bg);color:var(--ink)}button{background:#176b63;color:#fff;border-color:#176b63}button.ghost{background:#fff;color:var(--ink);border-color:var(--line)}input,select,textarea{background:#fff;color:var(--ink);border-color:var(--line)}.login-screen{background:linear-gradient(135deg,#f3f6f8,#e6f1f0)}.login-card{background:#fff;border-color:var(--line);box-shadow:0 20px 60px #25404a1c}.login-card h1,.topbar h2,.panel h3,.section-head h3{font-family:ui-sans-serif,system-ui,sans-serif;letter-spacing:-.02em}.sidebar{background:#fff;border-color:var(--line)}.brand strong{letter-spacing:0;font-size:17px}.nav-item.active{background:#e6f3f1;color:var(--ink)}.metric,.panel,table{background:#fff;border-color:var(--line)}.accent-panel{background:#e8f4f1;border-color:#b9d9d3}.accent-panel p{color:#48645f}.table-wrap,.editor-shell{border-color:var(--line)}th,td{border-color:var(--line)}.badge{background:#e0f2ed;color:#176b63}.badge.revoked,.badge.expired{background:#fbe8e8;color:#b64242}.editor-shell,.CodeMirror{background:#fbfcfd;color:#263746}.CodeMirror-gutters{background:#f0f4f6;border-color:var(--line)}.console-output{background:#f6f9fb;border-color:var(--line);color:#365568}.issue{background:#fbe8e8;color:#9b3c3c}.issue.clean{background:#e0f2ed;color:#176b63}.modal{background:#16303a66}.modal-card{background:#fff;border-color:var(--line);box-shadow:0 20px 70px #25404a26}.secret{background:#f3f8f7;border-color:#b9d9d3;color:#176b63}
.modal-card{max-height:calc(100vh - 40px);overflow:auto}.model-mapping{margin-top:auto;padding-top:8px;border-top:1px solid var(--line);overflow-wrap:anywhere}.model-picker-field{border:1px solid var(--line);margin:0 0 24px;padding:14px}.model-picker-field legend{padding:0 6px;font-size:12px;font-weight:700}.model-picker-toolbar{display:grid;grid-template-columns:minmax(160px,1fr) auto auto auto;gap:8px;align-items:center;margin-bottom:10px}.model-picker-toolbar input{min-width:0}.model-picker-count{color:var(--muted);font-size:12px;white-space:nowrap}.model-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;max-height:300px;overflow:auto;border:1px solid var(--line);background:var(--line)}.modal-card label.model-picker-option{display:flex;flex-direction:row;align-items:flex-start;gap:9px;min-width:0;padding:10px;background:#fff;color:var(--ink);cursor:pointer}.model-picker-option input{width:16px;min-width:16px;height:16px;margin:2px 0 0}.model-picker-option span{display:grid;min-width:0}.model-picker-option strong,.model-picker-option small{overflow-wrap:anywhere}.model-picker-option small{color:var(--muted);font-weight:400}@media(max-width:620px){.model-picker-toolbar{grid-template-columns:1fr auto auto}.model-picker-toolbar input{grid-column:1/-1}.model-picker{grid-template-columns:1fr}}
.unrestricted-note{margin:0 0 18px;color:var(--muted);font-size:12px}
