:root{--olive:#363b2d;--ink:#30372c;--muted:#74796e;--paper:#f7f6f1;--line:#dedfd5;--gold:#a49167;--light:#eaede2}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);border-radius:7px;padding:10px 14px}button:hover{background:var(--light)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--olive);color:white;border-color:var(--olive)}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);margin-top:6px}textarea{min-height:68px;resize:vertical}label{display:block;font-size:12px;font-weight:600;margin-bottom:16px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-1.6px}h2{font-size:17px;font-weight:500;margin-bottom:0}h3{font-size:15px;margin:0}.rail{width:224px;background:var(--olive);color:#eeeedd;position:fixed;inset:0 auto 0 0;padding:30px 20px;display:flex;flex-direction:column}.rail img{width:172px;height:102px;object-fit:contain;margin-bottom:32px}.rail-label{font-size:9px;letter-spacing:1.7px;opacity:.6;margin:16px 0 12px}.rail button{border:0;background:transparent;color:inherit;text-align:left;width:100%;margin-bottom:5px;font-size:12px;overflow-wrap:anywhere}.rail button:hover,.rail button.active{background:#515747}.rail-foot{margin-top:auto;font-size:10px;letter-spacing:2px}.rail-foot span{display:block;font-size:11px;letter-spacing:0;opacity:.6;margin:8px 0}.rail-foot small{letter-spacing:0;opacity:.5;font-size:10px}main{margin-left:224px;padding:0 42px;max-width:1900px}header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.tag{margin-left:22px;border-left:1px solid #c8cabc;padding-left:22px;font-size:10px;color:var(--muted);letter-spacing:1px}.connection{font-size:11px;color:var(--muted)}.connection:before{content:'●';font-size:9px;color:var(--gold);padding-right:7px}.intro{padding:44px 0 28px}.intro h1{font-size:48px;margin:18px 0}.intro p{font-size:15px;color:var(--muted);max-width:560px}.intake-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;margin-bottom:50px}.upload-card,.scope-card,.takeoff-panel,.drawing-panel{border:1px solid var(--line);background:white;border-radius:10px;padding:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:15px}.section-heading>span{font-size:9px;letter-spacing:1.2px;color:var(--muted)}.dropzone{border:1px dashed #a6ac98;background:#f8f9f4;border-radius:8px;display:flex;align-items:center;flex-direction:column;padding:27px 15px;cursor:pointer;margin:16px 0}.dropzone.drag{background:#e5ead8;border-color:var(--olive)}.dropzone strong{font-size:15px;font-weight:500}.dropzone span{font-size:12px;color:var(--muted);margin:4px}.dropzone small{font-size:10px;color:var(--muted);margin-top:14px}.upload-icon{font-size:30px;color:var(--gold);margin-bottom:10px}.wide{width:100%;display:flex;justify-content:space-between}.fine{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 16px}.scope{display:flex;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.scope b{width:44px;height:44px;background:var(--paper);display:grid;place-items:center;font-size:27px;font-weight:400;color:#8d927e}.scope p{font-size:12px;color:var(--muted);margin:5px 0 0}.scope-note{background:var(--light);padding:22px;margin-top:25px;border-radius:7px}.scope-note span{font-size:9px;letter-spacing:1.4px}.scope-note p{font-family:Georgia,serif;font-size:20px;margin:12px 0}.scope-note small{font-size:11px;color:var(--muted)}.file{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding:8px;background:var(--paper);margin-bottom:6px;overflow-wrap:anywhere}.file button{font-size:10px;padding:3px 8px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px 0 20px}.workspace-heading h1{font-size:32px;margin:12px 0}.workspace-heading p{font-size:12px;color:var(--muted)}.actions{display:flex;gap:8px}.actions button{font-size:11px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.stat{background:#fff;border:1px solid var(--line);padding:18px;border-radius:8px}.stat>span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.stat strong{display:block;font-size:27px;font-weight:400;margin:6px 0}.stat small{font-size:10px;color:var(--muted)}.notice{background:#f2ede0;border:1px solid #e4d8b9;border-radius:6px;padding:10px 15px;margin:8px 0;font-size:12px}.review-top{display:flex;align-items:center;justify-content:space-between;margin:20px 0;gap:10px}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{font-size:11px;padding:8px 10px}.filters .active{background:var(--olive);color:white}.inline{display:inline-flex;align-items:center;gap:8px;margin:0 8px 0 0}.inline input{width:125px;margin:0}.workspace-grid{display:grid;grid-template-columns:minmax(330px,1fr) minmax(340px,1.1fr);gap:18px;align-items:start}.drawing-panel{position:sticky;top:16px}.takeoff-panel,.drawing-panel{padding:18px}.row{border:1px solid var(--line);border-radius:7px;margin:12px 0;overflow:hidden}.row.selected{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.row-head{padding:13px;background:#fafbf7;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.row-head strong{font-size:12px}.row-head small{display:block;font-size:10px;color:var(--muted)}.row-body{padding:14px}.row-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.row label{font-size:10px;margin-bottom:10px}.row input,.row select,.row textarea{font-size:12px;padding:8px}.status{font-size:9px;background:#efe8d6;color:#7a6133;padding:4px 7px;border-radius:4px;white-space:nowrap}.status.verified{background:#e5eddc;color:#41642b}.status.excluded{background:#eee;color:#777}.evidence{font-size:11px;background:var(--paper);padding:10px;overflow-wrap:anywhere}.row-actions{display:flex;gap:7px}.row-actions button{font-size:10px;padding:7px 9px}.page-nav{display:flex;justify-content:space-between;align-items:center;margin:10px 0}.page-nav input{width:60px}#drawingWrap{position:relative;line-height:0;border:1px solid var(--line);background:#eee;min-height:90px}#drawing{width:100%;display:block}#overlay{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}#overlay rect{stroke:#ad6e25;fill:#dbae5122;stroke-width:2}#overlay circle{fill:#9b5920}#overlay polyline,#overlay polygon{fill:#a5b58033;stroke:#566637;stroke-width:2}details{border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-size:12px}.measure-actions button{font-size:11px;margin:4px}#progressPanel{background:var(--light);padding:15px;border-radius:8px;font-size:12px}progress{width:50%;height:8px;accent-color:var(--olive);margin-right:14px}#toast{position:fixed;bottom:25px;right:25px;max-width:500px;background:var(--olive);color:white;padding:15px 22px;border-radius:9px;box-shadow:0 4px 20px #0002;z-index:9}footer{font-size:9px;letter-spacing:1px;border-top:1px solid var(--line);padding:25px 0;margin-top:40px;display:flex;justify-content:space-between;color:var(--muted)}footer span{letter-spacing:0}[hidden]{display:none!important}:focus-visible{outline:2px solid #a49167;outline-offset:3px}@media(min-width:1600px){.intro h1{font-size:56px}.intake-grid{max-width:1200px}}@media(max-width:1100px){.rail{width:180px;padding:24px 14px}.rail img{width:150px}main{margin-left:180px;padding:0 24px}.workspace-grid{grid-template-columns:1fr}.drawing-panel{position:static}.workspace-heading,.review-top{align-items:flex-start;flex-direction:column}.intro h1{font-size:39px}}@media(max-width:740px){.rail{position:static;width:auto;display:block;padding:12px 20px}.rail img{height:50px;margin:0}.rail-label,.rail-foot,#projects{display:none}.rail button{width:auto;float:right;margin-top:8px}main{margin:0;padding:0 18px}header{height:65px}.tag{display:none}.intro{padding-top:30px}.intro h1{font-size:37px}.intake-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.actions{flex-wrap:wrap}.workspace-grid{display:block}.drawing-panel{margin-top:18px}footer span{display:none}}
fieldset{border:1px solid var(--line);padding:12px 15px;margin:16px 0;border-radius:6px}legend{font-size:11px;font-weight:600;padding:0 5px}.checks{display:flex;flex-wrap:wrap;gap:10px 20px}.checks label{display:flex;align-items:center;gap:7px;font-size:12px;margin:0}.checks input{width:auto;margin:0}dialog{border:1px solid var(--line);border-radius:12px;width:580px;max-width:92vw;padding:30px;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#171c1970}dialog h2{font-family:Georgia,serif;font-size:28px;margin:12px 0}.stats{grid-template-columns:repeat(5,1fr)}@media(max-width:740px){.stats{grid-template-columns:1fr 1fr}}
.review-desk{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.review-desk>details{border:1px solid var(--line);border-radius:8px;background:white;padding:16px}.review-desk summary{font-size:14px;font-weight:600}.review-card{padding:14px 0;border-top:1px solid var(--line);margin-top:12px}.review-card p{font-size:12px;margin:0 0 10px}.review-card small{display:block;color:var(--muted)}.review-card label{margin-top:8px}.review-card button{font-size:11px;margin:4px 4px 0 0}.issue-line{padding:10px 0;border-top:1px solid var(--line);font-size:12px}.issue-line button{font-size:10px;padding:5px 8px;float:right}.issue-line b{display:block}.issue-line.hold{border-left:3px solid #aa7147;padding-left:9px}.drawing-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px}.drawing-tools button{font-size:10px;padding:7px}.drawing-tools input,.inline input[type=checkbox]{width:auto}.drawing-scroll{max-height:700px;overflow:auto}.drawing-scroll.zoomed #drawingWrap{width:200%;max-width:none}.source-label{font-size:20px;fill:#4e582d;pointer-events:none}#overlay .source-box{stroke:#7b8e54;fill:#839b4520;cursor:pointer;stroke-width:2}#overlay .source-box.selected{stroke:#b76827;fill:#e4a94233;stroke-width:4}#overlay .source-box.reference{stroke:#777;fill:#99999911;stroke-dasharray:6 4}.source-note{font-size:10px;color:#7b6747;margin-bottom:10px}.row fieldset{border:0;padding:0;margin:0}.readiness{background:#f3efdf;padding:10px;font-size:11px;margin:12px 0}@media(max-width:900px){.review-desk{grid-template-columns:1fr}}
#checklist,#conflicts{max-height:420px;overflow:auto}.review-card select{font-size:12px}.review-desk[open]{align-items:start}

/* Product and language choices remain adjacent through intake and export. */
.scope-language-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}.scope-language-grid fieldset{min-width:0;margin:16px 0}.scope-language-grid .checks{display:grid;gap:10px}.scope-language-grid .checks label{align-items:flex-start;line-height:1.5}.scope-language-grid .checks input{margin-top:3px;flex-shrink:0}.scope-language-grid .fine{margin-bottom:12px}#exportDialog{width:800px;max-height:90vh;overflow:auto}@media(max-width:600px){.scope-language-grid{grid-template-columns:1fr;gap:0}.scope-language-grid fieldset{margin:8px 0}}

.processing-card{background:#fff;border:1px solid #d6dcd2;border-radius:16px;padding:32px;margin:24px 0}.processing-card h2{font-size:30px;margin:14px 0 24px}.progress-heading{display:flex;align-items:center;gap:22px}.progress-heading strong{font-size:36px;color:#304d38}#progressPanel progress{display:block;width:100%;height:18px;accent-color:#466a4a;margin:18px 0}#processDetail{line-height:1.6;max-width:850px}

#extractionSummary{background:white;padding:24px;border:1px solid #d6dcd2;border-radius:14px;margin-bottom:24px}.results-scroll{overflow-x:auto}.results-table{width:100%;border-collapse:collapse;font-size:13px}.results-table th,.results-table td{text-align:left;padding:12px;border-bottom:1px solid #ddd;min-width:70px}.results-table th{background:#edf1e9}.reference-text{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.6 inherit}
