@font-face{font-family:Gellix;src:url(assets/fonts/GellixRegular.otf)}@font-face{font-family:Gellix;src:url(assets/fonts/GellixSemiBold.otf);font-weight:600}:root{--yellow:#fc0;--ink:#363936;--muted:#81847d;--line:#e4e5df;--bg:#f4f5f1}*{box-sizing:border-box}body{margin:0;font:15px Gellix,Arial,sans-serif;color:var(--ink);background:#fff}button,input,select,textarea{font:inherit;color:inherit}button,label.import{cursor:pointer}button{border:0;background:none}button:hover{filter:brightness(.96)}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid #9b7c00;outline-offset:3px}button.primary{background:var(--yellow);padding:14px 20px;font-weight:600;border-radius:5px}button.quiet,.import{padding:10px 12px;font-size:13px;border-radius:4px}.outline{border:1px solid var(--line);padding:12px;border-radius:4px}.full{width:100%}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:14px}.brand{display:flex;gap:23px;align-items:center;text-decoration:none;color:var(--ink)}.brand img{width:110px;height:auto}.brand span{font-size:11px;letter-spacing:2px;border-left:1px solid #ddd;padding-left:22px}.internal{margin-left:auto;color:#777;font-size:12px;display:flex;align-items:center;gap:10px}.internal i{width:6px;height:6px;background:#85977f;border-radius:50%}.internal span{color:#ccc;margin:0 10px}.projectbar{display:flex;align-items:center;gap:12px;padding:20px 28px;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--muted);font-weight:600}.projectbar select{font-weight:600;font-size:19px;border:0;background:none;padding:4px 25px 0 0;max-width:340px}.spacer{flex:1}.save-state{font-size:11px;color:var(--muted)}.workspace{display:grid;grid-template-columns:245px minmax(380px,1fr) 320px;min-height:calc(100vh - 165px)}.positions{border-right:1px solid var(--line);padding:25px 15px}.panel-title{display:flex;align-items:center;justify-content:space-between;padding:0 9px 18px}h2{font-size:19px;margin:6px 0}h2 span{font-size:12px;background:#ededE7;padding:3px 7px;border-radius:20px;margin-left:7px}.square{background:var(--yellow);font-size:23px;width:31px;height:31px;border-radius:4px}.item{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid transparent;width:100%;padding:10px 7px;margin-bottom:5px;border-radius:5px}.item:hover{background:#f7f8f4}.item.active{background:#fffbed;border-color:#eadc9c}.thumb{width:55px;height:58px;flex-shrink:0}.thumb svg{width:100%;height:100%}.item strong{font-size:13px}.item small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.status-dot{width:5px;height:5px;border-radius:50%;background:#cf9a35;margin-left:auto;flex-shrink:0}.status-dot.ok{background:#7b9479}.sidebar-note{border-top:1px solid var(--line);padding:25px 8px 10px;margin-top:24px;font-size:13px}.sidebar-note p,.local-note{color:var(--muted);line-height:1.6;font-size:12px}.local-note{padding:15px 8px}.text-button{text-decoration:underline;padding:0;font-size:12px}.drawing-panel{padding:28px 30px;background:var(--bg);min-width:0}.drawing-head{display:flex;justify-content:space-between;gap:10px;align-items:center}h1{font-size:26px;margin:6px 0 20px;letter-spacing:-.7px}.drawing-actions{display:flex;gap:0}.drawing-actions button{font-size:12px;padding:6px}.danger{color:#96614f}#review-banner:empty{display:none}.notice{background:#fff8df;border:1px solid #efe1b6;color:#887029;padding:12px 15px;font-size:12px;line-height:1.5;margin-bottom:15px;border-radius:5px}.notice strong{display:block}.canvas-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.drawing{height:445px;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(#cfd3ca .65px,transparent .65px);background-size:20px 20px;border-radius:6px;margin:0 0 8px}.drawing svg{width:100%;height:100%;max-height:445px}.drawing-legend{display:flex;justify-content:center;gap:20px;font-size:10px;color:#878c83}.drawing-legend span{display:flex;gap:6px;align-items:center}.drawing-legend i{width:10px;height:10px;display:block}.legend-fixed{border:1px solid #8f9b99;background:#e7efed}.legend-open{border-top:1px dashed #758171;transform:rotate(-40deg);margin-top:8px}.legend-selected{border:1px solid #b68e10;background:#fff2bc}.canvas-footer{display:flex;justify-content:space-between;margin:25px 0;font-size:9px;letter-spacing:.7px;color:#8b8e85;gap:20px}.spec-strip{border-top:1px solid #dce0d6;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:22px 0}.spec-strip span{font-size:10px;color:var(--muted);display:block;margin-bottom:7px}.spec-strip strong{font-size:13px;font-weight:400}.inspector{border-left:1px solid var(--line);background:white}.tabs{display:flex;padding:20px 20px 0;gap:24px;border-bottom:1px solid var(--line)}.tabs button{padding:8px 0 17px;color:var(--muted);font-size:13px;border-bottom:2px solid transparent}.tabs .active{color:var(--ink);border-color:var(--yellow)}#controls{padding:22px}.section-label{font-size:11px;letter-spacing:1px;font-weight:600;margin:5px 0 18px}.form-label{display:block;font-size:12px;color:#74796f;margin-bottom:15px}.form-label input,.form-label select,.form-label textarea{display:block;width:100%;margin-top:6px;background:white;border:1px solid #dcded7;padding:10px;border-radius:4px;font-size:13px;min-width:0}.form-label textarea{resize:vertical;min-height:80px}.form-label input[type=color]{height:39px;padding:4px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.divider{border-top:1px solid var(--line);margin:22px 0}.help{font-size:11px;line-height:1.6;color:var(--muted);margin:10px 0 16px}.seg-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.seg-buttons button{border:1px solid var(--line);font-size:12px;border-radius:4px;padding:12px 5px;background:#fafbf7}.field-badge{background:#fff7d5;padding:12px;font-size:12px;margin-bottom:18px;border-radius:4px}.crumb{font-size:11px;margin:8px 0;padding:8px;border:1px solid var(--line);width:100%;text-align:left}.check{display:flex;align-items:center;gap:8px;font-size:12px;margin:12px 0}.check input{accent-color:#ad8b12}.swatch{width:14px;height:14px;border-radius:3px;display:inline-block;vertical-align:middle;border:1px solid #bbb;margin-right:7px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#373c35;color:white;padding:13px 24px;border-radius:6px;box-shadow:0 6px 25px #0002;font-size:13px;z-index:9;display:none}dialog{border:1px solid #ddd;border-radius:10px;padding:30px;width:min(680px,95vw);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#26302566;backdrop-filter:blur(3px)}dialog h2{font-size:25px;margin-bottom:20px}dialog .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;padding:11px 6px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:400}.summary-status{font-size:10px}.empty{padding:50px;text-align:center;color:var(--muted)}@media(min-width:1550px){.workspace{grid-template-columns:270px minmax(380px,1fr) 350px}.drawing{height:560px}.drawing svg{max-height:560px}.drawing-panel{padding:30px 45px}}@media(max-width:1100px){.workspace{grid-template-columns:190px minmax(300px,1fr) 275px}.drawing-panel{padding:22px 16px}.internal{display:none}.modules{margin-right:auto}.projectbar{flex-wrap:wrap}.save-state{display:none}.drawing-head{display:block}.drawing-actions{margin-bottom:10px}.drawing-legend{gap:10px}.canvas-footer{display:block}.canvas-footer span{display:block;margin:6px 0}}@media(max-width:800px){.workspace{grid-template-columns:145px 1fr}.inspector{grid-column:2}.positions{grid-row:1/3;padding:18px 8px}.panel-title{padding:0 4px 12px}.panel-title h2{font-size:14px}.thumb{width:35px}.item{gap:5px}.item strong{font-size:11px}.item small{font-size:9px}.drawing-panel{padding:20px 15px}.drawing{height:350px}.drawing-legend{flex-wrap:wrap}.topbar{padding:0 15px;height:65px;gap:3px}.brand img{width:80px}.brand span{display:none}.projectbar{padding:15px;gap:8px}.projectbar select{max-width:260px;font-size:17px}.projectbar .quiet{font-size:11px;padding:5px}.projectbar .primary{width:100%}.spec-strip{grid-template-columns:1fr;gap:10px;padding:10px 0}.spec-strip span{display:inline;margin-right:8px}.drawing-actions{flex-wrap:wrap}.drawing-legend{display:none}.local-note{font-size:10px}.sidebar-note{padding:18px 2px}.canvas-toolbar{font-size:10px}.canvas-toolbar button{font-size:10px;padding:6px}h1{font-size:23px}.tabs{padding-top:10px}.internal{display:none}}
@media(min-width:801px){.workspace{height:calc(100vh - 165px);min-height:600px;overflow:hidden}.positions,.inspector,.drawing-panel{overflow-y:auto}.drawing-panel{align-self:stretch}.drawing{height:min(42vh,480px);min-height:290px}.positions{scrollbar-width:thin}.inspector{scrollbar-width:thin}}
@media(max-width:600px){.workspace{display:block}.positions{padding:12px;border-right:0;border-bottom:1px solid var(--line)}.panel-title{padding-bottom:8px}.panel-title .eyebrow{display:none}.panel-title h2{margin:0}.positions #item-list{display:flex;overflow-x:auto;gap:6px}.item{width:150px;min-width:150px;margin:0}.positions #add-bottom,.sidebar-note{display:none}.local-note{padding:8px 0 0;margin:0;font-size:10px}.drawing{height:340px}.drawing-panel{padding:20px}.inspector{border-top:1px solid var(--line);border-left:0}.drawing-head{display:flex;align-items:flex-start}.drawing-actions{flex-wrap:wrap;max-width:125px}.drawing-actions button{font-size:10px}.canvas-footer{margin-bottom:10px}.spec-strip{grid-template-columns:1fr}.projectbar .spacer{display:none}.projectbar select{max-width:160px;font-size:16px}.projectbar>.quiet{font-size:10px}.projectbar{gap:5px}}

.drawing-pair{display:flex;align-items:center;width:100%;height:100%;gap:14px}.drawing-pair>div{width:50%;height:100%;display:flex;flex-direction:column;align-items:center}.drawing-pair svg{min-height:0;flex:1}.drawing-caption{font-size:9px;letter-spacing:1px;color:#777f74;padding:10px 0 0}.drawing.with-louvers{background-image:none}@media(max-width:600px){.drawing.with-louvers{height:auto}.drawing-pair{display:block}.drawing-pair>div{width:100%;height:310px}}
#modal:has(.cost-sheet){width:min(1100px,96vw);max-width:1100px}.cost-title{display:flex;justify-content:space-between;align-items:start;gap:16px}.cost-title h2{margin-top:8px}.cost-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:32px;margin-top:24px}.cost-sheet h3{font-size:15px;margin:24px 0 15px}.cost-totals{background:#f4f5f1;padding:24px;align-self:start}.cost-totals>div:not(.eyebrow){display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #d9ddd5;font-size:13px}.cost-totals .cost-grand{font-size:19px!important;display:block!important}.cost-grand strong{display:block;font-size:29px;margin-top:8px}.cost-check{display:flex;gap:10px;align-items:center;font-size:13px;margin:14px 0}.cost-check input{width:17px;height:17px;accent-color:#d4a900}.cost-table{overflow:auto}.cost-table input{min-width:90px;max-width:150px;padding:9px;border:1px solid #d6dbd2;border-radius:3px}.cost-table small{display:block;color:#76806f;font-size:10px;margin-top:5px}@media(max-width:700px){.cost-grid{display:block}.cost-totals{margin-top:20px}.cost-sheet .actions{flex-wrap:wrap}}
.modules{display:flex;gap:4px;margin-left:18px}
.modules a,.modules span{font-size:13px;padding:9px 12px;border-radius:4px;text-decoration:none;color:var(--muted)}
.modules a:hover{background:#f4f5f1;color:var(--ink)}
.modules a[aria-current]{color:var(--ink);font-weight:600;box-shadow:inset 0 -2px 0 var(--yellow);border-radius:4px 4px 0 0}
.modules .soon{opacity:.45;cursor:default}
@media(max-width:800px){.topbar{flex-wrap:wrap;height:auto;padding:10px 15px;row-gap:6px}
.modules{order:9;width:100%;margin:0;overflow-x:auto}
.modules a,.modules span{padding:8px 10px;white-space:nowrap}
}
