:root{--bg: oklch(.985 .003 240);--surface: #ffffff;--surface-2: oklch(.975 .004 240);--surface-3: oklch(.955 .005 240);--surface-inset: oklch(.965 .004 240);--border: oklch(.915 .006 245);--border-2: oklch(.875 .008 245);--border-strong: oklch(.8 .01 245);--ink: oklch(.255 .018 255);--ink-2: oklch(.43 .014 255);--ink-3: oklch(.57 .012 255);--ink-4: oklch(.68 .01 255);--ink-on-accent: #ffffff;--accent: oklch(.52 .085 195);--accent-strong: oklch(.44 .09 197);--accent-deep: oklch(.34 .07 200);--accent-tint: oklch(.965 .022 195);--accent-tint-2: oklch(.92 .04 195);--accent-line: oklch(.86 .05 195);--error: oklch(.55 .17 27);--error-tint: oklch(.96 .028 27);--error-line: oklch(.86 .07 27);--warning: oklch(.62 .13 62);--warning-ink: oklch(.46 .11 62);--warning-tint:oklch(.955 .045 75);--warning-line:oklch(.85 .09 70);--info: oklch(.54 .12 250);--info-tint: oklch(.96 .03 250);--info-line: oklch(.85 .06 250);--success: oklch(.52 .1 158);--success-tint:oklch(.955 .038 158);--success-line:oklch(.83 .07 158);--prov-ai: oklch(.52 .16 305);--prov-ai-tint: oklch(.965 .03 305);--prov-ai-line: oklch(.85 .07 305);--prov-override: oklch(.58 .13 50);--prov-override-tint: oklch(.96 .04 60);--shadow-sm: 0 1px 2px rgba(20,30,45,.06), 0 1px 1px rgba(20,30,45,.04);--shadow: 0 1px 3px rgba(20,30,45,.07), 0 4px 12px rgba(20,30,45,.05);--shadow-md: 0 2px 6px rgba(20,30,45,.08), 0 12px 28px rgba(20,30,45,.1);--shadow-lg: 0 18px 50px rgba(15,25,40,.22), 0 4px 12px rgba(15,25,40,.1);--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--font: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace}.ct-screen,.ct-screen *{box-sizing:border-box}.ct-screen{font-family:var(--font);color:var(--ink);background:var(--bg);width:100%;height:100%;display:flex;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.006em}.ct-screen :is(h1,h2,h3,h4,p){margin:0}.ct-screen button{font-family:inherit;cursor:pointer}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1,"zero" 1;letter-spacing:-.02em}.tnum{font-variant-numeric:tabular-nums}.app{display:flex;width:100%;height:100%;background:var(--bg)}.nav{width:230px;flex:0 0 230px;height:100%;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.nav-brand{display:flex;align-items:center;gap:10px;padding:17px 18px 16px;border-bottom:1px solid var(--border)}.brand-mark{width:28px;height:28px;border-radius:7px;flex:0 0 28px;background:linear-gradient(150deg,var(--accent) 0%,var(--accent-deep) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px #14283240,inset 0 1px #ffffff2e}.brand-name{font-weight:680;font-size:15px;letter-spacing:-.02em;color:var(--ink)}.brand-sub{font-size:10.5px;color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase;font-weight:600;margin-top:1px}.nav-group{padding:14px 12px 4px}.nav-label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-4);padding:0 8px 7px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:var(--r-sm);color:var(--ink-2);font-size:13.5px;font-weight:500;text-decoration:none;position:relative;margin-bottom:1px}.nav-item svg{width:17px;height:17px;flex:0 0 17px;color:var(--ink-3)}.nav-item .nav-count{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--ink-3);background:var(--surface-3);padding:1px 7px;border-radius:20px}.nav-item.active{background:var(--accent-tint);color:var(--accent-strong);font-weight:600}.nav-item.active svg{color:var(--accent)}.nav-item.active .nav-count{background:var(--accent-tint-2);color:var(--accent-strong)}.nav-spacer{flex:1}.nav-user{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--border)}.avatar{width:30px;height:30px;border-radius:50%;flex:0 0 30px;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;color:#fff;letter-spacing:-.02em}.main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%}.topbar{height:53px;flex:0 0 53px;border-bottom:1px solid var(--border);background:var(--surface);display:flex;align-items:center;gap:14px;padding:0 20px}.crumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-3)}.crumb b{color:var(--ink);font-weight:600}.crumb svg{width:14px;height:14px;color:var(--ink-4)}.cmdk{display:flex;align-items:center;gap:9px;height:32px;padding:0 10px 0 11px;border:1px solid var(--border-2);border-radius:var(--r-sm);color:var(--ink-3);font-size:12.5px;background:var(--surface-2);min-width:220px}.cmdk svg{width:15px;height:15px}.kbd{font-family:var(--mono);font-size:10.5px;font-weight:500;padding:2px 5px;border-radius:4px;color:var(--ink-3);background:var(--surface);border:1px solid var(--border-2);box-shadow:0 1px 0 var(--border-2)}.icon-btn{width:32px;height:32px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--ink-3);position:relative}.icon-btn:hover{background:var(--surface-3);color:var(--ink)}.icon-btn svg{width:18px;height:18px}.dot-badge{position:absolute;top:6px;right:7px;width:7px;height:7px;border-radius:50%;background:var(--error);border:1.5px solid var(--surface)}.btn{display:inline-flex;align-items:center;gap:7px;justify-content:center;height:34px;padding:0 14px;border-radius:var(--r-sm);font-size:13px;font-weight:600;border:1px solid var(--border-2);background:var(--surface);color:var(--ink);white-space:nowrap;box-shadow:var(--shadow-sm)}.btn svg{width:16px;height:16px}.btn-sm{height:28px;padding:0 10px;font-size:12.5px}.btn-primary{background:var(--accent-strong);border-color:var(--accent-deep);color:#fff;box-shadow:0 1px 2px #14323740}.btn-ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--ink-2)}.btn-ghost:hover{background:var(--surface-3)}.btn[disabled],.btn.disabled{opacity:.5;box-shadow:none;cursor:not-allowed}.chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:20px;font-size:11.5px;font-weight:600;white-space:nowrap;border:1px solid var(--border-2);color:var(--ink-2);background:var(--surface)}.chip svg{width:12px;height:12px}.chip .led{width:6px;height:6px;border-radius:50%;background:currentColor}.chip-accent{color:var(--accent-strong);background:var(--accent-tint);border-color:var(--accent-line)}.chip-success{color:var(--success);background:var(--success-tint);border-color:var(--success-line)}.chip-warning{color:var(--warning-ink);background:var(--warning-tint);border-color:var(--warning-line)}.chip-error{color:var(--error);background:var(--error-tint);border-color:var(--error-line)}.chip-info{color:var(--info);background:var(--info-tint);border-color:var(--info-line)}.chip-neutral{color:var(--ink-3);background:var(--surface-3);border-color:var(--border)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.panel-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.panel-title{font-size:13.5px;font-weight:680;letter-spacing:-.01em}.eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-4)}.stat{padding:15px 16px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.stat-label{font-size:12px;font-weight:600;color:var(--ink-3);display:flex;align-items:center;gap:6px}.stat-num{font-size:27px;font-weight:600;letter-spacing:-.03em;margin-top:9px;line-height:1}.stat-sub{font-size:11.5px;color:var(--ink-3);margin-top:8px;display:flex;align-items:center;gap:5px}.trend-up{color:var(--success);font-weight:600}.trend-dn{color:var(--error);font-weight:600}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4);padding:9px 14px;border-bottom:1px solid var(--border);white-space:nowrap}.tbl td{padding:11px 14px;border-bottom:1px solid var(--border);font-size:13px;vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tr:hover td{background:var(--surface-2)}.tbl .num{text-align:right}.status{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px 3px 7px;border-radius:20px;white-space:nowrap}.status .led{width:6px;height:6px;border-radius:50%;flex:0 0 6px}.st-draft{color:var(--ink-3);background:var(--surface-3)}.st-draft .led{background:var(--ink-4)}.st-prep{color:var(--info);background:var(--info-tint)}.st-prep .led{background:var(--info)}.st-ready{color:var(--accent-strong);background:var(--accent-tint)}.st-ready .led{background:var(--accent)}.st-review{color:var(--prov-ai);background:var(--prov-ai-tint)}.st-review .led{background:var(--prov-ai)}.st-changes{color:var(--warning-ink);background:var(--warning-tint)}.st-changes .led{background:var(--warning)}.st-approved{color:var(--success);background:var(--success-tint)}.st-approved .led{background:var(--success)}.st-efiled{color:var(--accent-deep);background:var(--accent-tint-2)}.st-efiled .led{background:var(--accent-strong)}.st-accepted{color:#fff;background:var(--success)}.st-accepted .led{background:#fff}.st-rejected{color:#fff;background:var(--error)}.st-rejected .led{background:#fff}.val{font-family:var(--mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em;white-space:nowrap}.prov{display:inline-flex;align-items:center;gap:6px}.prov .pglyph{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center;flex:0 0 14px}.prov-entered .val{color:var(--ink)}.prov-computed .val{color:var(--ink-2)}.prov-computed .pglyph{color:var(--ink-4)}.prov-ai .val{color:var(--prov-ai);text-decoration:underline dashed var(--prov-ai-line);text-underline-offset:3px;text-decoration-thickness:1.5px}.prov-ai .pglyph{color:var(--prov-ai)}.prov-confirmed .val{color:var(--ink)}.prov-confirmed .pglyph{color:var(--success)}.prov-override .val{color:var(--prov-override);font-weight:600}.prov-override .pglyph{color:var(--prov-override)}.prov-legend{display:flex;flex-wrap:wrap;gap:4px 16px}.prov-legend .li{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--ink-2)}.diag{display:flex;gap:10px;padding:11px 14px;border-bottom:1px solid var(--border)}.diag:last-child{border-bottom:none}.diag-ico{width:18px;height:18px;flex:0 0 18px;margin-top:1px}.diag-ico.err{color:var(--error)}.diag-ico.warn{color:var(--warning)}.diag-ico.info{color:var(--info)}.diag-msg{font-size:12.5px;font-weight:600;color:var(--ink);line-height:1.4}.diag-meta{font-size:11.5px;color:var(--ink-3);margin-top:3px;line-height:1.45}.diag-meta .rule{font-family:var(--mono);font-size:10.5px;color:var(--ink-4)}.ai-note{display:inline-flex;align-items:baseline;gap:5px;margin-top:5px;font-size:11.5px;color:var(--prov-ai);background:var(--prov-ai-tint);border:1px solid var(--prov-ai-line);border-radius:var(--r-xs);padding:4px 7px;line-height:1.4}.ai-tag{font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--prov-ai);border:1px solid var(--prov-ai-line);border-radius:3px;padding:1px 4px}.thread{padding:13px 15px;border-bottom:1px solid var(--border)}.cmt-anchor{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--accent-strong);background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--r-xs);padding:2px 7px;font-family:var(--mono);letter-spacing:-.01em}.cmt{display:flex;gap:9px;margin-top:11px}.cmt-body{flex:1;min-width:0}.cmt-head{display:flex;align-items:baseline;gap:7px}.cmt-name{font-size:12.5px;font-weight:680}.cmt-time{font-size:11px;color:var(--ink-4)}.cmt-text{font-size:12.5px;color:var(--ink-2);line-height:1.5;margin-top:2px}.cmt-resolved{font-size:11px;color:var(--success);font-weight:600;display:inline-flex;align-items:center;gap:5px}.field-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:9px 0;border-bottom:1px solid var(--border)}.field-label{font-size:13px;color:var(--ink-2);display:flex;align-items:center;gap:8px}.field-code{font-family:var(--mono);font-size:10.5px;color:var(--ink-4);background:var(--surface-3);padding:1px 5px;border-radius:3px}.field-input{display:inline-flex;align-items:center;justify-content:flex-end;min-width:150px;height:32px;padding:0 11px;border:1px solid var(--border-2);border-radius:var(--r-sm);background:var(--surface);font-family:var(--mono);font-size:13.5px;color:var(--ink)}.field-input.focused{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint-2);background:var(--surface)}.divider{height:1px;background:var(--border)}.bar{height:8px;border-radius:6px;background:var(--surface-3);overflow:hidden;display:flex}.bar>span{height:100%}.progress-seg{display:flex;height:100%}.muted{color:var(--ink-3)}.scrollfade{position:relative}html,body,#root{margin:0;height:100%}body{background:var(--bg);font-family:var(--font);color:var(--ink)}*{box-sizing:border-box}.ct-route{height:100vh;width:100%;overflow:hidden}.ct-scroll{overflow:auto}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}a{color:inherit}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.auth-wrap{display:grid;place-items:center;padding:24px;background:radial-gradient(120% 120% at 50% 0%,var(--accent-tint) 0%,var(--bg) 55%)}.auth-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:16px;padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg, 14px);box-shadow:var(--shadow-md, 0 8px 30px rgba(20, 50, 55, .12))}.auth-brand{display:flex;align-items:center;gap:10px}.auth-head{display:flex;flex-direction:column;gap:4px}.auth-title{font-size:21px;font-weight:680;color:var(--ink);letter-spacing:-.01em}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.auth-input{height:38px;padding:0 12px;border:1px solid var(--border-2);border-radius:var(--r-sm);background:var(--surface);font-family:var(--font);font-size:14px;color:var(--ink)}.auth-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint-2)}.auth-input:disabled{opacity:.6}.auth-submit{height:40px;margin-top:4px;font-size:14px}.auth-error{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:var(--r-sm);background:var(--error-tint, rgba(200, 40, 40, .08));border:1px solid var(--error-line, rgba(200, 40, 40, .25));color:var(--error, #b42318);font-size:12.5px}.auth-foot{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11.5px;color:var(--ink-4)}
