@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-app:#f5f6f8;--bg-surface:#fff;--bg-message-user:#f0f2f5;--bg-viewport:#e5e7eb;--text-primary:#181a1f;--text-secondary:#6b7280;--text-muted:#9ca3af;--accent-primary:#2557d6;--accent-primary-hover:#1d4ed8;--accent-light:#eff6ff;--status-error:#dc2626;--status-error-bg:#fef2f2;--border-subtle:#e5e7eb;--dimension-pill:#1e293b;--dimension-pill-text:#fff;--font-family-base:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius-panel:16px;--radius-card:12px;--radius-control:8px}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-family-base);margin:0;font-size:14px;line-height:1.45}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.6}.app{flex-direction:column;min-height:100vh;padding-inline:clamp(16px,7.3vw,140px);display:flex}.header{justify-content:space-between;align-items:center;height:48px;margin-top:16px;display:flex}.logo{align-items:center;gap:10px;font-size:20px;font-weight:700;display:inline-flex}.logo-icon{border-radius:var(--radius-control);background:var(--accent-primary);width:36px;height:36px}.nav,.footer-links{gap:32px;display:flex}.nav a,.footer a{color:var(--text-primary);text-decoration:none}.main{flex:1;padding:30px 0 48px}.footer{color:var(--text-secondary);justify-content:space-between;padding:24px 0;font-size:13px;display:flex}.step-top{justify-content:space-between;align-items:baseline;display:flex}.step-counter{color:var(--text-secondary);font-size:13px}.step h1{margin:10px 0 8px;font-size:24px;font-weight:700;line-height:1.25}.link-button{color:var(--accent-primary);background:0 0;border:0;padding:0;text-decoration:underline}.btn{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);color:var(--text-primary);padding:12px 20px;font-weight:600}.btn-primary{border-color:var(--accent-primary);background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.muted{color:var(--text-secondary);font-weight:500}.alert{border-radius:var(--radius-control);background:var(--status-error-bg);color:var(--status-error);margin-top:16px;padding:12px 16px}.alert-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.upload{text-align:center;max-width:560px;margin:0 auto}.upload .btn-row,.upload .step-top{justify-content:center}.subtitle{color:var(--text-secondary);margin:0 0 24px}.privacy{color:var(--text-secondary);margin-top:16px;font-size:13px}.loading{color:var(--text-secondary);align-items:center;gap:12px;display:flex}.spinner{border:2px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.choose-grid{grid-template-rows:auto auto;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px;display:grid}.your-plan-col{grid-area:1/1/span 2;grid-template-rows:subgrid;align-items:start;display:grid}.your-plan{text-align:center;margin:0;padding:10px}.your-plan-preview{aspect-ratio:279/344;border-radius:var(--radius-card);background:var(--bg-surface);justify-content:center;align-items:center;display:flex;overflow:hidden}.your-plan-preview img{max-width:100%;max-height:100%}.pdf-preview{word-break:break-word;flex-direction:column;align-items:center;gap:8px;padding:16px;display:flex}.pdf-icon{border:2px solid var(--text-secondary);border-radius:4px;width:48px;height:60px}.your-plan figcaption{color:var(--text-secondary);margin-top:4px}.candidate{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);flex-direction:column;grid-row:1;padding:10px;display:flex}.candidate h2{margin:12px 0 0;font-size:16px;font-weight:600;line-height:22px}.candidate .btn{margin-top:9px}.plan-zoom{aspect-ratio:276/335;background:0 0;border:0;padding:0;position:relative}.plan-zoom img{object-fit:contain;width:100%;height:100%}.plan-zoom .loupe{border:2px solid var(--text-primary);border-radius:50%;width:24px;height:24px;display:none;position:absolute;top:8px;right:8px}.plan-zoom:hover .loupe,.plan-zoom:focus-visible .loupe{display:block}.explication{border-collapse:collapse;width:100%;margin-top:5px}.explication th,.explication td{padding:1px 0;line-height:21px}.explication th{text-align:left;font-weight:400}.explication td{text-align:right}.not-mine{justify-self:start}.zoom-backdrop{background:#181a1f80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.zoom-dialog{border-radius:var(--radius-card);background:var(--bg-surface);max-width:90vw;max-height:90vh;padding:24px;position:relative}.zoom-dialog img{max-width:80vw;max-height:80vh}.zoom-close{background:0 0;border:0;font-size:24px;line-height:1;position:absolute;top:8px;right:8px}.preview{border-radius:var(--radius-card);background:var(--bg-viewport);max-width:100%;margin-bottom:24px;position:relative;overflow:hidden}.preview canvas{width:100%;height:100%;display:block}.preview .alert{position:absolute;inset:auto 16px 16px}.app:has(.workspace){height:100vh;min-height:0;padding-inline:clamp(16px,3.2vw,64px)}.main:has(>.workspace){min-height:0;padding:11px 0 20px;display:flex}.workspace{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--bg-surface);flex:1;grid-template-columns:clamp(420px,38vw,560px) minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.ws-left{border-right:1px solid var(--border-subtle);flex-direction:column;min-height:0;padding:32px 22px 22px;display:flex;overflow-y:auto}.ws-title{margin:0;font-size:16px;font-weight:600;line-height:20px}.ws-empty{margin:126px 0 0;font-size:22px;font-weight:700;line-height:28px}.ws-versions{margin-top:auto}.version-cards{flex-direction:column;gap:12px;margin:24px 0 0;padding:0;list-style:none;display:flex}.version-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);text-align:left;grid-template-columns:1fr auto;width:100%;padding:16px 20px;display:grid}.version-card-title{font-size:14px;font-weight:600}.version-card-sub{color:var(--text-secondary);grid-row:2;font-size:13px}.version-card-chevron{color:var(--text-secondary);grid-area:1/2/span 2;align-self:center;font-size:20px}.ws-compare-row{align-items:center;gap:18px;margin-top:14px;display:flex}.segmented{border-radius:var(--radius-control);background:var(--bg-message-user);padding:3px;display:inline-flex}.segmented button{color:var(--text-secondary);background:0 0;border:0;border-radius:6px;padding:6px 14px}.segmented button[aria-pressed=true]{background:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 2px #00000014}.ws-compare-row .link-button{color:var(--text-secondary);font-size:13px;text-decoration:none}.ws-right{flex-direction:column;min-width:0;min-height:0;padding:17px 24px;display:flex}.ws-toolbar{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;display:flex}.ws-tabs{flex:none;align-self:flex-end;gap:8px;display:flex}.ws-tab{color:var(--text-secondary);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 14px 13px;font-size:14px;font-weight:500;line-height:20px}.ws-tab[aria-selected=true]{border-bottom-color:var(--accent-primary);color:var(--accent-primary)}.ws-viewport{flex:1;min-height:0;margin-top:16px;position:relative}.ws-view{border-radius:var(--radius-card);background:var(--bg-viewport);position:absolute;inset:0;overflow:hidden}.ws-view>canvas{width:100%;height:100%;display:block}.ws-view-alert{position:absolute;inset:auto 16px 16px}.ws-history{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);align-items:center;height:44px;font-size:14px;display:flex;position:absolute;top:9px;left:9px}.ws-history button,.ws-history [role=status]{height:100%;color:var(--text-primary);background:0 0;border:0;padding:0 11px}.ws-history button:disabled{color:var(--text-muted);opacity:1}.ws-history [role=status]{align-items:center;font-weight:500;display:inline-flex}.ws-readonly{color:var(--text-secondary);padding:0 16px}.ws-save-error{max-width:360px;margin:0;position:absolute;top:58px;left:9px}.ws-zoom{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:#f7f8fa;flex-direction:column;display:flex;position:absolute;top:13px;right:13px;overflow:hidden}.ws-zoom button{background:0 0;border:0;width:42px;height:42px;font-size:22px;line-height:1}.ws-zoom button+button{border-top:1px solid var(--border-subtle)}.ws-toast{border-radius:var(--radius-control);background:var(--dimension-pill);color:var(--dimension-pill-text);pointer-events:none;padding:8px 14px;font-size:13px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.ws-items{margin:0;padding:0;list-style:none;position:absolute;bottom:12px;left:12px}.ws-items:not(:focus-within){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden}.ws-items:focus-within{flex-wrap:wrap;gap:6px;max-width:60%;display:flex}.ws-items button{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);padding:6px 10px}.distance-badge{border-radius:var(--radius-control);background:var(--dimension-pill);color:var(--dimension-pill-text);pointer-events:none;white-space:nowrap;padding:2px 6px;font-size:12px;font-weight:600;position:absolute;transform:translate(-50%,-50%)}.inspector{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);width:280px;padding:14px 12px;position:absolute;box-shadow:0 8px 24px #0f172a1f}.inspector-head{justify-content:space-between;align-items:center;display:flex}.inspector-head h2{margin:0;font-size:14px;font-weight:600;line-height:20px}.inspector-close{background:0 0;border:0;font-size:22px;line-height:20px}.inspector-actions{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.inspector .btn{height:39px;padding:0 11px;font-size:13px;font-weight:500}.inspector-arrows{gap:8px;margin-top:12px;display:flex}.inspector .inspector-arrow{width:43px;height:43px;padding:0;font-size:18px}.inspector-swap{margin-top:14px}.inspector-swap p{margin:0 0 8px}.inspector-warnings{border-radius:var(--radius-control);background:var(--status-error-bg);color:var(--status-error);margin:12px 0 0;padding:10px 12px 10px 28px;font-size:13px}.inspector .alert{margin-top:12px;font-size:13px}.ws-plan{background:var(--bg-surface);border:1px solid var(--border-subtle)}.plan-zoom-open{z-index:1;position:absolute;top:12px;right:16px}.plan-svg{width:100%;height:100%;font-family:var(--font-family-base);display:block}.plan-floors polygon{fill:#fff}.plan-items polygon{fill:var(--bg-message-user);stroke:var(--text-secondary);stroke-width:1px;vector-effect:non-scaling-stroke}.plan-walls path{fill:var(--text-primary)}.plan-openings line{stroke:var(--text-primary);stroke-width:1px;vector-effect:non-scaling-stroke}.plan-door path{fill:none;stroke:var(--text-secondary);stroke-width:1px;vector-effect:non-scaling-stroke}.plan-dim line{stroke:var(--text-secondary);stroke-width:1px;vector-effect:non-scaling-stroke}.plan-dim text{fill:var(--text-secondary);font-size:.17px}.plan-labels text{fill:var(--text-primary);font-size:.16px;font-weight:500}.plan-labels .plan-area{fill:var(--text-secondary)}.plan-backdrop{z-index:20;background:#181a1f73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.plan-dialog{border-radius:var(--radius-panel);background:var(--bg-surface);width:min(92vw,1200px);height:86vh;padding:24px;position:relative}.dialog-close{z-index:1;background:0 0;border:0;font-size:26px;line-height:1;position:absolute;top:8px;right:12px}.ws-views{background:var(--bg-surface);padding:16px;overflow-y:auto}.view-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.view-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);text-align:left;flex-direction:column;gap:8px;padding:0 0 10px;display:flex;overflow:hidden}.view-card img{aspect-ratio:16/10;background:var(--bg-viewport);width:100%;height:auto}.view-card span{padding:0 12px;font-weight:500}.walk-fullscreen{padding:8px 14px;position:absolute;top:12px;right:64px}.walk-fullscreen-error{margin:0;position:absolute;top:56px;right:12px}.walk-settings{position:absolute;top:12px;right:12px}.walk-settings-button{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);width:42px;height:42px;color:var(--text-primary)}.walk-settings-button svg{width:20px;height:20px}.walk-settings-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);white-space:nowrap;align-items:center;gap:8px;padding:10px 14px;display:flex;position:absolute;top:48px;right:0}.walk-dpad{grid-template-areas:".forward.""left back right";gap:6px;display:grid;position:absolute;bottom:16px;left:16px}.walk-dpad button{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);-webkit-user-select:none;user-select:none;touch-action:none;width:43px;height:43px;font-weight:600}.walk-dpad-forward{grid-area:forward}.walk-dpad-left{grid-area:left}.walk-dpad-back{grid-area:back}.walk-dpad-right{grid-area:right}.walk-help{flex-direction:column-reverse;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:16px;right:16px}.walk-help .btn{padding:8px 14px}.walk-help ul{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);margin:0;padding:12px 16px 12px 28px}.chat-panel{padding-bottom:22px;overflow:hidden}.chat-scroll{scrollbar-width:thin;flex-direction:column;flex:1;min-height:0;margin-top:20px;display:flex;overflow-y:auto}.chat-panel .ws-empty{margin-top:106px}.chat-log{flex-direction:column;gap:18px;margin-top:auto;padding:18px 0 16px;display:flex}.chat-scroll-empty .chat-log{margin-top:0;padding:0}.chat-subtitle{max-width:340px;color:var(--text-secondary);margin:12px 0 0;font-size:14px;line-height:23px}.chat-chips{flex-wrap:wrap;gap:8px;margin-top:21px;display:flex}.chip{letter-spacing:-.02em;border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);height:39px;color:var(--text-primary);white-space:nowrap;padding:0 12px;font-size:14px;font-weight:500}.chip:hover:not(:disabled){border-color:var(--accent-primary)}.chat-user{border-radius:var(--radius-card);background:var(--bg-message-user);align-self:flex-end;max-width:85%;padding:14px 20px}.chat-user p{margin:0}.chat-user-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:23px}.chat-user-meta{color:var(--text-secondary);font-size:13px;margin-top:6px!important}.chat-agent-text{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.45}.chat-agent .widget-card{margin-top:12px}.chat-agent .widget-card:first-child{margin-top:0}.chat-version .version-card-agent{grid-template-columns:auto 1fr auto;align-items:center;column-gap:11px;padding:10px 20px 10px 10px}.chat-version .version-card-agent .plan-thumb{grid-area:1/1/span 2}.chat-version .version-card-agent .version-card-title,.chat-version .version-card-agent .version-card-sub{grid-column:2}.chat-version .version-card-agent .version-card-chevron{grid-column:3}.plan-thumb{background:var(--bg-message-user);border-radius:6px;width:68px;height:60px;display:block}.plan-thumb-item{fill:#8a8f98}.plan-thumb-wall{fill:#3f4450}.plan-thumb-error{border:1px solid var(--status-error);background:var(--status-error-bg);color:var(--status-error);place-items:center;font-weight:700;display:grid}.widget-question+.widget-question{margin-top:18px}.widget-question-title{margin:0 0 10px;font-size:14px;font-weight:600;line-height:20px}.widget-options{flex-direction:column;gap:8px;display:flex}.widget-option,.palette-option{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);width:100%;color:var(--text-primary);text-align:left;align-items:center;gap:12px;display:flex}.widget-option{height:41px;padding:0 16px;font-size:14px}.widget-option-label{flex:1}.widget-option[aria-checked=true],.palette-option[aria-checked=true]{border-color:var(--accent-primary)}.widget-option[aria-disabled=true],.palette-option[aria-disabled=true]{cursor:default}.widget-option[aria-disabled=true]:not([aria-checked=true]),.palette-option[aria-disabled=true]:not([aria-checked=true]){color:var(--text-secondary)}.badge-recommended{color:var(--accent-primary);font-size:13px;font-weight:500}.widget-custom{box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-control);width:100%;height:53px;font:inherit;margin-top:8px;padding:0 16px;font-size:15px}.widget-submit{margin-top:14px;padding:10px 26px}.palette-question{margin:0 0 10px;font-size:15px;line-height:1.6}.palette-option{height:63px;padding:0 14px 0 10px}.palette-swatch{border:1px solid var(--border-subtle);border-radius:6px;flex:none;width:40px;height:28px;display:flex;overflow:hidden}.palette-swatch>span{flex:1}.palette-text{flex-direction:column;flex:1;gap:4px;display:flex}.palette-label{font-size:14px}.palette-subtitle{color:var(--text-secondary);font-size:12px}.palette-custom{box-sizing:border-box;width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #0000;margin-top:8px;padding:6px 0;font-size:13px}.palette-custom:focus{border-bottom-color:var(--accent-primary);outline:none}.widget-card .alert{margin-top:10px}.task-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.task-title{font-size:14px;font-weight:600}.task-timer{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.task-eta,.task-error{color:var(--text-secondary);margin:6px 0 0;font-size:12px}.task-failed .task-error{color:var(--status-error);font-size:13px}.task-more{margin:12px 0 0 25px;font-size:12px;text-decoration:none}.task-steps{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.task-step-icon{width:25px;color:var(--text-secondary);display:inline-block}.task-step[data-status=error] .task-step-icon,.task-step-error{color:var(--status-error)}.task-step-error{margin-left:4px;font-size:13px}.task-summary{color:var(--text-secondary);align-items:center;gap:12px;font-size:13px;display:flex}.task-toggle{color:var(--text-secondary);background:0 0;border:0;padding:0 4px;font-size:16px}.task-block .alert{margin-top:10px}.chat-connection{margin:0 0 10px}.composer{box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);flex-direction:column;flex:none;min-height:112px;padding:14px 12px 12px 16px;display:flex}.composer-chips{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.composer-chip{border-radius:var(--radius-control);background:var(--bg-message-user);align-items:center;gap:4px;padding:4px 6px 4px 10px;font-size:13px;display:inline-flex}.composer-chip-remove{color:var(--text-secondary);background:0 0;border:0;padding:0 4px;font-size:16px;line-height:1}.composer-input{resize:none;min-height:28px;font:inherit;border:0;outline:none;flex:1;padding:0;font-size:15px;line-height:22px}.composer-input::placeholder{color:var(--text-secondary)}.composer-bar{align-items:center;gap:14px;height:36px;display:flex}.composer-tool,.composer-check{color:var(--text-secondary);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:13px;display:inline-flex}.composer-tool[aria-pressed=true]{color:var(--status-error)}.composer-check input{width:16px;height:16px;margin:0}.composer-send{background:var(--bg-message-user);width:36px;height:36px;color:var(--text-secondary);border:0;border-radius:50%;place-items:center;margin-left:auto;padding:0;font-size:18px;display:grid}.composer-send:not(:disabled){background:var(--accent-primary);color:#fff}.composer-send:disabled{opacity:1}.composer-stop,.composer-stop:not(:disabled){background:var(--text-primary);color:#fff;font-size:12px}.chat-notes{box-sizing:border-box;flex-direction:column;flex:none;min-height:56px;padding:8px 0 16px;display:flex}.chat-hint{color:var(--text-secondary);text-align:center;margin:auto 0 0;font-size:12px;line-height:16px}.chat-note{margin:0 0 4px;font-size:13px}.chat-notes .alert{margin-top:4px;padding:8px 12px;font-size:13px}.inspector .inspector-ask{width:100%;margin-top:7px}.inspector-market{color:var(--accent-primary);margin-top:6px;font-size:13px;text-decoration:none;display:inline-block}.inspector-market:hover{text-decoration:underline}.ws-export{align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.ws-export-button{border-radius:var(--radius-control);height:32px;color:var(--text-primary);white-space:nowrap;background:0 0;border:0;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:14px;font-weight:500;display:inline-flex}.ws-export-button:hover:not(:disabled){background:var(--bg-message-user)}.ws-export-icon{flex:none}.ws-export-note{-webkit-line-clamp:2;max-width:340px;color:var(--text-secondary);-webkit-box-orient:vertical;font-size:13px;line-height:17px;display:-webkit-box;overflow:hidden}.ws-export-error{color:var(--status-error)}.ws-head{justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.menu-button{border-radius:var(--radius-control);width:32px;height:32px;color:var(--text-secondary);letter-spacing:1px;background:0 0;border:0;place-items:center;padding:0;font-size:14px;display:grid}.menu-button:hover,.menu-button[aria-expanded=true]{background:var(--bg-message-user)}.ws-head .menu-button{flex:none;margin-block:-6px}.menu{z-index:30;border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);flex-direction:column;min-width:180px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000001f}.menu [role=menuitem]{color:var(--text-primary);text-align:left;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-size:14px}.menu [role=menuitem]:hover,.menu [role=menuitem]:focus-visible{background:var(--bg-message-user);outline:none}.menu .menu-danger{color:var(--status-error)}.ws-menu-error{margin:10px 0 0}.dialog-backdrop{z-index:50;background:#0f172a59;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{border-radius:var(--radius-panel);background:var(--bg-surface);width:min(440px,100%);max-height:calc(100vh - 32px);padding:24px;overflow-y:auto;box-shadow:0 16px 48px #0003}.dialog-title{margin:0 0 16px;font-size:18px;font-weight:700}.dialog-actions{gap:10px;margin-top:18px;display:flex}.btn-danger{border-color:var(--status-error);background:var(--status-error);color:#fff}.field{flex-direction:column;gap:6px;margin-top:14px;font-size:14px;font-weight:500;display:flex}.field input{box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-control);height:42px;font:inherit;padding:0 12px;font-weight:400}.field input[type=file]{border:0;height:auto;padding:8px 0}.field input[aria-invalid=true]{border-color:var(--status-error)}.field-error{color:var(--status-error);margin-top:6px;font-size:13px}.page{box-sizing:border-box;width:100%;margin:0 auto;padding:32px 24px}.page-projects{max-width:1080px}.page-admin{max-width:1280px}.page h1{margin:0;font-size:24px;font-weight:700}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:24px 0 0;padding:0;list-style:none;display:grid}.project-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);overflow:visible}.project-card-preview{border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--bg-app);height:180px}.project-card-preview .project-card-plan{border-radius:var(--radius-card) var(--radius-card) 0 0;background:0 0;width:100%;height:180px;display:block}.project-card-body{padding:14px 16px 16px}.project-card-title{color:var(--text-primary);font-size:15px;font-weight:600;text-decoration:none}.project-card-title:hover{text-decoration:underline}.project-card-meta{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.project-card-actions{justify-content:space-between;align-items:center;margin-top:14px;display:flex;position:relative}.project-card-actions .btn,.page-head .btn,.projects-empty .btn,.account-card .btn{text-decoration:none;display:inline-block}.projects-empty{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);text-align:center;margin-top:24px;padding:32px}.projects-empty p{color:var(--text-secondary);margin:0 0 16px}.page-account{max-width:528px}.account-card{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--bg-surface);padding:28px}.auth-tabs{margin-top:18px}.auth-form .note{border-radius:var(--radius-control);background:var(--accent-light);margin:16px 0;padding:10px 14px;font-size:13px}.account-props{grid-template-columns:auto 1fr;gap:6px 16px;margin:18px 0 12px;font-size:14px;display:grid}.account-props dt{color:var(--text-secondary)}.account-props dd{margin:0}.role-badge{border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-block}.role-user{background:var(--bg-message-user);color:var(--text-primary)}.role-pro{background:var(--accent-light);color:var(--accent-primary)}.role-admin{color:#6d28d9;background:#f3e8ff}.quota-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);margin:18px 0;padding:16px}.quota-card h2{margin:0 0 6px;font-size:15px}.quota-card p{margin:0}.account-logout{margin-top:14px;margin-left:0}.account-card .btn+.account-logout{margin-left:10px}.admin-tabs{border-bottom:1px solid var(--border-subtle);gap:8px;margin-top:16px;display:flex}.admin-panel{margin-top:20px}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.kpi{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--bg-surface);flex-direction:column;gap:4px;padding:16px;display:flex}.kpi-value{font-size:28px;font-weight:700}.kpi-label{color:var(--text-secondary);font-size:13px}.table-wrap{margin-top:20px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:middle;padding:10px 12px}.admin-table th{color:var(--text-secondary);font-size:13px;font-weight:500}.admin-table input[type=number]{border:1px solid var(--border-subtle);border-radius:var(--radius-control);width:72px;height:32px;margin-right:6px;padding:0 8px}.admin-table .btn{padding:6px 12px}.admin-table .alert{margin-top:6px;padding:6px 10px;font-size:13px}.admin-plan{object-fit:contain;width:64px;height:48px;display:block}.admin-search{flex-wrap:wrap;gap:10px;margin-bottom:4px;display:flex}.admin-search input,.admin-search select{border:1px solid var(--border-subtle);border-radius:var(--radius-control);height:40px;font:inherit;padding:0 12px}.admin-search input{flex:1;min-width:220px}
