:root{--bg:#f4f5f6;--panel:#fff;--ink:#1f2a33;--muted:#66727c;--line:#d6dbe0;--accent:#2f6fa8;--accent-ink:#fff;--danger:#b3412f;--toolbar:#1f2a33;--toolbar-ink:#f3f5f7;--plan-bg:#fbfbf9;--grid-minor:#eceeee;--grid-major:#d5d9db;--block-fill:#efe6d6;--block-stroke:#3b3226;--wall-line:#22262a;--wall-layer:#8c949a;--fill-framing:#f1e4c6;--fill-sheathing:#d9c28f;--fill-cladding:#e9ecee;--fill-finish:#fff;--fill-concrete:#d2d2cc;--fill-insulation:#f6dbe2;--room-fill:#fdfcf8;--ghost:#b9c0c6;color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px}@media (prefers-color-scheme:dark){:root{--bg:#15191d;--panel:#1d2329;--ink:#e7ebee;--muted:#9aa5ae;--line:#313a42;--plan-bg:#1a1f24;--grid-minor:#232a30;--grid-major:#2f383f;--block-fill:#3a3329;--block-stroke:#e6dccb;--wall-line:#e8ebee;--wall-layer:#77828b;--fill-framing:#5a4c33;--fill-sheathing:#6d5a35;--fill-cladding:#3b434a;--fill-finish:#2b3238;--fill-concrete:#4a4c4c;--fill-insulation:#5b4048;--room-fill:#1e2328;--ghost:#3c464f}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}button{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:6px;min-height:34px;padding:6px 12px}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button.danger{color:var(--danger);border-color:var(--danger);background:0 0}.loading{color:var(--muted);padding:24px}.app{flex-direction:column;height:100%;display:flex}.app>.workspace{flex:1}.toolbar{padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));background:var(--toolbar);color:var(--toolbar-ink);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar .brand{white-space:nowrap;text-overflow:ellipsis;max-width:40vw;font-weight:600;overflow:hidden}.toolbar .tools{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.toolbar button:not(.primary){color:var(--toolbar-ink);background:0 0;border-color:#46525c}.toolbar .sep{background:#46525c;width:1px;margin:0 2px}.notice{color:#173d5e;border-bottom:1px solid var(--line);background:#e5f0fa;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.notice.error{color:#6d1f12;background:#fbe7e3}.notice.toast{z-index:40;border:1px solid var(--line);border-radius:8px;max-width:min(560px,100vw - 24px);padding:4px 10px;position:fixed;bottom:4px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000026}.notice button{min-height:0;color:inherit;background:0 0;border:none;padding:0 6px;font-size:18px}.tabs{display:none}.workspace{grid-template-columns:1fr 1fr 300px;min-height:0;display:grid}.pane{border-right:1px solid var(--line);min-width:0;min-height:0;position:relative}.pane-panels{background:var(--panel);border-right:none;overflow:auto}.plan-view,.viewport-3d{position:absolute;inset:0}.plan-svg{background:var(--plan-bg);touch-action:none;-webkit-user-select:none;user-select:none;display:block}.viewport-3d canvas{touch-action:none;width:100%;height:100%;display:block}.grid-minor{stroke:var(--grid-minor)}.grid-major{stroke:var(--grid-major)}.origin{stroke:#c0392b;opacity:.6}.block rect{fill:var(--block-fill);stroke:var(--block-stroke);cursor:move}.block.selected rect{stroke:var(--accent);fill:color-mix(in srgb, var(--block-fill) 75%, var(--accent))}.block text{fill:var(--block-stroke);pointer-events:none;font-family:inherit}.block .block-name{font-weight:600}.view-tools{gap:6px;display:flex;position:absolute;bottom:10px;right:10px}.view-tools button{min-width:38px;box-shadow:0 1px 3px #0000001f}.layers-menu{background:var(--panel);border:1px solid var(--line);white-space:nowrap;border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;font-size:14px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 4px 14px #00000026}.layers-menu label{align-items:center;gap:8px;display:flex}.plan-svg.hide-dims :is(.dim-string,[data-testid=opening-tag],[data-testid=plan-dimension],[data-testid=plan-dimension-text]),.plan-svg.hide-text :is(.room-label,[data-testid=plan-note]),.plan-svg.hide-electrical :is([data-testid=plan-electrical],[data-testid=electrical-symbol],.switch-leg,.circuit-tag,.home-run),.plan-svg.hide-fixtures :is([data-testid=plan-fixture],[data-testid=fixture-symbol]),.plan-svg.hide-cabinets :is([data-testid=plan-cabinet],[data-testid=cabinet-symbol],[data-testid=plan-counter],[data-testid=plan-backsplash]),.plan-svg.hide-roof :is(.roof-plane,.roof-line),.plan-svg.hide-marks :is([data-testid=plan-section-mark],[data-testid=plan-section-hit],[data-testid=plan-interior-mark]){display:none}.view-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);pointer-events:none;font-size:12px;font-weight:600;position:absolute;top:8px;left:10px}.panel{border-bottom:1px solid var(--line);padding:12px 14px}.panel h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-size:13px}.hint{color:var(--muted);margin:6px 0;line-height:1.4}.field{grid-template-columns:120px 1fr;align-items:center;gap:4px 8px;margin-bottom:6px;display:grid}.field input{font:inherit;font-variant-numeric:tabular-nums;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;min-width:0;padding:6px 8px;font-size:16px}.field.error input{border-color:var(--danger)}.field small{color:var(--danger);grid-column:2}.inspector .danger{margin-top:8px}.history ol{margin:0;padding:0;list-style:none}.history li{margin:0}.history .row-button{text-align:left;background:0 0;border:none;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;width:100%;min-height:0;padding:6px 4px;display:grid}.history .row-button:hover:not(:disabled){background:var(--bg)}.history .row-button:disabled{opacity:1;font-weight:600}.history li.undone{opacity:.45;text-decoration:line-through}.history li.start .row-button{color:var(--muted);display:block}.history .actor{background:var(--line);border-radius:10px;padding:1px 6px;font-size:11px}.history .actor-ai{color:#4b2a78;background:#e8dcf7}.history .time{color:var(--muted);font-size:12px}.statusbar{padding:4px 12px;padding-bottom:max(4px, env(safe-area-inset-bottom));color:var(--muted);border-top:1px solid var(--line);background:var(--panel);justify-content:space-between;gap:12px;font-size:12px;display:flex}.statusbar a{color:var(--accent)}.drawbar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px;display:flex}.segmented{border:1px solid var(--line);border-radius:7px;display:inline-flex;overflow:hidden}.segmented button{border:none;border-right:1px solid var(--line);border-radius:0;min-height:32px;padding:4px 8px}.segmented button:last-child{border-right:none}.segmented button.active{background:var(--accent);color:var(--accent-ink)}.level-select,.field select{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;min-width:0;padding:5px 8px;font-size:16px}.command{flex:1;min-width:120px}.command input{width:100%;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:6px 10px;font-size:16px}.plan-svg.tool-wall,.plan-svg.tool-box,.plan-svg.tool-door,.plan-svg.tool-window{cursor:crosshair}.room{fill:var(--room-fill)}.fill{stroke:none}.fill-framing{fill:var(--fill-framing);background:var(--fill-framing)}.fill-sheathing{fill:var(--fill-sheathing);background:var(--fill-sheathing)}.fill-cladding{fill:var(--fill-cladding);background:var(--fill-cladding)}.fill-finish{fill:var(--fill-finish);background:var(--fill-finish)}.fill-concrete{fill:var(--fill-concrete);background:var(--fill-concrete)}.fill-insulation{fill:var(--fill-insulation);background:var(--fill-insulation)}.wl{stroke:var(--wall-line);stroke-linecap:square}.wl-layer{stroke:var(--wall-layer)}.opening-sym polyline{stroke:var(--wall-line);stroke-linecap:round}.ghost{stroke:var(--ghost);stroke-dasharray:6 4}.slab{fill:none;stroke:var(--wall-layer)}.hit{fill:#0000;stroke:#0000}.plan-svg.tool-select .hit{cursor:move}.hit.selected{stroke:var(--accent);fill:color-mix(in srgb, var(--accent) 12%, transparent)}.slab.selected{stroke:var(--accent)}.hit-line{fill:none;stroke:#0000;pointer-events:stroke}.plan-svg.tool-select .hit-line{cursor:move}.lot-line{fill:none;stroke:#2f6f3a}.setback-line{fill:none;stroke:#6f8f74}.lot.selected .lot-line{stroke:var(--accent)}.paving{fill:#e4e2dd;stroke:#8a8780}.paving.selected{stroke:var(--accent)}.room-label text,.block-label text{fill:var(--muted);pointer-events:none;font-family:inherit}.block-label text{fill:var(--block-stroke)}.live-dim text{fill:var(--accent);paint-order:stroke;stroke:var(--plan-bg);stroke-width:3px;pointer-events:none;font-weight:600}.chain-pt{fill:var(--accent)}.snap{fill:none;stroke:var(--accent)}.snap-end{stroke:#c0392b}.draw-hint{background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--line);pointer-events:none;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex;position:absolute;top:30px;left:10px;right:10px}.draw-hint button{pointer-events:auto}.draw-hint .error,.error-text{color:var(--danger)}.scope{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:10px;display:flex}.scope small{color:var(--muted);flex-basis:100%}.panel h4{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:12px 0 6px;font-size:12px}.field.readonly span:last-child{font-variant-numeric:tabular-nums}.buttons{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.layers{margin:6px 0;padding:0;font-size:13px;list-style:none}.layers li{align-items:center;gap:6px;padding:2px 0;display:flex}.layers em{color:var(--muted);margin-left:auto;font-style:normal}.swatch{border:1px solid var(--wall-layer);border-radius:2px;width:12px;height:12px;display:inline-block}.walltype .row-button{text-align:left;background:0 0;border:none;justify-content:space-between;width:100%;min-height:0;padding:6px 2px;display:flex}.walltype .row-button em{color:var(--muted);font-style:normal}.walltype-layers{border-left:2px solid var(--line);padding:4px 0 8px 8px}.edit-card{background:var(--panel);border:1px solid var(--line);z-index:5;border-radius:10px;width:290px;max-height:calc(100% - 20px);position:absolute;top:10px;right:10px;overflow:auto;box-shadow:0 6px 24px #0000002e}.edit-card .panel{border-bottom:none}.edit-close{z-index:1;background:0 0;border:none;min-height:0;padding:2px 8px;font-size:20px;position:absolute;top:6px;right:6px}.selection-actions{z-index:2;pointer-events:none;flex-wrap:wrap;gap:6px;display:flex;position:absolute;bottom:58px;left:10px;right:10px}.selection-actions button{pointer-events:auto;box-shadow:0 1px 3px #00000026}p.muted{color:var(--muted);margin:0}@media (width<=820px){.toolbar .tools{flex-wrap:nowrap;gap:4px;width:100%;margin-left:0}.toolbar .tools button{flex:1;padding-left:6px;padding-right:6px}.toolbar .sep{display:none}.tabs{border-bottom:1px solid var(--line);background:var(--panel);display:flex}.tabs button{background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;flex:1}.tabs button.active{border-bottom-color:var(--accent);font-weight:600}.workspace{grid-template-columns:1fr}.pane{border-right:none;display:none}.tab-plan .pane-plan,.tab-3d .pane-3d,.tab-panels .pane-panels{display:block}.toolbar .brand{width:100%;max-width:100%}.toolbar .tools{margin-left:0}.command{flex-basis:100%}.edit-card{border-radius:12px 12px 0 0;width:auto;max-height:60%;inset:auto 0 0}}.bench{grid-template-rows:auto 1fr;height:100%;display:grid}.bench header{background:var(--toolbar);color:var(--toolbar-ink);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.bench header a{color:var(--toolbar-ink)}.bench header button:not(.primary){color:var(--toolbar-ink);background:0 0;border-color:#46525c}.bench-body{grid-template-columns:1fr 360px;min-height:0;display:grid}.bench-canvas{min-height:0;position:relative}.bench-canvas canvas{width:100%;height:100%;position:absolute;inset:0}.bench-results{background:var(--panel);border-left:1px solid var(--line);padding:12px 14px;overflow:auto}.bench-results table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.bench-results td{border-bottom:1px solid var(--line);padding:4px 0}.bench-results td:last-child{text-align:right}.pass{color:#22783a;font-weight:600}.fail{color:var(--danger);font-weight:600}.bench-results pre{white-space:pre-wrap;word-break:break-all;background:var(--bg);border-radius:6px;padding:8px;font-size:11px}@media (width<=820px){.bench-body{grid-template-rows:50vh auto;grid-template-columns:1fr}.bench-results{border-left:none}}.plan-svg.tool-pan,.plan-svg.panning,.plan-svg.panning .hit,.plan-svg.tool-pan .hit{cursor:grab}.temp-dim{pointer-events:none}.temp-dim line{stroke:var(--accent)}.dim-label{font-variant-numeric:tabular-nums;background:var(--panel);min-height:0;color:var(--accent);border:1px solid var(--accent);z-index:4;border-radius:6px;padding:2px 8px;font-size:13px;position:absolute;transform:translate(-50%,-50%)}.dim-label.editing{flex-direction:column;align-items:center;padding:0;display:flex}.dim-label.editing input{text-align:center;width:90px;color:inherit;background:0 0;border:none;font-size:14px}.dim-label.error{border-color:var(--danger)}.dim-label small{color:var(--danger);max-width:200px;padding:2px 6px}.dim-string{pointer-events:none}.dim-string line{stroke:var(--ink,#222)}.dim-text{fill:var(--ink,#222);font-variant-numeric:tabular-nums}.view-tools button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.roof-plane{fill:#5d61680a;stroke:#5d6168}.roof-plane.selected{fill:#3a86c814;stroke:#3a86c8}.roof-plane.side{fill:#3a86c833}.roof-plane.roof-edge{fill:none}.roof-side{border-top:1px solid var(--line,#e3e3e3);flex-wrap:wrap;align-items:center;gap:6px;padding:4px 0;display:flex}.roof-side .row-button{flex:1;justify-content:space-between;gap:8px;display:flex}.roof-side.picked{background:#3a86c814}.roof-side .field{width:100%}.roof-plane.dormer{fill:#5d61681a}.roof-plane.dormer.selected{fill:#3a86c833}.roof-line{stroke:#5d6168;fill:none;pointer-events:none}.porch-post{fill:#f7f6f2;stroke:#333;pointer-events:none}.ceiling-line{fill:none;stroke:#8a8a8a;pointer-events:none}.room-hit{fill:#0000;stroke:none}.room-hit.selected{fill:#3a86c81f;stroke:#3a86c8}.stair-tread{fill:var(--plan-bg);stroke:var(--ink)}.stair-tread.above{fill:none;stroke:var(--muted)}.stair-opening,.stair-rail,.stair-arrow,.stair-break{fill:none;stroke:var(--ink)}.stair-rail{stroke:var(--muted)}.stair-arrowhead{fill:var(--ink)}.stair.selected .stair-tread,.stair.selected .stair-opening{stroke:var(--accent)}.stair-label text{fill:var(--ink);pointer-events:none;font-weight:600}.stair *{pointer-events:none}.checks{margin:6px 0;padding:0;font-size:13px;list-style:none}.checks li{padding:2px 0}.checks li.ok{color:var(--muted)}.checks li.bad{color:#c0392b;font-weight:600}.fixture polygon,.fixture polyline{fill:none;stroke:var(--ink);pointer-events:none}.fixture .fixture-outline{fill:var(--plan-bg)}.fixture.light polygon,.fixture.light polyline{stroke:#b8860b}.fixture.light .fixture-outline{fill:none}.fixture.selected polygon,.fixture.selected polyline{stroke:var(--accent)}.fixture-label text{fill:var(--ink);pointer-events:none;font-weight:600}.schedule{border-collapse:collapse;width:100%;font-size:12px}.schedule th,.schedule td{text-align:left;border-bottom:1px solid var(--line);padding:3px 4px}.schedule th{color:var(--muted);font-weight:600}.hint.error{color:var(--danger,#b3261e)}.library-list{margin:0 0 8px;padding:0;list-style:none}.library-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;display:flex}.library-name{flex-direction:column;flex:100%;min-width:0;display:flex}.library-name small{color:var(--muted);overflow-wrap:anywhere}.library-list select{flex:1;min-width:0}.cabinet polygon,.cabinet line{stroke:var(--ink);pointer-events:none}.plan-counter{fill:var(--plan-bg);stroke:var(--ink);pointer-events:none}.cabinet .cabinet-box{fill:none}.cabinet.upper .cabinet-box{stroke:var(--muted)}.cabinet.selected polygon,.cabinet.selected line{stroke:var(--accent)}.cabinet-label text{fill:var(--muted);pointer-events:none}.segmented.wrap{flex-wrap:wrap}.stepper{gap:6px;display:flex}.stepper button{min-width:52px}.field.check input{justify-self:end;width:auto}.electrical line,.electrical circle,.electrical polygon{stroke:var(--ink);fill:var(--plan-bg);pointer-events:none}.electrical text{fill:var(--ink);pointer-events:none;font-weight:600}.electrical.selected line,.electrical.selected circle,.electrical.selected polygon{stroke:var(--accent)}.electrical.selected text{fill:var(--accent)}.switch-leg{fill:none;stroke:var(--accent);pointer-events:none}.fireplace polygon,.column polygon{stroke:var(--ink);fill:none;pointer-events:none}.fireplace .chase{fill:var(--plan-bg)}.fireplace .stone,.column .stone,.porch-post-base{fill:#c9bfae;stroke:#333;pointer-events:none}.fireplace .firebox{fill:#555}.fireplace .mantel{stroke:var(--muted)}.column .post{fill:#f7f6f2}.fireplace.selected polygon,.column.selected polygon{stroke:var(--accent)}.fireplace-label text{fill:var(--muted);pointer-events:none}.select-box{fill:#3a86c81f;stroke:var(--accent);pointer-events:none}.select-box.crossing{fill:#3caa5a1f;stroke:#3a9a5a}.placed-dim,.plan-note{pointer-events:none}.placed-dim line{stroke:var(--wall-line)}.placed-dim .dim-text,.plan-note text{fill:var(--wall-line)}.plan-note line{stroke:var(--wall-line)}.plan-note polygon{fill:var(--wall-line)}.placed-dim.selected line,.plan-note.selected line{stroke:var(--accent)}.placed-dim.selected .dim-text,.plan-note.selected text{fill:var(--accent)}.placed-dim.preview line,.plan-note.preview line{stroke:var(--accent);stroke-dasharray:4 3}.workspace[hidden],.tabs[hidden]{display:none!important}.drawings{background:#d9dcdf;flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.drawings-bar{border-bottom:1px solid var(--line);background:var(--panel);z-index:2;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;display:flex;position:sticky;top:0}.drawings-bar .primary{margin-left:auto}.sheet-chooser{background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:4px 12px;padding:10px 12px;display:grid}.sheet-chooser label{align-items:center;gap:8px;min-height:36px;font-size:15px;display:flex}.sheet-chooser input{width:20px;height:20px}.title-block-form{background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:8px 12px;padding:10px 12px;display:grid}.title-block-form label{color:var(--muted);flex-direction:column;gap:2px;font-size:12px;display:flex}.title-block-form input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:15px}.drawings-sheets{flex-direction:column;align-items:center;gap:16px;padding:16px;display:flex}.sheet-fit{flex:none;overflow:hidden;box-shadow:0 1px 4px #00000040}.sheet-scale{transform-origin:0 0;width:36in;height:24in}.sheet{--plan-bg:#fff;--grid-minor:#fff;--grid-major:#fff;--block-fill:#efe6d6;--block-stroke:#3b3226;--wall-line:#111;--wall-layer:#6f777d;--fill-framing:#f1e4c6;--fill-sheathing:#d9c28f;--fill-cladding:#e9ecee;--fill-finish:#fff;--fill-concrete:#d2d2cc;--fill-insulation:#f6dbe2;--room-fill:#fff;--ghost:#b9c0c6;--ink:#111;--muted:#444;--line:#999;--panel:#fff;--bg:#fff;color:#111;background:#fff;width:36in;height:24in;padding:.5in;font-size:11pt}.sheet-border{border:2pt solid #111;height:100%;display:flex}.sheet-body{flex:1;justify-content:center;align-items:center;min-width:0;padding:.25in;display:flex}.sheet .drawing{margin:0}.sheet .drawing figcaption{border-top:1.5pt solid #111;justify-content:space-between;gap:.5in;margin-top:.1in;padding-top:.05in;font-size:12pt;display:flex}.sheet .drawing figcaption strong{text-transform:uppercase}.sheet-stack{flex-direction:column;justify-content:space-around;align-items:center;height:100%;display:flex}.sheet-grid{grid-template-rows:repeat(3,1fr);grid-template-columns:1fr 1fr;place-items:center;height:100%;display:grid}.site-wrap{align-items:flex-start;gap:.4in;display:flex}.site-notes{width:3in;margin:0;font-size:9pt}.site-notes dt{text-transform:uppercase;margin-top:.12in;font-size:8pt;font-weight:700}.site-notes dd{margin:0}.sheet-plan{position:relative}.sheet-plan .plan-view{position:absolute;inset:0}.plan-svg.on-sheet{pointer-events:none;background:#fff}.elevation-svg{display:block}.elevation-svg text{fill:#111;font-family:inherit}.sheet-schedules{flex-wrap:wrap;align-content:flex-start;align-self:flex-start;gap:.4in;width:100%;display:flex}.sheet-schedules .panel{background:0 0;border:none;min-width:6in;margin:0;padding:0}.sheet-schedules h3{text-transform:uppercase;margin:0 0 .08in;font-size:13pt}.sheet-schedules .schedule{border-collapse:collapse;font-size:10pt}.sheet-schedules .panel-table{font-size:12pt}.panel-table .spare{color:#888}.panel-head,.panel-note{max-width:7in;margin:0 0 .08in;font-size:10pt}.panel-note{margin-top:.1in}.sheet-schedules .schedule th,.sheet-schedules .schedule td{text-align:left;border:.75pt solid #111;padding:.03in .08in}.title-block{border-left:2pt solid #111;flex-direction:column;flex:none;width:3.5in;font-size:10pt;display:flex}.title-block>*{padding:.08in .12in}.title-block>*+*{border-top:1pt solid #111}.tb-firm-name{font-size:16pt;font-weight:700}.tb-empty{color:#bbb}.tb-label{text-transform:uppercase;letter-spacing:.04em;color:#444;font-size:8pt}.tb-project{font-size:13pt;font-weight:600}.title-block .tb-revisions{border-collapse:collapse;padding:0;font-size:8pt}.tb-revisions th,.tb-revisions td{text-align:left;border-bottom:.5pt solid #999;height:.22in;padding:.03in .06in}.tb-spacer{flex:1}.title-block>.tb-spacer+*{border-top:1pt solid #111}.tb-issue{text-transform:uppercase;font-weight:700}.tb-row{justify-content:space-between;display:flex}.tb-sheet-title{text-transform:uppercase;font-size:13pt;font-weight:700}.tb-sheet-number{flex-direction:column;align-items:center;font-size:40pt;font-weight:700;line-height:1.1;display:flex}.tb-sheet-number small{font-size:9pt;font-weight:400}@media print{@page{size:36in 24in;margin:0}html,body,#root{height:auto;overflow:visible}.app>:not(.drawings),.drawings-bar,.sheet-chooser,.title-block-form{display:none!important}.app{height:auto;display:block}.drawings{background:#fff;overflow:visible}.drawings-sheets{padding:0;display:block}.sheet-fit{box-shadow:none;break-after:page;overflow:visible;width:auto!important;height:auto!important}.sheet-scale{transform:none!important}.tb-empty{visibility:hidden}}.name-chips{flex-wrap:wrap;gap:4px;margin:4px 0 8px;display:flex}.name-chips button{border-radius:999px;padding:2px 8px;font-size:12px}.interior-mark circle{fill:#fff;stroke:#111}.interior-mark polygon{fill:#111}.interior-mark text{fill:#fff;font-weight:700}.section-mark line{stroke:#111}.section-mark polygon{fill:#111}.section-mark circle{fill:#fff;stroke:#111}.section-mark text{fill:#111;font-weight:700}.section-mark.selected line,.section-mark.selected circle,.section-mark.preview line{stroke:var(--accent,#2563eb)}.cover{gap:.5in;width:100%;height:100%;display:flex}.cover-main{flex-direction:column;flex:1;min-width:0;display:flex}.cover-main .drawing{margin:auto}.cover-title{text-transform:uppercase;letter-spacing:.04em;margin:.3in 0 .1in;font-size:40pt}.cover-job{font-size:16pt}.cover-side{flex-direction:column;gap:.4in;width:6in;padding-top:.4in;display:flex}.cover-table{border-collapse:collapse;width:100%;font-size:12pt}.cover-table caption{text-align:left;text-transform:uppercase;border-bottom:1.5pt solid #111;margin-bottom:.05in;padding-bottom:.05in;font-weight:700}.cover-table td{border-bottom:.5pt solid #bbb;padding:.04in .1in .04in 0}.cover-table td.num{text-align:right}.cover-table tr.total td{font-weight:700}.cover-note{color:#555;font-size:10pt}.sheet-electrical{align-items:flex-start;gap:.4in;display:flex}.legend td{vertical-align:middle}.legend-symbol{display:block}.roof-plan-note{margin:.05in 0 0;font-size:9pt}.on-sheet .switch-leg,.home-run path{stroke:#111}.home-run text{fill:#111}.swatches{flex-wrap:wrap;gap:5px;display:flex}.swatches button{border:1px solid #0003;border-radius:50%;width:22px;height:22px;padding:0}.swatches button.active{outline-offset:2px;outline:2px solid #2563eb}.deck .deck-floor{fill:#f6efe4;stroke:#6b5a45}.deck-concrete .deck-floor{fill:#eeeeea;stroke:#666}.deck .deck-board{stroke:#c9b79c}.deck .deck-post{fill:none;stroke:#6b5a45}.deck line{stroke:#6b5a45}.deck .deck-rail{stroke:#444;stroke-opacity:.55}.deck.selected .deck-floor{stroke:#2563eb}.on-sheet .deck .deck-floor{fill:#fff;stroke:#111}.on-sheet .deck line,.on-sheet .deck .deck-post{stroke:#111}.on-sheet .deck .deck-board{stroke:#999}.on-sheet .dim-text,.on-sheet .room-label text{paint-order:stroke;stroke:#fff;stroke-width:.35em;stroke-linejoin:round}.opening-tag{fill:var(--ink,#222);pointer-events:none}
