:root{--bg:#f5f7fb;--panel:#fff;--ink:#172033;--muted:#718096;--line:#e6eaf0;--accent:#3157d5;--accent2:#5c77e8;--danger:#bd3344;--ok:#14825f;--warn:#a86d00;--shadow:0 16px 45px rgba(28,42,70,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,520px) 1fr;background:linear-gradient(135deg,#f7f9fe 0%,#eef2fb 100%)}.login-panel{padding:9vh 11%;background:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:20px 0 80px rgba(34,49,79,.08);z-index:2}.brand-mark{width:56px;height:56px;border-radius:16px;background:linear-gradient(145deg,var(--accent),#213895);color:white;display:grid;place-items:center;font-weight:800;font-size:26px;box-shadow:0 10px 30px rgba(49,87,213,.28);margin-bottom:24px}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:18px;margin:0}.eyebrow{font-size:11px;letter-spacing:.16em;color:#8490a4;font-weight:800}.login-panel h1{font-size:36px;margin:7px 0 8px}.muted{color:var(--muted)}.stack{display:grid;gap:16px;margin-top:28px}.stack label,.form-grid label{font-size:13px;font-weight:700;color:#4b5870;display:grid;gap:7px}.stack input,.form-grid input,.form-grid select,.form-grid textarea,.toolbar input,.toolbar select{border:1px solid #dce2eb;border-radius:10px;padding:11px 12px;background:white;color:var(--ink);outline:none;transition:.18s}.stack input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.toolbar input:focus{border-color:#91a6ef;box-shadow:0 0 0 3px rgba(49,87,213,.09)}.primary{border:0;border-radius:10px;padding:12px 16px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:white;font-weight:800;box-shadow:0 8px 22px rgba(49,87,213,.22)}.secondary{border:1px solid var(--line);border-radius:10px;padding:10px 13px;background:#fff;color:#33415c;font-weight:700}.danger{background:#fff5f6;color:var(--danger);border:1px solid #f1cdd2}.footnote{font-size:11px;color:#9ba4b5;margin-top:30px}.login-art{position:relative;overflow:hidden;background:radial-gradient(circle at 30% 20%,#7f96ec 0,#3157d5 25%,#182b6e 70%)}.login-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:42px 42px}.hero-card{position:absolute!important;left:16%;top:24%;width:280px!important;background:rgba(255,255,255,.94)!important}.hero-card.second{left:48%;top:54%}.hero-card strong{font-size:28px!important}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#11182a;color:#cbd4e5;padding:22px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:3px 8px 25px;color:#fff}.brand strong,.brand span{display:block}.brand span{font-size:11px;color:#7f8ba2;margin-top:2px}.sidebar nav{display:grid;gap:4px}.sidebar nav button{border:0;background:transparent;color:#9eabc1;text-align:left;border-radius:9px;padding:11px 13px;font-weight:700;display:flex;gap:12px}.sidebar nav button:hover,.sidebar nav button.active{background:#1d2943;color:#fff}.nav-section{font-size:10px;letter-spacing:.14em;color:#65728a;font-weight:800;padding:23px 13px 7px}.sidebar-foot{margin-top:auto;padding:14px 10px;border-top:1px solid #24304a;font-size:12px;color:#7e8aa0;display:flex;align-items:center;gap:8px}.status-dot{width:8px;height:8px;border-radius:99px;background:#2fc38a;box-shadow:0 0 0 4px rgba(47,195,138,.1)}main{min-width:0}.topbar{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px}.topbar h2{font-size:21px;margin:4px 0 0}.userbox{display:flex;align-items:center;gap:9px}.userbox strong,.userbox span{display:block}.userbox span{font-size:11px;color:var(--muted);text-transform:uppercase}.avatar{width:37px;height:37px;border-radius:50%;background:#edf1ff;color:var(--accent);display:grid;place-items:center;font-weight:900}.icon-btn{border:0;background:transparent;color:#778399;font-size:18px;padding:8px}.content{padding:26px 30px 40px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 4px 18px rgba(32,48,80,.035);display:grid;gap:5px}.metric-card span{font-size:12px;color:var(--muted);font-weight:700}.metric-card strong{font-size:30px}.metric-card small{color:#93a0b4}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 18px rgba(32,48,80,.035);margin-top:18px;overflow:hidden}.panel-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-head h3{margin:0;font-size:15px}.panel-body{padding:20px}.toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:14px}.toolbar input{min-width:240px}.toolbar .spacer{flex:1}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#7d899e;text-align:left;background:#fafbfc;padding:11px 13px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:12px 13px;border-bottom:1px solid #edf0f5;vertical-align:middle}.table tr:hover td{background:#fbfcff}.pill{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:10px;font-weight:800;background:#eef2ff;color:#4661c9}.pill.ok{background:#eaf8f2;color:var(--ok)}.pill.warn{background:#fff6de;color:var(--warn)}.pill.bad{background:#fff0f2;color:var(--danger)}.dropzone{border:2px dashed #cfd7e6;border-radius:14px;padding:42px 25px;text-align:center;background:#fbfcff;transition:.2s}.dropzone.drag{border-color:var(--accent);background:#f1f4ff}.dropzone strong{display:block;font-size:18px}.dropzone p{color:var(--muted);margin:7px 0 16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.modal{position:fixed;inset:0;background:rgba(10,16,30,.48);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:50;padding:24px}.modal-card{width:min(720px,100%);max-height:90vh;overflow:auto;background:white;border-radius:16px;box-shadow:var(--shadow);padding:26px;position:relative}.modal-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:26px;color:#7f8a9b}.modal-card h3{margin-top:0}.notice{border-left:3px solid var(--accent);background:#f5f7ff;padding:13px 15px;border-radius:6px;color:#4e5e7a;font-size:13px}.empty{padding:36px;text-align:center;color:#8792a5}.kv{display:grid;grid-template-columns:180px 1fr;gap:9px;font-size:13px}.kv div:nth-child(odd){color:var(--muted)}#toast{position:fixed;right:22px;bottom:22px;z-index:100;display:grid;gap:8px}.toast{background:#172033;color:#fff;padding:11px 15px;border-radius:9px;box-shadow:var(--shadow);font-size:13px;animation:in .2s ease-out}.toast.error{background:#8c2634}@keyframes in{from{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.app{grid-template-columns:78px 1fr}.sidebar .brand div:last-child,.sidebar nav span,.nav-section,.sidebar-foot span:last-child{display:none}.sidebar nav button{justify-content:center}.brand{justify-content:center}}@media(max-width:720px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.app{display:block}.sidebar{height:auto;position:static;flex-direction:row;overflow:auto}.brand,.sidebar-foot,.nav-section{display:none}.sidebar nav{display:flex}.sidebar nav button{white-space:nowrap}.topbar{padding:0 16px}.content{padding:18px 14px}.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.userbox div:nth-child(2){display:none}}
/* PoC: wide offer table, combined filters and ingestion progress. */
.offer-table-wrap{max-height:70vh;overflow:auto}
.offer-table{min-width:2200px}
.offer-table th{vertical-align:top}
.offer-table td{max-width:300px;white-space:normal;overflow-wrap:anywhere}
.offer-table .column-filter{min-width:110px;width:100%;padding:7px;font-size:12px}
.sort-column{border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer;font:inherit;font-weight:600}
#offerSearch{min-width:280px;flex:1}
.settings-tabs{margin-bottom:18px}
.upload-progress{margin-top:14px}
.upload-progress p{margin:5px 0}
.offer-table td:last-child,.offer-table th:last-child{min-width:125px;white-space:nowrap;overflow-wrap:normal}
.offer-table .edit-offer{white-space:nowrap}
.offer-table td:nth-child(9){min-width:240px}
.offer-table .column-filter{border:1px solid #dce2ee;border-radius:7px;background:#fff;color:#17223b}

/* Demo freeze: presentation only, existing views and controls. */
.demo-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(120deg,#edf2ff,#fff);border:1px solid #dfe6f6;border-radius:18px;padding:28px;margin-bottom:24px}
.demo-hero h3{font-size:26px;margin:10px 0}.demo-hero p{color:var(--muted);max-width:670px;line-height:1.6;margin:0}.demo-hero .primary{flex-shrink:0}
.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.demo-actions{display:flex;flex-wrap:wrap;gap:10px}.demo-metrics .metric-card strong{font-size:32px}
.upload-symbol{font-size:32px;color:var(--accent);margin-bottom:10px}.dropzone{margin-top:24px;padding:30px}.dropzone strong{font-size:20px}.dropzone p{color:var(--muted);line-height:1.6}
.upload-progress{padding:20px;background:white;border:1px solid var(--line);border-radius:14px;margin-top:18px}.upload-progress>strong{font-size:16px}.upload-progress>p{font-size:14px;color:#475569;line-height:1.6}
.processing-summary,.offer-header{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;background:#f7f9fd;padding:18px;border-radius:12px;margin:16px 0}
.processing-summary span,.offer-header span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.processing-summary strong,.offer-header strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.offer-header{grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border:1px solid var(--line)}
.modal-card:has(.offer-detail-view){width:min(1180px,95vw);max-width:1180px}.offer-detail-view h3{margin:12px 30px 14px 0;overflow-wrap:anywhere}.offer-detail-view h4{margin:24px 0 12px}.detail-positions{min-width:1050px}.detail-positions td{max-width:260px;white-space:normal}.detail-positions th{white-space:nowrap}
.demo-error{color:#9c3042;background:#fff2f4;border-radius:8px;padding:12px;line-height:1.5;font-size:14px;max-width:650px}.demo-error:empty{display:none}
.main-search{padding:16px;background:#f1f5ff;border-radius:12px;align-items:center;flex-wrap:wrap}.search-label{font-weight:700;color:var(--accent)}.filter-hint{font-size:13px;color:var(--muted);line-height:1.5;margin:14px 0}
.offer-table thead{position:sticky;top:0;z-index:1;background:#f8faff}.offer-table .column-filter{min-width:140px;padding:10px;font-size:13px}.column-filter:focus{outline:2px solid #91a6ef;outline-offset:1px}.column-filter:not(:placeholder-shown){background:#edf2ff;border-color:var(--accent)}.sort-column{min-height:34px}.settings-tabs{padding:8px;background:#eaf0fc;border-radius:12px;width:fit-content}
button:disabled{opacity:.55;cursor:wait}.form-actions{flex-wrap:wrap}a.secondary{text-decoration:none;display:inline-block}
.document-actions,.offer-actions{white-space:nowrap;overflow-wrap:normal;min-width:150px}.action-buttons{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;white-space:nowrap}.icon-action,.icon-btn{box-sizing:border-box!important;width:32px!important;height:32px!important;min-width:32px!important;max-width:32px!important;min-height:32px!important;max-height:32px!important;flex:0 0 32px!important;display:inline-flex;align-items:center;justify-content:center;padding:0!important;margin:0;border:1px solid #dce2eb;border-radius:8px;background:#fff;color:#4a5872;text-decoration:none;cursor:pointer;overflow:hidden;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.action-buttons svg,.icon-action svg,.icon-btn svg{box-sizing:content-box!important;width:17px!important;height:17px!important;min-width:17px!important;max-width:17px!important;min-height:17px!important;max-height:17px!important;display:block;fill:none!important;stroke:currentColor!important;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 17px!important;overflow:hidden}.icon-action:hover:not(:disabled),.icon-btn:hover:not(:disabled){background:#f0f4ff;border-color:#9aacec;color:var(--accent)}.icon-action:focus-visible,.icon-btn:focus-visible{outline:2px solid #91a6ef;outline-offset:2px}.icon-action:disabled,.icon-btn:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:900px){.demo-hero{align-items:flex-start;flex-direction:column}.demo-grid{grid-template-columns:1fr}.processing-summary,.offer-header{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.demo-hero{padding:20px}.demo-hero h3{font-size:22px}.processing-summary,.offer-header{grid-template-columns:1fr}.main-search #offerSearch{min-width:0;width:100%}.main-search{align-items:stretch;flex-direction:column}.settings-tabs{width:100%}.settings-tabs button{flex:1}}
.preset-select{display:grid;gap:7px;margin:12px 0 18px;font-size:13px;font-weight:700;color:#4b5870}.preset-select select,.model-input input{border:1px solid #dce2eb;border-radius:10px;padding:11px 12px;background:white;color:var(--ink);font:inherit}.model-input{display:flex;gap:8px;align-items:center}.model-input input{min-width:0;flex:1}.model-input button{white-space:nowrap;padding:9px 11px}.import-files{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.import-files span{padding:8px 12px;background:#eef2fc;border-radius:8px;font-size:13px;overflow-wrap:anywhere}.preview-view{display:flex;flex-direction:column;max-height:82vh}.preview-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}.preview-title h3{overflow-wrap:anywhere;margin:8px 0}.preview-title p{margin:0}.preview-content{min-height:260px;overflow:auto;flex:1;padding:16px 0}.preview-actions{padding-top:12px;border-top:1px solid var(--line)}.document-frame{width:100%;height:min(65vh,800px);border:1px solid var(--line);border-radius:10px}.document-image{display:block;max-width:100%;max-height:65vh;object-fit:contain;margin:auto}.document-text{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;background:#f7f9fd;border:1px solid var(--line);border-radius:10px;padding:18px;max-height:65vh;overflow:auto}.email-headers{display:grid;gap:10px;background:#f7f9fd;border-radius:10px;padding:16px}.email-headers span{display:inline-block;width:90px;color:var(--muted);font-size:12px}.email-headers strong{font-weight:600;overflow-wrap:anywhere}.attachment-list{display:grid;gap:8px}.attachment-list>div{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:9px;overflow-wrap:anywhere}.preview-loading{padding:32px;color:var(--muted)}
