*{box-sizing:border-box} :root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#202b39;background:#f2f4f7;font-size:17px;font-synthesis:none}body{margin:0}button,input,select,textarea{font:inherit}button,.button{border:1px solid #d4dbe3;background:#fff;color:#283647;border-radius:9px;padding:10px 15px;font-weight:550;cursor:pointer;transition:background .15s,box-shadow .15s;white-space:nowrap}button:hover,.button:hover{background:#edf3fa;box-shadow:0 2px 5px #22314b0b}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #78b9ff;outline-offset:2px}.primary{background:#1c6ce4!important;color:#fff!important;border-color:#1c6ce4!important}.primary:hover{background:#175bc4!important}.rail{position:fixed;inset:0 auto 0 0;width:238px;background:linear-gradient(160deg,#222d3c,#151d28);color:#dbe3ee;padding:27px 18px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;gap:10px;align-items:center;font-size:21px;font-weight:650;letter-spacing:-.7px}.brand span:not(.brandmark){font-weight:350;color:#9bc7ff}.brandmark{background:#384b65;border:1px solid #4d6583;border-radius:11px;padding:3px 9px;font-size:32px;color:#b8d6ff}.brand small{display:block;font-size:10px;letter-spacing:1.9px;margin-top:5px;color:#aab6c8}.new-job{margin:30px 0 23px;background:#ffffff0a;border-color:#465369;color:#e6edf7;text-align:left}.rail button:hover{background:#ffffff14;color:#fff}.rail nav{display:grid;gap:6px}.rail nav button{display:flex;align-items:center;gap:12px;font-size:14px;text-align:left;background:none;border:0;color:#8e9db1;padding:14px 12px}.rail nav button span{color:#cbd6e7;font-size:16px}.rail nav button.active{background:#36495f;color:#9fcaff}.rail nav button.active span{color:#fff}.rail b{font-size:12px;margin-left:auto;background:#ffffff14;border-radius:5px;padding:2px 6px}.saved-heading{font-size:10px;letter-spacing:1.4px;color:#8e9eb5;margin:32px 10px 12px}#jobs{overflow:auto;max-height:30vh}#jobs button{background:transparent;border:0;color:#c1ccdb;font-size:14px;white-space:normal;text-align:left;width:100%;padding:10px}.rail-bottom{margin-top:auto;font-size:14px;color:#8e9eb5}.rail-bottom button{color:#b3c5da;font-size:13px;border:0;background:none;padding:0}.pilot{font-size:10px;letter-spacing:1.7px;border:1px solid #526078;padding:5px 7px;border-radius:5px}.rail-bottom p{margin:12px 0}.rail-bottom .pilot{display:inline-block}main{margin-left:238px;padding:0 30px;max-width:2100px}header{display:flex;justify-content:space-between;align-items:center;padding:26px 0 23px;border-bottom:1px solid #dce2e9;gap:12px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.9px;color:#718096}#jobName{display:block;font-size:23px;font-weight:650;letter-spacing:-.6px;background:none;border:0;padding:4px 0;width:440px;max-width:100%}.subline{display:flex;gap:18px;font-size:13px;color:#657387}.header-actions{display:flex;align-items:center;gap:14px}.badge{font-size:12px;font-weight:550;padding:7px 10px;background:#e6ebf1;color:#536174;border-radius:7px}.badge.connected{background:#e4f0e9;color:#386849}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 22px}h1{font-size:28px;letter-spacing:-.8px;margin:0 0 7px;line-height:1.2}h2{font-size:21px;letter-spacing:-.4px}h3{font-size:16px;margin:0 0 14px}.section-heading p{margin:0;color:#68778a;font-size:15px}.workspace{display:grid;grid-template-columns:minmax(400px,1fr) 350px;gap:22px}.card{background:#fff;border:1px solid #dce2e9;border-radius:13px;box-shadow:0 3px 8px #1f314707;overflow:hidden}.cardbar{padding:15px 18px;border-bottom:1px solid #e6ebf0;display:flex;justify-content:space-between;align-items:center;gap:8px}.cardbar b{font-size:16px}.cardbar span{font-size:12px;color:#768397}.cardbar button{padding:6px 10px;font-size:14px}#viewport{position:relative;height:385px;background:radial-gradient(ellipse at 50% 40%,#f9fafc,#eaf0f6);overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#emptyPreview{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:#728298}#emptyPreview h2{color:#3d4d62;margin:14px 0 0}#emptyPreview p{font-size:14px}.empty-icon{font-size:65px;font-weight:200;color:#91a8c5}.view-tools{position:absolute;right:15px;top:18px;background:#fff;padding:5px;border:1px solid #d9e1eb;border-radius:10px;box-shadow:0 4px 10px #23334910;display:grid;gap:4px}.view-tools button{border:0;padding:6px;width:34px;height:34px;font-size:22px;font-weight:400}.view-tools button.selected{background:#e6f0ff;color:#1c6ce4}.view-tools hr{width:23px;border:0;border-top:1px solid #e1e7ef;margin:3px auto}.view-hint{position:absolute;bottom:12px;left:15px;font-size:11px;color:#71839a;pointer-events:none}.uploadbar{display:flex;gap:12px;align-items:center;padding:17px 18px 5px;flex-wrap:wrap}.uploadbar span{font-size:12px;color:#8190a2}.text-button{border:0;padding:5px;font-size:12px;color:#316cae;margin-left:auto}.small{font-size:13px;line-height:1.5;color:#6a7789}.inset{padding:0 18px;margin:10px 0 17px}.form-body{padding:18px;display:grid;gap:15px}label{display:grid;gap:7px;font-size:14px;font-weight:550;color:#536175}input,textarea,select{border:1px solid #d8e0e8;background:#fbfcfe;border-radius:7px;padding:10px 11px;color:#233346;width:100%;min-width:0}textarea{resize:vertical;line-height:1.5}input[type=checkbox]{width:19px;height:19px;accent-color:#1c6ce4}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.two label{font-size:13px}.two select{font-size:13px}.divider{height:1px;background:#e6ebf1}.form-body .small{margin:0}.scope-note{padding:11px 12px;background:#f1f5fa;border-radius:7px;font-size:13px;color:#566981;line-height:1.5}.wide{width:100%}.components-card{margin-top:20px}.component-list{max-height:275px;overflow:auto;padding:10px 15px}.component{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4}.component:last-child{border-bottom:0}.component button:first-child{flex:1;text-align:left;border:0;background:none;padding:4px;white-space:normal}.component strong{display:block;font-size:14px}.component small{font-size:12px;display:block;color:#7d8999;margin-top:3px}.component button:last-child{font-size:12px;padding:7px 9px}.component.selected{background:#edf5ff}.muted{color:#778597;font-size:14px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}th{background:#f7f9fc;color:#68768a;font-size:12px;font-weight:650;padding:14px 9px;white-space:nowrap}td{border-top:1px solid #e9edf2;padding:11px 7px;vertical-align:top}td input,td select{padding:8px 6px;min-width:65px;font-size:15px;background:#fff;border-color:#e6ebf1}td:first-child{min-width:175px}td:first-child input:first-child{font-weight:600}td:first-child input+input{font-size:12px;color:#6b798a;margin-top:5px}td small{font-size:11px;display:block;max-width:220px;color:#8793a3;margin:5px 0}td:last-child button{padding:5px;border:0;font-size:16px}td:nth-child(2),td:nth-child(3){width:100px}td:nth-child(4),td:nth-child(5){width:72px}.boardfooter{padding:15px 18px;display:flex;align-items:center;justify-content:space-between;color:#65758a;font-size:14px}.reviewbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0}.check{display:flex;align-items:center;gap:12px;font-size:15px;color:#43536a;font-weight:400}.check input{flex-shrink:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat{padding:19px 21px;border:1px solid #dce2e9;background:#fff;border-radius:11px}.stat span{font-size:12px;color:#718096;display:block}.stat strong{font-size:30px;letter-spacing:-1px;display:block;margin:5px 0}.stat small{font-size:12px;color:#8490a0}.layout-workspace{display:grid;grid-template-columns:180px 1fr;gap:18px}#sheetList{display:grid;align-content:start;gap:9px}#sheetList button{text-align:left;white-space:normal;padding:14px;font-size:14px}#sheetList button.active{border-color:#82ade9;background:#edf4ff}#sheetList small{display:block;font-size:12px;color:#71829a;margin-top:6px}#sheetViewport{height:430px;background:#f5f7fa;overflow:hidden;touch-action:none;cursor:grab;position:relative}#sheetDrawing{transform-origin:0 0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}#sheetDrawing svg{width:92%;height:90%;overflow:visible}#sheetDrawing svg g{cursor:pointer}#sheetDrawing svg g:hover rect{stroke:#174994;stroke-width:5}.sheet-legend{font-size:12px;color:#718198;padding:14px 18px}.empty-state{padding:55px;text-align:center;color:#6f7d8f}.empty-state h2{color:#394b64}.error-list{color:#9c3835;white-space:pre-line;font-size:14px;line-height:1.6}.feedback-grid{display:grid;grid-template-columns:380px 1fr;gap:22px}.feedback-item{padding:20px;margin-bottom:13px}.feedback-item .tag{color:#376db2;background:#edf4ff;font-size:12px;padding:5px 8px;border-radius:5px}.feedback-item h3{margin:15px 0 8px}.feedback-item p{white-space:pre-wrap;font-size:16px;line-height:1.5}.feedback-item small{color:#718097;font-size:12px}.feedback-item img{max-width:100%;max-height:260px;display:block;margin-top:15px;border-radius:8px}.feedback-item button{font-size:12px;margin-top:12px}.resolved{opacity:.65}#notice{position:sticky;top:10px;z-index:4;background:#e9f2ff;border:1px solid #a9c9ef;color:#254b7d;padding:12px 16px;border-radius:8px;font-size:15px;margin-top:15px;white-space:pre-wrap}#notice.error{background:#fff0ed;border-color:#efb9aa;color:#903c32}footer{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.4px;color:#8793a4;margin:28px 0 20px}dialog{width:min(850px,90vw);border:1px solid #d4dde8;border-radius:12px;padding:20px;box-shadow:0 20px 80px #122c4140}dialog::backdrop{background:#15233466}pre{white-space:pre-wrap;font:14px/1.6 ui-monospace,Consolas,monospace;max-height:60vh;overflow:auto}#aiResult{font:14px/1.6 inherit;background:#f3f6fa;padding:12px;border-radius:8px}[hidden]{display:none!important}@media(min-width:1600px){#viewport{height:470px}.workspace{grid-template-columns:minmax(500px,1fr) 390px}.form-body{padding:22px}main{padding:0 40px}}@media(max-width:1150px){.rail{width:198px;padding:23px 12px}.brand{font-size:18px}main{margin-left:198px;padding:0 20px}.workspace{grid-template-columns:minmax(320px,1fr) 300px;gap:16px}.header-actions{flex-direction:column;gap:7px}#jobName{width:330px}.form-body{padding:15px}#viewport{height:350px}.uploadbar{padding:14px;gap:8px}.uploadbar .primary{font-size:14px}.feedback-grid{grid-template-columns:320px 1fr}.cardbar{padding:14px}}@media(max-width:850px){.rail{position:relative;width:100%;padding:12px 18px;display:block}.brand{display:inline-flex}.rail nav{display:flex;margin-top:12px;overflow:auto}.rail nav button{padding:10px}.rail nav button span{font-size:14px}.new-job{float:right;margin:0}.saved-heading,#jobs,.rail-bottom{display:none}main{margin:0;padding:0 16px}.workspace,.feedback-grid{grid-template-columns:1fr}.brief-column{max-width:none}header{padding:17px 0}#jobName{font-size:20px;width:260px}.section-heading h1{font-size:24px}.layout-workspace{grid-template-columns:1fr}#sheetList{display:flex;overflow:auto}.stats{grid-template-columns:1fr 1fr}.reviewbar{align-items:start;flex-direction:column}.subline{flex-direction:column;gap:3px}}@media print{body{background:#fff}main{margin:0;padding:0}.rail,header,.section-heading button,footer,.reviewbar,#notice,#sheetList,.view-tools{display:none!important}.tab{display:none!important}#layout{display:block!important}.print-sheet{break-inside:avoid;margin:20px 0}.print-sheet svg{width:100%;height:auto;max-height:70vh}.print-table td,.print-table th{padding:5px;font-size:10px}.print-sheet h2{font-size:17px}button{display:none!important}}
.step-back{margin-top:20px;padding:9px 13px;font-size:16px;color:#245da8;border-color:#cbd8e9;background:#fff}.step-back + .section-heading{margin-top:16px}
.drawing-workspace{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px}.drawing-fields{max-height:78vh;overflow:auto}.drawing-fields label{margin-bottom:12px}.drawing-actions{display:flex;flex-wrap:wrap;gap:6px}.drawing-actions button{font-size:14px;padding:8px 10px}#drawingViewport{background:#e1e7ef;height:650px;overflow:auto;padding:20px}#drawingPage{min-width:500px}#drawingPage svg{display:block;max-width:none;box-shadow:0 4px 20px #172c4922}#drawingError{padding:12px}#drawingError:empty{display:none}.snap-point{fill:#3684ed;stroke:white;stroke-width:.25;cursor:crosshair}.snap-point:hover,.snap-point:focus{fill:#e96835;stroke:#e96835}.drawing-file-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.drawing-file-actions .button{font-size:14px}#dimensionList{max-height:120px;overflow:auto}.drawing-fields .check{align-items:flex-start;margin:16px 0}@media(max-width:1150px){.drawing-workspace{grid-template-columns:250px minmax(0,1fr)}#drawingViewport{height:520px;padding:12px}}@media(max-width:850px){.drawing-workspace{grid-template-columns:1fr}.drawing-fields{max-height:none}}
.upload-dialog{max-width:520px;border:1px solid #d4dbe3;border-radius:14px;padding:26px;color:#202b39}.upload-dialog progress{width:100%;height:12px;accent-color:#1c6ce4}.upload-dialog .upload-file{overflow-wrap:anywhere}.upload-dialog::backdrop{background:#15253980}
.model-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.future-feature:disabled{opacity:1;background:#edf0f4;color:#788391;border-color:#dce1e8;cursor:not-allowed;box-shadow:none;white-space:normal}
.drawing-focus .rail,.drawing-focus main>header,.drawing-focus main>footer{display:none}.drawing-focus main{margin:0;max-width:none;padding:0 16px}.drawing-focus #drawings>.section-heading{margin:10px 0 12px}.drawing-focus #drawings h1{font-size:22px}.drawing-focus #drawings>.step-back{margin-top:10px;font-size:14px}.drawing-focus #drawingViewport{height:calc(100vh - 260px);min-height:430px}.tools-collapsed .drawing-fields{display:none}.tools-collapsed .drawing-workspace{grid-template-columns:minmax(0,1fr)}.drawing-focus .drawing-file-actions{margin:8px 0}.drawing-focus .drawing-workspace>div>p{margin:5px 0}.drawing-focus .drawing-fields{max-height:calc(100vh - 130px)}
.sample-guide{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#eaf2ff;border:1px solid #c4d9f6;border-radius:12px;padding:16px 18px;margin-top:20px}.sample-guide strong{font-size:18px;color:#244d80}.sample-guide p{font-size:15px;margin:6px 0}.sample-guide small{color:#536b86;font-size:13px}.sample-guide-actions{display:flex;gap:8px;flex-wrap:wrap}.sample-guide-actions button{font-size:14px;white-space:normal}.sample-legend{display:flex;gap:6px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid #dce2e9}.sample-legend:empty{display:none}.sample-legend button{padding:5px 8px;font-size:13px;border:0}.sample-legend span{display:inline-block;padding:3px 5px;border-radius:4px;margin-right:6px;color:#233b56}@media(max-width:1100px){.sample-guide{align-items:flex-start;flex-direction:column}}@media print{.sample-guide,.sample-legend{display:none!important}}
