:root{color:#172033;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #172033;--muted: #637083;--border: #d8dee7;--surface: #ffffff;--surface-soft: #f8fafb;--teal: #0b6b61;--teal-dark: #07544c;--teal-soft: #e8f5f1;--blue-soft: #edf4ff;--red: #b42318;--red-soft: #fff0ee;--amber: #9a5700;--amber-soft: #fff7e6;--sidebar: 264px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button,select{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{margin-bottom:5px;font-size:25px;line-height:1.25}h2{margin-bottom:4px;font-size:17px;line-height:1.35}h3{font-size:14px}p{margin-bottom:0;color:var(--muted);line-height:1.5}code,pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.app-loading,.page-state{display:grid;min-height:180px;place-items:center;color:var(--muted)}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;width:var(--sidebar);flex-direction:column;border-right:1px solid #25324a;background:#151d2c;color:#dfe7f3}.brand-row{display:flex;min-height:75px;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid #2b374b}.brand-row>div{min-width:0;display:flex;flex-direction:column}.brand-row strong{font-size:17px;color:#fff}.brand-row span:not(.brand-mark){margin-top:2px;color:#96a4ba;font-size:12px}.brand-mark{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:7px;background:#0f8073;color:#fff;font-size:14px;font-weight:800}.company-control{padding:17px 16px 12px}.company-control label{display:block;margin-bottom:7px;color:#91a0b7;font-size:11px;font-weight:700;text-transform:uppercase}.company-control select{width:100%;min-width:0;border:1px solid #3a4860;border-radius:6px;background:#202a3c;color:#fff;padding:9px 10px}.main-nav{display:flex;flex:1;flex-direction:column;gap:4px;padding:8px 12px}.main-nav a{display:flex;min-height:40px;align-items:center;gap:10px;border-radius:6px;padding:9px 11px;color:#abb7ca;font-size:14px;font-weight:600}.main-nav a:hover{background:#202b3f;color:#fff}.main-nav a.active{background:#24413f;color:#dcfff7}.sidebar-footer{display:flex;flex-direction:column;padding:14px 18px 18px;border-top:1px solid #2b374b}.sidebar-footer span{color:#8290a6;font-size:11px}.sidebar-footer strong{margin-top:3px;font-size:13px;color:#eef2f8}.workspace{min-height:100vh;margin-left:var(--sidebar)}.topbar{position:sticky;top:0;z-index:10;display:flex;min-height:66px;align-items:center;gap:12px;padding:10px 28px;border-bottom:1px solid var(--border);background:#fffffff5}.topbar>div{display:flex;min-width:0;flex:1;flex-direction:column}.topbar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.topbar span:not(.status-pill){color:var(--muted);font-size:12px}.content{max-width:1480px;margin:0 auto;padding:25px 28px 48px}.page-stack,.lab-layout{display:flex;flex-direction:column;gap:18px}.page-heading{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:18px}.page-heading p{font-size:14px}.section-block{border:1px solid var(--border);border-radius:7px;background:var(--surface)}.section-heading{display:flex;min-height:67px;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border)}.section-heading p{font-size:13px}.primary-button,.secondary-button,.danger-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border-radius:6px;padding:8px 13px;font-weight:700;font-size:13px}.primary-button{border:1px solid var(--teal);background:var(--teal);color:#fff}.primary-button:hover{background:var(--teal-dark)}.secondary-button{border:1px solid #bdc7d5;background:#fff;color:var(--ink)}.secondary-button:hover{background:#f2f5f8}.danger-button{border:1px solid #efb3ad;background:#fff;color:var(--red)}.danger-button:hover{background:var(--red-soft)}.icon-button{display:inline-grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:inherit}.icon-button:hover{border-color:var(--border);background:#f1f4f7}.danger-icon{color:var(--red)}.mobile-only,.mobile-tabs{display:none}input,textarea,select{width:100%;min-width:0;border:1px solid #bbc6d5;border-radius:6px;background:#fff;color:var(--ink);padding:9px 10px;outline:none}input:focus,textarea:focus,select:focus{border-color:#138579;box-shadow:0 0 0 3px #13857921}label{color:#46536a;font-size:12px;font-weight:700}label input,label textarea,label select{margin-top:6px;font-weight:400}.form-stack{display:flex;flex-direction:column;gap:11px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:17px}.full-width{grid-column:1 / -1}.form-actions{display:flex;flex-wrap:wrap;gap:9px}.form-help{color:var(--muted);font-size:12px;line-height:1.45}.narrow-form{max-width:720px;padding:18px}.input-action{display:flex;gap:7px}.input-action input{flex:1}fieldset{border:0;padding:0}legend{margin-bottom:8px;color:#46536a;font-size:12px;font-weight:700}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.checkbox-grid label{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:6px;padding:10px;overflow-wrap:anywhere}.checkbox-grid input{width:16px;margin:0}.notice{display:flex;align-items:flex-start;gap:8px;border:1px solid;border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.45}.notice.warning{border-color:#f0c97e;background:var(--amber-soft);color:#7c4804}.notice.danger{border-color:#efb3ad;background:var(--red-soft);color:#8e1e15}.notice.info{border-color:#b7d0ef;background:var(--blue-soft);color:#214f80}.empty-state{display:flex;min-height:86px;align-items:center;justify-content:center;gap:10px;padding:20px;color:var(--muted);text-align:center}.empty-state.tall{min-height:340px;flex-direction:column}.status-pill{display:inline-flex;width:max-content;align-items:center;border:1px solid var(--border);border-radius:999px;padding:4px 9px;background:#f4f6f8;color:#4b586c;font-size:11px;font-weight:800;text-transform:capitalize}.status-pill.success,.status-completed{border-color:#a9ddca;background:#ebfaf3;color:#08724f}.status-pill.muted,.status-failed{border-color:#d5dbe4;background:#f1f3f5;color:#657184}.status-needs_review{border-color:#f0c97e;background:var(--amber-soft);color:var(--amber)}.status-queued,.status-processing{border-color:#b7d0ef;background:var(--blue-soft);color:#22578d}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;column-gap:10px;border:1px solid var(--border);border-radius:7px;background:#fff;padding:15px}.metric svg{grid-row:1 / 3;align-self:center;color:var(--teal)}.metric span{color:var(--muted);font-size:12px}.metric strong{margin-top:3px;font-size:22px}.compact-stats,.detail-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.compact-stats>div,.detail-list>div{display:flex;min-width:0;flex-direction:column;gap:5px;padding:16px;border-right:1px solid var(--border)}.compact-stats>div:last-child,.detail-list>div:last-child{border-right:0}.compact-stats span,.detail-list span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.compact-stats strong,.detail-list strong{overflow-wrap:anywhere;font-size:14px}.table-scroll{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{background:var(--surface-soft);color:#526078;font-size:10px;text-align:left;text-transform:uppercase}th,td{padding:11px 13px;border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:0}td strong,td small{display:block}td small{margin-top:3px;color:var(--muted);font-size:11px}.company-list{display:flex;flex-direction:column;gap:8px}.company-row{display:grid;grid-template-columns:40px minmax(220px,1fr) auto auto;align-items:center;gap:13px;border:1px solid var(--border);border-radius:7px;background:#fff;padding:13px}.company-actions{display:flex;gap:3px}.company-icon,.settings-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:6px;background:var(--teal-soft);color:var(--teal)}.company-main{min-width:0}.company-main>div{display:flex;align-items:baseline;gap:8px}.company-main span{color:var(--muted);font-size:12px}.company-main p{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.company-facts{display:flex;gap:16px;color:var(--muted);font-size:12px}.settings-status,.access-summary{display:flex;align-items:center;gap:13px;padding:16px}.settings-status>div:nth-child(2),.access-summary>div:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.settings-status span,.access-summary span{color:var(--muted);font-size:12px}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{width:0;height:0;opacity:0}.switch span{position:absolute;inset:0;border-radius:999px;background:#aab4c2;transition:background .15s}.switch span:before{position:absolute;width:18px;height:18px;top:3px;left:3px;border-radius:50%;background:#fff;content:"";transition:transform .15s}.switch input:checked+span{background:var(--teal)}.switch input:checked+span:before{transform:translate(20px)}.secret-reveal{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,2fr) auto;align-items:center;gap:15px;border:1px solid #9ed6c3;border-radius:7px;background:#edfaf5;padding:15px}.secret-reveal code{overflow-x:auto;border:1px solid #b7dcca;border-radius:5px;background:#fff;padding:10px;font-size:12px;white-space:nowrap}.scope-list{display:flex;flex-wrap:wrap;gap:4px}.scope-list span{border-radius:999px;background:#edf1f5;padding:3px 7px;color:#4f5e72;font-size:10px}.api-contract pre,.technical-details pre{margin:16px;overflow:auto;border-radius:6px;background:#111827;color:#e6edf7;padding:15px;font-size:12px;line-height:1.65}.api-contract .notice{margin:0 16px 16px}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px}.rotation-form{display:grid;grid-template-columns:240px minmax(260px,520px);gap:22px;padding:18px}.qr-code{display:block;width:220px;max-width:100%;height:auto;margin:0 auto;border:1px solid var(--border);border-radius:6px}.manual-key{display:block;margin-top:8px;overflow-wrap:anywhere;border:1px solid var(--border);border-radius:5px;background:#f4f6f8;padding:9px}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-layout{display:grid;min-height:100vh;place-items:center;padding:24px;background:#edf1f4}.auth-panel{width:min(100%,420px);border:1px solid #cfd7e2;border-radius:8px;background:#fff;padding:26px;box-shadow:0 18px 50px #202d421f}.setup-panel{width:min(100%,500px)}.auth-brand{display:flex;align-items:center;gap:11px;margin-bottom:30px}.auth-brand>div{display:flex;flex-direction:column}.auth-brand>div span{color:var(--muted);font-size:12px}.auth-heading{display:flex;align-items:center;gap:9px;margin-bottom:8px}.auth-heading svg{color:var(--teal)}.auth-heading h1{margin:0;font-size:20px}.auth-panel>p{margin-bottom:20px;font-size:13px}.auth-panel .notice{margin:14px 0}.totp-input{height:52px;text-align:center;font-family:SFMono-Regular,Consolas,monospace;font-size:23px;font-weight:700;letter-spacing:5px}.completion-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px 0 5px;text-align:center}.completion-state svg{color:var(--teal)}.completion-state .primary-button{margin-top:10px}.lab-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border);border-radius:7px;background:#fff}.lab-metrics>div{display:flex;flex-direction:column;padding:11px 14px;border-right:1px solid var(--border)}.lab-metrics>div:last-child{border:0}.lab-metrics span{color:var(--muted);font-size:10px;text-transform:uppercase}.lab-metrics strong{margin-top:3px;font-size:17px}.upload-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,2fr) auto;align-items:end;gap:13px;padding:15px}.lab-body{display:grid;min-height:690px;grid-template-columns:250px minmax(0,1fr);border:1px solid var(--border);border-radius:7px;background:#fff;overflow:hidden}.case-list{max-height:820px;overflow-y:auto;border-right:1px solid var(--border);background:var(--surface-soft)}.search-input{display:flex;align-items:center;gap:7px;margin:10px;border:1px solid var(--border);border-radius:6px;background:#fff;padding:0 9px}.search-input svg{color:var(--muted)}.search-input input{border:0;padding:9px 0;box-shadow:none}.case-list>button{display:grid;width:100%;grid-template-columns:8px minmax(0,1fr);gap:9px;border:0;border-top:1px solid var(--border);background:transparent;padding:11px;color:var(--ink);text-align:left}.case-list>button.active{background:#fff;box-shadow:inset 3px 0 var(--teal)}.case-list>button>div{display:flex;min-width:0;flex-direction:column;gap:2px}.case-list>button strong,.case-list>button span,.case-list>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-list>button strong{font-size:12px}.case-list>button span,.case-list>button small{color:var(--muted);font-size:10px}.status-dot{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#8995a7}.status-dot.status-completed{background:#15966d}.status-dot.status-needs_review{background:#d48413}.status-dot.status-processing,.status-dot.status-queued{background:#357cc0}.status-dot.status-failed{background:#d04437}.lab-workspace{min-width:0}.case-toolbar{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:15px;padding:11px 14px;border-bottom:1px solid var(--border)}.case-toolbar>div:first-child{display:flex;min-width:0;flex-direction:column}.case-toolbar>div:first-child strong,.case-toolbar>div:first-child span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-toolbar>div:first-child span{color:var(--muted);font-size:11px}.toolbar-actions{display:flex;flex:0 0 auto;gap:8px}.toolbar-actions select{width:150px}.split-review{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(500px,1.25fr);min-height:590px}.split-review>div:first-child{border-right:1px solid var(--border)}.document-viewer,.result-pane{min-width:0;height:100%}.document-viewer{display:grid;grid-template-rows:43px minmax(430px,1fr) auto;background:#eef1f4}.viewer-toolbar{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid var(--border);background:#fff}.viewer-toolbar strong{font-size:12px}.viewer-toolbar span{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.viewer-canvas{min-height:430px;padding:10px;overflow:auto}.viewer-canvas iframe,.viewer-canvas img{display:block;width:100%;height:100%;min-height:520px;border:0;background:#fff;object-fit:contain}.evidence-strip{display:flex;min-height:56px;flex-direction:column;gap:3px;padding:9px 12px;border-top:1px solid var(--border);background:#fff;color:var(--muted);font-size:11px}.evidence-strip strong{color:var(--ink)}.result-pane{padding:12px;overflow:auto}.result-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:11px;border:1px solid var(--border);border-radius:6px}.result-summary>div{display:flex;flex-direction:column;gap:3px;padding:10px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.result-summary>div:nth-child(3n){border-right:0}.result-summary>div:nth-last-child(-n+3){border-bottom:0}.result-summary span{color:var(--muted);font-size:9px;text-transform:uppercase}.result-summary strong{font-size:13px;text-transform:capitalize}.product-table{margin-top:11px;border:1px solid var(--border);border-radius:6px}.product-table table{min-width:750px}.product-table tbody tr{cursor:pointer}.product-table tbody tr:hover,.selected-row{background:#edf8f5}.confidence{display:inline-grid;min-width:34px;height:25px;place-items:center;border-radius:999px;font-size:11px;font-weight:800}.confidence.high{background:#e8f7f1;color:#08724f}.confidence.medium{background:var(--amber-soft);color:var(--amber)}.confidence.low{background:var(--red-soft);color:var(--red)}.review-panel{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;border:1px solid #efd29a;border-radius:6px;background:var(--amber-soft);padding:10px}.review-panel strong{width:100%;font-size:11px;text-transform:uppercase}.review-panel span{border-radius:999px;background:#fff;padding:4px 8px;color:#78470a;font-size:10px}.technical-details{border-top:1px solid var(--border)}.technical-details summary{cursor:pointer;padding:12px 14px;color:#46536a;font-size:12px;font-weight:700}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:4px 15px 12px}.attempt-row{display:flex;flex-direction:column;margin-bottom:7px;border:1px solid var(--border);border-radius:5px;padding:8px;font-size:11px}.attempt-row span,.attempt-row small{color:var(--muted)}@media(max-width:1080px){.metric-grid,.compact-stats,.detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-stats>div:nth-child(2),.detail-list>div:nth-child(2){border-right:0}.compact-stats>div:nth-child(-n+2),.detail-list>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.lab-body{grid-template-columns:220px minmax(0,1fr)}.split-review{grid-template-columns:minmax(330px,.8fr) minmax(430px,1.2fr);overflow-x:auto}.company-facts{flex-direction:column;gap:3px}}@media(max-width:760px){:root{--sidebar: 278px}.mobile-only{display:inline-grid}.sidebar{transform:translate(-100%);transition:transform .2s ease}.sidebar.sidebar-open{transform:translate(0)}.sidebar-scrim{position:fixed;inset:0;z-index:15;border:0;background:#0c14227a}.brand-row .mobile-only{margin-left:auto;color:#fff}.workspace{margin-left:0}.topbar{padding:9px 14px}.content{padding:18px 13px 38px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading>button{width:100%}.metric-grid,.lab-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-metrics>div:nth-child(2){border-right:0}.lab-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.form-grid,.upload-row,.rotation-form,.checkbox-grid{grid-template-columns:1fr}.company-row{grid-template-columns:40px minmax(0,1fr) auto}.company-actions{grid-column:3;grid-row:1}.company-facts{grid-column:2 / 4;flex-direction:row}.secret-reveal{grid-template-columns:1fr}.lab-body{display:flex;min-height:0;flex-direction:column}.case-list{display:flex;max-height:none;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border)}.case-list .search-input{min-width:190px}.case-list>button{min-width:205px;border-top:0;border-left:1px solid var(--border)}.case-list>button.active{box-shadow:inset 0 -3px var(--teal)}.case-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions select,.toolbar-actions button{flex:1;width:auto}.mobile-tabs{display:grid;grid-template-columns:1fr 1fr;padding:8px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.mobile-tabs button{min-height:36px;border:0;background:transparent;color:var(--muted);font-weight:700}.mobile-tabs button.active{border-bottom:2px solid var(--teal);color:var(--teal)}.split-review{display:block;min-height:0;overflow:visible}.split-review>div{display:none}.split-review>div.mobile-visible{display:block}.split-review>div:first-child{border-right:0}.viewer-canvas iframe,.viewer-canvas img{min-height:470px}.result-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.result-summary>div,.result-summary>div:nth-child(3n){border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.result-summary>div:nth-child(2n){border-right:0}.result-summary>div:nth-last-child(-n+2){border-bottom:0}.detail-columns{grid-template-columns:1fr}.danger-zone{align-items:stretch;flex-direction:column}}@media(max-width:430px){.metric-grid,.compact-stats,.detail-list,.lab-metrics{grid-template-columns:1fr}.compact-stats>div,.detail-list>div,.lab-metrics>div{border-right:0;border-bottom:1px solid var(--border)}.compact-stats>div:last-child,.detail-list>div:last-child,.lab-metrics>div:last-child{border-bottom:0}.toolbar-actions{flex-direction:column}.company-main>div{align-items:flex-start;flex-direction:column;gap:1px}}
