@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Instrument+Sans:wdth,wght@75..100,400..700&display=swap");:root{--canvas:#f4f1e9;--surface:#fffefa;--surface-subtle:#ebe7dc;--ink:#17211b;--muted:#4f5b53;--rule:#c9c8bf;--rule-strong:#8f958f;--action:#1f6b4a;--action-ink:#f7fff9;--warning:#b86e00;--warning-soft:#f5e8c9;--failure:#b64343;--failure-soft:#f7dddd;--info:#315e8a;--info-soft:#dfeaf3;--focus:#0f6eac;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;--sans:"Instrument Sans",system-ui,sans-serif}*{box-sizing:border-box}html{color:var(--ink);font-family:var(--sans)}body,html{background:var(--canvas)}body{margin:0;min-width:320px}button,input,select{font:inherit}button{min-height:44px;cursor:pointer;border:1px solid var(--rule-strong);background:var(--surface);color:var(--ink);border-radius:2px;padding:0 14px;font-weight:600}button:hover{border-color:var(--action)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:inherit}.skip-link{position:absolute;left:8px;top:-60px;z-index:20;background:var(--ink);color:white;padding:10px 14px}.skip-link:focus{top:8px}.app-shell{display:grid;grid-template-columns:172px minmax(0,1fr);min-height:100vh}.operator-nav{border-right:1px solid var(--rule);padding:24px 14px 16px;display:flex;flex-direction:column;gap:18px;min-height:100vh;background:var(--surface-subtle)}.operator-mark{display:flex;align-items:baseline;gap:7px;font-family:var(--mono);font-size:12px;letter-spacing:.04em}.operator-mark span:first-child{font-size:22px;color:var(--action);font-weight:600}.eyebrow,.nav-section-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--muted)}.nav-links{margin:0;padding:0;list-style:none;display:grid;grid-gap:4px;gap:4px}.nav-links a{min-height:44px;text-decoration:none;display:flex;align-items:center;gap:10px;padding:0 8px;font-size:14px}.nav-links a[aria-current=page]{background:var(--ink);color:var(--surface)}.nav-marker{width:22px;color:var(--muted);font:11px var(--mono)}.nav-links a[aria-current=page] .nav-marker{color:#a9ceb9}.nav-footer{margin-top:auto;color:var(--muted);font:10px/1.5 var(--mono);display:flex;gap:7px;align-items:flex-start}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--action);margin-top:3px;flex:none}.app-main{min-width:0}.catalog-page,.imports-page,.orders-page,.settings-page{min-height:100vh;padding:28px clamp(18px,3vw,44px) 52px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;border-bottom:1px solid var(--rule);padding-bottom:18px}.page-header h1{font-size:clamp(27px,3.2vw,42px);line-height:1.02;margin:5px 0 0;letter-spacing:-.035em;font-weight:600}.page-header p{max-width:600px;color:var(--muted);margin:10px 0 0;font-size:15px}.header-meta{text-align:right;font:11px/1.5 var(--mono);color:var(--muted);white-space:nowrap}.header-meta strong{color:var(--ink);font-weight:500}.control-room{display:grid;grid-template-columns:220px minmax(0,1fr) 236px;grid-gap:16px;gap:16px;padding-top:18px}.audit-rail,.rail,.workspace{border:1px solid var(--rule);background:var(--surface)}.rail{padding:14px}.workspace{min-width:0}.audit-rail{padding:14px}.audit-rail h2,.rail h2,.workspace h2{font-size:13px;margin:0;letter-spacing:.02em}.rail-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--rule)}.mono{font-family:var(--mono)}.queue-empty{padding:30px 4px;color:var(--muted);font-size:13px;line-height:1.5}.stage-list{list-style:none;padding:14px 0 0;margin:0;display:grid;grid-gap:4px;gap:4px}.stage-list li{display:flex;align-items:flex-start;gap:8px;padding:9px 7px;border-left:3px solid transparent;color:var(--muted);font-size:13px}.stage-list li[data-active=true]{border-left-color:var(--action);color:var(--ink);background:#edf4ef}.stage-index{font:11px var(--mono);color:var(--muted)}.stage-state{margin-left:auto;font:10px var(--mono);color:var(--muted)}.workspace-top{padding:18px 20px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.workspace-top h2{font-size:19px;margin-top:5px}.workspace-body{padding:20px}.state-banner{display:flex;justify-content:space-between;gap:18px;border-left:4px solid var(--info);background:var(--info-soft);padding:13px 14px;margin-bottom:18px}.state-banner[data-tone=warning]{border-left-color:var(--warning);background:var(--warning-soft)}.state-banner[data-tone=failure]{border-left-color:var(--failure);background:var(--failure-soft)}.state-banner[data-tone=success]{border-left-color:var(--action);background:#e5f1ea}.state-banner strong{display:block;font-size:14px}.state-banner span{color:var(--muted);display:block;margin-top:3px;font-size:13px}.action-button{background:var(--action);color:var(--action-ink);border-color:var(--action)}.action-button[disabled]{opacity:.48;cursor:not-allowed}.secondary-button{background:transparent}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;grid-gap:18px;gap:18px}.section-label{color:var(--muted);font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 9px}.evidence-list{margin:0;display:grid;grid-gap:11px;gap:11px}.evidence-list div{display:grid;grid-gap:3px;gap:3px}.evidence-list dt{color:var(--muted);font-size:11px}.evidence-list dd{margin:0;font:11px var(--mono);overflow-wrap:anywhere}.table-wrap{overflow-x:auto;border:1px solid var(--rule)}table{width:100%;border-collapse:collapse;min-width:580px;font-size:13px}td,th{text-align:left;border-bottom:1px solid var(--rule);padding:11px 10px;vertical-align:top}th{color:var(--muted);font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;background:var(--surface-subtle)}tr:last-child td{border-bottom:0}.row-tag{display:inline-flex;border:1px solid var(--rule-strong);padding:3px 5px;font:10px var(--mono)}.row-tag[data-tone=warning]{color:#8a5200;border-color:#b98432}.row-tag[data-tone=success]{color:var(--action);border-color:#78ae91}.row-tag[data-tone=failure]{color:var(--failure);border-color:#d88989}.error-note{color:var(--failure);font-size:12px;margin-top:4px}.empty-workspace{min-height:330px;display:grid;place-items:center;text-align:center;padding:40px}.empty-workspace h3{margin:7px 0;font-size:22px}.empty-workspace p{max-width:420px;color:var(--muted);line-height:1.5;margin:0 auto 18px}.upload-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.upload-controls label{min-height:44px;display:inline-flex;align-items:center;border:1px solid var(--rule-strong);padding:0 13px;cursor:pointer;font-weight:600}.upload-controls input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.audit-rail .audit-item{border-bottom:1px solid var(--rule);padding:12px 0}.audit-rail .audit-item:last-child{border-bottom:0}.muted-copy{color:var(--muted);line-height:1.55;max-width:680px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.audit-item dt{color:var(--muted);font-size:11px}.audit-item dd{margin:4px 0 0;font-size:12px;line-height:1.45}.boundary-message{max-width:680px;margin:12vh auto;padding:36px;border:1px solid var(--rule);background:var(--surface)}.boundary-message h1{font-size:30px;margin:8px 0}.boundary-message p:not(.eyebrow){color:var(--muted);line-height:1.5}.sign-in-page{min-height:100vh;display:grid;place-items:center;padding:28px 18px}.sign-in-panel{width:min(100%,480px);border:1px solid var(--rule);background:var(--surface);padding:clamp(24px,5vw,42px)}.sign-in-panel h1{font-size:clamp(30px,5vw,46px);line-height:1;letter-spacing:-.035em;margin:8px 0 12px}.sign-in-form{display:grid;grid-gap:12px;gap:12px;margin-top:26px}.sign-in-form label{font:11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sign-in-form input{min-height:48px;border:1px solid var(--rule-strong);border-radius:2px;background:white;color:var(--ink);padding:0 12px;font:16px var(--mono)}.sign-in-message{border-left:3px solid var(--info);background:var(--info-soft);padding:11px 12px;font-size:13px;line-height:1.45;margin:18px 0 0}.sign-in-privacy{color:var(--muted);font:10px/1.55 var(--mono);margin:22px 0 0}.loading-line{width:35%;height:4px;background:var(--action);margin-top:26px;animation:load 1.5s linear infinite}.orders-state{margin-top:18px;border:1px solid var(--rule);background:var(--surface);padding:28px}.orders-state h2{margin:0 0 7px;font-size:22px}.orders-state p{color:var(--muted);line-height:1.5;margin:0 0 18px}.order-list{display:grid;grid-gap:16px;gap:16px;padding-top:18px}.order-card{border:1px solid var(--rule);background:var(--surface);padding:20px}.order-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--rule);padding-bottom:14px}.order-card-header h2{margin:5px 0 0;font-size:22px}.order-card-header p{margin:0;overflow-wrap:anywhere}.order-status{border:1px solid var(--action);color:var(--action);padding:6px 8px;font:11px var(--mono);white-space:nowrap}.order-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:16px 0}.order-facts div{border-left:2px solid var(--rule);padding-left:9px;min-width:0}.order-facts dt{color:var(--muted);font-size:11px}.order-facts dd{margin:4px 0 0;font:12px/1.45 var(--mono);overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;padding-top:18px;align-items:start}.settings-card{border:1px solid var(--rule);background:var(--surface);padding:20px}.settings-card:first-child{grid-column:1/-1}.settings-card h2{margin:5px 0 10px;font-size:22px}.settings-card>div>p:not(.eyebrow),.settings-card>p{color:var(--muted);line-height:1.5}.settings-form{display:grid;grid-gap:13px;gap:13px}.settings-form label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase}.settings-form input{min-height:46px;border:1px solid var(--rule-strong);background:white;color:var(--ink);padding:0 11px;font:15px var(--mono)}.settings-version{margin:0;font:11px var(--mono)}.totp-dialog-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:rgba(23,33,27,.62)}.totp-dialog{width:min(100%,480px);max-height:calc(100vh - 36px);overflow:auto;border:1px solid var(--rule-strong);background:var(--surface);padding:clamp(22px,4vw,34px);box-shadow:0 20px 60px rgba(23,33,27,.22)}.totp-dialog h2{margin:7px 0 10px;font-size:27px}.totp-dialog>p:not(.eyebrow){color:var(--muted);line-height:1.5}.totp-dialog .settings-form{margin:18px 0 12px}.totp-setup-link{display:flex;align-items:center;justify-content:center;min-height:46px;margin:17px 0 12px;border:1px solid var(--action);color:var(--action);font-weight:600;text-decoration:none}.totp-manual-secret{display:grid;grid-gap:6px;gap:6px;padding:12px;border:1px solid var(--rule);background:var(--surface-subtle)}.totp-manual-secret span,.totp-privacy{color:var(--muted);font:10px/1.5 var(--mono)}.totp-manual-secret code{overflow-wrap:anywhere;font:14px/1.5 var(--mono);letter-spacing:.08em}.totp-dialog>.secondary-button{width:100%;margin-top:2px}.totp-privacy{margin:14px 0 0}.catalog-list{display:grid;grid-gap:14px;gap:14px;padding-top:18px}.catalog-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);grid-gap:24px;gap:24px;border:1px solid var(--rule);background:var(--surface);padding:20px}.catalog-card h2{margin:5px 0 7px;font-size:22px}.catalog-card-copy>p:not(.eyebrow){color:var(--muted);margin:0 0 16px}.catalog-card .evidence-list{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-image-form{display:grid;grid-gap:12px;gap:12px;align-content:center;border-left:1px solid var(--rule);padding-left:24px}.catalog-image-form label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font:11px var(--mono);letter-spacing:.04em;text-transform:uppercase}.catalog-image-form input{min-height:46px;border:1px solid var(--rule-strong);background:white;color:var(--ink);padding:9px}.catalog-image-unavailable{align-self:center;color:var(--muted);font-size:14px;max-width:28rem}@keyframes load{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (max-width:1100px){.control-room{grid-template-columns:220px minmax(0,1fr)}.audit-rail{grid-column:1/-1;display:none}.audit-rail[data-open=true]{display:block}}@media (max-width:780px){.app-shell{display:block}.operator-nav{min-height:auto;padding:11px 14px;display:block;border-right:0;border-bottom:1px solid var(--rule)}.operator-mark{display:inline-flex;margin-right:14px}.nav-footer,.nav-section-label{display:none}.nav-links{display:inline-flex;vertical-align:middle;gap:2px}.nav-links a{min-height:44px}.catalog-page,.imports-page,.orders-page,.settings-page{padding:20px 14px 42px}.page-header{align-items:flex-start;flex-direction:column}.header-meta{text-align:left}.control-room{display:block;padding-top:12px}.rail{margin-bottom:12px}.stage-list{display:flex;overflow-x:auto;padding-top:9px}.stage-list li{min-width:150px;border-left:0;border-bottom:3px solid transparent}.stage-list li[data-active=true]{border-bottom-color:var(--action);border-left:0}.workspace-body,.workspace-top{padding:14px}.workspace-grid{display:block}.workspace-grid>aside{margin-top:18px}.order-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-card,.settings-grid{grid-template-columns:1fr}.catalog-image-form{border-left:0;border-top:1px solid var(--rule);padding:18px 0 0}}@media (max-width:480px){.catalog-page,.imports-page,.orders-page,.settings-page{padding:14px 10px 96px}.page-header h1{font-size:30px}.workspace-top{display:block}.workspace-top .action-button{width:100%;margin-top:12px}.state-banner{display:block}.state-banner button{width:100%;margin-top:12px}.upload-controls{display:grid}.upload-controls>*{width:100%}.empty-workspace{min-height:300px;padding:28px 18px}.order-card{padding:14px}.order-card-header{display:block}.order-status{display:inline-block;margin-top:12px}.catalog-card .evidence-list,.order-facts{grid-template-columns:1fr}table{min-width:520px}}