:root{--bg:#f5f7fa;--surface:#fff;--surface-2:#eef1f5;--text:#0a0f1a;--text-muted:#5a6472;--border:#d8dde5;--border-strong:#9aa4b2;--brand-bright:#1d4ed8;--brand-soft:#dbeafe;--accent-dark:#d97706;--danger:#b91c1c;--danger-soft:#fee2e2;--on-danger:#fff;--success:#047857;--success-soft:#dcfce7;--warn:#b45309;--warn-soft:#fef3c7;--hero-from:#1e3a8a;--hero-to:#2563eb;--hero-muted:#bcd3f5;--radius:14px;--radius-card:22px;--radius-modal:26px;--control-height:44px;--shadow-modal:0 30px 100px -22px #0c1b4266, 0 2px 8px #0c1b4210;--shadow:0 10px 30px #0f172a1a;--shadow-float:0 12px 32px #0206172e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root,:root[data-theme=dark]{--brand:#2563eb;--brand-dark:#1d4ed8;--on-brand:#fff;--accent:#f59e0b;--accent-text:#2a1d00;--hero-text:#f0f6ff}:root[data-theme=dark]{--shadow-modal:0 30px 100px -15px #000b;--bg:#000;--surface:#141414;--surface-2:#1e1e1e;--text:#ededed;--text-muted:#a1a1aa;--border:#282828;--border-strong:#3f3f46;--brand-bright:#3b82f6;--brand-soft:#0a152b;--accent-dark:#e0a52a;--danger:#f87171;--danger-soft:#3b1d1d;--on-danger:#2a0a0a;--success:#22c55e;--success-soft:#0f2a1a;--warn:#fbbf24;--warn-soft:#3a2c0b;--hero-from:#000;--hero-to:#0a1a33;--hero-muted:#9db8e0;--shadow:0 10px 30px #00000080;--shadow-float:0 12px 32px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Kanit,system-ui,-apple-system,Segoe UI,sans-serif;font-weight:400;transition:background-color .2s,color .2s}button,input,select{font:inherit;color:inherit}a{color:var(--brand-bright);text-decoration:none}:focus-visible{outline:2px solid var(--brand-bright);outline-offset:2px}.skip{z-index:100;background:var(--surface);color:var(--brand-bright);box-shadow:var(--shadow-float);border-radius:10px;padding:10px 16px;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.btn{min-height:var(--control-height);border-radius:var(--radius);cursor:pointer;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;line-height:1.4;transition:transform .1s,filter .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.7;cursor:wait}.btn:hover{filter:brightness(1.05)}.btn-accent{color:var(--accent-text);background:linear-gradient(135deg,var(--accent),var(--accent-dark));box-shadow:0 8px 20px #f5c54259}.btn-primary{color:var(--on-brand);background:linear-gradient(135deg,var(--brand),var(--brand-dark));box-shadow:0 7px 18px -10px color-mix(in srgb,var(--brand) 70%,transparent),inset 0 1px 0 #ffffff24}.btn-ghost{color:var(--text);background:var(--surface);border-color:var(--border)}.btn-ghost:hover{background:var(--surface-2)}.field{align-content:start;gap:6px;min-width:0;display:grid}.field .label{color:var(--text-muted);font-size:12px;font-weight:500}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%;min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);outline:none;padding:10px 13px;font-size:13px;transition:border-color .15s,box-shadow .15s,background .15s}.field input::placeholder{color:var(--text-muted);opacity:.7;font-weight:400}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);background:var(--surface);box-shadow:0 0 0 3px var(--brand-soft)}.field [aria-invalid=true],.field input.invalid,.field select.invalid,.field textarea.invalid{border-color:var(--danger)}.field .err{color:var(--danger);font-size:12.5px}.field .hint{color:var(--text-muted);font-size:12.5px;font-weight:400}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:22px}.card-title{margin:0 0 12px;font-size:16px;font-weight:600}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table td,.table th{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:14px}.table th{color:var(--text-muted);letter-spacing:.02em;font-size:11px;font-weight:500}.table tbody tr:hover{background:var(--surface-2)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.badge{background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.badge.ok{background:var(--success-soft);color:var(--success)}.badge.brand{background:var(--brand-soft);color:var(--brand-bright)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.stat{gap:4px;display:grid}.stat-label{color:var(--text-muted);font-size:12.5px}.stat-value{font-variant-numeric:tabular-nums;font-size:26px;font-weight:600}.btn-sm{border-radius:11px;min-height:36px;padding:7px 13px;font-size:12px}.btn-danger{color:var(--on-danger);background:var(--danger)}.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.alert{border-radius:12px;margin:0;padding:10px 12px;font-size:14px}.alert-danger{background:var(--danger-soft);color:var(--danger)}.alert-ok{background:var(--success-soft);color:var(--success)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.grid-4{gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=900px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:minmax(0,1fr)}}.badge.warn{background:var(--warn-soft);color:var(--warn)}textarea{font:inherit;color:inherit}.bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.bar .grow{flex:1}.bar input,.bar select{border:1px solid var(--border);background:var(--surface);border-radius:11px;min-width:0;height:36px;padding:0 12px}.count{font-size:13.5px}.count,.empty{color:var(--text-muted)}.empty{text-align:center!important;padding:28px 12px!important}.pager{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;font-size:13.5px;display:flex}.tabs{background:var(--surface-2);border-radius:12px;gap:2px;padding:3px;display:inline-flex}.tabs button{height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 14px;font-size:13.5px}.tabs button.on{background:var(--surface);color:var(--text);font-weight:500;box-shadow:0 1px 3px #0000001f}.form{gap:16px;display:grid}.form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.form-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.kv{grid-template-columns:max-content minmax(0,1fr);gap:8px 18px;margin:0;font-size:14px;display:grid}.kv dt{color:var(--text-muted)}.kv dd{overflow-wrap:anywhere;margin:0}.muted{color:var(--text-muted)}.small{font-size:12.5px}.actions{flex-wrap:wrap;gap:6px;display:flex}.code{border:1px solid var(--border);white-space:pre;margin:0;padding:14px;line-height:1.55;overflow-x:auto}.code,.secret{background:var(--surface-2);border-radius:12px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:13px}.secret{overflow-wrap:anywhere;align-items:center;gap:8px;padding:10px 12px;display:flex}.secret span{flex:1;min-width:0}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.page-head h2{margin:0;font-size:16px;font-weight:600}.card,.table-wrap{min-width:0;max-width:100%}.app-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:2px 0 10px;display:flex}.app-page-heading .app-eyebrow{letter-spacing:.16em;color:var(--text-muted);margin:0 0 7px;font-size:10px;font-weight:500}.app-page-heading h2{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(24px,2.4vw,32px);font-weight:600;line-height:1.3}.page-heading-copy{min-width:0}.page-heading-actions{flex-wrap:wrap;gap:8px;display:flex}.page-description{color:var(--text-muted);margin:0;font-size:13px;line-height:1.7}.field textarea{resize:vertical;min-height:110px}input[type=checkbox],input[type=radio]{accent-color:var(--brand);vertical-align:middle;width:16px;height:16px}.form-actions{flex-wrap:wrap;padding-top:8px}.table th{background:color-mix(in srgb,var(--surface-2) 55%,var(--surface))}.table thead th:first-child{border-radius:10px 0 0 10px}.table thead th:last-child{border-radius:0 10px 10px 0}.table tbody tr:last-child td{border-bottom:0}.table-wrap:focus-visible{outline-offset:3px}.bar input:focus,.bar select:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}.tabs{scrollbar-width:thin;max-width:100%;overflow-x:auto}.tabs button{flex-shrink:0}.alert{border:1px solid color-mix(in srgb,currentcolor 12%,transparent);line-height:1.7}.form .hint{line-height:1.65}@media (width<=600px){.card{border-radius:18px;padding:17px}.btn,.btn-sm{min-height:44px}.bar input,.bar select,.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{font-size:16px}.form-row{grid-template-columns:minmax(0,1fr)}.bar .grow{flex-basis:100%}.pager{flex-wrap:wrap;font-size:12px}.grid-4{grid-template-columns:minmax(0,1fr)}.page-description{font-size:12px}}@media (prefers-reduced-motion:reduce){.btn,.field input,.field select,.field textarea{transition:none}}.shell{grid-template-columns:232px minmax(0,1fr);min-height:100dvh;display:grid}.side{background:var(--surface);border-right:1px solid var(--border);grid-template-rows:auto 1fr auto;gap:22px;height:100dvh;padding:24px 14px 16px;display:grid;position:sticky;top:0;overflow-y:auto}.brand{color:var(--text);flex-direction:column;align-items:flex-start;gap:7px;min-width:0;padding:0 10px;display:flex}.brand-context{overflow-wrap:anywhere;max-width:100%;padding-left:40px}.brand small{color:var(--text-muted);letter-spacing:.03em;font-size:10px;font-weight:400}.nav{align-content:start;gap:3px;display:grid}.nav-group{letter-spacing:.04em;margin:14px 0 4px;padding:0 12px;font-size:10px}.nav-group,.nav-item{color:var(--text-muted)}.nav-item{border-radius:12px;align-items:center;gap:10px;min-width:0;padding:11px 12px;font-size:13px;display:flex}.nav-item svg{opacity:.85;flex:none}.nav-item:hover{color:var(--text);background:var(--surface-2)}.nav-item.on{color:var(--brand-bright);background:var(--brand-soft);font-weight:500}.side-foot{border-top:1px solid var(--border);gap:12px;padding:16px 8px 0;display:grid}.who{overflow-wrap:anywhere;font-size:13px;display:grid}.who small{color:var(--text-muted);font-size:11px}.main{min-width:0}.top{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:12px;min-height:64px;padding:12px 28px;display:flex;position:sticky;top:0}.top h1{flex:1;min-width:0;margin:0;font-size:14px;font-weight:500}.top-btn{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:10px;padding:7px 12px;font-size:11px}.top-btn:hover{color:var(--text);background:var(--surface-2)}.top .tabs button{font-size:11px}.content{outline:none;max-width:1720px;margin-inline:auto;padding:28px}.content,.workspace-page{grid-template-columns:minmax(0,1fr);align-content:start;gap:22px;display:grid}.workspace-page{min-width:0}.workspace-page>p{margin-block:0}.workspace-page .grid-2,.workspace-page .grid-4{align-items:start;gap:22px}.workspace-account{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.workspace-account>.narrow{max-width:none}.section-heading{justify-content:space-between;gap:10px;margin:0 0 20px}.section-heading,.section-heading h3{flex-wrap:wrap;align-items:center;display:flex}.section-heading h3{gap:8px;margin:0;font-size:15px;font-weight:500}.section-heading p{color:var(--text-muted);margin:5px 0 0;font-size:12px;line-height:1.65}.section-count{color:var(--text-muted);background:var(--surface-2);font-variant-numeric:tabular-nums;border-radius:7px;padding:2px 7px;font-size:10px;font-weight:500;display:inline-flex}.form>.section-heading{border-bottom:1px solid var(--border);margin-bottom:2px;padding-bottom:16px}.card>.bar:not(.test){border-bottom:1px solid var(--border);gap:10px;margin-bottom:6px;padding-bottom:18px}.card .bar input,.card .bar select{height:40px;font-size:12px}.card .bar input[type=search]{background:var(--surface-2);border-color:#0000}.card .bar input[type=search]:focus{background:var(--surface);border-color:var(--brand)}.table th{border-bottom-color:var(--border);background:0 0;padding-block:13px}.table td{padding-block:17px}.empty{height:156px;font-size:13px;white-space:normal!important}.pager{border-top:1px solid var(--border);margin-top:6px;padding-top:16px;font-size:12px}.stat{gap:8px}.stat.card{padding:24px}.stat-value{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(24px,2.4vw,32px);line-height:1.25}.kv{row-gap:14px;font-size:13px}.breadcrumb{color:var(--text-muted);justify-self:start;font-size:12px}.breadcrumb:hover{color:var(--brand-bright)}.test-bar,.warn-bar{background:var(--warn-soft);color:var(--warn);margin:0;padding:10px 28px;font-size:12px;line-height:1.65}.warn-bar a{color:inherit;margin-left:4px;text-decoration:underline}.backdrop,.burger,.nav-close{display:none}@media (width<=1100px){.content{padding:22px}.workspace-account{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.side{z-index:30;visibility:hidden;width:260px;transition:transform .2s,visibility 0s .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.side.open{visibility:visible;transition:transform .2s;transform:none}.side{grid-template-rows:auto auto 1fr auto;gap:14px}.nav-close{justify-self:end;min-height:40px}.backdrop,.burger,.nav-close{display:block}.backdrop{z-index:20;background:#0006;position:fixed;inset:0}.top{flex-wrap:wrap;gap:8px;min-height:60px;padding:10px 16px}.top .tabs{margin-left:auto}.top h1{font-size:13px}.tabs button,.top-btn{min-height:40px}.content{gap:18px;padding:22px 16px}.workspace-page{gap:18px}.test-bar,.warn-bar{padding:10px 16px}}@media (width<=600px){.content{padding:20px 14px}.section-heading{margin-bottom:16px}.section-heading h3{font-size:14px}.stat.card{padding:20px}.card .bar input,.card .bar select{max-width:100%;min-height:44px;font-size:16px}.card .bar input[type=search]{width:100%}.bar .tabs{flex-shrink:1}.kv{grid-template-columns:minmax(0,1fr);gap:4px}.kv dd{margin-bottom:12px}.top .theme-toggle{margin-left:auto}}.auth-page{background:var(--bg);place-items:center;min-height:100dvh;padding:28px 18px;display:grid}.auth-page .room{display:none}.auth-card{border:1px solid var(--border);border-radius:var(--radius-modal);background:var(--surface);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);width:min(940px,100%);min-width:0;display:grid;overflow:hidden;box-shadow:0 24px 80px -50px #0c1b4250}.auth-page .cover{background:var(--surface-2);border-left:1px solid var(--border);flex-direction:column;grid-area:1/2;justify-content:center;align-items:flex-start;gap:18px;padding:50px 42px;display:flex}.auth-page .login-brand{--brand-logo-width:250px;margin-bottom:30px}.auth-page .cover__title{letter-spacing:-.025em;margin:0;font-size:clamp(28px,3vw,40px);font-weight:400;line-height:1.25}.auth-page .cover__title em{font-style:normal;font-weight:600}.auth-page .cover__copy{color:var(--text-muted);max-width:28ch;margin:0;font-size:13px;line-height:1.8}.auth-page .face{grid-area:1/1;min-width:0}.auth-page .face__inner{align-content:center;gap:22px;min-height:510px;padding:52px 42px;display:grid}.auth-page .face__head h1{letter-spacing:-.025em;margin:0 0 16px;font-size:28px;font-weight:600}.auth-page .face__rule{display:none}.auth-page .field{gap:8px}.auth-page .control{padding-top:25px;display:block;position:relative}.auth-page .control__label{color:var(--text-muted);font-size:12px;position:absolute;top:0;left:0}.auth-page .control input{background:var(--surface);border-radius:12px;width:100%;height:48px;padding:10px 44px 10px 40px;font-size:14px}.auth-page .control__icon{color:var(--text-muted);pointer-events:none;position:absolute;top:40px;left:14px}.auth-page .control__reveal{width:38px;height:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:30px;right:5px}.auth-page .control__reveal:hover{background:var(--surface-2)}.auth-page .control .code-input{text-align:center;letter-spacing:6px;font-variant-numeric:tabular-nums;font-size:20px}.auth-page .submit{background:var(--brand);height:48px;color:var(--on-brand);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:9px;font-size:14px;font-weight:500;display:flex}.auth-page .submit:disabled{opacity:.6;cursor:wait}.auth-page .back{color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;font-size:12px;display:inline-flex}.auth-page .foot,.auth-page .hint{color:var(--text-muted);margin:0;font-size:12px;line-height:1.7}.auth-page .caps{color:var(--warn);align-items:center;gap:6px;font-size:12px;display:flex}.auth-page .alert{background:var(--danger-soft);color:var(--danger);align-items:flex-start;gap:8px;font-size:12px;display:flex}.auth-page .alert svg{flex:none;margin-top:2px}@media (width<=700px){.auth-card{grid-template-columns:minmax(0,1fr);max-width:460px}.auth-page .cover{border-left:0;border-bottom:1px solid var(--border);grid-area:1/1;gap:0;padding:24px 26px}.auth-page .login-brand{--brand-logo-width:190px;margin:0}.auth-page .cover__copy,.auth-page .cover__title{display:none}.auth-page .face{grid-row:2}.auth-page .face__inner{gap:20px;min-height:0;padding:28px 26px}.auth-page .control input{font-size:16px}}@media (prefers-reduced-motion:reduce){.side,.side.open{transition:none}}.portal-split{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);align-items:start;gap:20px;display:grid}.portal-panel,.portal-stack{gap:20px;min-width:0;display:grid}.portal-panel .section-heading,.portal-panel>p{margin:0}.portal-note{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);overflow-wrap:anywhere;border-radius:14px;padding:16px 18px;font-size:13px;line-height:1.8}.portal-kicker{letter-spacing:.12em;color:var(--text-muted);margin:0;font-size:11px;font-weight:500}.portal-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.portal-metric{align-content:start;gap:8px;min-width:0;display:grid}.portal-metric>span{color:var(--text-muted);font-size:13px}.portal-metric>strong{letter-spacing:-.03em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:clamp(24px,2.5vw,34px);font-weight:500;line-height:1.25}.portal-metric small{color:var(--text-muted);font-size:12px;line-height:1.7}.portal-filter{background:var(--surface-2);border-radius:14px;flex-wrap:wrap;align-items:end;gap:12px;margin:18px 0;padding:16px;display:flex}.portal-filter .field{flex:180px}.portal-filter .field.search-field{flex:3 240px}.portal-filter .btn{min-height:42px}.portal-filter input,.portal-filter select{width:100%}.portal-state{text-align:center;color:var(--text-muted);justify-items:center;gap:12px;padding:38px 20px;display:grid}.portal-state p{margin:0}.portal-links{gap:0;display:grid}.portal-link{color:var(--text);border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:17px 0;text-decoration:none;display:flex}.portal-link:last-child{border-bottom:0;padding-bottom:0}.portal-link>svg{width:22px;height:22px;color:var(--text-muted);flex:none}.portal-link>span{flex:1}.portal-link small,.portal-link strong{display:block}.portal-link strong{font-size:14px;font-weight:500}.portal-link small{color:var(--text-muted);margin-top:4px;font-size:12px}.portal-link:hover strong{color:var(--brand)}.workspace-page .secret{flex-wrap:wrap;min-width:0}.workspace-page .secret>span{overflow-wrap:anywhere;word-break:break-word;flex:220px;min-width:0}.workspace-page .card{min-width:0}.portal-readonly{color:var(--text-muted);margin:0;padding:10px 0;font-size:13px}@media (width<=1050px){.portal-split{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.portal-metrics{grid-template-columns:minmax(0,1fr);gap:12px}.portal-filter{gap:12px;padding:12px}.portal-filter>.btn{flex:auto}.portal-filter .field{flex-basis:100%}.portal-split,.portal-stack{gap:16px}}
