:root{color:#1c2430;background:#f3f5f7;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,rgba(27,35,46,.05),transparent 280px),#f3f5f7}button,input,select,textarea{font:inherit}button{min-height:38px;border:0;border-radius:6px;background:#f36f21;color:#fff;cursor:pointer;font-weight:800;padding:0 14px;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}button:hover:not(:disabled){background:#dc5d14;box-shadow:0 8px 18px #f36f212e;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.52}input,select,textarea{min-width:0;width:100%;min-height:38px;border:1px solid #d4d9e2;border-radius:6px;background:#fff;color:#1c2430;padding:7px 10px;outline:0;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}input:focus,select:focus,textarea:focus{border-color:#6258ff;box-shadow:0 0 0 3px #6258ff21}input[readonly]{background:#f5f7fa;color:#5c6675}textarea{resize:vertical}h1,h2,h3,p{margin:0}h1{color:#111827;font-size:28px;font-weight:900;line-height:1.15}h2{color:#161f2d;font-size:18px;font-weight:900}h3{color:#202b3a;font-size:14px;font-weight:900}.workbench{min-height:100vh;padding:24px}.topbar,.login-strip,.status-strip,.error-panel,.workbench-shell,.layout,.panel{max-width:1440px;margin:0 auto}.topbar{display:grid;grid-template-columns:minmax(280px,1fr) minmax(420px,520px);gap:24px;align-items:start;padding-bottom:18px}.brand-block{padding-top:14px}.eyebrow{margin-bottom:6px;color:#f36f21;font-size:12px;font-weight:900;letter-spacing:0}.brand-subtitle{margin-top:8px;color:#5f6b7d;font-size:13px;font-weight:750}.session-card{display:grid;justify-self:end;gap:8px;width:100%;max-width:520px;padding:12px;border:1px solid #dde2ea;border-radius:8px;background:#ffffffdb;box-shadow:0 12px 28px #121b2812}.connection{justify-self:end;width:fit-content;max-width:100%;border:1px solid #e4e8ef;border-radius:8px;background:#f8fafc}.connection[open]{width:100%}.connection:not([open]){border-color:transparent;background:transparent}.connection summary{cursor:pointer;color:#4b5567;font-size:12px;font-weight:900;list-style-position:inside;padding:9px 10px}.connection:not([open]) summary{border:1px solid #e4e8ef;border-radius:6px;background:#fff}.connection-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 10px 10px}.connection-fields.with-menu{grid-template-columns:1.3fr .8fr 1fr}.connection-fields label{color:#687385}.login-strip{display:grid;grid-template-columns:minmax(140px,180px) minmax(140px,180px) auto;gap:12px;align-items:end}.primary-login{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.session-card .login-strip{max-width:none;margin:0}.primary-login button{min-width:132px}.session-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.session-summary>div{display:grid;gap:4px;min-width:0;border:1px solid #e4e8ef;border-radius:8px;background:#f8fafc;padding:10px 12px}.session-summary span,.session-summary small{color:#667386;font-size:12px;font-weight:850}.session-summary strong{color:#182235;font-size:15px;font-weight:950}.session-summary details{min-width:260px;border:1px solid #e4e8ef;border-radius:8px;background:#fff}.session-summary summary{cursor:pointer;color:#4b5567;font-size:12px;font-weight:900;list-style-position:inside;padding:10px}.compact-login{grid-template-columns:minmax(0,1fr);padding:0 10px 10px}label{display:grid;gap:6px;color:#5d6878;font-size:12px;font-weight:800}.status-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:44px;margin-bottom:16px;overflow:visible}.error-panel{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border:1px solid #f2b27a;border-radius:8px;background:#fff7ed;color:#9a3412;margin-bottom:16px;padding:12px 14px;font-size:12px;font-weight:900}.error-panel>strong,.error-panel>span{min-width:0;max-width:100%;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.error-panel p{flex:1 0 100%;min-width:0;max-width:100%;color:#7c2d12;font-size:13px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.workbench-shell{display:grid;grid-template-columns:minmax(218px,248px) minmax(0,1fr);gap:16px;align-items:start}.module-nav{position:sticky;top:16px;display:grid;gap:8px;border:1px solid #222c3a;border-radius:8px;background:#121b27;padding:10px;box-shadow:0 18px 38px #121b2829}.module-tab{display:grid;grid-template-columns:1fr auto;gap:5px 10px;width:100%;min-height:70px;border:1px solid transparent;background:transparent;color:#d8dee8;justify-items:start;padding:11px 12px;text-align:left}.module-tab:hover:not(:disabled){background:#1a2533;box-shadow:none}.module-tab.active{border-color:#f36f2194;background:#243042;color:#fff}.module-tab span,.module-tab strong{font-size:13px;font-weight:900}.module-tab strong{color:#ffb26f}.module-tab small{grid-column:1 / -1;color:#9aa6b8;font-size:11px;font-weight:700;line-height:1.35}.module-pages{display:grid;gap:16px;min-width:0}.module-pages>.panel,.module-pages>.layout{width:100%;max-width:none;margin:0}.workbench-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 14px;max-width:1440px;margin:22px auto 0;color:#667386;font-size:12px;font-weight:800;line-height:1.45;text-align:center}.workbench-footer a{color:#4b5567;text-decoration:none}.workbench-footer a:hover{color:#c2410c;text-decoration:underline}.layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:16px;align-items:start}.panel{min-width:0;border:1px solid #dde2ea;border-radius:8px;background:#fff;padding:18px;box-shadow:0 14px 30px #121b2812}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title button,.actions button{white-space:nowrap}.form-grid{display:grid;grid-template-columns:1.3fr repeat(3,minmax(120px,1fr));gap:12px}.form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(4,minmax(130px,1fr));margin-bottom:14px;padding:12px;border:1px solid #e4e8ef;border-radius:8px;background:#f8fafc}.advanced-fields{margin-top:12px;border:1px solid #e4e8ef;border-radius:8px;background:#f8fafc}.advanced-fields summary{cursor:pointer;color:#5d6878;font-size:12px;font-weight:900;list-style-position:inside;padding:10px 12px}.advanced-fields .form-grid{padding:0 12px 12px}.filter-advanced{margin-top:-6px;margin-bottom:14px}.rows-advanced{margin-top:-4px;margin-bottom:14px}.rows-panel,.task-panel,.ocr-panel,.notification-panel,.export-panel{margin-top:16px}.dashboard-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.dashboard-stat{display:grid;gap:8px;min-height:118px;width:100%;border:1px solid #e1e6ee;border-radius:8px;background:#f9fbfd;padding:13px;text-align:left;cursor:pointer}.dashboard-stat.ok{border-color:#a6dac2;background:#f1fbf5}.dashboard-stat.warn{border-color:#fec89a;background:#fff7ed}.dashboard-stat:hover:not(:disabled){border-color:#f36f21;box-shadow:0 10px 22px #121b2814;transform:translateY(-1px)}.dashboard-stat span{color:#667386;font-size:12px;font-weight:900}.dashboard-stat strong{color:#172033;font-size:24px;font-weight:950;line-height:1}.dashboard-stat small{color:#667386;font-size:12px;font-weight:700;line-height:1.35}.dashboard-stat em{align-self:end;color:#c2410c;font-size:12px;font-style:normal;font-weight:950}.pill,.message,.badge{display:inline-flex;align-items:center;width:fit-content;min-height:28px;border-radius:999px;padding:0 10px;font-size:12px;font-weight:900;white-space:nowrap}.message{flex:1 1 280px;width:auto;max-width:100%;justify-content:center;line-height:1.35;overflow-wrap:anywhere;padding-block:6px;white-space:normal}.pill.ok,.message.success,.badge.valid,.badge.generated{background:#dcfce7;color:#166534}.message.info{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.pill.warn,.message.error,.badge.invalid,.badge.warning{background:#ffedd5;color:#9a3412}.badge.invalid{background:#fee2e2;color:#991b1b}.pill.neutral,.badge.neutral{background:#e8edf4;color:#425064}.message{border:1px solid transparent}.message.success{border-color:#bbf7d0}.message.error{border-color:#fed7aa}.task-layout{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(0,1.55fr);gap:16px}.task-list,.ocr-list,.notification-list{min-width:0;border:1px solid #e1e6ee;border-radius:8px;background:#fff;overflow:hidden}.task-list{min-height:260px}.task-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;align-items:center;width:100%;min-height:64px;border-bottom:1px solid #edf1f5;border-radius:0;background:#fff;color:#263244;font-size:12px;font-weight:800;justify-items:start;padding:9px 10px}.task-row:hover:not(:disabled){background:#f8fafc;box-shadow:none;transform:none}.task-row.active{background:#fff3e7;color:#9a3412}.task-row-no{color:#182235;font-size:13px;font-weight:900}.task-row-status{justify-self:end;border-radius:999px;background:#eef2f7;color:#334155;padding:3px 8px}.task-row.active .task-row-status{background:#ffedd5;color:#9a3412}.task-row-meta{color:#738095;font-weight:750}.task-row-cargo{justify-self:end;color:#4b5567}.task-row span,.ocr-row span,.notification-row span{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-row-meta,.task-row-cargo{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.35}.task-detail{display:grid;gap:14px}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #edf1f5;padding-bottom:12px}.detail-head p{margin-top:6px;color:#627086;font-size:13px;font-weight:700;line-height:1.45}.detail-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.detail-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.detail-summary-grid>div{display:grid;gap:5px;min-width:0;border:1px solid #e6eaf1;border-radius:8px;background:#f8fafc;padding:9px 10px}.detail-summary-grid span{color:#667386;font-size:12px;font-weight:900}.detail-summary-grid strong{color:#1f2937;font-size:13px;overflow-wrap:anywhere}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.action-box{display:grid;align-content:start;gap:10px;border:1px solid #e1e6ee;border-radius:8px;background:#fbfcfe;padding:12px}.dispatch-box{grid-column:span 2;background:#fffaf5;border-color:#fed7aa}.dispatch-hint{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;padding:8px}.dispatch-hint span{color:#9a3412;font-size:12px;font-weight:850;line-height:1.35}.dispatch-hint button{min-height:38px;padding:0 10px;background:#fff;color:#c2410c;box-shadow:none}.dispatch-selection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dispatch-selection>div{display:grid;gap:4px;min-width:0;border:1px solid #e6eaf1;border-radius:8px;background:#fff;padding:9px 10px}.dispatch-selection span{color:#667386;font-size:12px;font-weight:900}.dispatch-selection strong{color:#1f2937;font-size:14px;overflow-wrap:anywhere}.dispatch-selection small{color:#667386;font-size:12px;font-weight:750;line-height:1.35}.danger-box{border-color:#f3c4c4;background:snow}.danger-box button{background:#fff1f2;color:#b91c1c}.danger-box button:hover:not(:disabled){background:#ffe4e6;box-shadow:0 8px 18px #b91c1c1a}.backfill-box button{background:#263244}.backfill-box button:hover:not(:disabled){background:#111827;box-shadow:0 8px 18px #1118271f}.check{display:flex;align-items:center;gap:8px;min-height:38px;cursor:pointer}.check input{width:20px;min-height:20px;accent-color:#f36f21}.logs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.logs>div{min-width:0;border-top:1px solid #edf1f5;padding-top:10px}.logs p{margin-top:6px;color:#627086;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.ocr-layout{display:grid;grid-template-columns:minmax(390px,1fr) minmax(0,1fr);gap:16px}.ocr-list{min-height:220px}.ocr-row{display:grid;grid-template-columns:minmax(120px,1fr) 132px 112px 116px;gap:8px;align-items:center;width:100%;min-height:46px;border-bottom:1px solid #edf1f5;border-radius:0;background:#fff;color:#263244;font-size:12px;font-weight:800;justify-items:start;padding:0 10px}.ocr-row:hover:not(:disabled){background:#f8fafc;box-shadow:none;transform:none}.ocr-row.active{background:#eef2ff;color:#3730a3}.ocr-review{display:grid;gap:12px;border:1px solid #e1e6ee;border-radius:8px;background:#fbfcfe;padding:12px}.ocr-evidence{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:10px}.ocr-evidence>div{display:grid;gap:5px;min-width:0;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;padding:10px}.ocr-preview-placeholder{display:grid;place-items:center;min-height:96px;border:1px dashed #fdba74;border-radius:8px;background:#fff;text-align:center}.ocr-preview-placeholder strong{color:#7c2d12;font-size:14px}.ocr-preview-placeholder small{color:#9a3412}.ocr-confidence-card strong{color:#7c2d12;font-size:22px;line-height:1.15}.ocr-failure-card{background:#fff1f2;border-color:#fecdd3}.ocr-failure-card span,.ocr-failure-card strong,.ocr-failure-card small{color:#9f1239}.ocr-evidence span{color:#9a3412;font-size:12px;font-weight:900}.ocr-evidence strong{color:#7c2d12;font-size:13px;overflow-wrap:anywhere}.ocr-evidence small{color:#9a3412;font-size:12px;font-weight:750;line-height:1.45}.ocr-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.notification-list{overflow-x:auto}.notification-filters{grid-template-columns:minmax(140px,.85fr) minmax(140px,.85fr)}.notification-row{display:grid;grid-template-columns:minmax(170px,1.15fr) 108px minmax(140px,.95fr) 132px 100px 64px minmax(220px,1.45fr) 82px;gap:8px;align-items:center;min-width:1050px;border-top:1px solid #edf1f5;padding:9px 10px;color:#263244;font-size:12px;font-weight:750}.notification-row.header{border-top:0;background:#f8fafc;color:#667386;font-weight:900}.notification-row button{min-height:38px}.notification-task{color:#182235;font-weight:900}.notification-row .notification-message{color:#4b5567;line-height:1.35;overflow:visible;overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.notification-action{justify-self:stretch}.notification-row .badge{justify-self:start}.muted-action{display:inline-flex;align-items:center;justify-self:stretch;border-radius:6px;background:#eef2f7;color:#667386;min-height:38px;justify-content:center}.export-filters{grid-template-columns:repeat(4,minmax(130px,1fr))}.export-result{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.export-result>div{display:grid;gap:5px;min-width:0;border:1px solid #e6eaf1;border-radius:8px;background:#f8fafc;padding:10px}.export-result span{color:#667386;font-size:12px;font-weight:900}.export-result strong{color:#1f2937;font-size:13px;overflow-wrap:anywhere}.inline-link{display:inline-flex;align-items:center;min-height:38px;padding:0 10px;border-radius:6px;background:#fff7ed;color:#c2410c;font-weight:950;text-decoration:none}.inline-link:hover{text-decoration:underline}.span-two{grid-column:1 / -1}.empty{margin:18px;color:#667386;font-weight:800}.actions{display:grid;grid-template-columns:minmax(160px,220px) minmax(180px,320px) auto;gap:10px}.import-confirm-actions{grid-template-columns:minmax(180px,320px) auto}.table{min-width:0;overflow-x:auto}.table-row{display:grid;grid-template-columns:52px 110px 120px 140px 150px minmax(220px,1.2fr) minmax(220px,1.2fr) minmax(180px,1fr);gap:8px;align-items:center;min-width:1260px;border-top:1px solid #edf1f5;padding:9px 0}.table-row textarea{min-height:54px;resize:vertical;line-height:1.35}.table-row.header{border-top:0;color:#667386;font-size:12px;font-weight:900}.errors{color:#9a3412;font-size:12px;line-height:1.4;overflow-wrap:anywhere}@media(max-width:1280px){.ocr-layout{grid-template-columns:1fr}}@media(max-width:1120px){.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-layout,.action-grid,.logs,.detail-summary-grid{grid-template-columns:1fr}.dispatch-box{grid-column:auto}.dispatch-hint,.dispatch-selection{grid-template-columns:1fr}}@media(max-width:1100px){.workbench{padding:16px}.topbar,.login-strip,.workbench-shell,.layout{display:grid;grid-template-columns:1fr}.connection-fields,.connection-fields.with-menu,.primary-login,.session-summary{grid-template-columns:1fr}.session-summary details{min-width:0}.module-nav{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.notification-row{grid-template-columns:1fr;min-width:0}.notification-list{display:grid;gap:10px;overflow-x:visible}.notification-row.header{display:none}.notification-row{gap:8px;border:1px solid #e1e6ee;border-radius:8px;background:#fff;padding:10px}.notification-row>span{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:start;width:100%;overflow:visible;text-overflow:clip;white-space:normal}.notification-row>span:before{content:attr(data-label);color:#667386;font-weight:900}.notification-row .badge,.notification-action{justify-self:stretch}}@media(max-width:900px){.module-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.status-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible}.form-grid,.form-grid.compact,.filters,.export-filters,.export-result,.ocr-values,.ocr-evidence,.actions,.detail-summary-grid,.error-panel,.dashboard-grid{grid-template-columns:1fr}.task-row,.ocr-row{grid-template-columns:1fr;min-height:auto;padding:10px}.task-row-status,.task-row-cargo{justify-self:start}.pill,.message{width:100%;justify-content:center;min-height:34px;text-align:center;white-space:normal}.status-strip .message{grid-column:1 / -1}}
