:root{--bg:#06090d;--panel:#0e151d;--panel2:#0a1118;--line:#20303d;--text:#f4f7fa;--muted:#8fa0b1;--accent:#55edbd;--accent2:#44a9ff;--warn:#f2bd57;--danger:#ff7777;--shadow:0 18px 55px rgba(0,0,0,.32)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 90% 0,#102118 0,transparent 26%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,select{font:inherit}button,a,.buttonish{touch-action:manipulation}.hidden{display:none!important}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;padding:24px 16px;border-right:1px solid var(--line);background:rgba(7,11,16,.96);backdrop-filter:blur(18px);z-index:40;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 26px}.brand-mark{width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,var(--accent),var(--accent2));color:#04150f;display:grid;place-items:center;font-weight:1000}.brand strong{display:block;font-size:18px;letter-spacing:.08em}.brand span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.sidebar nav{display:grid;gap:7px}.nav-btn{border:1px solid transparent;background:transparent;color:var(--muted);padding:13px;text-align:left;border-radius:13px;cursor:pointer;transition:.16s}.nav-btn:hover,.nav-btn.active{background:#121c25;color:#fff;border-color:#1a2b37}.nav-btn.active{box-shadow:inset 3px 0 var(--accent)}.sidebar-foot{margin-top:auto;color:#607286;font-size:11px;padding:12px;display:grid;gap:4px}.sidebar-foot b{color:#a9bdc9}.main{margin-left:258px;min-width:0;width:calc(100% - 258px)}.topbar{height:72px;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);background:rgba(6,9,13,.88);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.top-title{display:flex;align-items:center;gap:14px;font-weight:900}.top-title small{font-size:10px;color:var(--muted);border:1px solid var(--line);padding:5px 8px;border-radius:99px}.icon-btn{display:none;border:1px solid var(--line);background:var(--panel);color:#fff;border-radius:11px;padding:10px 12px;cursor:pointer}.view{display:none;padding:28px;max-width:1500px;margin:auto}.view.active{display:block}.panel{background:linear-gradient(180deg,rgba(17,26,35,.97),rgba(10,16,22,.97));border:1px solid var(--line);border-radius:21px;padding:22px;box-shadow:var(--shadow)}
h1,h2,p{margin-top:0}h1{font-size:clamp(34px,4.7vw,64px);line-height:.98;margin-bottom:16px;letter-spacing:-.045em}h2{font-size:27px;margin-bottom:5px}.eyebrow{color:var(--accent);font-size:11px;font-weight:1000;letter-spacing:.19em;margin-bottom:8px}.hero{min-height:300px;display:grid;grid-template-columns:1.5fr .7fr;gap:30px;align-items:center;overflow:hidden;position:relative}.hero p,.section-head p,.panel>p{color:var(--muted);max-width:820px;line-height:1.58}.score-card{background:#07110e;border:1px solid #245847;border-radius:18px;padding:24px;display:grid;gap:5px;position:relative}.score-card b{font-size:12px;color:#8fb8ac}.score-card strong{font-size:38px;color:var(--accent)}.score-card span{font-size:11px;color:var(--muted);line-height:1.5}.pulse{position:absolute;right:18px;top:18px;width:10px;height:10px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 8px rgba(85,237,189,.08)}
.actions{display:flex;gap:10px;flex-wrap:wrap}.primary,.ghost,.ai-button,.buttonish{border-radius:13px;padding:12px 15px;border:1px solid transparent;cursor:pointer;font-weight:900;transition:transform .12s,box-shadow .12s,filter .12s,background .12s;position:relative;overflow:hidden}.primary{background:linear-gradient(135deg,var(--accent),#7cf3d0);color:#05251b;box-shadow:0 8px 24px rgba(85,237,189,.12)}.ghost,.buttonish{background:#111a23;color:#fff;border-color:var(--line)}.ai-button{margin-top:12px;background:linear-gradient(135deg,#143026,#10243a);border-color:#2f7a62;color:#bafce6;letter-spacing:.02em}.ai-button:not(:disabled){box-shadow:0 0 0 1px rgba(85,237,189,.1),0 14px 32px rgba(34,152,116,.14)}.ai-spark{margin-right:8px}.primary:hover,.ghost:hover,.ai-button:hover:not(:disabled){filter:brightness(1.08)}.primary:active,.ghost:active,.ai-button:active:not(:disabled),.buttonish:active,.nav-btn:active{transform:scale(.975)}button.pressed,.buttonish.pressed{transform:scale(.965)!important;filter:brightness(1.15)}button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.small{padding:8px 11px;font-size:12px}.full{width:100%}.danger{color:var(--danger)!important}.muted{color:var(--muted)}
.cards{display:grid;gap:14px;margin:14px 0}.cards.four{grid-template-columns:repeat(4,1fr)}.stat{border:1px solid var(--line);background:var(--panel);padding:18px;border-radius:16px}.stat span,.stat small{display:block;color:var(--muted);font-size:11px}.stat strong{font-size:23px;display:block;margin:8px 0}.workflow{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.workflow div{background:#0a1016;border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:9px}.workflow b{width:28px;height:28px;border-radius:9px;background:#152a28;color:var(--accent);display:grid;place-items:center}.workflow span{font-size:12px;color:#c6d0da}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.compact{gap:10px}.section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.section-head h1{font-size:44px}.pill{font-size:10px;padding:6px 9px;border-radius:99px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.pill.success{color:var(--accent);border-color:#28584b;background:rgba(85,237,189,.05)}.pill.warning{color:var(--warn);border-color:#5a4821;background:rgba(242,189,87,.05)}
label{display:grid;gap:7px;color:#a9b7c5;font-size:12px;font-weight:800;margin-bottom:12px}input,select{width:100%;border:1px solid var(--line);border-radius:11px;background:#081017;color:#fff;padding:12px;outline:none}input:focus,select:focus{border-color:#3e8c77;box-shadow:0 0 0 3px rgba(85,237,189,.08)}.dropzone{min-height:170px;border:1px dashed #385267;border-radius:17px;background:#091018;display:grid;place-items:center;text-align:center;cursor:pointer;padding:24px;margin:0}.dropzone input,.buttonish input{display:none}.dropzone b{font-size:18px}.dropzone span{color:var(--muted);font-weight:600}.upload-icon{width:48px;height:48px;border-radius:16px;border:1px solid #2d4a59;display:grid;place-items:center;font-size:26px;color:var(--accent);margin-bottom:10px}.preview-wrap{margin-top:12px;border-radius:14px;overflow:hidden;min-height:105px;background:#080d12;border:1px solid var(--line);display:grid;place-items:center}.preview-wrap img{max-width:100%;max-height:520px;display:block}.preview-wrap iframe{width:100%;height:500px;border:0}.empty,.calc-empty{color:var(--muted);padding:25px;text-align:center}.note{font-size:11px!important}.upload-status{margin-top:8px;color:var(--muted);font-size:11px}.ai-progress{display:grid;gap:8px;margin-top:12px}.ai-progress-bar{height:8px;background:#071019;border-radius:99px;overflow:hidden;border:1px solid var(--line)}.ai-progress-bar i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));transition:width .2s}.ai-progress span{font-size:11px;color:var(--muted)}
.ai-review{margin-top:14px;border-color:#2c5d4d;background:radial-gradient(circle at 100% 0,rgba(85,237,189,.07),transparent 35%),linear-gradient(180deg,#101a21,#0b1218)}.review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.review-grid label{margin:0}.field-confidence{color:var(--muted);font-size:10px;min-height:13px}.confidence-badge{border:1px solid #2c5d4d;border-radius:14px;padding:10px 14px;background:#081410;text-align:right}.confidence-badge span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.confidence-badge strong{display:block;color:var(--accent);font-size:23px}.cross-checks{display:grid;gap:8px;margin-top:16px}.cross{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#091118;font-size:12px}.cross.good{border-color:#2c5d4d}.cross.warn{border-color:#604d28}.cross b{min-width:18px}.ocr-details{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:11px;background:#080d12}.ocr-details summary{cursor:pointer;color:#abc0cf;font-size:12px;font-weight:800}.ocr-details pre{white-space:pre-wrap;word-break:break-word;color:#7f98a9;font-size:10px;max-height:250px;overflow:auto}.review-actions{margin-top:16px}.result-panel{margin-top:14px}.result-actions{margin-top:14px}.calc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.calc-step{background:#081017;border:1px solid var(--line);border-radius:14px;padding:16px}.calc-step span{font-size:10px;color:var(--muted);display:block}.calc-step strong{font-size:24px;display:block;margin:6px 0}.calc-step code{color:var(--accent);font-size:11px;line-height:1.45}.calc-error{display:grid;gap:7px;padding:18px;border:1px solid rgba(255,119,119,.45);background:rgba(255,119,119,.08);border-radius:14px;color:#ffd2d2}.calc-error span{font-size:12px;color:#d8a6a6}.good-note{color:#8fd9c0!important}
.system-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:14px}.system-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;cursor:pointer;transition:.16s}.system-card:hover,.system-card.active{transform:translateY(-2px);border-color:#356958}.system-card b{display:block;margin:7px 0}.system-card span{font-size:10px;color:var(--accent)}.system-card small{display:block;color:var(--muted);line-height:1.45}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.specs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.spec{background:#081017;border:1px solid var(--line);border-radius:12px;padding:12px}.spec span{display:block;font-size:10px;color:var(--muted)}.spec b{display:block;margin-top:5px}.bullet-list{margin:0;padding-left:18px;color:#c1ccd6;line-height:1.6;font-size:13px}.link-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.link-card{display:block;text-decoration:none;background:var(--panel);border:1px solid var(--line);color:#fff;border-radius:16px;padding:18px;margin-bottom:14px}.link-card b{display:block}.link-card span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.status-stack{display:grid;gap:8px;justify-items:end}.approval-hero{display:flex;justify-content:space-between;gap:20px}.approval-hero h1{font-size:42px}.check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.check-item{background:#081017;border:1px solid var(--line);border-radius:12px;padding:12px}.check-item label{display:flex;align-items:center;gap:8px;margin:0}.check-item input{width:auto}.data-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:12px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px}.data-table th{color:var(--muted);font-size:10px}.stick{border:1px solid var(--line);background:#081017;padding:14px;border-radius:14px;margin-bottom:9px}.stick-head{display:flex;justify-content:space-between;font-size:12px;margin-bottom:9px}.bar{height:14px;background:#15202a;border-radius:99px;overflow:hidden}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2))}.stick-cuts{font-size:11px;color:#a9bac9;margin-top:8px}.row-card{display:grid;grid-template-columns:1.2fr repeat(3,1fr) auto;gap:8px;align-items:end;border:1px solid var(--line);padding:12px;border-radius:13px;margin-bottom:9px}.row-card label{margin:0}.row-card button{height:41px}.version-box{border:1px solid var(--line);border-radius:15px;background:#081017;padding:16px;margin-bottom:14px}.version-box span,.version-box small{display:block;color:var(--muted);font-size:10px}.version-box strong{display:block;font-size:23px;margin:5px 0}
.toast-host{position:fixed;right:16px;bottom:16px;z-index:100;display:grid;gap:8px;pointer-events:none}.toast{min-width:230px;max-width:360px;background:#111c24;border:1px solid #2d4352;border-radius:13px;padding:12px 14px;box-shadow:var(--shadow);font-size:12px;animation:toastIn .18s ease}.toast.good{border-color:#2c6b57}.toast.warn{border-color:#6a542b}.toast.bad{border-color:#6e3434}@keyframes toastIn{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
.modal-backdrop{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.72);backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px}.modal{width:min(520px,100%);border:1px solid #2b4c42;background:linear-gradient(180deg,#111c22,#0a1117);border-radius:24px;padding:25px;box-shadow:0 30px 90px rgba(0,0,0,.6)}.update-modal{text-align:center}.update-orb{width:66px;height:66px;border-radius:22px;margin:0 auto 14px;background:linear-gradient(145deg,var(--accent),var(--accent2));color:#061811;display:grid;place-items:center;font-size:36px;font-weight:1000}.update-modal p{color:var(--muted)}.update-notes{display:grid;gap:7px;text-align:left;margin:14px 0}.update-notes div{border:1px solid var(--line);border-radius:11px;padding:9px 11px;background:#081017;font-size:11px;color:#b9c8d2}.modal-actions{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:16px}.update-modal small{display:block;color:#6f8291;margin-top:12px}
@media(max-width:1100px){.system-grid{grid-template-columns:repeat(2,1fr)}.cards.four{grid-template-columns:repeat(2,1fr)}.workflow{grid-template-columns:repeat(3,1fr)}.review-grid{grid-template-columns:repeat(2,1fr)}.calc-grid{grid-template-columns:repeat(2,1fr)}.check-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar{transform:translateX(-105%);transition:.2s;width:min(82vw,290px)}.sidebar.open{transform:none}.main{margin-left:0;width:100%}.topbar{height:68px;padding:0 13px}.icon-btn{display:block}.view{padding:13px}.panel{padding:16px;border-radius:18px}.hero{grid-template-columns:1fr;padding:18px}.grid.two,.grid.three,.review-grid,.calc-grid,.detail-grid{grid-template-columns:1fr}.top-grid{display:flex!important;flex-direction:column}.cards.four{grid-template-columns:1fr 1fr}.system-grid{grid-template-columns:1fr}.workflow{grid-template-columns:1fr 1fr}.section-head h1,.approval-hero h1{font-size:31px}.approval-hero{display:block}.status-stack{justify-items:start;margin-top:14px}.check-grid{grid-template-columns:1fr}.row-card{grid-template-columns:1fr 1fr}.row-card>button{grid-column:span 2}.top-title small{display:none}.preview-wrap img{max-height:420px}.confidence-badge{text-align:left}.section-head{gap:10px}.ai-review .section-head{display:block}.ai-review .confidence-badge{margin-top:12px}.result-panel{scroll-margin-top:80px}.calc-step strong{font-size:31px}.calc-step code{font-size:12px}.modal-actions{grid-template-columns:1fr}.stack-mobile{display:grid}.toast-host{left:12px;right:12px;bottom:12px}.toast{max-width:none;min-width:0}.data-table{display:block;overflow-x:auto}.approval-hero{display:block}}

/* ===== V1.3 BOM IQ ===== */
.bom-review{margin-top:22px}
.bom-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}
.bom-stat{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:5px}
.bom-stat span{font-size:.72rem;letter-spacing:.13em;color:var(--muted)}
.bom-stat b{font-size:1rem}
.bom-warning{grid-column:1/-1;border:1px solid rgba(255,190,70,.3);background:rgba(255,190,70,.08);border-radius:14px;padding:12px;color:#ffd88b}
.bom-rows{display:flex;flex-direction:column;gap:10px;margin:14px 0}
.bom-row{display:grid;grid-template-columns:72px minmax(105px,.7fr) minmax(210px,1.7fr) minmax(90px,.65fr) 76px;gap:10px;align-items:end;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:17px;padding:12px;position:relative;overflow:hidden}
.bom-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:rgba(255,255,255,.15)}
.bom-row.shop:before{background:var(--accent)}
.bom-row.manufacturer:before{background:#75a7ff}
.bom-row.review:before{background:#ffc35c}
.bom-row label{margin:0}
.bom-use{display:flex!important;flex-direction:column;align-items:center!important;justify-content:center;gap:7px;height:100%;min-height:58px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02);font-size:.7rem;letter-spacing:.1em}
.bom-use input{width:22px;height:22px;accent-color:var(--accent)}
.bom-basis{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;border-top:1px solid var(--line);padding-top:9px;color:var(--muted)}
.bom-basis small{line-height:1.45}
.basis-pill{white-space:nowrap;font-size:.63rem;font-weight:850;letter-spacing:.08em;border-radius:999px;padding:5px 8px;border:1px solid var(--line)}
.basis-pill.shop{color:var(--accent);border-color:rgba(80,231,188,.3);background:rgba(80,231,188,.07)}
.basis-pill.manufacturer{color:#9bc2ff;border-color:rgba(117,167,255,.3);background:rgba(117,167,255,.07)}
.basis-pill.review{color:#ffd27a;border-color:rgba(255,195,92,.3);background:rgba(255,195,92,.07)}
.bom-conditionals{margin-top:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02);padding:12px}
.bom-conditionals summary{cursor:pointer;font-weight:800}
.conditional-part{display:grid;grid-template-columns:170px 1fr;gap:4px 12px;padding:10px 4px;border-bottom:1px solid var(--line)}
.conditional-part b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--accent)}
.conditional-part small{grid-column:2;color:var(--muted);line-height:1.4}
.manufacturer-notes{padding:12px 4px 2px;color:var(--muted);line-height:1.6}
@media(max-width:900px){.bom-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bom-row{grid-template-columns:64px 1fr 1fr}.bom-desc{grid-column:2/-1}.bom-basis{grid-column:1/-1}}
@media(max-width:560px){.bom-summary{grid-template-columns:1fr 1fr}.bom-row{grid-template-columns:58px 1fr 72px}.bom-row .bom-desc{grid-column:1/-1;order:2}.bom-row label:nth-of-type(2){grid-column:2/4}.bom-basis{grid-column:1/-1}.conditional-part{grid-template-columns:1fr}.conditional-part small{grid-column:1}.result-actions{flex-wrap:wrap}.result-actions #generateBom{width:100%}}

/* ===== V1.4 PROJECT IQ ===== */
textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#081017;color:#fff;padding:12px;outline:none;resize:vertical;font:inherit}textarea:focus{border-color:#3e8c77;box-shadow:0 0 0 3px rgba(85,237,189,.08)}
.nav-btn{display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-badge{min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:#ff6b6b;color:#fff;font-size:10px;font-weight:1000;padding:0 6px}
.jobs-head{align-items:center}.jobs-toolbar{display:grid;grid-template-columns:1.5fr 220px 1fr;gap:12px;align-items:end;margin-bottom:14px}.jobs-toolbar label{margin:0}.sync-state{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sync-state small{color:var(--muted)}
.jobs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.job-card{border:1px solid var(--line);background:linear-gradient(180deg,#0e171f,#091017);border-radius:18px;padding:16px;display:grid;gap:12px;cursor:pointer;transition:.15s}.job-card:hover{transform:translateY(-2px);border-color:#315b4e}.job-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.job-card h3{margin:0;font-size:18px}.job-card small,.job-card p{color:var(--muted);font-size:11px;margin:0}.job-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.job-meta div{border:1px solid var(--line);background:#081017;border-radius:11px;padding:9px}.job-meta span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.job-meta b{display:block;margin-top:4px;font-size:12px}.status-chip{font-size:9px;border-radius:99px;padding:6px 8px;border:1px solid var(--line);white-space:nowrap}.status-FIELD_SUBMITTED{color:#ffd27a;border-color:#655026}.status-AI_REVIEW{color:#8ec5ff;border-color:#345873}.status-SHOP_REVIEW{color:#c9b3ff;border-color:#4f4270}.status-APPROVED,.status-FAB_READY{color:var(--accent);border-color:#28584b}.status-CUTTING{color:#ffb172;border-color:#6b4427}.status-COMPLETE{color:#c7d3dc;border-color:#3c4a55}.job-detail-modal{width:min(760px,100%);max-height:88vh;overflow:auto}.close-btn{display:block!important;padding:6px 10px;font-size:25px}.job-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.job-detail-grid div{border:1px solid var(--line);border-radius:11px;padding:10px;background:#081017}.job-detail-grid span{display:block;color:var(--muted);font-size:9px}.job-detail-grid b{display:block;margin-top:3px}.job-file-links{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.job-file-links a{font-size:11px}
.field-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}.field-hero h1{font-size:44px}.file-list{display:grid;gap:8px;margin:12px 0}.file-item{border:1px solid var(--line);border-radius:11px;padding:10px;background:#081017;display:flex;justify-content:space-between;gap:10px;font-size:11px}.file-item span{color:var(--muted)}.check-line{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);border-radius:12px;padding:11px;background:#081017}.check-line input{width:auto;margin-top:2px}
.ai-evidence-grid{margin-top:14px}.evidence-stack{display:grid;gap:7px}.evidence-item{border:1px solid var(--line);background:#081017;border-radius:11px;padding:10px;font-size:11px;color:#b9c8d2}.evidence-item b{color:#fff}.evidence-item.warn{border-color:#66522b;color:#ffd88b}
.drawing-canvas{border:1px solid var(--line);background:#05090c;border-radius:16px;min-height:260px;display:grid;place-items:center;overflow:auto;padding:12px}.drawing-canvas svg{max-width:100%;height:auto}.drawing-legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:10px}
.server-status-box{border:1px solid var(--line);background:#081017;border-radius:13px;padding:14px;margin-bottom:12px;display:grid;gap:5px}.server-status-box b{color:var(--accent)}.server-status-box small{color:var(--muted)}
.custom-choice-note{font-size:10px;color:var(--warn);margin-top:-5px;margin-bottom:10px}.qty-multiplier{color:var(--accent);font-weight:900}.buttonish{display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none}.buttonish:hover{filter:brightness(1.08)}
@media(max-width:1100px){.jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jobs-toolbar{grid-template-columns:1fr 200px}.jobs-toolbar .sync-state{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:760px){.jobs-grid{grid-template-columns:1fr}.jobs-toolbar{grid-template-columns:1fr}.jobs-toolbar .sync-state{grid-column:auto}.field-hero{display:block}.field-hero .pill{display:inline-block;margin-top:10px}.job-detail-grid{grid-template-columns:1fr 1fr}.ai-evidence-grid{grid-template-columns:1fr!important}.jobs-head{display:block}.jobs-head .actions{margin-top:12px}.section-head.jobs-head h1{font-size:34px}}
@media(max-width:480px){.job-detail-grid{grid-template-columns:1fr}.cards.four{grid-template-columns:1fr 1fr}.workflow{grid-template-columns:1fr 1fr}}

/* ===== V1.5 DRAW IQ PART MAP ===== */
.part-map-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:14px;align-items:stretch}
.part-inspector{border:1px solid var(--line);background:linear-gradient(180deg,#0b141b,#081017);border-radius:16px;padding:17px;min-height:260px;display:flex;flex-direction:column;align-items:flex-start}
.part-inspector h3{font-size:24px;margin:2px 0 7px}.part-inspector p{color:var(--muted);font-size:12px;line-height:1.55;margin:10px 0 14px}
.part-number{font:900 20px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--accent);border:1px solid #2c5d4d;background:#07120f;border-radius:10px;padding:8px 10px;min-width:120px}
.part-inspector-meta{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.part-meta{border:1px solid var(--line);background:#070d12;border-radius:11px;padding:10px}.part-meta span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.part-meta b{display:block;font-size:12px;margin-top:5px;line-height:1.35}
.drawing-canvas svg .part{cursor:pointer;transition:opacity .14s,filter .14s,stroke-width .14s,fill .14s}.drawing-canvas svg .part:hover{filter:drop-shadow(0 0 6px rgba(85,237,189,.55))}.drawing-canvas svg .part.dimmed{opacity:.16}.drawing-canvas svg .part.selected{filter:drop-shadow(0 0 9px rgba(85,237,189,.85))}.drawing-canvas svg .part-hit{stroke:transparent;fill:transparent;pointer-events:stroke;cursor:pointer}
.drawing-canvas svg .jamb-part,.drawing-canvas svg .mull-part{stroke:#55edbd}.drawing-canvas svg .head-part{stroke:#7ab7ff}.drawing-canvas svg .sill-part{stroke:#ffce72}.drawing-canvas svg .inside-stop-part{stroke:#b99cff}.drawing-canvas svg .pan-part{stroke:#ff8f8f}.drawing-canvas svg .glass-stop-part{stroke:#8ce6ff}.drawing-canvas svg .glass-part{fill:rgba(68,169,255,.08);stroke:#31536c}.drawing-canvas svg .part.selected{stroke:#ffffff!important;stroke-width:10!important}.drawing-canvas svg .glass-part.selected{fill:rgba(85,237,189,.19)!important;stroke:#fff!important;stroke-width:5!important}
.drawing-canvas svg .member-label{fill:#d9e5ed;font:800 11px ui-sans-serif;text-anchor:middle;pointer-events:none}.drawing-canvas svg .side-label{fill:#8fa0b1;font:800 9px ui-sans-serif;letter-spacing:.08em;pointer-events:none}
.drawing-legend{margin-top:11px;display:flex;gap:7px;flex-wrap:wrap}.legend-chip{border:1px solid var(--line);background:#081017;border-radius:999px;padding:7px 9px;color:#c5d0d9;font-size:10px;font-weight:800;cursor:pointer}.legend-chip:hover,.legend-chip.active{border-color:#3d806b;color:#fff;background:#0c1a18}.legend-chip b{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@media(max-width:930px){.part-map-layout{grid-template-columns:1fr}.part-inspector{min-height:0}.part-inspector-meta{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.part-inspector-meta{grid-template-columns:1fr}.drawing-canvas{padding:4px}.drawing-legend{gap:5px}.legend-chip{padding:6px 8px}}
.drawing-canvas svg .pocket-part{stroke:#c795ff}.drawing-canvas svg .horizontal-part{stroke:#44a9ff}

/* FAB//IQ V1.6 */
.danger-btn{background:rgba(255,73,91,.12);border:1px solid rgba(255,73,91,.55);color:#ff8691;font-weight:900;border-radius:12px;padding:12px 16px;cursor:pointer;transition:.16s ease}
.danger-btn:hover{background:rgba(255,73,91,.2);transform:translateY(-1px)}
.danger-btn:active,.danger-btn.pressed{transform:scale(.97)}
.danger-btn:disabled{opacity:.5;cursor:wait}
#aiDrawing .paired-filler{filter:drop-shadow(0 0 5px rgba(255,211,111,.6))}
#aiDrawing .heavy-mull-part{filter:drop-shadow(0 0 5px rgba(85,237,189,.45))}
.job-card-actions{display:flex;justify-content:flex-end;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}

/* V1.7 system isolation / context */
.system-context{margin:10px 0 14px;border:1px solid rgba(120,170,210,.25);border-radius:14px;background:rgba(12,23,34,.62);padding:12px 14px}
.system-context-head{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:10px}.system-context-head span{font-size:10px;letter-spacing:.12em;color:#7f9db2;font-weight:900}.system-context-head b{font-size:14px;color:#e9f6ff}
.system-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.system-context-grid span{display:flex;flex-direction:column;gap:3px;background:rgba(255,255,255,.035);padding:8px;border-radius:10px}.system-context-grid small{font-size:9px;color:#7390a5;font-weight:800;letter-spacing:.08em}.system-context-grid b{font-size:11px;color:#dbeaf4;line-height:1.25}
.system-context-note{margin-top:10px;border-radius:10px;padding:9px 10px;font-size:11px;font-weight:750;line-height:1.35}.system-context-note.good{background:rgba(65,215,166,.10);color:#7de8c4}.system-context-note.warn{background:rgba(255,185,78,.10);color:#ffd083}.review-system-context{margin-top:0}.warning-step strong{color:#ffd083}.warn-note{border-left:3px solid #f3b75b;padding-left:10px}
@media(max-width:720px){.system-context-grid{grid-template-columns:1fr 1fr}.system-context-head{align-items:flex-start;flex-direction:column;gap:4px}}


/* V1.8 technical center */
.tech-center{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.tech-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}
.tech-title h3{margin:4px 0 6px;font-size:20px}.tech-title p{margin:0;color:var(--muted);max-width:820px;line-height:1.5}
.tech-links{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px}
.tech-section{border:1px solid var(--line);border-radius:14px;background:rgba(9,18,26,.55);margin:10px 0;overflow:hidden}
.tech-section summary{cursor:pointer;padding:15px 17px;font-weight:900;letter-spacing:.04em;color:#dfeaf1;user-select:none}
.tech-section[open] summary{border-bottom:1px solid var(--line)}
.tech-section.critical{border-color:rgba(255,190,75,.35)}
.tech-steps{list-style:none;margin:0;padding:14px 18px 16px;display:grid;gap:10px}
.tech-steps li{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}
.tech-steps li>span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:rgba(88,231,191,.13);color:var(--accent);font-weight:900}
.tech-steps p{margin:3px 0 0;line-height:1.55;color:#c6d3dc}
.tech-section .bullet-list{padding:8px 34px 16px;margin:0}
@media(max-width:700px){.tech-title{display:block}.tech-title .pill{display:inline-flex;margin-top:10px}.tech-links>*{width:100%;text-align:center}.tech-section summary{padding:14px}.tech-steps{padding:12px}}
