.marketing-site,.legal-site,.not-found-site{--site-ink:#20211e;--site-muted:#5f615b;--site-paper:#f4f3ee;--site-card:#fbfbf8;--site-line:#dcdcd4;--site-accent:#b8492d;--site-accent-hover:#a33f25;--site-teal:#2a6f69;width:100%;height:100%;color:var(--site-ink);background:var(--site-paper);scroll-behavior:smooth;scrollbar-gutter:stable;overflow:hidden auto}.marketing-site a,.legal-site a,.not-found-site a{color:inherit;text-decoration:none}.marketing-site :where(a,button):focus-visible,.legal-site :where(a,button):focus-visible,.not-found-site :where(a,button):focus-visible{outline:3px solid var(--site-teal);outline-offset:3px}.site-header{z-index:50;border-bottom:1px solid color-mix(in srgb, var(--site-line) 76%, transparent);background:color-mix(in srgb, var(--site-paper) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:1fr auto 1fr;align-items:center;width:min(1240px,100% - 48px);height:76px;margin:0 auto;display:grid;position:sticky;top:0}.site-header.is-compact{grid-template-columns:1fr auto}.site-brand{align-items:center;gap:10px;width:max-content;display:flex}.site-brand-mark{width:32px;height:32px;color:var(--site-ink)}.site-brand>span{flex-direction:column;gap:3px;font-family:Avenir Next,Segoe UI,sans-serif;line-height:1;display:flex}.site-brand strong{letter-spacing:.14em;font-size:11px}.site-brand small{color:#62645e;letter-spacing:.38em;font-size:8px;font-weight:750}.site-header nav{color:var(--site-muted);align-items:center;gap:30px;font-size:14px;font-weight:600;display:flex}.site-header nav a{padding:8px 0;position:relative}.site-header nav a:after{content:"";background:var(--site-ink);transform-origin:100%;height:1px;transition:transform .25s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover:after{transform-origin:0;transform:scaleX(1)}.site-header-cta{background:var(--site-ink);border-radius:7px;justify-self:end;align-items:center;gap:7px;min-height:42px;padding:0 15px;font-size:13px;font-weight:700;transition:transform .2s,background .2s;display:flex;color:#fff!important}.site-header-cta:hover{background:#343530;transform:translateY(-1px)}.hero-section{grid-template-columns:.78fr 1.22fr;align-items:center;gap:56px;width:min(1240px,100% - 48px);min-height:760px;margin:0 auto;padding:70px 0 88px;display:grid;position:relative}.hero-glow{pointer-events:none;background:radial-gradient(circle,#e89f8245 0,#e89f8212 45%,#0000 70%);border-radius:50%;width:660px;height:660px;position:absolute;top:28px;left:-260px}.hero-copy{z-index:2;position:relative}.hero-eyebrow{color:#5f615b;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:24px;font-size:12px;font-weight:750;display:flex}.hero-eyebrow span{background:var(--site-accent);width:24px;height:1px}.hero-copy h1{letter-spacing:-.055em;margin:0;font:650 clamp(49px,5vw,78px)/.98 Avenir Next,Segoe UI,sans-serif}.hero-copy h1 em{color:var(--site-accent);letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-weight:400}.hero-copy>p{max-width:530px;color:var(--site-muted);margin:27px 0 0;font-size:16px;line-height:1.72}.hero-actions{align-items:center;gap:22px;margin-top:34px;display:flex}.primary-site-button{background:var(--site-accent);border:1px solid var(--site-accent);border-radius:8px;justify-content:center;align-items:center;gap:10px;width:max-content;min-height:48px;padding:0 20px;font-size:14px;font-weight:750;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 8px 24px #9f3f2925;color:#fff!important}.primary-site-button:hover{background:var(--site-accent-hover);transform:translateY(-2px);box-shadow:0 13px 30px #8f382532}.primary-site-button svg{transition:transform .2s}.primary-site-button:hover svg{transform:translate(3px)}.text-site-button{align-items:center;gap:5px;min-height:44px;font-size:14px;font-weight:700;display:inline-flex;color:#474943!important}.text-site-button svg{transition:transform .2s}.text-site-button:hover svg{transform:translate(3px)}.hero-trust{color:#60625c;flex-wrap:wrap;gap:17px;margin-top:31px;font-size:13px;display:flex}.hero-trust span{align-items:center;gap:5px;display:inline-flex}.hero-trust svg{color:var(--site-teal)}.hero-preview-wrap{perspective:1300px;position:relative}.hero-preview-wrap:before{content:"";filter:blur(30px);background:#23241f25;border-radius:32px;position:absolute;inset:14% 4% -9% 13%;transform:rotate(1deg)}.product-preview{z-index:1;background:#f9f9f6;border:1px solid #d4d4cc;border-radius:13px;width:740px;max-width:100%;transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s;position:relative;overflow:hidden;transform:rotateY(-3deg)rotateX(1deg);box-shadow:0 35px 80px #3031281c,0 4px 16px #30312814}.product-preview:hover{transform:rotateY(0)rotateX(0)translateY(-4px);box-shadow:0 42px 90px #30312824,0 5px 17px #30312818}.preview-topbar{background:#fdfdfb;border-bottom:1px solid #dfdfd8;align-items:center;gap:14px;height:42px;padding:0 10px 0 13px;font-size:8px;display:flex}.preview-brand{color:#383934;letter-spacing:.06em;text-transform:uppercase;border-right:1px solid #e5e5df;align-items:center;gap:5px;padding-right:12px;font-weight:800;display:flex}.preview-mark{width:18px;height:18px}.preview-document{color:#73756e}.preview-solved{color:#2b6d58;background:#eaf4ef;border-radius:99px;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;font-weight:650;display:flex}.preview-export{color:#fff;background:#df603c;border-radius:5px;padding:7px 10px;font-weight:700}.preview-workspace{grid-template-columns:36px minmax(0,1fr) 134px;height:450px;display:grid}.preview-tools{background:#fdfdfb;border-right:1px solid #e1e1da;flex-direction:column;align-items:center;gap:5px;padding-top:10px;display:flex}.preview-tools span{color:#767870;border-radius:5px;place-items:center;width:27px;height:27px;display:grid}.preview-tools span.active{color:#d85836;background:#ffede7}.preview-tools svg{width:13px;height:13px}.preview-canvas{background:#f7f7f4;min-width:0;position:relative;overflow:hidden}.preview-canvas svg{width:100%;height:100%}.preview-grid-chip{z-index:2;color:#878980;background:#ffffffdc;border:1px solid #dfdfd8;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:7px;display:flex;position:absolute;top:9px;left:9px}.preview-properties{background:#fdfdfb;border-left:1px solid #e1e1da;padding:15px 12px}.preview-overline{color:#9a9b95;letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px;font-size:6.5px;font-weight:800;display:block}.preview-properties>strong{margin-bottom:17px;font-size:11px;display:block}.preview-property{color:#85877f;border-top:1px solid #ebebe6;justify-content:space-between;gap:5px;padding:8px 0;font-size:7px;display:flex}.preview-property b{color:#4d4f49;font-weight:650}.preview-overline.rules{margin:19px 0 8px}.preview-rule{color:#34756f;background:#edf6f4;border-radius:4px;align-items:center;gap:5px;margin-top:5px;padding:7px;font-size:7px;display:flex}.preview-walls{stroke-dasharray:1900;stroke-dashoffset:1900px;animation:1.8s cubic-bezier(.4,0,.2,1) .45s forwards plan-draw}.preview-room-fill{opacity:0;animation:.6s 1.65s forwards preview-fade}.preview-room-tags,.preview-dimensions,.preview-dimension-labels,.preview-nodes,.preview-windows,.preview-doors{opacity:0;animation:.5s 1.85s forwards preview-rise}.preview-nodes{animation-delay:2.1s}.proof-strip{border-top:1px solid var(--site-line);border-bottom:1px solid var(--site-line);grid-template-columns:1.7fr repeat(4,1fr);align-items:center;width:min(1240px,100% - 48px);min-height:98px;margin:0 auto;display:grid}.proof-strip>span{color:#60625c;letter-spacing:.13em;text-transform:uppercase;font-size:12px;font-weight:750}.proof-strip div{border-left:1px solid var(--site-line);flex-direction:column;justify-content:center;min-height:54px;padding-left:23px;display:flex}.proof-strip b{font:650 16px/1.2 Avenir Next,Segoe UI,sans-serif}.proof-strip small{color:#656760;margin-top:4px;font-size:12px}.site-section{width:min(1240px,100% - 48px);margin:0 auto;padding:132px 0}.section-heading{grid-template-columns:1fr 1.15fr;align-items:end;gap:48px;margin-bottom:55px;display:grid}.section-heading .section-kicker{grid-column:1/-1}.section-kicker{color:var(--site-accent);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.section-heading h2,.workflow-heading h2,.local-copy h2,.output-card h2{letter-spacing:-.045em;margin:0;font:650 clamp(36px,3.6vw,53px)/1.04 Avenir Next,Segoe UI,sans-serif}.section-heading p{max-width:460px;color:var(--site-muted);margin:0 0 3px;font-size:14px;line-height:1.75}.feature-grid{border-top:1px solid var(--site-line);border-left:1px solid var(--site-line);grid-template-columns:repeat(3,1fr);display:grid}.feature-card{background:color-mix(in srgb, var(--site-card) 45%, transparent);border-right:1px solid var(--site-line);border-bottom:1px solid var(--site-line);min-height:290px;padding:31px 31px 27px;transition:background .3s,transform .3s;position:relative;overflow:hidden}.feature-card:hover{z-index:2;background:var(--site-card);transform:translateY(-3px);box-shadow:0 15px 35px #3031280d}.feature-icon{width:44px;height:44px;color:var(--site-teal);background:#e5f0ed;border-radius:9px;place-items:center;margin-bottom:43px;display:grid}.feature-card>span{color:#666861;letter-spacing:.13em;text-transform:uppercase;font-size:11px;font-weight:800}.feature-card h3{letter-spacing:-.02em;max-width:290px;margin:10px 0 12px;font:650 20px/1.28 Avenir Next,Segoe UI,sans-serif}.feature-card p{max-width:320px;color:var(--site-muted);margin:0;font-size:14px;line-height:1.65}.workflow-section{padding-top:72px}.workflow-heading{justify-content:space-between;align-items:end;margin-bottom:45px;display:flex}.workflow-heading .section-kicker{align-self:flex-start;margin-top:8px}.workflow-panel{background:#252621;border:1px solid #353630;border-radius:14px;grid-template-columns:180px 1fr 1.08fr;min-height:515px;display:grid;overflow:hidden;box-shadow:0 28px 70px #292a231b}.workflow-tabs{border-right:1px solid #3b3c36;padding:32px 18px}.workflow-tabs button{color:#a8aaa2;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #3f4039;grid-template-columns:30px 1fr auto;align-items:center;gap:7px;width:100%;height:70px;padding:0 9px;transition:color .2s;display:grid}.workflow-tabs button small{font-size:10px}.workflow-tabs button span{font-size:13px;font-weight:700}.workflow-tabs button svg{opacity:0;transition:all .2s;transform:translate(-4px)}.workflow-tabs button.active{color:#fff}.workflow-tabs button.active small{color:#ff9476}.workflow-tabs button.active svg{opacity:1;transform:none}.workflow-content{align-self:center;padding:50px;animation:.35s workflow-in}.workflow-content>span{color:#ff9476;letter-spacing:.14em;font-size:11px;font-weight:750}.workflow-content h3{color:#fff;letter-spacing:-.04em;max-width:390px;margin:20px 0 17px;font:600 37px/1.08 Avenir Next,Segoe UI,sans-serif}.workflow-content p{color:#c0c2ba;max-width:405px;margin:0;font-size:15px;line-height:1.7}.workflow-content>div{color:#8fc6bf;align-items:center;gap:7px;margin-top:30px;font-size:12px;display:flex}.workflow-diagram{background:#f5f5f1;border-radius:9px;place-items:center;margin:26px 26px 26px 0;display:grid;overflow:hidden}.diagram-sheet{aspect-ratio:1.15;width:78%;position:relative}.diagram-wall{background:#30312c;transition:all .55s cubic-bezier(.2,.8,.2,1);display:block;position:absolute}.diagram-wall.one{width:70%;height:9px;top:15%;left:14%}.diagram-wall.two{width:9px;height:65%;top:15%;left:14%}.diagram-wall.three{width:9px;height:65%;top:15%;right:16%}.diagram-wall.four{width:70%;height:9px;bottom:20%;left:14%}.diagram-node{opacity:0;background:#fff;border:2px solid #df603c;border-radius:50%;width:10px;height:10px;transition:opacity .35s;position:absolute}.diagram-node.a{top:calc(15% - 1px);left:calc(14% - 1px)}.diagram-node.b{top:calc(15% - 1px);right:calc(16% - 1px)}.diagram-node.c{bottom:calc(20% - 1px);left:calc(14% - 1px)}.diagram-dimension{color:#317d76;opacity:0;background:#fff;border-radius:4px;padding:5px 8px;font-size:8px;transition:all .4s 80ms;position:absolute;top:5%;left:35%;transform:translateY(5px)}.diagram-tag{color:#292a26;text-align:center;opacity:0;background:#fff;border:1px solid #d7d7d0;border-radius:5px;padding:8px 12px;font-size:9px;font-weight:700;transition:all .4s .12s;position:absolute;top:42%;left:36%;transform:scale(.9);box-shadow:0 5px 15px #2d2e2916}.diagram-tag small{color:#7c7d77;font-size:7px;font-weight:500}.stage-1 .diagram-node,.stage-2 .diagram-node{opacity:1}.stage-1 .diagram-dimension,.stage-2 .diagram-dimension,.stage-2 .diagram-tag{opacity:1;transform:none}.local-section{padding-top:72px}.local-card{background:#e8efeb;border:1px solid #d3dfda;border-radius:14px;grid-template-columns:.8fr 1.2fr;gap:90px;padding:80px;display:grid;position:relative;overflow:hidden}.local-card:after{content:"";border:1px solid #97b7ad50;border-radius:50%;width:560px;height:560px;position:absolute;bottom:-260px;right:-150px;box-shadow:0 0 0 70px #97b7ad12,0 0 0 140px #97b7ad0d}.local-copy{z-index:2;position:relative}.local-copy .section-kicker{color:var(--site-teal)}.local-copy h2{margin-top:16px}.local-copy p{color:#4f625a;max-width:500px;margin:22px 0;font-size:16px;line-height:1.7}.local-copy a{color:#265f59;align-items:center;gap:8px;min-height:44px;margin-top:5px;font-size:14px;font-weight:750;display:inline-flex}.local-copy a svg{transition:transform .2s}.local-copy a:hover svg{transform:translate(3px)}.privacy-stack{z-index:2;grid-template-columns:1fr 24px 1fr 24px 1fr;align-self:center;align-items:center;gap:8px;display:grid;position:relative}.privacy-stack>div{background:#f9faf7;border:1px solid #cddbd5;border-radius:9px;flex-direction:column;justify-content:center;gap:14px;min-width:0;min-height:155px;padding:20px;transition:transform .25s;display:flex;box-shadow:0 12px 30px #45655b10}.privacy-stack>div:hover{transform:translateY(-4px)}.privacy-stack>div>span{color:#2a6f69;background:#e5f0ec;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.privacy-stack p{margin:0}.privacy-stack b,.privacy-stack small{display:block}.privacy-stack b{font-size:14px}.privacy-stack small{color:#606b65;margin-top:6px;font-size:12px;line-height:1.55}.privacy-stack>i{color:#718f86;text-align:center}.output-section{padding-top:16px}.output-card{border:1px solid var(--site-line);background:#faf9f5;border-radius:14px;grid-template-columns:1fr auto;align-items:end;gap:50px;padding:72px 76px;display:grid}.output-card h2{margin-top:15px}.output-card p{max-width:640px;color:var(--site-muted);margin:20px 0 0;font-size:16px;line-height:1.7}.output-formats{align-items:center;display:flex}.output-formats span{color:#555750;background:#fff;border:1px solid #c9c9c1;border-radius:50%;place-items:center;width:66px;height:66px;margin-left:-6px;font-size:11px;font-weight:800;transition:transform .25s,color .25s,border-color .25s;display:grid;box-shadow:0 5px 15px #3132280d}.output-formats span:hover{z-index:2;color:var(--site-accent);border-color:#b8492d;transform:translateY(-5px)}.final-cta{color:#fff;text-align:center;background:#23241f;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;width:min(1240px,100% - 48px);min-height:500px;margin:0 auto 24px;display:flex}.final-mark{color:#fff;width:43px;height:43px;margin-bottom:27px}.final-cta>span{color:#bfc1b8;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:750}.final-cta h2{letter-spacing:-.05em;margin:17px 0 30px;font:600 clamp(38px,4vw,58px)/1.03 Avenir Next,Segoe UI,sans-serif}.primary-site-button.light{box-shadow:none;background:#fff;border-color:#fff;color:#272823!important}.primary-site-button.light:hover{background:#f1f1eb}.site-footer{grid-template-columns:1.4fr 1fr auto;align-items:center;gap:35px;width:min(1240px,100% - 48px);min-height:190px;margin:0 auto;display:grid}.site-footer>div:first-child p{color:#5f615b;margin:12px 0 0;font-size:13px}.footer-links{color:#50524c;justify-content:center;gap:24px;font-size:13px;font-weight:600;display:flex}.footer-links a{align-items:center;min-height:32px;display:inline-flex}.footer-links a:hover{color:var(--site-accent)}.site-footer>small{color:#62645e;font-size:11px}.site-reveal{opacity:0;transition:opacity .7s ease var(--delay,0s), transform .7s cubic-bezier(.2,.8,.2,1) var(--delay,0s);transform:translateY(22px)}.site-reveal.is-visible{opacity:1;transform:none}@keyframes plan-draw{to{stroke-dashoffset:0}}@keyframes preview-fade{to{opacity:1}}@keyframes preview-rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes workflow-in{0%{opacity:0;transform:translateY(8px)}}.legal-main{width:min(1120px,100% - 48px);margin:0 auto;padding-bottom:110px}.legal-hero{border-bottom:1px solid var(--site-line);padding:85px 0 74px}.legal-hero>span{color:var(--site-accent);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800}.legal-hero h1{letter-spacing:-.055em;margin:18px 0;font:650 clamp(48px,6vw,76px)/1 Avenir Next,Segoe UI,sans-serif}.legal-hero>p{max-width:700px;color:var(--site-muted);margin:0;font-size:18px;line-height:1.65}.legal-hero>div{color:#5f615b;align-items:center;gap:18px;margin-top:28px;font-size:12px;display:flex}.legal-hero button{color:#444640;cursor:pointer;background:0 0;border:1px solid #bfc0b8;border-radius:5px;min-height:40px;padding:0 13px;font-size:13px}.legal-hero button:hover{background:#fff}.legal-layout{grid-template-columns:220px minmax(0,720px);justify-content:space-between;gap:80px;padding-top:58px;display:grid}.legal-layout aside{flex-direction:column;align-self:start;gap:5px;display:flex;position:sticky;top:105px}.legal-layout aside>span{color:#62645e;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:800}.legal-layout aside a{color:#555750;align-items:center;min-height:34px;padding:5px 0;font-size:13px;line-height:1.35;transition:color .2s,transform .2s;display:flex}.legal-layout aside a:hover{color:var(--site-accent);transform:translate(3px)}.legal-callout{color:#285f5a;background:#e7f0ed;border:1px solid #c0d4cd;border-radius:9px;align-items:flex-start;gap:15px;margin-bottom:52px;padding:22px;display:flex}.legal-callout.warning{color:#744630;background:#f8ebe5;border-color:#dec4b9}.legal-callout>svg{flex:none;margin-top:2px}.legal-callout b{font-size:15px}.legal-callout p{color:inherit!important;margin:7px 0 0!important;font-size:14px!important;line-height:1.65!important}.legal-section{padding:0 0 52px;scroll-margin-top:105px}.legal-section+.legal-section{border-top:1px solid var(--site-line);padding-top:49px}.legal-section h2{letter-spacing:-.025em;margin:0 0 24px;font:650 27px/1.25 Avenir Next,Segoe UI,sans-serif}.legal-section h3{margin:31px 0 11px;font:650 18px/1.4 Avenir Next,Segoe UI,sans-serif}.legal-section p,.legal-section li{color:#50524c;font-size:16px;line-height:1.72}.legal-section p{margin:0 0 18px}.legal-section ul{margin:10px 0 21px;padding-left:24px}.legal-section li{margin:8px 0;padding-left:5px}.legal-section strong{color:#30312d}.legal-section a{color:#9d3d26;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.legal-section code{color:#2e625d;overflow-wrap:anywhere;background:#e1ebe7;border-radius:3px;padding:2px 5px;font-size:14px}.not-found-site{flex-direction:column;display:flex}.not-found-site main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:50px 24px;display:flex}.not-found-mark{width:54px;height:54px;margin-bottom:24px}.not-found-site main>span{color:var(--site-accent);letter-spacing:.15em;font-size:10px;font-weight:800}.not-found-site h1{letter-spacing:-.045em;margin:13px 0 9px;font:650 42px/1 Avenir Next,Segoe UI,sans-serif}.not-found-site p{color:var(--site-muted);margin:0 0 25px;font-size:13px}@media (width<=1080px){.hero-section{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-copy{max-width:720px}.hero-preview-wrap{justify-self:center;width:min(850px,100%)}.product-preview{width:100%;transform:none}.feature-grid{grid-template-columns:repeat(2,1fr)}.workflow-panel{grid-template-columns:150px 1fr}.workflow-diagram{display:none}.local-card{grid-template-columns:1fr;gap:55px}.output-card{grid-template-columns:1fr}.output-formats{justify-self:start}}@media (width<=760px){.site-header{grid-template-columns:1fr auto;width:min(100% - 28px,1240px);height:68px}.site-header nav{display:none}.site-header-cta{min-height:40px;padding:0 12px;font-size:12px}.hero-section,.proof-strip,.site-section,.final-cta,.site-footer,.legal-main{width:calc(100% - 28px)}.hero-section{gap:44px;padding:58px 0 70px}.hero-copy h1{font-size:clamp(43px,14vw,66px)}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-trust{gap:12px}.preview-workspace{grid-template-columns:30px minmax(0,1fr);height:330px}.preview-properties{display:none}.preview-topbar{gap:8px}.preview-document{display:none}.proof-strip{grid-template-columns:repeat(2,1fr);padding:15px 0}.proof-strip>span{grid-column:1/-1;padding:8px 0 15px}.proof-strip div{min-height:58px}.proof-strip div:nth-of-type(odd){border-left:0}.site-section{padding:90px 0}.section-heading{grid-template-columns:1fr;gap:20px}.section-heading .section-kicker{grid-column:auto}.section-heading h2,.workflow-heading h2,.local-copy h2,.output-card h2{font-size:37px}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:260px}.workflow-heading{display:block}.workflow-heading .section-kicker{margin-bottom:18px}.workflow-panel{grid-template-columns:1fr;min-height:560px}.workflow-tabs{border-bottom:1px solid #3b3c36;border-right:0;grid-template-columns:repeat(3,1fr);padding:10px;display:grid}.workflow-tabs button{grid-template-columns:auto 1fr;height:55px}.workflow-tabs button svg{display:none}.workflow-content{align-self:start;padding:45px 30px}.workflow-content h3{font-size:34px}.local-card{padding:45px 25px}.privacy-stack{grid-template-columns:1fr}.privacy-stack>i{transform:rotate(90deg)}.privacy-stack>div{flex-direction:row;align-items:center;min-height:115px}.output-card{padding:45px 26px}.output-formats{flex-wrap:wrap}.output-formats span{width:58px;height:58px}.final-cta{min-height:430px;padding:50px 24px}.final-cta h2{font-size:39px}.site-footer{grid-template-columns:1fr;gap:23px;padding:48px 0}.footer-links{flex-wrap:wrap;justify-content:flex-start}.legal-hero{padding:62px 0 55px}.legal-hero h1{font-size:52px}.legal-hero>p{font-size:16px}.legal-layout{grid-template-columns:1fr;gap:35px}.legal-layout aside{border-bottom:1px solid var(--site-line);grid-template-columns:repeat(2,1fr);padding-bottom:28px;display:grid;position:static}.legal-layout aside>span{grid-column:1/-1}.legal-section h2{font-size:25px}}@media (width<=430px){.site-brand>span{display:none}.preview-solved{margin-left:auto}.hero-copy h1{font-size:43px}.hero-trust{grid-template-columns:1fr 1fr;display:grid}.legal-layout aside{grid-template-columns:1fr}.legal-layout aside>span{grid-column:auto}}@media (prefers-reduced-motion:reduce){.marketing-site,.legal-site{scroll-behavior:auto}.site-reveal{opacity:1;transition:none;transform:none}.preview-walls{stroke-dasharray:none;stroke-dashoffset:0;animation:none}.preview-room-fill,.preview-room-tags,.preview-dimensions,.preview-dimension-labels,.preview-nodes,.preview-windows,.preview-doors{opacity:1;animation:none}.product-preview,.primary-site-button,.privacy-stack>div,.output-formats span{transition:none}}@media print{.legal-site{background:#fff;height:auto;overflow:visible}.legal-site .site-header,.legal-site .site-footer,.legal-layout aside,.legal-hero button{display:none}.legal-main{width:100%;padding:0}.legal-hero{padding:0 0 30px}.legal-layout{padding-top:35px;display:block}.legal-section{break-inside:avoid}.legal-section p,.legal-section li{color:#222;font-size:10pt}.legal-callout{border:1px solid #999}}:root{--ui-accent:#b8492d;--ui-accent-hover:#a33f25;--ui-focus:#176e68;--ui-muted:#666862;--ui-subtle:#70726b;color:#292a27;font-synthesis:none;background:#edede9;font-family:Avenir Next,Segoe UI,Inter,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button{color:inherit}:where(button,a,input,select,textarea):focus-visible{outline:3px solid var(--ui-focus);outline-offset:2px}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell{background:#f7f7f4;flex-direction:column;height:100%;display:flex}.topbar{z-index:20;background:#fcfcfaf7;border-bottom:1px solid #deded8;flex:0 0 68px;align-items:center;gap:18px;height:68px;padding:0 14px 0 17px;display:flex}.brand{color:#242522;align-items:center;gap:10px;width:196px;display:flex}.brand-logo{flex:0 0 36px;width:36px;height:36px}.brand-copy{flex-direction:column;gap:3px;font-family:Manrope,sans-serif;line-height:1;display:flex}.brand-copy strong{letter-spacing:.11em;font-size:12px}.brand-copy small{letter-spacing:.34em;color:#62645e;font-size:9px;font-weight:700}.project-title-wrap{flex-direction:column;justify-content:center;gap:2px;min-width:210px;display:flex}.project-title-wrap input{color:#292a27;background:0 0;border:0;outline:0;width:210px;padding:0;font:600 14px/1.4 Manrope,sans-serif}.save-state{color:#8b4935;align-items:center;gap:5px;font-size:12px;display:flex}.save-state.saved{color:#666862}.dof-badge{color:#7d442f;cursor:pointer;background:#fff2ed;border:1px solid #e8c5b9;border-radius:99px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:13px;font-weight:600;display:flex;position:absolute;left:50%;transform:translate(-50%)}.dof-badge.locked{color:#36705a;cursor:default;background:#ebf5f0;border-color:#cfe2d9}.dof-badge.inspecting{color:#8c5710;background:#fff1d1;border-color:#e7a43b;box-shadow:0 0 0 3px #e7a43b22}.top-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.segmented{background:#efefeb;border:1px solid #e1e1dc;border-radius:7px;padding:2px;display:inline-flex}.segmented button{color:#62645e;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:60px;height:32px;padding:0 10px;font-size:13px;font-weight:600}.segmented button.active{color:#292a27;background:#fff;box-shadow:0 1px 3px #18181018}.action-button{cursor:pointer;background:#fff;border:1px solid #cfcfc8;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 12px;font-size:13px;font-weight:600;display:flex;box-shadow:0 1px 1px #00000008}.action-button:hover{background:#fafaf8;border-color:#bdbdb6}.action-button.primary{color:#fff;border-color:var(--ui-accent);background:var(--ui-accent);padding:0 13px}.action-button.primary:hover{background:var(--ui-accent-hover)}.solve-button{color:#24726c}.export-wrap{position:relative}.export-menu{z-index:100;background:#fff;border:1px solid #deded8;border-radius:10px;width:255px;padding:7px;position:absolute;top:41px;right:0;box-shadow:0 16px 38px #20221b22,0 2px 8px #00000010}.export-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;width:100%;padding:10px;display:flex}.export-menu button:hover{background:#f5f5f1}.export-menu button>svg,.export-icon{color:#555750;background:#f0f0ec;border-radius:6px;flex:0 0 30px;width:30px;height:30px;padding:6px}.export-icon{letter-spacing:-.04em;place-items:center;padding:0;font-size:9px;font-weight:800;display:grid}.export-menu span:not(.export-icon){flex-direction:column;gap:2px;display:flex}.export-menu b{font-size:14px;font-weight:600}.export-menu small{color:#666862;font-size:12px}.workspace{flex:1;grid-template-columns:58px minmax(0,1fr) 332px;min-height:0;display:grid}.toolbar{z-index:5;background:#fbfbf9;border-right:1px solid #deded8;flex-direction:column;align-items:center;gap:5px;padding:10px 7px 8px;display:flex}.tool-group{flex-direction:column;gap:5px;display:flex}.tool-button{color:#555751;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative}.tool-button:hover:not(:disabled){color:#292a27;background:#f0f0ec}.tool-button.active{color:#d95936;background:#fff0eb;border-color:#f0d1c7}.tool-button:disabled{opacity:.3;cursor:default}.tool-button kbd{color:currentColor;opacity:.72;font:600 9px/1 DM Sans;position:absolute;bottom:3px;right:4px}.tool-button:after{content:attr(data-tooltip);pointer-events:none;opacity:0;color:#fff;z-index:100;background:#2d2e2a;border-radius:5px;width:max-content;padding:7px 9px;font-size:12px;transition:all .15s;position:absolute;top:7px;left:52px;transform:translate(-3px)}.tool-button:hover:after{opacity:1;transform:none}.toolbar-divider{border-top:1px solid #e2e2dd;width:30px;margin:3px 0}.toolbar-spacer{flex:1}.canvas-shell{background:#f7f7f4;min-width:0;min-height:0;position:relative;overflow:hidden}.canvas-shell canvas{touch-action:none;cursor:default;position:absolute;inset:0}.canvas-shell.tool-wall canvas{cursor:crosshair}.canvas-shell.tool-door canvas,.canvas-shell.tool-window canvas,.canvas-shell.tool-room canvas{cursor:cell}.canvas-shell.diagram-pick-active canvas{cursor:crosshair}.view-chip{color:#5f615b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#fffffdeb;border:1px solid #d3d3cc;border-radius:6px;align-items:center;gap:6px;height:32px;padding:0 10px;font-size:12px;display:flex;position:absolute;top:12px;left:12px}.constraint-inspector{color:#7e5214;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:12;background:#fff9e7f5;border:1px solid #e9bd6f;border-radius:9px;align-items:center;gap:10px;min-height:43px;padding:7px 8px 7px 11px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 7px 22px #60461520}.constraint-inspector>svg{color:#d68b18;flex:none}.constraint-inspector>div:first-of-type{white-space:nowrap;flex-direction:column;gap:2px;display:flex}.constraint-inspector b{color:#624114;font-size:13px}.constraint-inspector div>span{color:#745625;font-size:12px}.constraint-audit-counts{white-space:nowrap;border-left:1px solid #e6c98f;gap:5px;padding-left:9px;display:flex}.constraint-audit-counts span{background:#f7e4bb;border-radius:5px;padding:5px 7px;color:#68430f!important;font-size:11px!important}.constraint-audit-counts span:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.constraint-audit-counts .audit-length{background:#f8dfe4;color:#a84459!important}.constraint-audit-counts .audit-direction{background:#e3ecfa;color:#3d69a9!important}.constraint-inspector button{color:#76521f;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;width:32px;height:32px;padding:0;display:grid}.constraint-inspector button:hover{background:#f3dfb5}.solve-conflict-banner{color:#713a2d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:13;background:#fff4f0f7;border:1px solid #e8a08e;border-radius:9px;align-items:center;gap:11px;min-width:490px;min-height:49px;padding:8px 9px 8px 12px;display:flex;position:absolute;top:64px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #6f291a20}.solve-conflict-banner>svg{color:#b8492d;flex:none}.solve-conflict-banner>div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.solve-conflict-banner b{font-size:13px}.solve-conflict-banner span{color:#784b40;font-size:12px}.solve-conflict-banner button{color:#823d2d;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dfa99b;border-radius:5px;min-height:36px;padding:0 11px;font-size:12px;font-weight:600}.solve-conflict-banner button:hover{background:#fff8f5}.solve-conflict-banner button.banner-close{background:0 0;border-color:#0000;place-items:center;width:36px;padding:0;display:grid}.mode-hint{color:#fff;pointer-events:none;background:#2c2d29;border-radius:8px;align-items:center;gap:11px;height:43px;padding:0 8px 0 13px;display:flex;position:absolute;bottom:37px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #2021182c}.mode-hint span{white-space:nowrap;font-size:13px;font-weight:600}.mode-hint small{color:#d0d1ca;white-space:nowrap;border-left:1px solid #ffffff35;padding-left:10px;font-size:12px}.mode-hint kbd{color:#f0f1eb;background:#ffffff14;border:1px solid #ffffff28;border-radius:4px;padding:4px 6px;font-size:11px}.diagram-pick-hint{z-index:7;color:#fff;background:#244d49;border:1px solid #4f7f79;border-radius:9px;align-items:center;gap:11px;min-width:min(470px,100% - 28px);padding:10px 11px 10px 13px;display:flex;position:absolute;bottom:52px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #162c2938}.diagram-pick-hint>svg{color:#8bd3cb;flex:none}.diagram-pick-hint>div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.diagram-pick-hint b{font-size:13px}.diagram-pick-hint span{color:#c8dfdc;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.diagram-pick-hint button{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff38;border-radius:5px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:12px;display:flex}.diagram-pick-hint kbd{color:#d8e8e6;background:#ffffff12;border:1px solid #ffffff2b;border-radius:3px;padding:2px 4px;font-size:10px}.canvas-status{color:#5f615b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffdeb;border:1px solid #d3d3cc;border-radius:6px;align-items:center;gap:8px;min-height:36px;padding:3px 6px 3px 11px;font-size:12px;display:flex;position:absolute;bottom:7px;right:8px}.canvas-status .status-separator{border-left:1px solid #e0e0da;align-self:stretch}.canvas-status button{color:#454741;cursor:pointer;background:0 0;border:0;border-radius:4px;width:28px;height:28px;padding:0;font-size:18px}.properties{z-index:4;background:#fbfbf9;border-left:1px solid #deded8;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.panel-heading{border-bottom:1px solid #e6e6e1;flex:0 0 74px;justify-content:space-between;align-items:center;min-height:74px;padding:0 18px;display:flex}.panel-heading svg{color:#a0a19b}.eyebrow{color:#666862;letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.panel-heading h2,.modal h2{margin:0;font:600 17px/1.25 Manrope,sans-serif}.panel-scroll{flex:auto;min-height:0;overflow-y:auto}.element-id{color:#484a44;border-bottom:1px solid #e7e7e2;align-items:center;gap:8px;min-height:50px;padding:0 17px;font-size:13px;font-weight:600;display:flex}.element-id code{color:#666862;margin-left:auto;font:500 11px/1 monospace}.swatch{background:#deded9;border:1px solid #8a8b85;border-radius:2px;width:9px;height:9px}.swatch.door{background:#e99a80;border-color:#d96945;border-radius:50%}.swatch.window{background:#8cc8c3;border-color:#4a9691}.swatch.room{background:#f2b09b;border-color:#d96342;border-radius:50%}.swatch.constraint{background:#55a7a1;border-color:#2e7c77}.property-section{border-bottom:1px solid #e8e8e3;padding:15px 16px 17px}.section-title{color:#60625c;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:13px;font-size:11px;font-weight:700;display:flex}.field-row{color:#555751;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-size:13px;display:flex}.field-row+.field-row{border-top:1px solid #eeeeea}.field-input{text-align:right;color:#333430;background:#fff;border:1px solid #cfcfc8;border-radius:5px;outline:0;width:120px;height:38px;padding:0 10px;font-size:14px}.field-input::placeholder{color:#9b9c96;font-style:italic}.field-input.room-name-input{text-align:left;width:100%}.field-input:focus,.field-stack select:focus,.modal input:focus{border-color:var(--ui-focus);box-shadow:0 0 0 2px #176e6828}.field-stack{color:#555751;flex-direction:column;gap:8px;margin-top:13px;font-size:13px;display:flex}.field-stack select{color:#3f413c;background:#fff;border:1px solid #cfcfc8;border-radius:5px;outline:none;width:100%;height:40px;padding:0 10px;font-size:14px}.field-stack .segmented{display:flex}.field-stack .segmented button{flex:1}.switch{appearance:none;cursor:pointer;background:#b7b8b2;border:0;border-radius:14px;width:40px;height:24px;padding:2px}.switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .15s;display:block;box-shadow:0 1px 2px #0003}.switch:checked{background:var(--ui-accent)}.switch:checked:after{transform:translate(16px)}.rule-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.rule-grid.two{grid-template-columns:repeat(2,1fr)}.rule-grid.single{grid-template-columns:1fr}.rule-grid.single button{flex-direction:row;min-height:44px}.rule-grid button{color:#555751;cursor:pointer;background:#fff;border:1px solid #cfcfc8;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:56px;padding:4px;font-size:12px;display:flex}.rule-grid button:hover{color:#bd4b2d;background:#fff8f5;border-color:#e8b5a6}.rule-grid button:disabled{color:#aaa;cursor:not-allowed;background:#f4f4f1;border-color:#e6e6e1}.rule-symbol{height:15px;font:700 14px/1 Manrope,sans-serif}.help-text{color:#666862;margin:12px 2px 0;font-size:12px;line-height:1.55}.host-note{color:#5f615b;background:#efefeb;border-radius:5px;margin-top:10px;padding:10px;font-size:12px;line-height:1.55}.host-note kbd{color:#555751;background:#fff;border:1px solid #cfcfc8;border-radius:3px;padding:2px 5px;font-size:11px}.multi-summary{color:#6f5146;background:#fff2ed;border:1px solid #f0d6cd;border-radius:7px;align-items:center;gap:10px;margin:14px 16px 0;padding:12px;display:flex}.multi-summary div{flex-direction:column;gap:3px;display:flex}.multi-summary b{font-size:13px}.multi-summary span{color:#795a50;font-size:12px}.formula{color:#225f5a;background:#edf7f5;border:1px solid #c3ded9;border-radius:6px;align-items:center;gap:9px;padding:12px;font:500 13px/1.3 monospace;display:flex}.formula.invalid{color:#9a402e;background:#fff2ee;border-color:#efc1b6}.affected{color:#60625c;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;font-size:12px;display:flex}.affected button{color:#484a44;background:#fff;border:1px solid #cfcfc8;border-radius:4px;min-height:30px;padding:4px 8px;font-size:11px}.danger-button{color:#963d28;cursor:pointer;background:#fff8f6;border:1px solid #dfb5aa;border-radius:6px;justify-content:center;align-items:center;gap:7px;width:calc(100% - 32px);min-height:42px;margin:16px;font-size:13px;display:flex}.constraint-list{overscroll-behavior:contain;scrollbar-gutter:stable;border-top:1px solid #deded8;flex:0 auto;min-height:120px;max-height:45%;margin-top:auto;overflow-y:auto}.constraint-list>.section-title{z-index:1;background:#fbfbf9;border-bottom:1px solid #e8e8e3;height:38px;margin:0;padding:0 16px;position:sticky;top:0}.count-pill{color:#5f615b;background:#e5e5e0;border-radius:8px;padding:3px 6px;font-size:11px}.constraint-list>button{text-align:left;cursor:pointer;content-visibility:auto;contain-intrinsic-size:58px;background:0 0;border:0;border-bottom:1px solid #edede9;align-items:center;gap:10px;width:100%;min-height:58px;padding:6px 15px;display:flex}.constraint-list>button:hover,.constraint-list>button.selected{background:#f2f6f4}.constraint-list>button.conflict{color:#8f402e;background:#fff6f3;box-shadow:inset 3px 0 #dc5c3d}.constraint-list>button.conflict:hover,.constraint-list>button.conflict.selected{background:#ffede8}.constraint-list>button.conflict svg{color:#d75638}.constraint-list>button>span:not(.constraint-glyph){flex-direction:column;gap:2px;display:flex}.constraint-list b{font-size:13px;font-weight:600}.constraint-list small{color:#666862;font-size:11px;line-height:1.35}.constraint-list em{color:#2f6f69;margin-left:auto;font-size:12px;font-style:normal}.constraint-list svg{color:#397a74;margin-left:auto}.constraint-glyph{color:#357d77;background:#e6f2f0;border-radius:5px;flex:0 0 22px;place-items:center;width:22px;height:22px;font:700 11px/1 Manrope;display:grid}.empty-row{color:#666862;padding:16px;font-size:12px}.project-overview{text-align:center;border-bottom:1px solid #e8e8e3;padding:22px 18px 18px}.overview-art{color:#d55e3c;background:#fff0eb;border:1px solid #f0d4ca;border-radius:15px;place-items:center;width:54px;height:54px;margin:0 auto 12px;display:grid;transform:rotate(-2deg)}.project-overview h3{margin:0 0 7px;font:600 16px/1.25 Manrope}.project-overview p{color:#5f615b;margin:0;font-size:13px;line-height:1.6}.project-overview kbd{background:#eaeae6;border:1px solid #cfcfc8;border-radius:3px;padding:2px 5px;font-size:11px}.stat-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.stat-grid div{background:#f1f1ed;border-radius:6px;flex-direction:column;gap:3px;padding:10px;display:flex}.stat-grid b{font:600 16px/1.1 Manrope}.stat-grid span{color:#60625c;font-size:11px}.info-row{color:#60625c;justify-content:space-between;gap:12px;padding:9px 0;font-size:13px;display:flex}.info-row b{color:#484a44;text-align:right;font-weight:500}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:200;background:#191a1745;place-items:center;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #d4d4ce;border-radius:12px;width:min(430px,100vw - 32px);padding:24px;box-shadow:0 24px 60px #11120d35}.modal-icon{color:#ce5434;background:#fff0eb;border-radius:9px;place-items:center;width:38px;height:38px;margin-bottom:15px;display:grid}.modal h2{font-size:19px}.modal>p{color:#5f615b;margin:9px 0 20px;font-size:14px;line-height:1.6}.modal label{color:#4f514b;flex-direction:column;gap:7px;font-size:13px;font-weight:600;display:flex}.modal input,.modal select{color:#333530;background:#fff;border:1px solid #c9cac3;border-radius:6px;outline:0;min-height:44px;padding:0 12px;font-size:14px}.modal label+label{margin-top:15px}.modal label small{color:#666862;font-size:12px;font-weight:400;line-height:1.5}.modal input:focus,.modal select:focus{border-color:var(--ui-focus);box-shadow:0 0 0 2px #176e6828}.modal input.switch{width:40px;height:24px;min-height:24px;padding:2px}.export-details-modal{flex-direction:column;width:min(720px,100vw - 32px);max-height:min(820px,100vh - 32px);padding:0;display:flex;overflow:hidden}.export-modal-heading{align-items:center;gap:13px;padding:21px 23px 13px;display:flex}.export-modal-heading .modal-icon{flex:0 0 38px;margin:0}.export-modal-heading .eyebrow{margin-bottom:4px}.export-details-modal>p{border-bottom:1px solid #ecece7;margin:0;padding:0 23px 17px}.export-details-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;overflow-y:auto}.export-fieldset{border:0;border-bottom:1px solid #ecece7;margin:0;padding:18px 23px 21px}.export-fieldset:last-child{border-bottom:0}.export-fieldset legend{color:#60625c;letter-spacing:.09em;text-transform:uppercase;width:100%;padding:0 0 13px;font-size:11px;font-weight:700}.export-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.export-field-grid label,.export-field-grid label+label{min-width:0;margin:0}.export-field-grid .field-wide{grid-column:1/-1}.export-field-grid input,.export-field-grid textarea{width:100%}.export-field-grid textarea{resize:vertical;color:#333530;background:#fff;border:1px solid #c9cac3;border-radius:6px;outline:0;min-height:84px;padding:10px 12px;font-size:14px;line-height:1.5}.export-field-grid textarea:focus{border-color:var(--ui-focus);box-shadow:0 0 0 2px #176e6828}.required-label{color:#963d28;margin-left:4px;font-size:11px;font-weight:650}.export-modal-foot{background:#fafaf8;border-top:1px solid #e6e6e1;justify-content:space-between;align-items:center;gap:16px;min-height:61px;padding:12px 23px;display:flex}.export-modal-foot>span{color:#5f615b;align-items:center;gap:7px;font-size:12px;display:flex}.export-modal-foot .modal-actions{margin-top:0}.room-label-modal{width:410px}.room-tag-fields{grid-template-columns:minmax(0,1fr) 118px;gap:10px;display:grid}.room-tag-fields label+label{margin-top:0}.optional-label{color:#666862;margin-left:4px;font-size:11px;font-style:normal;font-weight:500}.settings-modal{flex-direction:column;width:440px;max-height:min(760px,100vh - 40px);display:flex}.overall-dimension-modal{width:470px}.junction-dimension-modal{max-height:min(850px,100vh - 32px);overflow-y:auto}.witness-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:13px;display:grid}.witness-grid label+label{margin-top:0}.pick-field{flex-direction:column;gap:7px;min-width:0;display:flex}.pick-field>label{flex:1;min-width:0}.carrier-pick-field{margin-top:15px}.diagram-object-row{background:#f5f6f2;border:1px solid #dedfd8;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;margin:-5px 0 15px;padding:9px 10px 9px 12px;display:flex}.diagram-object-row>span{flex-direction:column;gap:3px;min-width:0;display:flex}.diagram-object-row small{color:#6a6c65;font-size:11px}.diagram-object-row b{color:#3e403b;text-overflow:ellipsis;white-space:nowrap;font:600 11px/1.2 monospace;overflow:hidden}.diagram-pick-button{color:#176e68;cursor:pointer;background:#f2fbf9;border:1px solid #8fc3bd;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 9px;font-size:11px;font-weight:650;display:flex}.diagram-pick-button:hover{color:#105d58;background:#e6f6f3;border-color:#5da69e}.constraint-datum-field label{flex-direction:column;gap:8px;display:flex}.constraint-datum-field .diagram-pick-button{width:100%}.measurement-preview{color:#3e625e;background:#edf7f5;border:1px solid #c6dfdb;border-radius:6px;justify-content:space-between;align-items:center;margin:14px 0 2px;padding:12px;font-size:13px;display:flex}.measurement-preview b{color:#21756c;font-size:15px}.overall-dimension-modal label>.segmented{display:flex}.overall-dimension-modal label>.segmented button{flex:1}.constraint-warning{color:#74490f;background:#fff8e7;border:1px solid #e2ca91;border-radius:6px;align-items:flex-start;gap:9px;margin-top:13px;padding:11px;font-size:12px;line-height:1.55;display:flex}.constraint-warning svg{color:#d79024;flex:none;margin-top:1px}.constraint-warning span{display:block}.constraint-warning b{margin-bottom:2px;display:block}.topology-note{color:#285f59;background:#edf8f6;border:1px solid #c3dfda;border-radius:6px;align-items:flex-start;gap:9px;margin-top:13px;padding:11px;font-size:12px;line-height:1.55;display:flex}.topology-note svg{color:#2d746d;flex:none;margin-top:1px}.topology-note span,.topology-note b{display:block}.topology-note b{margin-bottom:2px}.property-primary{color:#fff;background:var(--ui-accent);border:1px solid var(--ui-accent);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:42px;margin-top:14px;font-size:13px;font-weight:650;display:flex}.settings-scroll{border-top:1px solid #ecece7;border-bottom:1px solid #ecece7;margin:0 -22px;overflow-y:auto}.settings-scroll .property-section{padding-left:22px;padding-right:22px}.settings-modal>.modal-actions{margin-top:15px}.settings-button{padding-inline:9px}.editor-legal-link{justify-content:center;width:40px;padding:0;text-decoration:none;position:relative}.editor-legal-label,.mobile-menu-button,.mobile-properties-button,.mobile-menu-close,.properties-close,.properties-backdrop{display:none}.properties-close{color:#555751;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:40px;height:40px;padding:0}.modal-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.modal-actions button{cursor:pointer;background:#fff;border:1px solid #cfcfc8;border-radius:6px;min-height:42px;padding:0 16px;font-size:13px;font-weight:600}.modal-actions button.primary{color:#fff;border-color:var(--ui-accent);background:var(--ui-accent)}.modal-actions button.primary:hover{background:var(--ui-accent-hover)}.modal-actions button:disabled{color:#73756e;cursor:not-allowed;background:#efefeb;border-color:#d8d8d2}.toast{color:#fff;z-index:300;background:#292a27;border-radius:7px;align-items:center;gap:7px;padding:11px 15px;font-size:13px;animation:.2s ease-out toast-in;display:flex;position:fixed;bottom:48px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #22231d38}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,6px)}}@media (width<=980px){.workspace{grid-template-columns:58px minmax(0,1fr)}.brand{width:auto}.brand-copy{display:none}.project-title-wrap{flex:1;min-width:150px}.project-title-wrap input{width:min(210px,100%)}.dof-badge{justify-content:center;width:40px;min-width:40px;padding:0;position:static;transform:none}.dof-badge span{display:none}.mobile-menu-button,.mobile-properties-button{width:40px;min-width:40px;padding:0;display:flex}.mobile-menu-button span,.mobile-properties-button span{display:none}.top-actions{z-index:120;background:#fbfbf9;border:1px solid #cfcfc8;border-radius:10px;flex-direction:column;align-items:stretch;gap:8px;width:min(300px,100vw - 24px);max-height:calc(100vh - 88px);margin:0;padding:12px;display:none;position:fixed;top:76px;right:12px;overflow-y:auto;box-shadow:0 18px 45px #20221b35}.top-actions.is-open{display:flex}.top-actions .action-button,.top-actions .segmented,.top-actions .export-wrap{width:100%}.top-actions .segmented{display:flex}.top-actions .segmented button{flex:1}.top-actions .editor-legal-link{min-height:40px}.top-actions .editor-legal-label{display:inline}.mobile-menu-close{display:flex}.export-wrap>.action-button{width:100%}.export-menu{width:100%;margin-top:7px;position:static;box-shadow:0 8px 20px #20221b18}.properties{z-index:90;border-left:1px solid #cfcfc8;width:min(350px,100vw - 58px);transition:transform .22s;display:flex;position:fixed;top:68px;bottom:0;right:0;transform:translate(105%);box-shadow:-18px 0 45px #20221b28}.properties.is-open{transform:none}.properties-close{display:grid}.properties-backdrop{z-index:80;cursor:pointer;background:#191a1738;border:0;width:100%;height:auto;padding:0;position:fixed;inset:68px 0 0}.properties-backdrop.is-open{display:block}}@media (width<=760px){.topbar{gap:8px;padding-inline:10px}.brand{display:none}.project-title-wrap{min-width:0}.project-title-wrap input{width:100%}.constraint-inspector{flex-wrap:wrap;left:10px;right:10px;transform:none}.constraint-audit-counts{border-top:1px solid #e6c98f;border-left:0;width:100%;padding:7px 0 0}.solve-conflict-banner{flex-wrap:wrap;min-width:0;left:10px;right:10px;transform:none}.solve-conflict-banner>div{flex-basis:calc(100% - 36px)}.mode-hint{flex-wrap:wrap;height:auto;min-height:46px;padding:9px 11px;left:68px;right:10px;transform:none}.mode-hint small{white-space:normal}}@media (width<=600px){.export-field-grid{grid-template-columns:1fr}.export-field-grid .field-wide{grid-column:auto}.export-modal-foot{flex-direction:column;align-items:stretch}.export-modal-foot .modal-actions{justify-content:stretch}.export-modal-foot .modal-actions button{flex:1}.modal input,.modal select,.export-field-grid textarea{font-size:16px}.room-tag-fields,.witness-grid{grid-template-columns:1fr}.room-tag-fields label+label,.witness-grid label+label{margin-top:15px}}@media (width<=380px){.save-state{font-size:11px}.dof-badge,.mobile-menu-button,.mobile-properties-button{width:38px;min-width:38px}.workspace{grid-template-columns:54px minmax(0,1fr)}.toolbar{padding-inline:5px}.properties{width:calc(100vw - 54px)}}
