@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/wp-content/plugins/gipsaj-planner/dist/app/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.material-workspace{max-width:1440px;margin:0 auto;padding:24px clamp(16px,3vw,48px) 64px;color:var(--ink)}.material-workspace h2{font-size:24px;margin:0 0 18px}.material-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px}.material-tabs button{border:0;border-radius:0;background:transparent;padding:10px 20px;border-bottom:3px solid transparent}.material-tabs button[aria-selected=true]{color:var(--accent);border-bottom-color:currentColor;font-weight:600}.material-explanation{color:var(--muted);max-width:85ch;line-height:1.55}.material-actions,.material-card-heading{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.material-actions label{display:grid;gap:5px;flex:1;min-width:160px;max-width:400px}.material-actions button{align-self:end}.material-workspace input,.material-workspace select{max-width:100%;min-height:36px}.material-table-scroll{--material-head-h: 40px;position:relative;overflow-x:auto;max-width:100%}.material-scroll-hint{display:none}.warning-link{text-align:left;color:var(--warning);background:transparent;border:0;text-decoration:underline;padding:0}.material-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:700px){.material-scroll-hint{display:block;color:var(--muted);font-size:12px}}.material-workspace-table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums}.material-workspace-table th,.material-workspace-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 14px;vertical-align:top}.material-workspace-table thead th{color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}.material-workspace-table thead.sticky-head th{height:var(--material-head-h);box-sizing:border-box;padding-top:0;padding-bottom:0;vertical-align:middle;position:sticky;top:0;background:var(--panel);z-index:2}.material-workspace-table tbody th[scope=row]{font-weight:500;min-width:190px}.material-workspace-table td{min-width:95px}.material-workspace-table td:nth-child(2){min-width:160px;color:var(--muted)}.material-group-row th{background:var(--chrome);font-size:12px;letter-spacing:.035em;position:sticky;top:var(--material-head-h);z-index:1}.material-group-total th,.material-group-total td{font-weight:600;border-top:1px solid var(--line)}.material-order{font-weight:600}.material-card{margin:22px 0;border:1px solid var(--line);border-radius:8px;padding:0 18px 18px;background:var(--panel)}.material-card h3,.material-element h4{margin:0;overflow-wrap:anywhere}.material-card-heading h3,.material-card-heading h4{flex:1}.material-element+.material-element{margin-top:24px}.material-element>p,.material-card>p{color:var(--muted);font-size:13px}.material-empty{padding:12px 0;color:var(--muted)}.material-warnings{background:color-mix(in srgb,var(--warning) 10%,var(--panel));color:var(--warning);padding:12px 12px 12px 32px;border-radius:6px}.material-assignments{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:12px;margin:20px 0}.material-assignment{border:1px solid var(--line);border-radius:6px;padding:12px;display:flex;align-items:end;gap:10px}.material-assignment label{display:grid;gap:6px;flex:1;min-width:0;overflow-wrap:anywhere}.material-assignment button{flex-shrink:0}@media(max-width:650px){.material-workspace{padding:16px 12px 40px}.material-tabs button{flex:1;padding:10px 6px}.material-card{padding:0 10px 12px}.material-workspace-table th,.material-workspace-table td{padding:10px 8px}.material-card-heading h3{flex-basis:100%}}.material-room-elements details{border-top:1px solid var(--line-soft);padding:12px 0}.material-room-elements summary{cursor:pointer;font-weight:500}:root{--paper: #f5f6f7;--panel: #ffffff;--chrome: #eceff1;--line: #cfd5db;--line-soft: #e3e7eb;--ink: #1c2127;--muted: #5b6470;--accent: #d9541e;--accent-soft: #fbe9e0;--warning: #b45309;--grid-minor: #eceff2;--grid-major: #dce1e5;--framing-runner: #0b5f8a;--framing-stud: #0e7ab5;--framing-cross: #2c8fc3;--framing-ua: #b91c1c;--framing-head: #6d28d9;--framing-hanger: #b45309;--framing-wire: #92400e;--framing-connector: #047857;--framing-long: #4b5563;--board-shade-0: #ecdfc4;--board-shade-1: #d4b98a;--board-shade-2: #b9976a;--board-shade-3: #fbf6ea;--board-shade-4: #a9b4a0;--board-shade-5: #d0bcb8;--board-stroke: #8c6a3c;--board-ink: #5d4a2a;--wall-masonry: #b9bfc7;--wall-masonry-hatch: #8a929c;--wall-partition: #dfe4ea;--wall-stroke: #6b7480;--lining: #f2efe6;--lining-stroke: #a89f88;--ceiling: rgba(159, 179, 200, .18);--ceiling-stroke: #9fb3c8;--opening-stroke: #1c2127;--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 3px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--shadow-1: 0 4px 16px rgba(0, 0, 0, .18);--focus: var(--accent);color-scheme:light;font-family:var(--font);font-size:13px;line-height:1.4;color:var(--ink);background:var(--paper)}:root[data-theme=dark]{color-scheme:dark;--paper: #161a1f;--panel: #1e2329;--chrome: #232930;--line: #3a434d;--line-soft: #2c343c;--ink: #e6e9ec;--muted: #9aa4af;--accent: #e0642e;--accent-soft: #3a2418;--warning: #f0a04b;--grid-minor: #1c2126;--grid-major: #2a3139;--framing-stud: #4fb0e6;--framing-runner: #2f8fc4;--framing-cross: #63b8e0;--framing-ua: #ef5350;--framing-head: #a78bfa;--framing-hanger: #f0a04b;--framing-wire: #d19a66;--framing-connector: #34d399;--framing-long: #9aa4af;--board-shade-0: #6b5a3e;--board-shade-1: #86714b;--board-shade-2: #5a4a33;--board-shade-3: #7b6a4f;--board-shade-4: #5f6a58;--board-shade-5: #6d5c5a;--board-stroke: #c9a978;--board-ink: #efe4cf;--wall-masonry: #4a525c;--wall-masonry-hatch: #7b8590;--wall-partition: #3a424b;--wall-stroke: #aab3bd;--lining: #3c3a33;--lining-stroke: #b5aa8e;--ceiling: rgba(120, 150, 180, .18);--ceiling-stroke: #7fa0bf;--opening-stroke: #e6e9ec}*{box-sizing:border-box}body{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.01em;margin:0}button,.button{font:inherit;padding:4px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:28px}button:hover,.button:hover{background:var(--chrome)}button:disabled{color:var(--line);cursor:default;background:var(--panel)}button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input,select{font:inherit;padding:3px 6px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--ink);width:100%;min-height:28px}label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}label>input,label>select{color:var(--ink)}a{color:var(--ink)}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.primary:hover{background:#b74417}.home-filters{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.home-filters label:first-child{flex:1;min-width:160px}.home-menu{position:relative;margin-left:auto}.home-menu summary{cursor:pointer;padding:5px 8px;border-radius:var(--radius)}.home-menu-items{position:absolute;right:0;top:100%;z-index:5;display:grid;min-width:150px;padding:5px;background:var(--panel);box-shadow:var(--shadow-1);border:1px solid var(--line)}.home-menu-items button{justify-content:start;border:0}.home-empty{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:18px 22px;margin:8px 0 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.home-empty select{width:auto}.home-dragging{outline:3px dashed var(--accent);outline-offset:-8px}.toasts{position:fixed;bottom:32px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;z-index:20}.toast{background:var(--ink);color:var(--panel);padding:8px 12px;border-radius:var(--radius);display:flex;gap:12px;align-items:center;box-shadow:var(--shadow-1)}summary:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.home{max-width:760px;margin:48px auto;padding:0 20px}.home h1{font-size:22px;margin-bottom:16px}.home-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.locale-selector,.theme-selector,.print-actions .locale-selector{display:inline-flex;flex-direction:row;align-items:center;gap:6px;flex:0 0 auto;white-space:nowrap}.locale-selector select,.theme-selector select{width:auto;min-width:100px}.home-new{display:flex;gap:8px;align-items:flex-end;padding-bottom:16px;border-bottom:1px solid var(--line)}.home-new label{flex:1}.home{max-width:1100px}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding-top:16px}.home-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-width:0;display:flex;flex-direction:column}.home-thumb{display:block;width:100%;padding:0;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;background:var(--paper);cursor:pointer;min-height:180px}.home-thumb:hover{background:var(--chrome)}.home-thumb .plan-figure{width:100%;height:180px}.home-thumb-svg{width:100%;height:180px;display:block}.home-thumb-svg img{width:100%;height:100%;display:block;object-fit:contain}.home-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px}.home-name{overflow-wrap:anywhere;font-size:14px;font-weight:600;margin:0}.home-meta{display:flex;justify-content:space-between;gap:8px;margin:0;color:var(--muted);font-size:12px}.home-actions{display:flex;flex-wrap:wrap;gap:4px}.home-actions button{padding:2px 8px;min-height:24px;font-size:12px}.editor{display:grid;grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100dvh;background:var(--chrome)}.construction-panel{display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:0;min-width:0;position:relative}.construction-panel.inspector-open{grid-template-columns:56px minmax(0,1fr) 320px}[hidden]{display:none!important}.workspace-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--panel)}.workspace-tabs,.construction-controls,.view-options{display:flex;align-items:center;gap:6px}.workspace-tabs [role=tab]{min-height:34px;font-weight:600}.workspace-tabs [aria-selected=true]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.tab-badge{margin-left:6px;padding:0 6px;border-radius:9px;background:var(--warning);color:var(--panel);font-size:11px;line-height:16px}.materials-panel{min-height:0;overflow:auto;background:var(--paper);padding:20px}.drawing-pane{min-width:0;min-height:0}.drawing-pane>.canvas{width:100%;height:100%}.editor-workspace.view-split,.editor-workspace.view-face{grid-template-columns:minmax(0,var(--drawing-share, 50%)) minmax(0,1fr);position:relative}.face-view{display:flex;flex-direction:column;min-width:0;min-height:0;border-left:1px solid var(--line);background:var(--paper)}.face-view-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);font-size:13px}.face-view-picker{display:inline-flex;gap:10px}.face-view-picker label{display:inline-flex;align-items:center;gap:4px}.face-view-svg{flex:1;width:100%;min-height:0}.face-view .option-hint{padding:16px}.face-outline{fill:var(--panel);stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke}.face-framing{stroke:var(--framing-stud);stroke-width:2;vector-effect:non-scaling-stroke}.face-uaPost{stroke:var(--framing-ua)}.face-lintel,.face-sill,.face-head{stroke:var(--framing-head)}.face-runnerFloor,.face-runnerCeiling{stroke:var(--framing-runner)}.face-hanger{fill:var(--framing-hanger)}.face-board-full{stroke:var(--board-stroke);stroke-width:1;vector-effect:non-scaling-stroke}.face-board-cut{stroke:var(--board-stroke);stroke-width:1.25;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.face-board-hatch{fill:url(#board-hatch);stroke:none;vector-effect:non-scaling-stroke}.face-label{fill:var(--board-ink)}.face-counts{color:var(--muted)}.face-steps label+label{margin-left:2px}.face-ghost{opacity:.5;pointer-events:none}.face-ghost .face-framing{stroke-width:1.25}.face-ghost .face-hanger{opacity:.6}.face-joint-under{fill:none;stroke:var(--board-ink);stroke-width:1.25;stroke-dasharray:5 4;opacity:.55;vector-effect:non-scaling-stroke}.lining-ghost{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;pointer-events:none}.lining-ghost[data-exists=true]{fill:none;stroke-dasharray:none}.measure-line{stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke;fill:none;pointer-events:none}.measure-label{fill:var(--ink);stroke:var(--paper);paint-order:stroke;font-weight:600;pointer-events:none}.face-opening{fill:none;stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke}.split-control{position:absolute;z-index:2;left:50%;bottom:35px;transform:translate(-50%);width:110px;padding:2px 8px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-1)}.split-control input{min-height:20px;padding:0}.close-properties{display:none}.editor-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-width:0;min-height:0}.editor-preview{min-width:0;min-height:0;overflow:auto;border-left:1px solid var(--line)}.topbar{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:8px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.topbar-group{display:flex;align-items:center;gap:4px}.topbar-group+.topbar-group{padding-left:16px;border-left:1px solid var(--line-soft)}.topbar .brand{font-weight:600;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:6px}.topbar input.project-name{width:220px;font-weight:500}.topbar .zoom{min-width:48px;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}button.toggle[aria-pressed=true]{background:var(--chrome);border-color:var(--ink);color:var(--ink)}.icon-button{width:32px;height:28px;padding:0;justify-content:center}.topbar-menu{position:relative}.topbar-menu>div{position:absolute;right:0;top:100%;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1);min-width:180px;padding:4px;z-index:6;display:grid}.history-panel{position:fixed;top:44px;right:8px;width:360px;max-width:calc(100vw - 16px);max-height:calc(100vh - 60px);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:12px 14px;z-index:10}.history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.history-list{display:grid;gap:8px}.history-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 8px;padding:6px 0;border-top:1px solid var(--line-soft)}.history-time{font-weight:600}.history-name{grid-column:1 / -1;color:var(--muted)}.history-row form{grid-column:1 / -1;display:flex;gap:6px}.history-row form input{flex:1}.topbar-menu [role=menuitem]{justify-content:flex-start;border:0}.optionsbar{grid-column:1 / -1;display:flex;align-items:center;gap:14px;padding:6px 12px;min-height:34px;overflow:auto;background:var(--chrome);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.optionsbar .option{flex-direction:row;align-items:center;gap:6px}.optionsbar input,.optionsbar select{width:96px;min-height:24px;padding:2px 6px}.option-hint{color:var(--muted)}.quick-picks{display:inline-flex;gap:2px}.quick-picks button{min-height:24px;padding:0 7px;font-size:12px}.field-error{color:var(--warning);font-size:11px}.field-unit{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:2px}.field-unit span{color:var(--muted);font-size:11px}.field-unit button{min-width:24px;padding:0}.segmented-field{display:flex;gap:4px}.segmented-field button{display:flex;flex:1;align-items:center;justify-content:center;gap:4px}.wall-direction{display:block;align-self:flex-start}.opening-detail{width:100%;height:auto;background:var(--paper);border:1px solid var(--line-soft);margin-top:8px}.opening-detail [data-part=trim]{fill:var(--lining);stroke:var(--lining-stroke)}.opening-detail [data-part=frame]{stroke:var(--framing-ua);stroke-width:3}.opening-detail [data-part=opening]{fill:var(--panel);stroke:var(--ink)}.toolrail{display:flex;flex-direction:column;gap:6px;padding:6px 4px;background:var(--panel);border-right:1px solid var(--line);overflow-y:auto;scrollbar-width:none}.toolrail-group{display:flex;flex-direction:column;gap:2px;padding-top:6px;border-top:1px solid var(--line-soft)}.toolrail-group:first-child{padding-top:0;border-top:0}.toolrail-caption{font-size:8.5px;line-height:1;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:center;color:var(--muted);padding:2px 0 3px;white-space:nowrap;overflow:hidden}.toolrail button{position:relative;width:48px;height:46px;flex-direction:column;justify-content:center;gap:2px;padding:0;border-color:transparent;font-size:10px;line-height:1;color:var(--muted)}.toolrail button kbd{position:absolute;top:3px;right:4px;font:600 8px/1 var(--font);color:var(--muted);opacity:.7;background:none;border:0;padding:0}.toolrail button[aria-pressed=true] kbd{color:var(--accent);opacity:1}.toolrail button:hover{border-color:var(--line);color:var(--ink)}.toolrail button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.toolrail button svg{width:18px;height:18px}.toolrail button[aria-disabled=true]{opacity:.45;cursor:not-allowed}.canvas{position:relative;overflow:hidden;background:var(--paper)}.canvas svg[data-testid=canvas]{display:block;width:100%;height:100%;touch-action:none;font-family:var(--font)}.canvas svg.wall-direction{width:160px;height:44px}.ruler{position:absolute;top:0;left:0;background:var(--chrome);pointer-events:none;font-size:9px;fill:var(--muted);stroke:var(--line)}.ruler-cursor{stroke:var(--accent);stroke-width:1.5}.ruler-corner{position:absolute;top:0;left:0;width:18px;height:18px;background:var(--chrome);pointer-events:none}.canvas polygon[data-warned=true],.canvas [data-warned=true]>polygon{stroke:var(--warning);stroke-dasharray:6 3}button.link{border:0;padding:0;min-height:0;background:none;color:inherit;text-align:left;text-decoration:underline;text-underline-offset:2px;cursor:pointer}button.link:hover{background:none;color:var(--ink)}.canvas [data-testid^=wall-]:hover,.canvas [data-testid^=ceiling-]:hover>polygon,.canvas [data-testid^=opening-]:hover>polygon{stroke:var(--accent);cursor:pointer}.statusbar{position:absolute;left:0;right:0;bottom:0;height:24px;display:flex;align-items:center;gap:16px;padding:0 12px;font-size:12px;color:var(--muted);background:color-mix(in srgb,var(--panel) 88%,transparent);border-top:1px solid var(--line-soft);pointer-events:none;font-variant-numeric:tabular-nums}.statusbar .hint{color:var(--ink)}.context-menu{position:absolute;z-index:8;min-width:180px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1);display:grid;pointer-events:auto}.context-menu [role=menuitem]{justify-content:flex-start;border-color:transparent;width:100%}.context-menu [role=menuitem]:hover,.context-menu [role=menuitem]:focus-visible{background:var(--accent-soft)}.inline-length{position:absolute;z-index:8;pointer-events:auto;transform:translate(-50%,-50%)}.inline-length input{width:90px;text-align:center;font-weight:600}.props{overflow:auto;padding:14px;background:var(--panel);border-left:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.props h2{font-size:14px;padding-bottom:8px;border-bottom:1px solid var(--line-soft)}.props h3{font-size:12px;color:var(--muted);font-weight:500}.props fieldset{border:1px solid var(--line-soft);border-radius:var(--radius);padding:10px;margin:0;display:flex;flex-direction:column;gap:8px}.props legend{font-size:12px;color:var(--muted);padding:0 4px}.props fieldset.readonly{border:0;padding:0;margin:0;min-inline-size:0;display:contents}.props>button{align-self:flex-start}.props p{margin:0;color:var(--muted)}.row{display:flex;gap:8px}.row>*{flex:1;min-width:0}@media(prefers-reduced-motion:no-preference){button,.toolrail button{transition:background-color .12s ease,border-color .12s ease,color .12s ease}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.materials{border-top:1px solid var(--line-soft);padding-top:8px}.materials summary{cursor:pointer;font-weight:600;padding:4px 0}.materials-view button{flex:1;justify-content:center}.materials-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.materials-table th,.materials-table td{text-align:left;padding:3px 4px;border-bottom:1px solid var(--line-soft);vertical-align:top}.materials-table th{color:var(--muted);font-weight:500}.materials-table{table-layout:fixed}.materials-table td:last-child,.materials-table th:last-child{text-align:right;width:38%}.materials-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.materials-working{color:var(--muted);font-size:11px}.materials-working span{color:var(--ink)}.cut-list h5{margin:8px 0 2px}.cut-sizes{width:auto}.cut-plan{font-size:12px;padding-left:18px}.materials-order{vertical-align:top;font-weight:500;overflow-wrap:anywhere}.materials-element h3{margin-top:8px}.warnings{color:var(--accent);font-size:12px;padding-left:18px;margin:4px 0}.quote-pricing{margin-top:12px}.quote-totals{font-size:13px;font-variant-numeric:tabular-nums}.quote-totals dd{text-align:right}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.settings{position:fixed;inset:44px 0 0 56px;background:var(--panel);overflow:auto;padding:12px 16px 24px;z-index:10;display:flex;flex-direction:column;gap:12px}.settings-head{display:flex;align-items:center;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}.settings-head h2{font-size:15px}.settings-head [role=tablist]{display:flex;gap:2px}.settings-head [role=tab][aria-selected=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.settings-head .spacer{flex:1}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 16px;max-width:1000px}.settings-grid h3{grid-column:1 / -1;margin-top:8px}.settings-span{grid-column:1 / -1;margin:0}.profile-logo{display:flex;align-items:center;gap:12px;margin-top:12px}.profile-logo-preview{max-height:48px;max-width:160px;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.settings .materials-table td:nth-child(n+3),.settings .materials-table th:nth-child(n+3){text-align:left}.settings .materials-table input,.settings .materials-table select{min-width:90px}.settings .catalogue-table{min-width:1000px}.settings .catalogue-table th:nth-child(1){width:220px}.settings .catalogue-table th:nth-child(2){width:70px}.settings .catalogue-table th:nth-child(3){width:100px}.settings .catalogue-table th:nth-child(4){width:190px}.settings .catalogue-table th:nth-child(5){width:160px}.settings .catalogue-table th:nth-child(6),.settings .catalogue-table th:nth-child(7),.settings .catalogue-table tbody tr:not(.group-row) td:last-child{width:130px}.settings .group-row td{font-weight:600;padding-top:10px;color:var(--muted)}.print{max-width:900px;margin:24px auto;padding:24px 28px 40px;background:var(--panel);border:1px solid var(--line)}.print h1{font-size:22px;margin-top:8px}.print h2{font-size:14px;margin:20px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--line)}.print-meta{color:var(--muted);margin:4px 0 0}.print-notes{margin:8px 0 0;white-space:pre-wrap}.print-quote{display:grid;grid-template-columns:max-content 1fr;gap:2px 12px;margin:8px 0}.print-quote dt{color:var(--muted)}.print-quote dd{margin:0}.print-letterhead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:4px 0 8px}.print-logo{max-height:68px;width:auto;object-fit:contain}.print-brand{color:var(--muted);font-size:13px}.print-brand p{margin:0 0 2px}.print-company{color:var(--ink);font-weight:600}.print-quote-no{font-weight:600;white-space:nowrap;margin:0}.print-signoff{display:flex;justify-content:space-between;margin-top:40px}.print-signoff span{border-top:1px solid var(--ink);padding-top:4px;min-width:200px}.print-figure{margin:16px 0 4px;border:1px solid var(--line-soft);background:var(--paper)}.plan-figure{display:block;max-width:100%;height:auto;font-family:var(--font)}.props textarea{font:inherit;padding:4px 6px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);resize:vertical}.print-actions{display:flex;flex-wrap:wrap;align-items:end;gap:8px;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line-soft)}.print-actions label{display:grid;gap:4px}.print-scope{font-weight:600;font-size:16px}.print .materials-table td:nth-child(n+3),.print .materials-table th:nth-child(n+3){text-align:right}.print .group th{background:var(--chrome);text-align:left;padding-top:8px;color:var(--ink);font-weight:600}.print.watermark:after{content:"gipsaj Free";position:fixed;inset:0;display:grid;place-items:center;font-size:96px;color:#0000000a;transform:rotate(-30deg);pointer-events:none}@media print{@page{margin:15mm 12mm 18mm;@bottom-center{content:counter(page) " / " counter(pages);font-size:9pt;color:#68727e}}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print{display:none}.print-figure{break-inside:avoid}.print-logo{max-height:18mm}.print-letterhead{break-inside:avoid}.print.watermark:after{content:"gipsaj Free";position:fixed;inset:0;display:grid;place-items:center;font-size:96px;color:#00000014;transform:rotate(-30deg);pointer-events:none}body{background:#fff}:root[data-theme=dark]{color-scheme:light;--paper: #f5f6f7;--panel: #ffffff;--chrome: #eceff1;--line: #cfd5db;--line-soft: #e3e7eb;--ink: #1c2127;--muted: #5b6470;--board-shade-0: #ecdfc4;--board-shade-1: #d4b98a;--board-shade-2: #b9976a;--board-shade-3: #fbf6ea;--board-shade-4: #a9b4a0;--board-shade-5: #d0bcb8;--board-stroke: #8c6a3c;--board-ink: #5d4a2a;--wall-masonry: #b9bfc7;--wall-masonry-hatch: #8a929c;--wall-partition: #dfe4ea;--wall-stroke: #6b7480;--lining: #f2efe6;--lining-stroke: #a89f88;--ceiling: rgba(159, 179, 200, .18);--ceiling-stroke: #9fb3c8;--opening-stroke: #1c2127}.print{margin:0;max-width:none;border:0;padding:0}.print h2{break-after:avoid}.materials-table tr,.print-group-start,.print-cuts,.print-cut-list{break-inside:avoid}.page-break{break-before:page}.print thead{display:table-header-group}.print .materials-table{font-size:10px}.print .materials-table th,.print .materials-table td{padding:5px;white-space:normal}}.empty-hint{pointer-events:none;position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;text-align:center;max-width:420px;box-shadow:0 8px 24px #1c212714}.empty-hint p{margin:0 0 12px}.empty-actions button{pointer-events:auto}.empty-actions{display:flex;gap:8px;justify-content:center;margin-bottom:10px}.canvas-legends{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.framing-legend-container{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);font-size:11px;padding:6px 8px;max-height:calc(100% - 60px);overflow:auto}.canvas-legends .framing-legend-container{position:static}.framing-legend-container summary{cursor:pointer}.framing-legend{list-style:none;margin:0;padding:8px 0 0;background:color-mix(in srgb,var(--panel) 92%,transparent);border-radius:var(--radius);font-size:11px;color:var(--muted);display:grid;gap:3px}.framing-legend li{display:flex;align-items:center;gap:6px}.framing-legend .swatch{width:10px;height:10px;border-radius:2px}.swatch-board-full{background:var(--board-shade-0);border:1px solid var(--board-stroke)}.swatch-board-alt{background:var(--board-shade-1);border:1px solid var(--board-stroke)}.swatch-board-cut{background:repeating-linear-gradient(45deg,rgba(140,106,60,.35) 0,rgba(140,106,60,.35) 1px,transparent 1px,transparent 5px),var(--board-shade-2);border:1px dashed var(--board-stroke)}.board-layer-picker{display:flex;gap:10px;margin-top:6px}.board-layer-picker label{display:inline-flex;align-items:center;gap:4px}.sheet{position:fixed;inset:44px 0 0 56px;background:var(--panel);overflow:auto;padding:12px 16px 24px;z-index:10}.sheet-head{display:flex;align-items:center;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}.sheet-head h2{font-size:15px}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px 32px;margin-top:12px;max-width:900px}.shortcuts-grid h3{font-size:12px;color:var(--muted);margin-bottom:6px}.shortcuts-grid dl{margin:0}.shortcuts-grid dl>div{display:flex;gap:10px;align-items:baseline;padding:3px 0}.shortcuts-grid dt{min-width:150px}.shortcuts-grid dd{margin:0}kbd{font:inherit;font-size:11px;padding:1px 6px;border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;background:var(--chrome)}.topbar-group:last-child{margin-left:auto}.save-status{color:var(--muted);font-size:12px;white-space:nowrap}.save-error{color:var(--warning);white-space:normal;max-width:280px}.settings-head{flex-wrap:wrap}.settings-rule-group{margin:18px 0}.settings-rule-group>h3{margin-bottom:8px;color:var(--ink)}.catalogue-search{max-width:380px;margin:12px 0}.table-scroll{max-width:100%;overflow:auto}.stock-lengths-field{margin-top:5px;min-width:150px}.element-summary{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px;background:var(--paper);border-radius:var(--radius);font-size:12px}.lining-system{display:flex;align-items:center;gap:8px;color:var(--muted)}.element-summary strong{flex-basis:100%}.system-presets{display:flex;flex-direction:column;gap:4px}.system-presets button{text-align:left}.system-diagram{flex-shrink:0}.settings .group-row td{text-align:left}@media(max-width:1100px){.topbar{gap:8px}.topbar-group+.topbar-group{padding-left:8px}.topbar input.project-name{width:min(220px,35vw)}.project-actions{flex-wrap:wrap}.save-status{font-size:11px}}@media(max-width:900px){.construction-panel.inspector-open{grid-template-columns:56px minmax(0,1fr)}.construction-panel .props{position:absolute;inset:34px 0 0 auto;width:min(340px,calc(100% - 56px));z-index:4;box-shadow:var(--shadow-1)}.close-properties{display:inline-flex;align-self:flex-end}.topbar-group:last-child{margin-left:0}.project-heading{flex:1}.topbar input.project-name{min-width:0;width:100%}.project-actions{flex-basis:100%;border-left:0!important;padding-left:0!important}.editor-workspace.view-split,.editor-workspace.view-face{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.face-view,.editor-preview{border-left:0;border-top:1px solid var(--line)}.split-control{display:none}.settings,.sheet{inset:0}.topbar button,.workspace-bar button,.optionsbar button{min-height:40px}}@media(max-width:600px){.topbar{padding:6px 8px;gap:6px}.project-heading{flex-basis:calc(100% - 90px)}.zoom-actions{border-left:0!important;padding-left:0!important}.project-actions{gap:4px}.project-actions .save-status{flex-basis:100%}.topbar button,.topbar .button{padding:5px 7px}.workspace-bar{padding:6px 8px}.construction-controls{flex:1 0 100%;justify-content:space-between}.construction-panel,.construction-panel.inspector-open{grid-template-columns:48px minmax(0,1fr)}.toolrail{padding:4px 2px}.toolrail button{width:44px}.optionsbar{gap:10px;max-height:80px}.optionsbar>*{flex-shrink:0}.optionsbar .option-hint{display:none}.empty-hint{width:calc(100% - 28px);padding:12px}.empty-actions{flex-direction:column}.statusbar{height:auto;min-height:24px;max-height:48px;overflow:hidden;padding:3px 8px;font-size:11px}.canvas-legends{right:6px;top:6px}.materials-panel{padding:10px}}.construction-panel.view-3d{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}@media(min-width:901px){.construction-panel.view-3d.inspector-open{grid-template-columns:minmax(0,1fr) 320px}}.migrate-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:20;padding:16px}.migrate-dialog{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:20px;max-width:420px;width:100%;display:flex;flex-direction:column;gap:10px}.migrate-list{list-style:none;margin:0;max-height:240px;overflow:auto;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line-soft);border-radius:var(--radius);padding:8px 10px}.migrate-list label{display:flex;align-items:center;gap:8px}.migrate-actions{display:flex;gap:8px;justify-content:flex-end}.editor{--radius: 7px;--rail-width: 144px;--inspector-width: 316px;display:flex;flex-direction:column;overflow:hidden}.editor button,.editor .button,.editor input,.editor select{min-height:34px}.editor .icon-button{width:34px;flex-shrink:0}.editor .topbar{display:flex;flex-wrap:nowrap;min-height:72px;padding:10px 20px;gap:18px;z-index:7;flex-shrink:0;border-bottom-color:var(--line-soft)}.editor .topbar-group+.topbar-group{border:0;padding-left:0}.editor .project-heading{gap:14px;min-width:0;flex:1}.editor .brand{font-size:18px;letter-spacing:-.7px;flex-shrink:0}.editor .brand>svg{width:14px;color:var(--muted)}.project-identity{display:flex;flex-direction:column;min-width:0;width:230px}.editor .topbar input.project-name{min-width:0;width:100%;min-height:26px;padding:2px 5px;margin-left:-5px;border-color:transparent;background:transparent;font-weight:600;font-size:14px;text-overflow:ellipsis}.editor .topbar input.project-name:hover{border-color:var(--line)}.project-identity .save-status{margin:1px 0 0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-identity .save-status:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--framing-connector);margin-right:5px;vertical-align:2px}.project-identity .save-error{white-space:normal}.project-identity .save-error:before{background:var(--warning)}.editor .history-actions{gap:2px}.editor .history-actions button{border-color:transparent}.editor .project-actions{flex:1;justify-content:flex-end;gap:6px;flex-wrap:nowrap;margin:0}.editor .project-actions>button{border-color:transparent}.editor .project-actions .print-action{background:var(--ink);color:var(--panel);border-color:var(--ink);text-decoration:none;padding-inline:13px;font-weight:500}.editor .project-actions .account-signin{font-size:12px;white-space:nowrap}.editor .workspace-tabs{gap:4px;padding:4px;border-radius:10px;background:var(--chrome);flex-shrink:0}.editor .workspace-tabs button{border:0;border-radius:7px;color:var(--muted);padding-inline:18px;background:transparent}.editor .workspace-tabs [aria-selected=true]{background:var(--panel);color:var(--ink);box-shadow:0 1px 4px #00000012}.preferences-menu{position:relative}.preferences-menu>button{border-color:transparent}.preferences-popover{position:absolute;top:calc(100% + 12px);right:0;width:238px;padding:16px;display:grid;gap:16px;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-1);background:var(--panel)}.preferences-popover label{justify-content:space-between}.preferences-popover select{width:130px}.editor .topbar-menu>div{top:calc(100% + 8px);border-radius:9px;padding:6px}.editor .topbar-menu [role=menuitem]{padding:8px 12px}.editor .construction-panel{flex:1;grid-template-columns:var(--rail-width) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.editor .construction-panel.inspector-open{grid-template-columns:var(--rail-width) minmax(0,1fr) var(--inspector-width)}.editor .construction-panel.view-3d{grid-template-columns:minmax(0,1fr)}.editor .construction-panel.view-3d.inspector-open{grid-template-columns:minmax(0,1fr) var(--inspector-width)}.editor .workspace-bar{grid-column:1 / -1;padding:9px 16px;gap:16px;flex-wrap:nowrap;min-height:54px}.workspace-title{width:calc(var(--rail-width) - 16px);display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--muted)}.workspace-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.editor .construction-controls{flex:1;justify-content:space-between}.editor .view-options{gap:3px}.editor .view-options button{border-color:transparent;background:transparent;color:var(--muted);padding:6px 12px}.editor .view-options button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);font-weight:500}.editor .construction-controls>button{border-color:transparent}.editor .construction-controls>button[aria-expanded=true]{background:var(--chrome)}.editor .optionsbar{min-height:46px;padding:10px 12px;background:var(--panel);border-bottom-color:var(--line-soft)}.editor .optionsbar .field-error:empty{display:none}.editor .toolrail{padding:16px 10px;gap:17px;border-right-color:var(--line-soft)}.editor .toolrail-group{border:0;padding-top:0;gap:3px}.editor .toolrail-caption{text-align:left;padding:0 9px 7px;font-size:9px;letter-spacing:.09em}.editor .toolrail button{width:100%;height:38px;min-height:38px;flex-direction:row;justify-content:flex-start;gap:9px;padding:7px 9px;font-size:12px;line-height:1.15;text-align:left;border:0}.editor .toolrail button svg{width:17px;height:17px;flex-shrink:0}.editor .toolrail button span{flex:1}.editor .toolrail button kbd{position:static;font-size:9px;opacity:.55}.editor .toolrail button[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent);font-weight:500}.editor .editor-workspace{overflow:hidden}.editor .drawing-pane{display:flex;flex-direction:column;overflow:hidden}.editor .drawing-pane>.canvas{flex:1;height:auto;min-height:0}.plan-pane-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;min-height:49px;padding:7px 14px;background:var(--panel);border-bottom:1px solid var(--line-soft)}.plan-pane-header>strong{font-size:11px;color:var(--muted);font-weight:500}.layer-controls{display:flex;align-items:center;gap:4px}.editor .layer-controls button{border-color:transparent;min-height:30px;font-size:11px;padding:4px 8px}.editor .layer-controls button[aria-pressed=true]{color:var(--ink);background:var(--chrome);border-color:transparent}.editor .layer-controls svg{width:14px;height:14px}.editor .zoom-actions{position:absolute;bottom:40px;left:28px;display:flex;gap:2px;align-items:center;background:var(--panel);padding:4px;border:1px solid var(--line-soft);border-radius:10px;box-shadow:0 3px 12px #0000000c;z-index:2}.editor .zoom-actions button{border:0;background:transparent;padding:4px 8px;font-size:11px}.editor .zoom-actions button:hover{background:var(--chrome)}.editor .zoom-actions .zoom{min-width:48px;color:var(--muted);font-variant-numeric:tabular-nums}.editor .zoom-actions button:last-child{border-left:1px solid var(--line-soft);border-radius:0}.editor .canvas-legends{top:28px;right:12px;gap:6px;max-width:calc(100% - 44px)}.editor .framing-legend-container{border-radius:7px;box-shadow:0 2px 8px #00000005}.editor .statusbar{height:28px;gap:10px;font-size:10px;overflow:hidden;white-space:nowrap}.editor .statusbar .hint{overflow:hidden;text-overflow:ellipsis}.editor .editor-workspace.view-face{grid-template-columns:minmax(0,var(--drawing-share)) minmax(0,1fr)}.editor .editor-workspace.face-expanded{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.editor .face-view{background:var(--paper);border-left:1px solid var(--line)}.face-view-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;gap:12px;border-bottom:1px solid var(--line-soft);background:var(--panel)}.face-title{display:flex;flex-direction:column;gap:4px;min-width:0}.face-title>span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.face-title>strong{font-size:14px;font-weight:600}.face-window-actions{display:flex;gap:3px;flex-shrink:0}.face-window-actions button{border-color:transparent;color:var(--muted)}.editor .face-view-bar{gap:10px;padding:10px 18px;background:var(--panel);border-bottom-color:var(--line-soft)}.editor .face-view-picker{gap:3px;flex-direction:row;align-items:center;font-size:11px}.editor .face-view-picker[role=radiogroup]{background:var(--chrome);padding:3px;border-radius:7px}.editor .face-view-picker label{position:relative;flex-direction:row;padding:6px 12px;margin:0;border-radius:5px;font-size:11px;cursor:pointer;color:var(--muted)}.editor .face-view-picker label:has(input:checked){background:var(--panel);box-shadow:0 1px 3px #00000015;color:var(--ink);font-weight:500}.editor .face-view-picker input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;min-height:0}.editor .face-view-picker label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:1px}.editor .face-view-picker input[type=checkbox]{min-height:0;width:14px;height:14px;accent-color:var(--accent)}.editor .face-view-svg{padding:12px}.face-summary{padding:12px 18px;background:var(--panel);border-top:1px solid var(--line-soft);display:flex;flex-wrap:wrap;gap:8px 18px;font-size:11px;color:var(--muted)}.face-summary>span:first-child{font-weight:600;color:var(--ink)}.face-summary details{flex-basis:100%}.face-summary summary{cursor:pointer;width:fit-content}.face-summary .face-counts{display:block;padding-top:8px}.face-empty{margin:auto;padding:32px;text-align:center;max-width:360px;color:var(--muted)}.face-empty svg{color:var(--line);margin-bottom:16px}.face-empty h2{font-size:16px;color:var(--ink)}.face-empty p{font-size:12px;line-height:1.6}.editor .split-control{left:var(--drawing-share);bottom:10px;width:90px;box-shadow:0 2px 8px #00000012;border:1px solid var(--line-soft);padding:1px 8px}.editor .split-control input{min-height:18px;height:18px;accent-color:var(--muted)}.editor .props{padding:0;gap:0;border-left-color:var(--line-soft);overflow:hidden}.inspector-heading{min-height:49px;padding:7px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line-soft);flex-shrink:0}.inspector-heading>span{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:500;color:var(--muted)}.inspector-heading button{border:0;color:var(--muted)}.inspector-content{padding:18px;overflow-y:auto;display:flex;flex-direction:column;gap:15px;min-height:0}.editor .props h2{font-size:19px;border:0;padding:0}.selection-heading{display:flex;flex-direction:column;gap:4px}.selection-heading>span{font-size:11px;color:var(--muted)}.editor .props fieldset:not(.readonly){border:0;padding:16px 0 0;border-top:1px solid var(--line-soft);border-radius:0;gap:12px;min-width:0}.editor .props legend{font-size:11px;font-weight:600;color:var(--ink);padding:0 8px 0 0}.editor .props label{font-size:11px;gap:5px}.editor .props input,.editor .props select{min-height:35px}.editor .props .field-unit{gap:3px}.editor .props .field-unit button{min-height:26px;width:22px;padding:0;justify-content:center;border-color:transparent;color:var(--muted)}.editor .props .field-error:empty{display:none}.editor .props .element-summary{background:var(--chrome);border:0;padding:10px 12px;border-radius:7px;font-size:12px}.editor .props .segmented-field{gap:4px}.editor .props .segmented-field button{font-size:11px;padding:5px 7px}.opening-preview summary{cursor:pointer;color:var(--muted);font-size:11px;margin-bottom:10px}.editor .opening-detail{width:100%;height:150px;border-radius:7px}.editor .delete-element{align-self:flex-start;color:var(--warning);border-color:transparent;font-size:11px}.editor .materials-panel{flex:1}@media(max-width:1250px){.editor{--rail-width: 72px;--inspector-width: 290px}.editor .topbar{padding-inline:12px;gap:10px}.project-identity{width:190px}.editor .brand{font-size:16px}.editor .workspace-tabs button{padding-inline:12px}.editor .toolrail{padding:12px 5px;gap:10px}.editor .toolrail-caption{text-align:center;font-size:8px;padding:0 0 5px}.editor .toolrail button{height:47px;min-height:47px;flex-direction:column;justify-content:center;gap:3px;font-size:9px;padding:4px 2px;text-align:center}.editor .toolrail button span{flex:none}.editor .toolrail button kbd{position:absolute;top:3px;right:3px;font-size:8px}.editor .header-action-label,.workspace-title{display:none}.editor .workspace-bar{padding-left:calc(var(--rail-width) + 12px)}.plan-pane-header{padding-inline:10px}.editor .layer-controls button{font-size:10px;gap:4px;padding-inline:5px}.editor .face-view-heading,.editor .face-view-bar{padding-inline:12px}}@media(max-width:1000px){.editor .topbar{flex-wrap:wrap;min-height:106px;gap:8px}.editor .history-actions{display:flex;order:3;margin-left:auto}.editor .workspace-tabs{order:2;flex:1}.editor .project-heading{flex-basis:calc(100% - 210px)}.editor .project-actions{flex:0}.editor .brand{font-size:0;gap:0}.editor .brand svg{width:18px}.editor .project-heading{gap:8px}.project-identity{width:180px}.editor .topbar .project-actions{flex-basis:auto}.editor .project-actions>.icon-button{display:none}}@media(max-width:900px){.editor .construction-panel.inspector-open{grid-template-columns:var(--rail-width) minmax(0,1fr)}.editor .construction-panel.view-3d.inspector-open{grid-template-columns:minmax(0,1fr)}.editor .construction-panel .props{inset:54px 0 0 auto;width:min(316px,calc(100% - var(--rail-width)));z-index:5;box-shadow:-8px 0 30px #00000015}.editor .editor-workspace.view-face{grid-template-columns:minmax(0,32%) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.editor .editor-workspace.face-expanded{grid-template-columns:minmax(0,1fr)}.editor .editor-workspace.view-split{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.editor .face-view{border-top:0}.editor .zoom-actions{left:24px;gap:0;padding:2px}.editor .zoom-actions button:last-child span{display:none}.editor .zoom-actions .icon-button{width:28px}.editor .zoom-actions button{padding-inline:5px}}@media(max-width:680px){.editor{--rail-width: 58px}.editor .topbar{flex-wrap:wrap;gap:8px;padding:10px;min-height:106px}.editor .project-heading{flex:1;flex-basis:auto}.project-identity{width:170px}.editor .topbar input.project-name{font-size:12px}.editor .project-actions{flex:0;gap:2px}.editor .project-actions .print-action{padding:5px 8px}.editor .print-action span{display:none}.editor .workspace-tabs{order:2;width:auto;flex:1;justify-content:center;padding:3px}.editor .workspace-tabs button{flex:1;min-height:32px}.editor .workspace-bar{padding:7px 8px;min-height:49px}.editor .construction-controls{flex-basis:auto;gap:4px}.editor .construction-controls>button{padding:6px}.editor .construction-controls>button>span{display:none}.editor .view-options{gap:1px}.editor .view-options button{padding:5px 7px;gap:4px;font-size:10px}.editor .view-options button svg{width:13px}.editor .toolrail{padding-inline:3px}.editor .toolrail button{font-size:8px}.editor .toolrail button kbd{display:none}.editor .toolrail-caption{font-size:7px;letter-spacing:0}.editor .optionsbar{padding:8px;max-height:90px}.editor .plan-pane-header{gap:2px;min-height:42px;padding:5px 8px}.editor .plan-pane-header>strong{font-size:10px}.editor .layer-controls button{min-height:30px}.editor .editor-workspace.view-face{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(160px,35%) minmax(0,1fr)}.editor .editor-workspace.face-expanded{grid-template-rows:minmax(0,1fr)}.editor .view-face .plan-pane-header{display:none}.editor .view-face .zoom-actions{bottom:32px}.editor .view-face .canvas-legends{display:none}.editor .face-view-heading{padding:10px 12px}.editor .face-title>strong{font-size:12px}.editor .face-title>span{font-size:8px}.editor .face-view-bar{padding:6px 12px;gap:6px}.editor .face-view-picker label{padding:5px 8px;font-size:10px}.editor .face-summary{padding:7px 12px;gap:4px;font-size:10px}.editor .face-view-svg{padding:0}.editor .construction-panel .props{top:49px}.editor .statusbar{height:24px;min-height:24px}}.tool-options-float{position:absolute;top:28px;left:28px;right:12px;z-index:3;border:1px solid var(--line);border-radius:9px;box-shadow:0 4px 16px #0000000c;overflow:hidden;background:var(--panel)}.editor .tool-options-float .optionsbar{border:0;max-height:130px}.editor .tool-options-float .optionsbar>*{flex-shrink:0}.drawing-pane:has(.tool-options-float) .canvas-legends{display:none}
