:root{--bg: #faf7f0;--paper: #dde3cf;--grid-fine: rgb(107 120 86 / .13);--grid-major: rgb(107 120 86 / .3);--grid-super: rgb(88 99 70 / .5);--axis: rgb(74 84 58 / .7);--ink: #1f2933;--muted: #6b7480;--line: #dcd8cc;--label-bg: #fbfaf5;--handle: #5b6470;--room-ink: #7b8494;--danger: #c0492f;--accent: #2f6f9a;--door: #d32f2f;--window: #1565c0;--gap: #4c8a5e;--glass: #e0559b;--flat-line: #e8590c;--draw-1: #0f1a22;--draw-2: #16232e;--draw-3: #1d3346;--draw-edge: #2f6f9a;--step: #b0421c;--step-2: #cf6224;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}.authpage{min-height:100vh;display:grid;place-items:center;gap:18px;background:var(--bg);padding:24px}.authpage__brand{display:flex;align-items:center;gap:10px;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:30px;letter-spacing:.03em;color:var(--ink)}.authcard{width:100%;max-width:340px;display:flex;flex-direction:column;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:0 2px 10px #1f293314}.authcard__title{margin:0 0 4px;font-size:20px;font-weight:700;color:var(--ink)}.authcard__field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--muted)}.authcard__field input{font:inherit;font-size:14px;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 11px}.authcard__error{margin:0;font-size:13px;color:var(--danger)}.authcard__divider{display:flex;align-items:center;gap:10px;margin:2px 0;color:var(--muted);font-size:12px}.authcard__divider:before,.authcard__divider:after{content:"";flex:1;height:1px;background:var(--line)}.authcard__switch{font:inherit;font-size:13px;color:var(--accent);background:none;border:0;cursor:pointer;padding:2px 0;text-align:center;text-decoration:none}.authcard__switch:hover{text-decoration:underline}.authcard__forgot{align-self:flex-end;font-size:12.5px;color:var(--accent);text-decoration:none;margin-top:-6px}.authcard__forgot:hover{text-decoration:underline}.authcard__hint{margin:0;font-size:13.5px;color:var(--muted);line-height:1.5}.authedshell{height:100vh;display:flex;flex-direction:column;overflow:hidden}.authedbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:#fff;border-bottom:1px solid var(--line);font-size:13px}.authedbar__left{display:flex;align-items:center;gap:12px}.authedbar__brand{display:inline-flex;align-items:center;gap:8px;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:18px;letter-spacing:.03em;color:var(--ink);text-decoration:none}.brandmark{flex:none;display:block}.authedbar__title{font-weight:700;color:var(--ink)}.authedbar__back{font-weight:600;color:var(--accent);text-decoration:none}.authedbar__back:hover{text-decoration:underline}.authedbar__right{display:flex;align-items:center;gap:12px}.authedbar__slot{display:flex;align-items:center;gap:10px}.authedbar__slot .btn{padding:7px 16px;box-shadow:none}.authedbar__note{flex:none;padding:5px 18px;font-size:12px;line-height:1.4;text-align:center;color:var(--muted);background:#fff;border-bottom:1px solid var(--line)}.authedbar__note:empty{display:none}.homeuser{position:relative;display:flex;align-items:center;gap:10px}.homeuser__place{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--muted);background:#f4f1e8;border:1px solid var(--line);border-radius:999px;padding:5px 11px;white-space:nowrap}.homeuser__avatar{flex:none;width:32px;height:32px;border:0;border-radius:999px;font:inherit;font-size:12.5px;font-weight:600;color:#fff;background:linear-gradient(140deg,#1f2933,#38566b);cursor:pointer}.homeuser__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:transparent;border:0;cursor:default}.homeuser__menu{position:absolute;top:calc(100% + 8px);right:0;z-index:41;min-width:190px;display:flex;flex-direction:column;gap:8px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px #1f29332e}.homeuser__email{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.homeuser__admin{font-size:12.5px;font-weight:600;text-align:left;color:#9c3a17;background:#fbeee7;border:1px solid #f0d2c9;border-radius:8px;padding:7px 10px;text-decoration:none}.homeuser__admin:hover{background:#f7e2d7}.homeuser__logout{font:inherit;font-size:12.5px;font-weight:600;text-align:left;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px 10px;cursor:pointer}.homeuser__logout:hover{background:#f6f5ef}.authedspine{flex:none;display:flex;flex-direction:column;background:#fff;border-bottom:1px solid var(--line)}.authedspine__top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 18px;min-height:40px}.authedspine__left{display:flex;align-items:center;gap:14px;min-width:0}.authedspine__divider{width:1px;height:22px;background:var(--line)}.authedspine__identity{display:flex;align-items:center}.authedspine__identity-text{display:flex;flex-direction:column;gap:1px;min-width:0}.authedspine__name{font-size:13.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.authedspine__meta{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--muted)}.authedspine__status{font-family:IBM Plex Mono,monospace;font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.authedspine__status--saving{color:var(--danger)}.authedspine__right{display:flex;align-items:center;gap:8px}.authedspine__undo{display:flex;align-items:center}.authedspine__undo:empty{display:none}.authedspine__designs{font-size:12.5px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 13px;text-decoration:none;white-space:nowrap}.authedspine__designs:hover{border-color:var(--accent)}.authedspine__steps{display:flex;align-items:stretch;background:var(--bg);border-top:1px solid var(--line)}.authedspine__steps:empty{display:none}.authedspine__stepstrip{display:flex;align-items:stretch;width:100%}.authedspine__step{flex:1;display:flex;align-items:center;gap:9px;padding:8px 14px;border-right:1px solid var(--line);color:var(--ink);text-decoration:none;min-width:0}.authedspine__step:last-child{border-right:0}.authedspine__step:hover{background:var(--label-bg)}.authedspine__step-badge{flex:none;width:20px;height:20px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--muted)}.authedspine__step--done .authedspine__step-badge{background:var(--gap);border-color:var(--gap);color:#fff}.authedspine__step--current{background:linear-gradient(135deg,#8f3315,var(--step-2))}.authedspine__step--current .authedspine__step-badge{background:#fff;border-color:#fff;color:var(--step)}.authedspine__step-text{display:flex;flex-direction:column;min-width:0}.authedspine__step-label{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.authedspine__step--current .authedspine__step-label,.authedspine__step--current .authedspine__step-stat{color:#fff}.authedspine__step-stat{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:640px){.authedspine__top{flex-wrap:wrap;row-gap:6px;padding:8px 12px}.authedspine__left{flex:1 1 100%}.authedspine__identity{flex:1;min-width:0}.authedspine__meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.authedspine__right{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.authedspine__steps{overflow-x:auto;scrollbar-width:none}.authedspine__steps::-webkit-scrollbar{display:none}.authedspine__stepstrip{width:max-content;min-width:100%}.authedspine__step{flex:none;padding:8px 12px}.authedspine__step-stat{display:none}}.authedshell__body{flex:1;min-height:0;overflow:hidden}.authedshell__body>*{height:100%}.narrownote{display:none}@media(max-width:899.98px){.narrownote{position:fixed;left:12px;right:12px;bottom:12px;z-index:1000;display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:10px;background:var(--ink);color:#fff;box-shadow:0 8px 24px #00000040}.narrownote__text{margin:0;font-size:14px;line-height:1.45}.narrownote__acts{display:flex;align-items:center;gap:8px}.narrownote__go{padding:7px 14px;border-radius:6px;background:var(--step);color:#fff;font-size:13px;font-weight:600;text-decoration:none}.narrownote__close{margin-left:auto;width:32px;height:32px;border:0;border-radius:6px;background:#ffffff1f;color:#fff;font-size:18px;cursor:pointer}}.tseats{display:inline-flex;gap:4px;margin-right:6px}.tseats__s{width:10px;height:14px;border:1px solid var(--line);border-radius:2px;background:#fff}.tseats__s--on{background:#2f6f4a;border-color:#2f6f4a}.team__note{margin:0;display:flex;align-items:center;gap:10px;font-size:13px;color:#2f6f4a;background:#eef6f0;border:1px solid #cfe4d6;border-radius:8px;padding:10px 14px}.team__notex{margin-left:auto;border:0;background:none;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:0 2px}.tadd{display:flex;flex-direction:column;gap:12px;text-align:left}.tfield{display:flex;flex-direction:column;gap:5px}.tfield__label{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.tfield__row{display:flex;gap:8px;align-items:center}.tfield__row .tfield__input{flex:1}.tfield__input{font:inherit;font-size:13.5px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fff;color:var(--ink)}.tfield__input:focus{outline:none;border-color:var(--accent)}.tfield__hint{font-size:11.5px;color:var(--muted);line-height:1.4}.tadd__error{margin:0}.tadd__acts{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.tcreds{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin:4px 0 14px;text-align:left;background:var(--label-bg)}.tcreds__row{display:flex;align-items:baseline;gap:12px}.tcreds__k{width:74px;flex:none;font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.tcreds__v{font-size:14px;font-weight:600;word-break:break-all}.actbar{flex:none;display:flex;align-items:center;gap:10px;padding:7px 16px;background:#3a2f66;color:#efeaff;font-size:12.5px;border-bottom:1px solid #2b2350}.actbar__dot{width:7px;height:7px;border-radius:50%;background:#c7b8ff;flex:none}.actbar__who{font-weight:700}.actbar__note{color:#b7acdf;font-family:IBM Plex Mono,monospace;font-size:11px}.actbar__out{margin-left:auto;font:inherit;font-size:12px;font-weight:600;color:#efeaff;background:#ffffff1f;border:1px solid rgb(255 255 255 / .28);border-radius:999px;padding:4px 13px;cursor:pointer}.actbar__out:hover{background:#ffffff38}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);background:var(--bg)}.login__panel{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:28px;padding:44px 52px 48px;color:#fff;background:linear-gradient(168deg,#1f2933,#22303c 55%,#7a2d13 150%)}.login__panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgb(255 255 255 / .05) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .05) 1px,transparent 1px);background-size:32px 32px}.login__art{position:absolute;top:-40px;right:-30px;width:340px;height:340px;opacity:.5}.login__art svg{width:100%;height:100%}.login__brand{position:relative;display:flex;align-items:center;gap:10px}.login__wordmark{font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:22px;letter-spacing:.04em}.login__brand-pill{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff73;border:1px solid rgb(255 255 255 / .25);border-radius:999px;padding:3px 8px;white-space:nowrap}.login__headline{position:relative;display:flex;flex-direction:column;gap:14px;max-width:460px}.login__headline h2{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:40px;line-height:1.03;letter-spacing:.01em}.login__headline p{margin:0;font-size:14.5px;line-height:1.7;color:#ffffff9e}.login__stats{position:relative;display:flex;flex-wrap:wrap;gap:28px}.login__stat{display:flex;flex-direction:column;gap:2px}.login__stat b{font-family:IBM Plex Mono,monospace;font-size:19px;font-weight:500}.login__stat span{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73}.login__form{align-self:center;width:100%;max-width:400px;margin:0 auto;padding:40px 40px 44px;display:flex;flex-direction:column;gap:18px}.login__tabs{display:flex;gap:4px;padding:4px;background:#f2efe7;border:1px solid var(--line);border-radius:999px}.login__tab{flex:1;font:inherit;font-size:13px;font-weight:600;color:var(--muted);background:transparent;border:0;border-radius:999px;padding:8px 0;cursor:pointer}.login__tab--on{color:#fff;background:linear-gradient(135deg,#b0421c,#cf6224)}.login__fields{display:flex;flex-direction:column;gap:13px}.login__field{display:flex;flex-direction:column;gap:6px}.login__field-label{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;font-weight:600;color:#4c5357}.login__field input{font:inherit;font-size:14.5px;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:var(--label-bg)}.login__field input:focus{outline:2px solid rgb(176 66 28 / .35);outline-offset:1px;border-color:#b0421c}.login__forgot{font-size:12px;color:var(--accent)}.login__error{margin:0;font-size:13px;color:var(--danger)}.login__submit{font:inherit;font-size:14.5px;font-weight:600;color:#fff;background:#b0421c;border:0;border-radius:8px;padding:13px 0;cursor:pointer}.login__submit:hover:not(:disabled){background:#9c3a17}.login__submit:disabled{opacity:.5;cursor:default}.login__or{display:flex;align-items:center;gap:12px;color:#9aa0a6;font-family:IBM Plex Mono,monospace;font-size:11px}.login__or:before,.login__or:after{content:"";flex:1;height:1px;background:var(--line)}.login__google{font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:#fff;border:1px solid #cfcabb;border-radius:8px;padding:12px 0;cursor:pointer}.login__google:hover:not(:disabled){background:#f6f5ef}.login__note{margin:0;font-size:12.5px;line-height:1.6;color:#9aa0a6}@media(max-width:860px){.login{grid-template-columns:1fr}.login__panel{justify-content:center;gap:16px;padding:28px 28px 30px}.login__art{display:none}.login__headline h2{font-size:30px}.login__stats{display:none}.login__form{align-self:start;padding:28px 24px 36px}}.plotpage{--setback: #e6e1d2;--edge: #3c4650;--room: #edeee9;--room-serv: #dfe2da;--poche: #171b1d;height:100%;padding:44px 32px 64px;background:var(--bg);color:var(--ink);overflow-y:auto}.plotwrap{max-width:none}.plotpage .eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.plotpage h1{margin:0 0 10px;font-size:30px;line-height:1.15;letter-spacing:-.015em}.plotpage .page-toprow header{flex:1}.plotpage .lede{margin:0 0 30px;font-size:15px;line-height:1.6;color:var(--muted)}.plotgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.7fr);gap:40px;align-items:start}.plotgrid--noform{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.plotgrid--noform .plotcol--plot{max-width:600px}@media(max-width:1000px){.plotgrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.plotgrid--noform{grid-template-columns:minmax(0,1fr)}.plotcol--plot{grid-column:1 / -1}.plotgrid--noform .plotcol--plot{grid-column:auto}}@media(max-width:640px){.plotgrid{grid-template-columns:minmax(0,1fr)}.plotcol--plot{grid-column:auto}}.plotcol section+section{margin-top:30px}.plotcol--plot{position:sticky;top:20px;max-width:460px;justify-self:end}@media(max-width:1000px){.plotcol--plot{position:static;justify-self:start}}.plotcol--form .fields--four{grid-template-columns:repeat(2,minmax(0,1fr))}.plotpage h2{margin:0 0 4px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.plotpage .hint{margin:0 0 12px;font-size:11.5px;line-height:1.45;color:var(--muted)}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}.fields--four{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:560px){.fields--four{grid-template-columns:repeat(2,minmax(0,1fr))}}.ftin__label{display:block;margin-bottom:5px;font-size:13px;font-weight:600}.ftin__boxes{display:flex;gap:6px}.ftin__box{position:relative;flex:1;min-width:0}.ftin__box input{width:100%;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 26px 9px 10px}.ftin__box input:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.ftin__unit{position:absolute;top:50%;right:9px;transform:translateY(-50%);font-size:12px;color:var(--muted);pointer-events:none}.presets{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.chip{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 13px;cursor:pointer}.chip:hover:not(.chip--on){background:#f6f5ef}.chip--on{color:#fff;background:var(--ink);border-color:var(--ink)}.sbfield{display:flex;flex-direction:column;gap:7px}.chip--steps{align-self:flex-start;font-size:11.5px;padding:4px 10px}.linkbtn{margin-top:12px;padding:0;font:inherit;font-size:13px;color:var(--accent);background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.plotside{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.plotview{display:block;width:100%;height:auto}.plotview__plot{fill:var(--setback);stroke:var(--edge);stroke-width:1.2;stroke-dasharray:9 3 2 3}.plotview__house{fill:#fff;stroke:var(--edge);stroke-width:1.6}.plotview__house--fill{stroke:none}.plotview__house--line{fill:none}.plotview__dim,.plotview__house-dim{font-size:13px;font-variant-numeric:tabular-nums;fill:var(--muted)}.plotview__house-dim{font-size:15px;font-weight:600;fill:var(--ink)}.plotview__steps{font-size:11px;font-weight:700;letter-spacing:.05em;fill:var(--edge)}.plotfacts{margin:18px 0 0;border-top:1px solid var(--line)}.plotfacts>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}.plotfacts dt{font-size:15px;color:var(--muted)}.plotfacts dd{margin:0;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.plotnotice{margin:22px 0 0;padding:11px 14px;font-size:13.5px;line-height:1.5;color:var(--danger);background:#fdf1ee;border:1px solid #f0cfc6;border-radius:9px}.plotnotice--note{color:var(--ink);background:#f3f4f1;border-color:var(--line)}.plotactions{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.plotactions__note{font-size:13px;color:var(--muted)}.plotactions__go{display:flex;flex-wrap:wrap;gap:10px}.facings{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.floorother{margin-top:10px;width:100%;max-width:280px;font:inherit;font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 10px}.floorother:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.orientkey{margin:10px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}.orientkey b{color:var(--ink);font-weight:600}.plotview__rose{font-size:12px;font-weight:600;letter-spacing:.06em;fill:var(--muted)}.prowgroup{margin-top:16px;padding-left:12px;border-left:3px solid var(--prow-accent, var(--line))}.prowgroup__title{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.prows{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.prow{display:grid;grid-template-columns:20px minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:11px 14px;border-top:1px solid var(--line)}.prow:first-child{border-top:0}.prow--auto{grid-template-columns:20px minmax(0,1fr) auto;background:#faf9f4;color:var(--muted)}.prow__glyph{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.75}.prow__name{font-size:14px;font-weight:500;min-width:0}.prow__name small{display:block;font-size:11.5px;font-weight:400;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prow__step{font:inherit;font-size:15px;line-height:1;width:26px;height:26px;display:grid;place-items:center;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;cursor:pointer}.prow__step:hover:not(:disabled){background:#f6f5ef}.prow__step:disabled{opacity:.32;cursor:default}.prow__count{min-width:16px;text-align:center;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.prow__count--auto{font-weight:500}.prow__max{font-size:9.5px;font-weight:700;letter-spacing:.08em;color:#fff;background:var(--edge);border-radius:999px;padding:5px 8px}.plotsuggestions{position:relative;margin:30px 0 24px;padding:20px;border:1px solid var(--accent);border-radius:14px;background:linear-gradient(135deg,#2f6f9a14,#2f6f9a05 55%,#4c8a5e0f);box-shadow:0 0 0 4px #2f6f9a0f}.plotsuggestions__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.plotsuggestions__badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.plotsuggestions__refresh{flex:none;display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .14s ease,color .14s ease}.plotsuggestions__refresh:hover{background:var(--accent);color:#fff}.plotsuggestions h2{margin:10px 0 4px;font-size:17px}.plotsuggestions__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-top:14px}.suggestion{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.suggestion:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.suggestion__plan{--sheet: #edeee9;--s-ink: #14181a;--ink-3: #838a8e;--f-disp: "Saira Condensed", "Arial Narrow", sans-serif;display:block;width:100%;height:auto;border-radius:6px}.suggestion__plan .pl-gap{stroke-width:3}.suggestion__house{fill:#fff;stroke:var(--edge);stroke-width:1.4}.suggestion__roomletter{font-family:var(--f-disp);font-weight:700;font-size:9px;fill:var(--s-ink);pointer-events:none}.suggestion__label{font-size:12.5px;font-weight:600;color:var(--accent);text-align:center}.suggestion--skeleton{cursor:default}.suggestion__plan--skeleton{width:100%;border-radius:6px;background:linear-gradient(100deg,#2f6f9a0f 30%,#2f6f9a29,#2f6f9a0f 70%);background-size:220% 100%;animation:plotsuggestions-shimmer 1.3s ease-in-out infinite}.suggestion--skeleton .suggestion__label{color:var(--muted)}@keyframes plotsuggestions-shimmer{0%{background-position:180% 0}to{background-position:-180% 0}}@media(prefers-reduced-motion:reduce){.suggestion__plan--skeleton{animation:none}}.plotsize__open{display:block;width:100%;margin-top:14px;font:inherit;font-size:13px;font-weight:600;color:var(--ink);background:#f6f5ef;border:1px solid var(--line);border-radius:9px;padding:9px 12px;cursor:pointer}.plotsize__open:hover{background:#efeee6}.plotsize--on{margin-top:14px;padding:12px;background:#f6f5ef;border:1px solid var(--accent);border-radius:9px}.plotsize__say{margin:0 0 8px;font-size:12.5px;line-height:1.5;color:var(--ink)}.plotsize__say--quiet{color:var(--muted)}.plotsize__acts{display:flex;align-items:center;gap:14px}.plotsize__done{padding:8px 14px;font-size:13px}.plotsize__acts .linkbtn{margin-top:0}.plotpage--sizing .prow--locked,.plotpage--sizing .ftin--off,.plotpage--sizing .chip:disabled,.plotpage--sizing .suggestion:disabled,.plotpage--sizing .plotsuggestions__refresh:disabled{opacity:.45}.plotpage--sizing .prow--locked,.plotpage--sizing .chip:disabled,.plotpage--sizing .suggestion:disabled{cursor:not-allowed}.ftin--off .ftin__box input{color:var(--muted);background:#f6f5ef;cursor:not-allowed}.plotview--resizing .plotview__house{stroke:var(--accent);stroke-width:2}.plotview__grip{fill:var(--accent);stroke:#fff;stroke-width:1;touch-action:none}.plotview__grip:hover{fill:var(--ink)}.plotview__grip--ns{cursor:ns-resize}.plotview__grip--ew{cursor:ew-resize}.plotview__grip--nwse{cursor:nwse-resize}.plotview__grip--nesw{cursor:nesw-resize}.plotshared{margin:-6px 0 30px;padding-bottom:18px;border-bottom:1px solid var(--line);display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 32px}.plotshared h2{margin:0}.plotshared .linkbtn{margin-left:auto}.plotshared__facts{display:flex;flex-wrap:wrap;gap:10px 32px}.plotshared__facts>div{display:flex;align-items:baseline;gap:8px}.plotshared__facts dt{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.plotshared__facts dd{margin:0;font-family:IBM Plex Mono,monospace;font-size:12px;text-align:right}.statepick{width:100%;max-width:320px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit}.sheetpage{--paper: #dddfd8;--sheet: #edeee9;--room: #edeee9;--room-serv: #dfe2da;--s-ink: #14181a;--ink-2: #4c5357;--ink-3: #838a8e;--rule: #c4c7bf;--poche: #171b1d;--hi: #bfd8e4;--s-accent: #1e5771;--oxide: #b0421c;--f-disp: "Saira Condensed", "Arial Narrow", sans-serif;--f-body: "IBM Plex Sans", system-ui, sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, monospace;height:100%;overflow-y:auto;background:var(--paper);color:var(--s-ink);font-family:var(--f-body);font-size:15px;line-height:1.6;padding:clamp(20px,4vw,56px) clamp(16px,4vw,40px) 72px}.sheetpage .wrap{max-width:1060px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(28px,5vw,48px)}.sheetpage .eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--s-accent);margin:0 0 10px}.sheetpage h1{font-family:var(--f-disp);font-weight:700;font-size:clamp(38px,8vw,66px);line-height:.95;letter-spacing:.005em;text-wrap:balance;margin:0}.sheetpage .lede{font-size:16px;color:var(--ink-2);max-width:62ch;margin:14px 0 0}.sheetpage .titleblock{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));border:1px solid var(--s-ink);margin:26px 0 0}.sheetpage .titleblock>div{padding:11px 13px 12px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.sheetpage .titleblock dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin:0 0 3px}.sheetpage .titleblock dd{font-family:var(--f-disp);font-weight:600;font-size:21px;line-height:1.1;letter-spacing:.01em;margin:0;font-variant-numeric:tabular-nums}.sheetpage .drawing{background:linear-gradient(150deg,var(--draw-2),#20384a);padding:clamp(14px,3vw,32px);border-radius:4px}.sheetpage .drawing .caption{color:#eef3f7a8}.sheetpage .sheet{background:var(--sheet);border:1px solid var(--s-ink);padding:clamp(10px,2vw,22px);overflow-x:auto}.sheetpage .sheet-inner{border:1px solid var(--rule);padding:clamp(6px,1.4vw,14px);min-width:460px}.sheetpage svg.plan{display:block;width:100%;height:auto}.sheetpage .caption{font-family:var(--f-mono);font-size:11.5px;color:var(--ink-3);margin:12px 2px 0;display:flex;flex-wrap:wrap;gap:6px 22px}.pl-room{transition:fill .14s ease}.pl-room--live{fill:color-mix(in srgb,var(--room-fill, transparent) 19%,var(--room))}.pl-room--serv{fill:color-mix(in srgb,var(--room-fill, transparent) 19%,var(--room-serv))}.pl-room.is-hot,.sheetpage tr.is-hot{fill:var(--hi);background:var(--hi)}.pl-wall{fill:var(--poche)}.pl-plot{fill:#b0421c12;stroke:var(--oxide);stroke-width:1.1;stroke-dasharray:11 3 2.5 3}.pl-setback{fill:var(--sheet);stroke:var(--oxide);stroke-width:.7;stroke-dasharray:4 3}.pl-leaf{stroke:var(--poche);stroke-width:1.6;stroke-linecap:square}.pl-gap{stroke:var(--poche);stroke-width:1.2;stroke-linecap:square}.pl-glass{stroke:var(--glass);stroke-width:1.8;stroke-linecap:square}.pl-shutter{stroke:var(--ink-3);stroke-width:1.4;stroke-dasharray:5 3;stroke-linecap:butt}.pl-swing{fill:none;stroke:var(--ink-3);stroke-width:.8;stroke-dasharray:3 2.5}.pl-tag{font-family:var(--f-mono);font-size:6.6px;font-weight:500;fill:var(--s-accent);letter-spacing:.02em}.pl-colmark{font-family:var(--f-mono);font-size:6.6px;font-weight:600;fill:var(--poche);letter-spacing:.02em}.sheetpage .opens{width:100%;border-collapse:collapse;font-size:12.5px}.sheetpage .opens td{padding:4px 6px 4px 0;border-bottom:1px solid var(--rule)}.sheetpage .opens .tag{font-family:var(--f-mono);font-weight:600;color:var(--s-accent);white-space:nowrap}.sheetpage .opens .size{font-variant-numeric:tabular-nums;color:var(--ink-2);white-space:nowrap}.sheetpage .opens .num{text-align:right;font-variant-numeric:tabular-nums}.pl-sym{fill:none;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.pl-sym--door{stroke:var(--poche);stroke-width:.7}.pl-sym--window{stroke:var(--poche);stroke-width:.6}.pl-sym--furn{stroke:var(--ink-3);stroke-width:.5}.pl-sym--pillar{stroke:var(--poche);stroke-width:.5}.pl-stairs{stroke:var(--ink-3);stroke-width:.6;vector-effect:non-scaling-stroke}.pl-stairs-edge{fill:var(--sheet);stroke:none}.pl-stairs-up{fill:var(--ink-3);stroke:none;font-family:var(--f-disp);font-weight:600;letter-spacing:.08em}.pl-label text{font-family:var(--f-disp);font-weight:600;letter-spacing:.11em;fill:var(--s-ink);pointer-events:none}.pl-note{font-family:var(--f-disp);font-weight:600;letter-spacing:.11em;fill:var(--s-ink);pointer-events:none}.pl-label .pl-label__dim{font-family:var(--f-mono);font-weight:400;letter-spacing:0;fill:var(--ink-3)}.pl-dim line{stroke:var(--s-accent);stroke-width:.8}.pl-dim text{font-family:var(--f-mono);font-size:10.5px;fill:var(--s-accent);letter-spacing:.03em}.pl-dim--2 text{font-size:8.5px;fill:var(--ink-3)}.pl-dim--2 line{stroke:var(--ink-3)}.pl-dim .pl-dim__leader{stroke-width:.5}.pl-road line{stroke:var(--oxide);stroke-width:.8}.pl-road text{font-family:var(--f-disp);font-weight:600;font-size:11px;letter-spacing:.4em;fill:var(--oxide)}.pl-north{color:var(--s-ink);font-family:var(--f-disp)}.sheetpage .tblock{border:1px solid var(--s-ink);border-top-width:2px;margin-top:clamp(8px,1.4vw,14px);min-width:460px}.sheetpage .tblock__title{font-family:var(--f-disp);font-weight:700;font-size:18px;letter-spacing:.12em;padding:6px 10px;border-bottom:1px solid var(--s-ink)}.sheetpage .tblock__rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));margin:0}.sheetpage .tblock__row{padding:5px 10px 6px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-width:0}.sheetpage .tblock__row dt{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.sheetpage .tblock__row dd{margin:0;font-size:13px;line-height:1.35;color:var(--s-ink);overflow-wrap:break-word}.sheetpage .tblock__row--site,.sheetpage .tblock__row--remarks{grid-column:span 2}.sheetpage .cols{display:grid;gap:clamp(26px,4vw,40px);grid-template-columns:1fr;align-items:start}@media(min-width:880px){.sheetpage .cols{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}}.sheetpage h2{font-family:var(--f-disp);font-weight:600;font-size:15px;letter-spacing:.15em;text-transform:uppercase;color:var(--s-accent);margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--s-ink)}.sheetpage table{border-collapse:collapse;width:100%;font-size:14px}.sheetpage th{font-family:var(--f-mono);font-weight:500;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:0 10px 8px 0;border-bottom:1px solid var(--rule)}.sheetpage th.num,.sheetpage td.num{text-align:right;padding-right:0}.sheetpage td{padding:9px 10px 9px 0;border-bottom:1px solid var(--rule);vertical-align:baseline}.sheetpage tbody tr{cursor:default;transition:background .14s ease}.sheetpage tbody tr:focus-visible{outline:2px solid var(--s-accent);outline-offset:-2px}.sheetpage td.name{font-family:var(--f-disp);font-weight:600;font-size:16px;letter-spacing:.02em}.sheetpage td.size,.sheetpage td.num{font-family:var(--f-mono);font-size:13px;font-variant-numeric:tabular-nums}.sheetpage td.num{color:var(--ink-2)}.sheetpage tfoot td{font-family:var(--f-mono);font-size:12px;color:var(--ink-2);border-bottom:none;padding-top:10px}.sheetpage .keys{display:flex;flex-direction:column;gap:26px}.sheetpage .kv{display:grid;grid-template-columns:1fr auto;gap:2px 14px;margin:0}.sheetpage .kv dt{font-size:13.5px;color:var(--ink-2);padding:6px 0;border-bottom:1px solid var(--rule)}.sheetpage .kv dd{margin:0;padding:6px 0;border-bottom:1px solid var(--rule);font-family:var(--f-mono);font-size:13px;font-variant-numeric:tabular-nums;text-align:right}.sheetpage .legend{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none}.sheetpage .legend li{display:flex;align-items:center;gap:11px;font-size:13.5px;color:var(--ink-2)}.sheetpage .legend svg{flex:none}.sheetpage .legend .pl-room{stroke:var(--rule);stroke-width:1}.sheetpage .note-text{font-size:13.5px;color:var(--ink-2);margin:0}.sheetpage .note-text b{font-family:var(--f-disp);font-weight:600;letter-spacing:.04em;color:var(--s-ink)}.sheetpage .notes ol{margin:0;padding:0;list-style:none;counter-reset:q;display:grid;gap:14px}@media(min-width:720px){.sheetpage .notes ol{grid-template-columns:1fr 1fr;gap:14px 32px}}.sheetpage .notes li{counter-increment:q;display:grid;grid-template-columns:26px 1fr;gap:12px;font-size:14px;color:var(--ink-2);padding-top:12px;border-top:1px solid var(--rule)}.sheetpage .notes li:before{content:"N" counter(q);font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:var(--oxide);padding-top:3px}.sheetpage .notes b{color:var(--s-ink);font-weight:600}.sheetpage footer{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-top:1px solid var(--s-ink);padding-top:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.sheetpage .sheet-actions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:6px 10px}@page sheet{size:landscape;margin:10mm}@media print{html:has(.sheetpage),html:has(.sheetpage) body,html:has(.sheetpage) body *:has(.sheetpage){display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important;background:#fff!important}html:has(.sheetpage) :is(body,body *:has(.sheetpage))>:not(.sheetpage,:has(.sheetpage)){display:none!important}.sheetpage{page:sheet;height:auto;overflow:visible;padding:0;background:#fff;font-size:11px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sheetpage>:not(.wrap){display:none!important}.sheetpage .wrap{max-width:none;gap:6mm}.sheetpage .eyebrow,.sheetpage .lede,.sheetpage .caption{display:none}.sheetpage h1{font-size:22pt}.sheetpage .titleblock{margin-top:3mm;grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}.sheetpage .titleblock>div{padding:3px 8px 4px}.sheetpage .titleblock dd{font-size:14px}.sheetpage .drawing{background:none;padding:0;break-inside:avoid}.sheetpage .sheet{overflow:visible;padding:3mm}.sheetpage .sheet-inner,.sheetpage .tblock{min-width:0}.sheetpage svg.plan{max-height:110mm}.sheetpage .cols{break-before:page}.sheetpage .keys>div,.sheetpage .notes,.sheetpage tr{break-inside:avoid}.sheetpage thead{display:table-header-group}}@media print and (min-height:250mm){.sheetpage svg.plan{max-height:190mm}}@media(prefers-reduced-motion:reduce){.sheetpage *{transition:none!important}}.sharepage{display:grid;min-height:100dvh;background:#141a22}.sharepage__notice{display:grid;place-content:center;padding:32px}.sharepage__msg{margin:0;max-width:46ch;text-align:center;color:#d7dbe0;font-size:15px;line-height:1.65}.sharepage__msg--quiet{color:#98a3b0}.sharebox{display:grid;gap:10px}.sharebox__note{margin:0;color:#6b7480;font-size:12.5px;line-height:1.6}.sharebox__link{display:flex;gap:8px;align-items:center}.sharebox__url{flex:1;min-width:0;padding:8px 10px;border:1px solid #d8dce2;border-radius:7px;background:#f7f8fa;color:#333a44;font-size:12.5px;font-family:inherit;text-overflow:ellipsis}.sharebox__row{display:flex;flex-wrap:wrap;gap:8px}.sharebox__btn{padding:8px 12px;border:1px solid #d8dce2;border-radius:7px;background:#fff;color:#333a44;font:inherit;font-size:13px;cursor:pointer}.sharebox__btn:hover{border-color:#b9c0c9}.sharebox__btn--go{border-color:#2f6fdb;background:#2f6fdb;color:#fff}.sharebox__btn--go:hover{background:#275ec0}.sharebox__btn:disabled{opacity:.55;cursor:default}.sharebox__btn--off{color:#b23b3b}.sharebox__state{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#4a525c}.sharebox__dot{width:8px;height:8px;border-radius:50%;background:#3d9a58}.sharebox__dot--off{background:#b23b3b}.sharebox__error{margin:0;color:#b23b3b;font-size:12.5px;line-height:1.6}.sharemodal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:20px}.sharemodal__scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;background:#0e131aa8;cursor:default}.sharemodal__panel{position:relative;width:min(520px,100%);padding:18px;border-radius:12px;background:#fff;box-shadow:0 18px 50px #0b0f1440;text-align:left}.sharemodal__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.sharemodal__head h3{margin:0;font-size:15px;color:#1d232b}.sharemodal__head button{border:0;background:none;color:#6b7480;font:inherit;font-size:13px;cursor:pointer}.letterhead{max-width:880px;margin:0 auto;padding:22px 20px 60px;display:grid;gap:18px}.letterhead__head{display:grid;gap:6px}.letterhead__title{margin:0;font-size:22px;font-weight:600;letter-spacing:-.01em}.letterhead__sub{margin:0;max-width:62ch;color:#5b636d;font-size:13px;line-height:1.65}.letterhead__card{display:grid;gap:12px;padding:16px 16px 18px;border:1px solid var(--line, #e4e7ec);border-radius:12px;background:#fff}.letterhead__cardhead{margin:0;font-size:14px;font-weight:600;color:#2a3138}.letterhead__picker{display:flex;flex-wrap:wrap;gap:8px}.letterhead__pick{display:grid;gap:2px;text-align:left;font:inherit;padding:8px 14px;border:1px solid #e4e7ec;border-radius:9px;background:#fff;cursor:pointer}.letterhead__pick:hover{border-color:#c3ccd6}.letterhead__pick--on{border-color:#b0421c;background:#fdf5f1}.letterhead__pickname{font-size:13px;font-weight:600;color:#2a3138}.letterhead__pickmeta{font-family:IBM Plex Mono,monospace;font-size:11px;color:#6b7480}.clientbox{display:grid;gap:12px}.clientbox__auto{margin:0;padding:8px 10px;border-left:3px solid #cbd3dd;background:#f7f8fa;color:#4a525c;font-size:12.5px;line-height:1.6}.clientbox__group{margin:0;padding:12px 12px 14px;border:1px solid #e4e7ec;border-radius:9px}.clientbox__group legend{padding:0 6px;color:#6b7480;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase}.clientbox__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.clientbox__field{display:grid;gap:4px;min-width:0}.clientbox__field--wide{grid-column:1 / -1}.clientbox__label{color:#4a525c;font-size:12px}.clientbox__input{width:100%;padding:7px 9px;border:1px solid #d8dce2;border-radius:7px;background:#fff;color:#1d232b;font:inherit;font-size:13px;resize:vertical}.clientbox__input:focus{outline:none;border-color:#2f6fdb;box-shadow:0 0 0 3px #2f6fdb22}.clientbox__saved{align-self:center;color:#3d9a58;font-size:12.5px}.clientbox__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:6px;padding-top:12px;border-top:1px solid #e4e7ec}.clientbox__head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;color:#1d232b}.clientbox__count{min-width:20px;padding:1px 6px;border-radius:10px;background:#d8592f;color:#fff;font-size:11.5px;text-align:center}.clientbox__toggle{border:0;background:none;color:#2f6fdb;font:inherit;font-size:12.5px;cursor:pointer}.clientbox__list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.clientbox__empty{color:#6b7480;font-size:12.5px}.creq{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.creq--done{background:#f7f8fa}.creq--done .creq__text{color:#6b7480;text-decoration:line-through}.creq__tick{position:relative;display:grid;place-items:center;padding-top:1px;cursor:pointer}.creq__tick input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.creq__box{width:16px;height:16px;border:1px solid #b9c0c9;border-radius:4px;background:#fff}.creq__tick input:checked+.creq__box{border-color:#3d9a58;background:#3d9a58}.creq__tick input:checked+.creq__box:after{content:"";display:block;width:4px;height:8px;margin:1px auto 0;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.creq__body{flex:1;min-width:0;display:grid;gap:3px}.creq__text{color:#1d232b;font-size:13px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.creq__meta{color:#8b939d;font-size:11.5px}.creq__del{border:0;padding:0 4px;background:none;color:#b9c0c9;font-size:17px;line-height:1;cursor:pointer}.creq__del:hover{color:#b23b3b}.sharepage--bar{height:100dvh;grid-template-rows:auto minmax(0,1fr)}.sharepage__stage{position:relative;display:grid;min-height:0}.sharebar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #2a323d;background:#10151c}.sharebar__title{min-width:0;color:#e8ecf1;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sharebar__row{display:flex;flex-shrink:0;gap:8px}.sharebar__btn{padding:7px 12px;border:1px solid #39434f;border-radius:7px;background:#1a212b;color:#d7dbe0;font:inherit;font-size:12.5px;cursor:pointer}.sharebar__btn:hover{border-color:#556173}.sharebar__btn--go{border-color:#2f6fdb;background:#2f6fdb;color:#fff}.sharebar__btn--on{border-color:#7d8797}.sharesheet{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;justify-items:start;align-content:start;padding:14px;overflow:auto}.sharesheet__scrim{position:fixed;top:0;right:0;bottom:0;left:0;border:0;padding:0;background:#0b0f14b3;cursor:default}.sharesheet__panel{position:relative;width:min(400px,100%);padding:16px 18px 18px;border:1px solid #39434f;border-radius:12px;background:#161c25;box-shadow:0 18px 50px #0009}.sharesheet__close{position:absolute;top:8px;right:10px;border:0;background:none;color:#8b939d;font-size:20px;line-height:1;cursor:pointer}.sharesheet__close:hover{color:#e8ecf1}.sharesheet__body{display:grid;gap:12px}.sharesheet__title{margin:0;padding-right:20px;color:#e8ecf1;font-size:15px}.sharesheet__site{margin:-6px 0 0;color:#98a3b0;font-size:12.5px}.sharesheet__lead{margin:-4px 0 0;color:#98a3b0;font-size:12.5px;line-height:1.6}.sharesheet__group{display:grid;gap:6px}.sharesheet__grouptitle{margin:0;color:#6f7a88;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.sharesheet__facts{display:grid;gap:6px;margin:0}.sharesheet__facts div{display:grid;grid-template-columns:104px 1fr;gap:10px;align-items:baseline}.sharesheet__facts dt{color:#8b939d;font-size:12px}.sharesheet__facts dd{margin:0;color:#e2e6eb;font-size:13px;overflow-wrap:anywhere}.sharesheet__block{white-space:pre-wrap;line-height:1.55}.sharesheet__field{display:grid;gap:4px}.sharesheet__field span{color:#98a3b0;font-size:12px}.sharesheet__field input,.sharesheet__field textarea{width:100%;padding:8px 10px;border:1px solid #39434f;border-radius:7px;background:#10151c;color:#e8ecf1;font:inherit;font-size:13px;resize:vertical}.sharesheet__field input:focus,.sharesheet__field textarea:focus{outline:none;border-color:#2f6fdb}.sharesheet__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.sharesheet__btn{padding:9px 14px;border:1px solid #39434f;border-radius:7px;background:#1a212b;color:#d7dbe0;font:inherit;font-size:13px;cursor:pointer}.sharesheet__btn--go{border-color:#2f6fdb;background:#2f6fdb;color:#fff}.sharesheet__btn:disabled{opacity:.5;cursor:default}.sharesheet__sent{color:#6bbd85;font-size:12.5px}.sharesheet__error{margin:0;color:#e07b7b;font-size:12.5px;line-height:1.6}.sharesheet__list{display:grid;gap:5px;margin:0;padding:10px 0 0;border-top:1px solid #2a323d;list-style:none}.sharesheet__list li{color:#8b939d;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.clientbox__logo{display:grid;gap:6px;margin-top:12px}.clientbox__logorow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.clientbox__logoimg{max-width:120px;max-height:48px;padding:4px;border:1px solid #e4e7ec;border-radius:7px;background:#fafbfc;object-fit:contain}.clientbox__logonone{color:#8b939d;font-size:12.5px}label.sharebox__btn{display:inline-block}.letterhead__for{margin:0;color:#4a525c;font-size:13px;line-height:1.6}.sharebar__views{display:inline-flex;border:1px solid #39434f;border-radius:7px;overflow:hidden}.sharebar__view{padding:7px 11px;border:0;background:#1a212b;color:#98a3b0;font:inherit;font-size:12.5px;cursor:pointer}.sharebar__view+.sharebar__view{border-left:1px solid #39434f}.sharebar__view--on{background:#2a323d;color:#e8ecf1}.sharepage__planlayer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;overflow:auto;background:#141a22}.shareplan{display:grid;gap:18px;align-content:start;justify-items:center;padding:16px}.shareplan__lead{margin:0;color:#98a3b0;font-size:12.5px;text-align:center}.shareplan__floor{display:grid;gap:8px;width:min(760px,100%);margin:0;padding:12px;border-radius:10px;background:#f7f5f0}.shareplan__label{color:#333a44;font-size:13px;font-weight:600}.shareplan__msg{margin:0;color:#6b7480;font-size:12.5px}.shareplan__svg{display:block;width:100%;height:auto;max-height:78dvh}.shareplan__plot{fill:none;stroke:#a0a7b0;stroke-width:1px;stroke-dasharray:4 3}.shareplan__wall{fill:#3a414b}.shareplan__room{fill:#fff;stroke:#fff;stroke-width:.06}.shareplan__road{text-anchor:middle;fill:#6b7280;font-family:inherit;letter-spacing:.08em}.shareplan__tag text{text-anchor:middle;font-family:inherit}.shareplan__name{fill:#1d232b;font-weight:600}.shareplan__size{fill:#4a525c}.sharepage--firm{grid-template-rows:auto minmax(0,1fr) auto}.sharefirm{display:flex;align-items:center;gap:10px;padding:8px 14px;border-top:1px solid #2a323d;background:#10151c}.sharefirm__logo{flex-shrink:0;max-width:72px;max-height:30px;object-fit:contain}.sharefirm__text{display:grid;min-width:0;gap:1px}.sharefirm__name{color:#e8ecf1;font-size:13px;font-weight:600}.sharefirm__meta{display:flex;flex-wrap:wrap;column-gap:10px;color:#98a3b0;font-size:12px}.sharefirm__meta a{color:#8db4ff}.sharesheet__logo{max-width:120px;max-height:44px;object-fit:contain}.sharesheet__confirm{padding:10px 12px;border:1px solid #2f7a4a;border-radius:8px;background:#15301f;color:#cfe9d8;font-size:13px;line-height:1.6}.sharesheet__confirm strong{color:#8fdcaa}.sharesheet__confirm a{color:#8db4ff}.dt{--dt-fill: rgb(118 118 128 / .12);--dt-fill-soft: rgb(118 118 128 / .07);--dt-hair: rgb(60 60 67 / .14);--dt-text-2: rgb(60 60 67 / .62);--dt-lift: 0 .5px 1px rgb(0 0 0 / .05), 0 8px 28px rgb(0 0 0 / .07);--dt-ease: cubic-bezier(.2, .8, .2, 1);--dt-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", system-ui, Roboto, sans-serif;--dt-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI Variable Display", "Segoe UI", system-ui, Roboto, sans-serif;height:100%;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);color:var(--ink);font-family:var(--dt-font);font-size:17px;line-height:1.4;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.dt-modal{--dt-fill-soft: rgb(118 118 128 / .07);--dt-hair: rgb(60 60 67 / .14);--dt-text-2: rgb(60 60 67 / .62);--dt-lift: 0 .5px 1px rgb(0 0 0 / .05), 0 8px 28px rgb(0 0 0 / .07);--dt-ease: cubic-bezier(.2, .8, .2, 1)}.dt-modal__panel--ways{width:min(640px,100%)}.dt button,.dt input{touch-action:manipulation}.dt__inner{max-width:none;margin:0 auto;padding:28px 16px 56px}.dt-spinestep{font:inherit;text-align:left;background-color:transparent;border:0;border-right:1px solid var(--line);border-radius:0;cursor:pointer;transition:background-color .16s ease,opacity .16s ease}.dt-spinestep:disabled{opacity:.4;cursor:default}.dt-spinestep:disabled:hover{background-color:transparent}.dt-spinestep:focus-visible{outline:3px solid rgb(47 111 154 / .45);outline-offset:-3px}.dt-spineacts{display:flex;align-items:center;gap:8px}.dt-spinereset{font:inherit;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer}.dt .btn{min-height:38px;padding:0 18px;font:inherit;font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--ink);background:var(--dt-fill);border:0;border-radius:999px;box-shadow:none;cursor:pointer;transition:background-color .2s var(--dt-ease),transform .1s ease-out,opacity .15s ease-out}.dt .btn:hover:not(:disabled){background:#7676802e}.dt .btn:active:not(:disabled){transform:scale(.97)}.dt .btn:disabled{opacity:.35}.dt .btn.btn--next{padding:0 20px;box-shadow:0 1px 2px #0000001f,0 4px 12px #a5492a38;color:#fff;background:var(--step)}.dt .btn.btn--next:hover:not(:disabled):not(.is-waiting){background:var(--step-2)}.dt .btn.btn--next.is-waiting{opacity:.45;box-shadow:none}.dt-whynot{margin:10px 0 0;font-size:14px;line-height:1.45;text-align:right;color:var(--dt-text-2)}.dt-whynot.is-loud{padding:10px 14px;text-align:left;color:var(--ink);background:#c0492f17;border-radius:12px;animation:dt-nudge .36s var(--dt-ease) both}@keyframes dt-nudge{0%,to{transform:none}25%{transform:translate(-6px)}60%{transform:translate(4px)}}.dt :focus-visible{outline:3px solid rgb(47 111 154 / .45);outline-offset:2px}.dt-split{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr);gap:20px;align-items:start}.dt-card{min-width:0;background:#fff;border-radius:22px;padding:28px 28px 24px;box-shadow:var(--dt-lift);animation:dt-rise .38s var(--dt-ease) both}.dt-card--narrow{max-width:560px;margin:28px auto 0}@keyframes dt-rise{0%{opacity:0;transform:translateY(10px)}}.dt-card--folds{animation:none}.dt-fold-body{animation:dt-rise .32s var(--dt-ease) both}.dt-fold{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;font:inherit;text-align:left;color:inherit;background:var(--dt-fill-soft);border:0;border-radius:14px;cursor:pointer;transition:background-color .16s ease}.dt-card--folds>.dt-fold:first-child{margin-bottom:22px}.dt-card--folds>.dt-fold:last-child{margin-top:22px}.dt-fold:hover:not(:disabled){background:var(--dt-fill)}.dt-fold:focus-visible{outline:3px solid rgb(47 111 154 / .45);outline-offset:2px}.dt-fold:disabled{opacity:.45;cursor:default}.dt-fold__badge{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:13px;font-weight:600;color:var(--dt-text-2);box-shadow:0 0 0 1px var(--dt-hair) inset}.dt-fold__badge.is-done{color:#fff;background:var(--step);box-shadow:none}.dt-fold__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.dt-fold__label{font-size:17px;font-weight:600}.dt-fold__stat{font-size:13px;color:var(--dt-text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dt-fold__chev{flex:none;width:9px;height:9px;margin:0 4px 4px 0;border-right:2px solid var(--dt-text-2);border-bottom:2px solid var(--dt-text-2);transform:rotate(45deg)}.dt-card h1{margin:4px 0 10px;font-family:var(--dt-display);font-weight:700;font-size:34px;line-height:1.08;letter-spacing:-.026em}.dt-h1-rest{color:var(--dt-text-2)}.dt-label{display:block;margin:20px 0 8px;font-size:13px;font-weight:600;letter-spacing:0;color:var(--dt-text-2)}.dt-lede{margin:0 0 6px;font-size:17px;line-height:1.45;color:var(--dt-text-2)}.dt-input{width:100%;box-sizing:border-box;min-height:44px;font:inherit;font-size:17px;letter-spacing:-.01em;color:var(--ink);background:var(--dt-fill);border:0;border-radius:12px;padding:0 14px;transition:box-shadow .2s var(--dt-ease),background-color .2s var(--dt-ease)}.dt-input:focus{outline:none;background:#fff;box-shadow:0 0 0 3px #2f6f9a66,0 0 0 .5px var(--accent) inset}.dt-input.is-bad{box-shadow:0 0 0 2px var(--danger) inset}.dt-ask__row{display:flex;align-items:center;gap:18px}.dt-input.dt-input--num{width:64px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}.dt-ask__shown{font-family:var(--dt-display);font-weight:700;font-size:28px;letter-spacing:-.022em;color:var(--step)}.dt-input--pct{width:76px;padding:0 10px;font-size:15px}.dt-sides{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.dt-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;letter-spacing:0;color:var(--dt-text-2)}.dt-seg{display:flex;gap:2px;padding:2px;background:var(--dt-fill);border-radius:12px}.dt-seg--wrap{flex-wrap:wrap}.dt-seg button{flex:1 1 auto;min-width:48px;min-height:40px;font:inherit;font-size:15px;font-weight:500;letter-spacing:-.01em;color:var(--ink);background:transparent;border:0;border-radius:10px;padding:0 12px;cursor:pointer;transition:background-color .22s var(--dt-ease),box-shadow .22s var(--dt-ease),transform .1s ease-out}.dt-seg button:active{transform:scale(.97)}.dt-seg button.is-on{font-weight:600;background:#fff;box-shadow:0 .5px 1px #0000001a,0 2px 6px #00000014}.dt-check{display:flex;gap:10px;align-items:center;min-height:44px;margin-top:10px;font-size:17px}.dt-check input{width:22px;height:22px;margin:0;accent-color:var(--step)}.dt-hint,.dt-note{margin:12px 0 0;font-size:15px;line-height:1.45;letter-spacing:-.005em;color:var(--dt-text-2)}.dt-note strong{color:var(--ink);font-weight:600}.dt-warn{margin:12px 0 0;font-size:15px;color:var(--danger)}.dt-muted{color:var(--dt-text-2);font-size:15px}.dt-link{min-height:32px;font:inherit;font-size:15px;color:var(--accent);background:none;border:0;padding:0;cursor:pointer}.dt-link:active{opacity:.45}.dt-acts{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:26px}.dt-acts--top{margin-top:0;margin-bottom:22px}.dt-acts__gap{flex:1}.dt-paper{min-width:0;position:sticky;top:72px;padding:12px;background:var(--paper);border-radius:22px;box-shadow:var(--dt-lift);animation:dt-rise .38s var(--dt-ease) 60ms both}.dt-undo{position:absolute;top:24px;right:24px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 10px 8px 14px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:#ffffffeb;border:1px solid rgb(0 0 0 / .08);border-radius:999px;box-shadow:0 1px 2px #0000000f,0 6px 18px #00000014;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:transform .16s var(--dt-ease),box-shadow .16s var(--dt-ease),opacity .16s var(--dt-ease)}.dt-undo:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #00000014,0 10px 24px #0000001f}.dt-undo:active:not(:disabled){transform:translateY(0) scale(.97)}.dt-undo:disabled{opacity:.45;cursor:default;box-shadow:none}.dt-undo__icon{width:17px;height:17px;fill:none;stroke:var(--step);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.dt-undo:disabled .dt-undo__icon{stroke:currentColor}.dt-undo__key{padding:2px 7px;font:inherit;font-size:11px;font-weight:500;color:#00000080;background:#0000000d;border-radius:6px}@media(hover:none){.dt-undo__key{display:none}}.dt-svg{display:block;width:100%;height:auto;max-height:72vh;touch-action:none;user-select:none;-webkit-user-select:none;font-family:var(--dt-font);font-variant-numeric:tabular-nums}.dt-svg--small{max-height:340px}.dt-plot{fill:#fff;stroke:var(--ink);stroke-width:.3;stroke-linejoin:round}.dt-house{fill:#2f6f9a1a;stroke:var(--accent);stroke-width:.28}.dt-house.is-bad{stroke:var(--danger);fill:#c0492f1a}.dt-house--plan{fill:#ece4d0;stroke:var(--ink);stroke-width:.75}.dt-house--floor{fill:#ece4d0}.dt-house--drop.is-armed{cursor:crosshair;fill:#b0421c17}.dt-dims line{stroke:var(--ink);stroke-width:.09}.dt-dims marker path{fill:var(--ink)}.dt-dims .dt-setline{fill:none;stroke:var(--step);stroke-width:.12;stroke-dasharray:.6 .4}.dt-dims .is-lit line{stroke:var(--accent);stroke-width:.16}.dt-dims .is-lit text{fill:var(--accent)}.dt-dims text{fill:var(--ink);font-weight:600;paint-order:stroke;stroke:#fff;stroke-width:.3}.dt-side text{fill:var(--ink);font-weight:600;paint-order:stroke;stroke:var(--paper);stroke-width:.35}.dt-side__chip{fill:#ffffffb3;stroke:var(--dt-hair);stroke-width:.06;transition:fill .16s var(--dt-ease)}.dt-side--field{cursor:text}.dt-side--field:hover .dt-side__chip{fill:#fff;stroke:var(--accent)}.dt-edge-lit{stroke:var(--accent);stroke-width:.7;stroke-linecap:round;pointer-events:none}.dt-side.is-lit .dt-side__chip{fill:var(--accent);stroke:var(--accent)}.dt-side.is-lit text{fill:#fff;stroke:none}.dt-side.is-editing .dt-side__chip{fill:var(--ink);stroke:var(--ink)}.dt-side.is-editing text{fill:#fff;stroke:none}.dt-caret{animation:dt-caret 1s step-start infinite}@keyframes dt-caret{50%{opacity:0}}.dt-road{fill:var(--dt-text-2);font-weight:600;letter-spacing:.3em}.dt-grip{fill:#fff;stroke:var(--step);stroke-width:.3;cursor:grab;filter:drop-shadow(0 .2px .4px rgb(0 0 0 / .25))}.dt-grip.is-on{fill:var(--step);cursor:grabbing}.dt-drop{cursor:grab}.dt-drop rect{fill-opacity:.62;stroke:var(--ink);stroke-width:.1;transition:fill-opacity .16s var(--dt-ease)}.dt-drop.is-on{cursor:grabbing;filter:drop-shadow(0 .5px .9px rgb(0 0 0 / .3))}.dt-drop.is-on rect{fill-opacity:.88;stroke-width:.22}.dt-drop.is-picked rect{fill-opacity:.92;stroke:var(--step);stroke-width:.3}.dt-drop text{fill:var(--ink);font-weight:600;pointer-events:none}.dt-drop text.dt-drop__name{font-weight:400}.dt-room-wall{fill:#a9ada8}.dt-room{fill:var(--ink);font-weight:600;letter-spacing:-.01em;pointer-events:none}.dt-room--size{font-weight:400;fill:#1f2933b8}.dt-stack{display:flex;flex-direction:column;gap:8px}.dt-storey{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;min-height:56px;font:inherit;text-align:left;color:var(--ink);background:#fff;border:0;border-radius:16px;padding:10px 16px;box-shadow:var(--dt-lift);cursor:pointer;transition:transform .14s var(--dt-ease),box-shadow .2s var(--dt-ease)}.dt-storey:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--accent)}.dt-storey:active{transform:scale(.985)}.dt-storey--cellar:before{background:#3c3c4373}.dt-storey--ground:before{background:var(--step)}.dt-storey--penthouse:before{background:var(--gap)}.dt-storey.is-done .dt-storey__state{color:var(--gap)}.dt-storey__name{font-weight:600}.dt-storey__state{font-size:15px;color:var(--dt-text-2)}.dt-storey__go{font-size:15px;color:var(--accent)}.dt-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:17px}.dt-table th{text-align:left;font-size:13px;font-weight:600;letter-spacing:0;color:var(--dt-text-2);padding:8px;border-bottom:.5px solid var(--dt-hair)}.dt-table td{padding:8px;border-bottom:.5px solid var(--dt-hair);vertical-align:middle;font-variant-numeric:tabular-nums}.dt-table tr:last-child td{border-bottom:0}.dt-table tr.is-off td:first-child{opacity:.5}.dt-table tr.is-off .dt-count>span{opacity:.5}.dt-table--small{max-width:640px;font-size:15px}.dt-swatch{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:10px;vertical-align:middle}.dt-count{display:inline-flex;align-items:center;gap:10px}.dt-count button{width:36px;height:36px;font:inherit;font-size:20px;line-height:1;color:var(--ink);background:var(--dt-fill);border:0;border-radius:50%;cursor:pointer;transition:background-color .16s var(--dt-ease),transform .1s ease-out}.dt-count button:active:not(:disabled){transform:scale(.9);background:#7676803d}.dt-count button:disabled{opacity:.3;cursor:default}.dt-count span{min-width:18px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}.dt-pct{display:inline-flex;align-items:center;gap:4px}.dt-tray{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.dt-tile{min-height:36px;font:inherit;font-size:15px;color:var(--ink);background:var(--dt-fill-soft);border:0;border-radius:999px;padding:0 14px 0 12px;cursor:pointer}.dt-tile:before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;background:var(--c)}.dt-tile.is-placed{color:var(--dt-text-2)}.dt-tile.is-on{color:var(--ink);box-shadow:0 0 0 2px var(--step)}.dt-list{display:flex;flex-direction:column;gap:8px;margin-top:16px}.dt-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:56px;background:var(--dt-fill-soft);border-radius:14px;padding:6px 10px 6px 14px;transition:box-shadow .2s var(--dt-ease),background-color .2s var(--dt-ease)}.dt-row{cursor:pointer}.dt-row.is-on{background:#fff;box-shadow:0 0 0 2px var(--step),0 4px 14px #b0421c24}.dt-row__name{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:44px;justify-content:center;padding-left:22px;font:inherit;font-size:16px;font-weight:600;letter-spacing:-.01em;text-align:left;color:var(--ink);background:none;border:0;cursor:pointer}.dt-row__name:active{opacity:.55}.dt-row__dot{position:absolute;left:0;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--c)}.dt-row__state{font-size:13px;font-weight:400;letter-spacing:0;color:var(--dt-text-2)}.dt-row__size{display:flex;align-items:center;gap:4px;flex-shrink:0}.dt-row__dim{display:flex;align-items:center;gap:4px}.dt-row__x{color:var(--dt-text-2)}.dt-input.dt-input--size{width:64px;min-height:40px;padding:0 4px;font-size:16px;text-align:center;font-variant-numeric:tabular-nums}.dt-row__reset{width:40px;min-height:0;font-size:13px;text-align:right}.dt-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.dt-plans--six{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-plans--six .dt-plan__head{flex-wrap:wrap;gap:4px 8px}.dt-plan{display:flex;flex-direction:column;gap:8px;font:inherit;text-align:left;color:var(--ink);background:var(--paper);border:0;border-radius:20px;padding:14px;box-shadow:0 0 0 0 var(--step);cursor:pointer;transition:box-shadow .22s var(--dt-ease),transform .14s var(--dt-ease)}.dt-plan:active{transform:scale(.985)}.dt-plan.is-on{box-shadow:0 0 0 3px var(--step),0 10px 28px #b0421c33}.dt-plan__head{display:flex;justify-content:space-between;font-size:17px;font-weight:600}.dt-plan__tick{color:var(--step);font-size:15px}.dt-plan__tag{margin-left:10px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--step) 12%,transparent);color:var(--step);font-size:12.5px;font-weight:600;vertical-align:2px}.dt-plan__meta{font-size:14px;color:var(--dt-text-2)}.dt-ways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dt-way{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:44px;padding:14px 14px 16px;font:inherit;text-align:left;color:var(--ink);background:var(--dt-fill-soft);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--dt-hair) inset;cursor:pointer;transition:background-color .2s var(--dt-ease),box-shadow .2s var(--dt-ease),transform .1s ease-out}@media(hover:hover){.dt-way:hover:not(:disabled){background:#fff;box-shadow:0 0 0 1.5px var(--step) inset,var(--dt-lift)}}.dt-way:active:not(:disabled){transform:scale(.98)}.dt-way:disabled{opacity:.4}.dt-way__glyph{width:44px;height:36px;margin-bottom:6px}.dt-way__name{font-size:17px;font-weight:600}.dt-way__text{font-size:14px;line-height:1.4;color:var(--dt-text-2)}.dt-way__tag{position:absolute;top:12px;right:12px;padding:2px 8px;font-size:12px;font-weight:600;color:var(--step);background:#b0421c1a;border-radius:999px}.dt-glyph__house{fill:#fff;stroke:var(--ink);stroke-width:1.6}.dt-glyph__ink{fill:none;stroke:var(--step);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.dt-glyph__box{fill:#b0421c24;stroke:var(--step);stroke-width:1.8;stroke-dasharray:3 2}.dt-glyph__tile{fill:#2f6f9a2e;stroke:var(--accent);stroke-width:1.4}.dt-howbox{margin-top:14px;border-radius:14px;background:var(--dt-fill-soft)}.dt-howbox summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 14px;font-size:15px;font-weight:600;color:var(--ink);list-style:none;cursor:pointer;border-radius:14px;transition:transform .1s ease-out}.dt-howbox summary::-webkit-details-marker{display:none}.dt-howbox summary:after{content:"";width:7px;height:7px;border-right:2px solid var(--dt-text-2);border-bottom:2px solid var(--dt-text-2);transform:translateY(-2px) rotate(45deg);transition:transform .2s var(--dt-ease)}.dt-howbox[open] summary:after{transform:translateY(2px) rotate(225deg)}.dt-howbox summary:active{transform:scale(.99)}.dt-howbox .dt-how{margin:0;padding:2px 14px 14px}.dt-how{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}.dt-how li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.4;color:var(--dt-text-2)}.dt-how strong{color:var(--ink);font-weight:600}.dt-glyph{flex:none;width:28px;height:28px}.dt-pick{margin-top:18px;padding:16px;background:var(--dt-fill-soft);border-radius:16px;animation:dt-fade .18s ease-out both}.dt-pick__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;font-size:19px}.dt-pick .dt-label{margin-top:14px}.dt-pick .dt-sides{margin-top:0}.dt-pick__acts{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:12px}.dt-link:disabled{opacity:.35;cursor:default}.dt-kinds{display:flex;flex-wrap:wrap;gap:6px}.dt-kind{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 12px 0 10px;font:inherit;font-size:15px;color:var(--ink);background:#fff;border:0;border-radius:999px;box-shadow:0 0 0 1px var(--dt-hair) inset;cursor:pointer;transition:box-shadow .18s var(--dt-ease),transform .1s ease-out}.dt-kind:active{transform:scale(.96)}.dt-kind.is-on{font-weight:600;box-shadow:0 0 0 2px var(--ink) inset}.dt-kind__dot{width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:0 0 0 .5px #00000040 inset}.dt-tools{display:flex;align-items:center;gap:8px;margin-top:18px}.dt-tool{min-height:36px;padding:0 14px;font:inherit;font-size:15px;font-weight:500;color:var(--ink);background:var(--dt-fill);border:0;border-radius:999px;cursor:pointer;transition:opacity .15s ease-out,transform .1s ease-out}.dt-tool:active:not(:disabled){transform:scale(.96)}.dt-tool:disabled{opacity:.35;cursor:default}.dt-svg--draw{cursor:crosshair}.dt-svg--draw.is-wall-x{cursor:col-resize}.dt-svg--draw.is-wall-y{cursor:row-resize}.dt-cell{fill-opacity:.55}.dt-cell.is-blank{fill:#fff;fill-opacity:1}.dt-sel{filter:drop-shadow(0 0 4px rgb(47 111 154 / .6));pointer-events:none}.dt-sel__fill{fill:#2f6f9a4d}.dt-sel__edge{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:square;vector-effect:non-scaling-stroke}.dt-wall{stroke:var(--ink);stroke-linecap:square;transition:stroke .12s ease-out}.dt-wall.is-on{stroke:var(--accent)}.dt-wall--pick{stroke:var(--accent);stroke-linecap:butt;filter:drop-shadow(0 0 4px rgb(47 111 154 / .8));pointer-events:none}.dt-marquee{fill:#2f6f9a14;stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}.dt-glyph__pick{fill:#2f6f9a1a;stroke:var(--accent);stroke-width:1.6;stroke-dasharray:3 2}.dt-nudge{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:4px}.dt-nudge__pad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:4px;grid-template-areas:". up ." "left down right"}.dt-nudge__key{font:inherit;font-size:19px;font-weight:600;color:var(--ink);background:#fff;border:0;border-radius:12px;box-shadow:0 0 0 1px var(--dt-hair) inset;cursor:pointer;transition:transform .1s ease-out}.dt-nudge__key:active{transform:scale(.94)}.dt-nudge__key--up{grid-area:up}.dt-nudge__key--down{grid-area:down}.dt-nudge__key--left{grid-area:left}.dt-nudge__key--right{grid-area:right}.dt-nudge__side{display:grid;gap:6px;flex:1 1 160px}.dt-nudge__side .dt-label{margin:0}.dt-wall--grab{stroke:var(--accent);pointer-events:none}.dt-erase{margin:14px 0 0;padding:10px 14px;font-size:15px;line-height:1.45;color:var(--ink);background:#c0492f17;border-radius:12px;animation:dt-fade .18s ease-out both}.dt-mode{position:absolute;top:18px;left:50%;z-index:2;transform:translate(-50%);min-height:36px;padding:0 16px;font:inherit;font-size:15px;color:#fff;background:var(--danger);border:0;border-radius:999px;box-shadow:var(--dt-lift);cursor:pointer;animation:dt-fade .18s ease-out both}.dt-glyph__gone{fill:none;stroke:var(--danger);stroke-width:2.2;stroke-dasharray:2 2.4}.dt-done{margin:16px 0 0;padding:10px 14px;font-size:15px;color:var(--ink);background:var(--dt-fill-soft);border-radius:12px;animation:dt-fade .18s ease-out both}.dt-shell{fill:var(--ink)}.dt-floor,.dt-apron__ground{fill:#fff}.dt-apron .dt-cell{stroke:var(--ink);stroke-width:1px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.dt-grip{fill:#fff;stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .25))}.dt-grip--run,.dt-grip--corner{fill:var(--accent);stroke:#fff}.dt-grips__lit{stroke:var(--accent);stroke-width:5px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.75;pointer-events:none}.dt-grips__len{fill:var(--accent);font-weight:600;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.dt-svg--draw.is-shape{cursor:default}.dt-svg--draw.is-shape-on{cursor:grab}.dt-svg--draw.is-shape-drag{cursor:grabbing}.dt-shapebtn{display:flex;align-items:center;gap:12px;width:100%;margin-top:16px;padding:12px 14px;font:inherit;text-align:left;color:var(--ink);background:var(--dt-fill-soft);border:1px solid var(--dt-hair);border-radius:14px;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out,transform .1s ease-out}.dt-shapebtn:active{transform:scale(.99)}.dt-shapebtn__text{display:grid;flex:1;gap:1px;min-width:0}.dt-shapebtn__text strong{font-size:15px;font-weight:600}.dt-shapebtn__text span{font-size:13px;color:var(--dt-text-2)}.dt-shapebtn__go{flex:none;min-height:30px;padding:0 14px;font-size:14px;font-weight:600;line-height:30px;color:var(--accent);background:#2f6f9a1a;border-radius:999px}.dt-shapebtn.is-on{background:#2f6f9a14;border-color:var(--accent)}.dt-shapebtn.is-on .dt-shapebtn__go{color:#fff;background:var(--accent)}.dt-key{display:inline-block;min-width:22px;margin-left:6px;padding:0 6px;font-size:12px;line-height:20px;text-align:center;color:var(--dt-text-2);border:1px solid var(--dt-hair);border-radius:6px}.dt-erase--shape{background:#2f6f9a1a}.dt-mode--shape{background:var(--accent)}.dt-glyph__grip{fill:var(--accent);stroke:#fff;stroke-width:1.2}.dt-out rect{fill-opacity:.6;stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.dt-out.is-on rect{stroke:var(--accent);stroke-width:3px}.dt-room--blank{fill:var(--dt-text-2);font-weight:500}.dt-ghost{pointer-events:none}.dt-ghost__wall{stroke:var(--step);stroke-linecap:square}.dt-ghost__box{fill:#b0421c1f;stroke:var(--step);stroke-width:2px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.dt-ghost__no{fill:none;stroke:var(--danger);stroke-width:2px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.dt-ghost__fig{fill:var(--step);font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dt-dim{color:var(--accent);pointer-events:none}.dt-ghost .dt-dim{color:var(--step)}.dt-dim__line{stroke:currentColor;stroke-width:1.25px;vector-effect:non-scaling-stroke}.dt-dim__fig{fill:currentColor;font-weight:700;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dt-dim__box{fill:#fff;stroke:currentColor;stroke-width:2px;vector-effect:non-scaling-stroke}.dt-dragtag__bg{fill:var(--accent)}.dt-dragtag__fig{fill:#fff;font-weight:700;font-variant-numeric:tabular-nums}.dt-dim__tag{fill:#fff;fill-opacity:.92}.dt-dim__fig.is-waiting{fill-opacity:.45}.dt-dim__on.is-bad{color:var(--danger)}.dt-paper-warn{position:absolute;bottom:18px;left:50%;z-index:2;width:max-content;max-width:calc(100% - 32px);margin:0;padding:8px 16px;font-size:15px;line-height:1.4;text-align:center;color:#fff;background:var(--danger);border-radius:18px;box-shadow:var(--dt-lift);transform:translate(-50%);pointer-events:none;animation:dt-fade .18s ease-out both}.dt-warn--card{display:none}.dt-drawn{max-width:720px;margin:16px auto 4px;padding:12px;background:var(--paper);border-radius:18px}.dt-send{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-top:22px;padding:16px 18px;background:#b0421c0f;border-radius:16px}.dt-send__text{display:grid;gap:2px;flex:1 1 260px;font-size:15px;color:var(--dt-text-2)}.dt-send__text strong{font-size:17px;color:var(--ink)}.dt-send--top{margin-top:0;margin-bottom:22px}.dt-send .dt-warn{flex-basis:100%;margin:0}.dt-page{max-width:1120px;min-height:calc(100dvh - 150px);margin:0 auto;display:flex;flex-direction:column;gap:28px;animation:dt-rise .38s var(--dt-ease) both}.dt-page__head h1{margin:8px 0;font-family:var(--dt-display);font-weight:700;font-size:40px;line-height:1.06;letter-spacing:-.028em}.dt-sec{background:#fff;border-radius:22px;padding:22px 24px 24px;box-shadow:var(--dt-lift)}.dt-sec__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:16px}.dt-sec__head h2{margin:0;font-family:var(--dt-display);font-size:21px;font-weight:700;letter-spacing:-.018em}.dt-chip{padding:5px 12px;font-size:13px;font-weight:600;letter-spacing:0;color:var(--dt-text-2);background:var(--dt-fill-soft);border-radius:999px;font-variant-numeric:tabular-nums}.dt-rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.dt-rcard{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:60px;padding:10px 10px 10px 18px;position:relative;overflow:hidden;background:var(--dt-fill-soft);border-radius:14px;box-shadow:0 0 0 1px var(--dt-hair) inset;transition:background-color .2s var(--dt-ease),box-shadow .2s var(--dt-ease)}.dt-rcard:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--room)}.dt-rcard:not(.is-off){background:#fff;box-shadow:0 0 0 1px var(--dt-hair) inset,0 2px 8px #0000000a}.dt-rcard.is-off .dt-rcard__name,.dt-rcard.is-off .dt-count>span{opacity:.45}.dt-rcard.is-off:before{opacity:.4}.dt-rcard__name{font-size:16px;font-weight:600}.dt-rcard--switch{width:100%;padding-right:16px;font:inherit;color:var(--ink);text-align:left;border:0;cursor:pointer}.dt-rcard__state{font-size:14px;font-weight:600;color:var(--step)}.dt-rcard.is-off .dt-rcard__state{color:var(--ink);opacity:.55}.dt-pillar{fill:#1f2933}.dt-hows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dt-how{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px 20px 18px;font:inherit;text-align:left;color:var(--ink);background:var(--dt-fill-soft);border:0;border-radius:18px;box-shadow:0 0 0 1px var(--dt-hair) inset;cursor:pointer;transition:background-color .2s var(--dt-ease),box-shadow .22s var(--dt-ease),transform .1s ease-out}@media(hover:hover){.dt-how:hover:not(.is-on){background:#fff;box-shadow:0 0 0 1.5px #b0421c73 inset,var(--dt-lift)}}.dt-how:active{transform:scale(.985)}.dt-how.is-on{background:#fff;box-shadow:0 0 0 2.5px var(--step) inset,0 10px 28px #b0421c29}.dt-how--ai.is-on{background:linear-gradient(135deg,#fff,#fff 55%,#fdf0e8)}.dt-how.is-on:after{content:"✓";position:absolute;top:16px;right:16px;display:grid;place-items:center;width:26px;height:26px;font-size:14px;font-weight:700;color:#fff;background:var(--step);border-radius:50%}.dt-how__badge{position:absolute;top:18px;right:52px;padding:3px 10px;font-size:12px;font-weight:600;letter-spacing:0;color:var(--step);background:#b0421c1a;border-radius:999px}.dt-how:not(.is-on) .dt-how__badge{right:16px}.dt-how__glyph{width:64px;height:50px;margin-bottom:6px}.dt-how__name{font-family:var(--dt-display);font-size:20px;font-weight:700;letter-spacing:-.016em}.dt-how__text{max-width:44ch;font-size:15px;line-height:1.45;color:var(--dt-text-2)}.dt-how__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.dt-how__tags span{padding:3px 10px;font-size:12.5px;font-weight:600;letter-spacing:0;color:var(--dt-text-2);background:var(--dt-fill);border-radius:999px}.dt-glyph__ai{fill:#b0421c29;stroke:var(--step);stroke-width:1.4}.dt-how--ai.is-on .dt-glyph__ai{animation:dt-ai-pop 2.4s var(--dt-ease) infinite both}.dt-glyph__ai--2{animation-delay:.3s!important}.dt-glyph__ai--3{animation-delay:.6s!important}.dt-glyph__spark{fill:var(--step-2)}.dt-how--ai.is-on .dt-glyph__spark{transform-origin:40px 13px;animation:dt-twinkle 1.6s ease-in-out infinite}.dt-glyph__cursor{fill:var(--ink)}@keyframes dt-ai-pop{0%,12%{opacity:0;transform:scale(.85)}30%,80%{opacity:1;transform:none}to{opacity:0}}@keyframes dt-twinkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.7) rotate(45deg);opacity:.6}}.dt-footbar{position:sticky;bottom:12px;z-index:5;margin-top:auto;display:flex;align-items:center;gap:12px;padding:10px 10px 10px 12px;background:#ffffffd1;-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);border-radius:999px;box-shadow:0 0 0 .5px var(--dt-hair),0 10px 30px #0000001a}.dt-footbar__note{flex:1;font-size:14px;color:var(--dt-text-2);text-align:right}.dt-footbar .btn{min-height:46px}.dt .btn.btn--ai{padding:0 24px;background:linear-gradient(120deg,var(--step) 0%,var(--step-2) 50%,var(--step) 100%);background-size:200% 100%;animation:dt-sheen 3.2s linear infinite}.dt .btn.btn--ai:hover:not(:disabled){background:linear-gradient(120deg,var(--step) 0%,var(--step-2) 50%,var(--step) 100%);background-size:200% 100%}@keyframes dt-sheen{to{background-position:-200% 0}}.dt-aitag{display:inline-block;margin-right:6px;padding:2px 10px;font-size:13px;font-weight:600;letter-spacing:0;color:var(--step);background:#b0421c1a;border-radius:999px;vertical-align:2px}.dt-aibar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.dt-ai{max-width:1120px;min-height:calc(100dvh - 150px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;animation:dt-fade .3s ease-out both}.dt-ai__art{padding:18px;background:#fff;border-radius:24px;box-shadow:var(--dt-lift)}.dt-svg--ai{max-height:64vh}.dt-ai__room{fill:#b0421c24;stroke:var(--step);stroke-width:.25;opacity:0;animation:dt-ai-room .7s var(--dt-ease) forwards}@keyframes dt-ai-room{0%{opacity:0}60%{opacity:1;fill:#cf622466}to{opacity:1}}.dt-ai__scan{animation:dt-ai-scan 1.6s ease-in-out infinite}@keyframes dt-ai-scan{0%{transform:translateY(0)}to{transform:translateY(130%)}}.dt-ai__spark{display:inline-block;font-size:34px;animation:dt-twinkle 1.6s ease-in-out infinite}.dt-ai__side h1{margin:8px 0 18px;font-family:var(--dt-display);font-weight:700;font-size:34px;line-height:1.08;letter-spacing:-.026em}.dt-ai__bar{height:6px;margin-bottom:22px;overflow:hidden;background:var(--dt-fill);border-radius:999px}.dt-ai__bar span{display:block;height:100%;background:linear-gradient(90deg,var(--step),var(--step-2));border-radius:inherit;transition:width .4s var(--dt-ease)}.dt-ai__steps{margin:0;padding:0;list-style:none;display:grid;gap:12px}.dt-ai__steps li{display:flex;align-items:center;gap:12px;font-size:16px;color:var(--dt-text-2);opacity:.45;transition:opacity .3s var(--dt-ease),color .3s var(--dt-ease)}.dt-ai__steps li.is-now,.dt-ai__steps li.is-done{opacity:1}.dt-ai__steps li.is-now{color:var(--ink);font-weight:600}.dt-ai__dot{flex:none;display:grid;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;color:#fff;background:var(--dt-fill);border-radius:50%}.dt-ai__steps li.is-done .dt-ai__dot{background:var(--step)}.dt-ai__steps li.is-now .dt-ai__dot{background:transparent;box-shadow:0 0 0 2px var(--step) inset;animation:dt-pulse .9s ease-in-out infinite}@keyframes dt-pulse{50%{box-shadow:0 0 0 2px var(--step) inset,0 0 0 6px #b0421c26}}@media(max-width:820px){.dt-split{grid-template-columns:minmax(0,1fr)}.dt-paper{position:static}.dt-split--draw .dt-paper{position:relative;order:-1}.dt-paper-warn{display:none}.dt-warn--card{display:block}.dt-plans,.dt-ways,.dt-hows,.dt-ai{grid-template-columns:minmax(0,1fr)}.dt-ai{gap:20px;align-items:start}.dt-page__head h1{font-size:30px}.dt-sec{padding:18px 16px}.dt-rgrid{grid-template-columns:minmax(0,1fr)}.dt-footbar{border-radius:20px}.dt-footbar__note{display:none}.dt-footbar .btn--next{flex:1}.dt-card{padding:22px 18px 18px}.dt-card h1{font-size:28px}.dt__inner{padding-top:16px}.dt-table th:nth-child(4),.dt-table td:nth-child(4){display:none}}@media(hover:none){.dt .btn:hover:not(:disabled){background:var(--dt-fill)}.dt .btn.btn--next:hover:not(:disabled){background:var(--step)}}@media(prefers-reduced-motion:reduce){.dt-card,.dt-paper,.dt-whynot.is-loud{animation:dt-fade .16s ease-out both}.dt .btn:active:not(:disabled),.dt-spinestep:active:not(:disabled),.dt-howbox summary:active,.dt-seg button:active,.dt-storey:active,.dt-plan:active,.dt-way:active:not(:disabled),.dt-kind:active,.dt-nudge__key:active,.dt-tool:active:not(:disabled),.dt-count button:active:not(:disabled){transform:none}.dt-pick{animation:none}.dt-page,.dt-ai{animation:dt-fade .16s ease-out both}.dt-how:active{transform:none}.dt .btn.btn--ai,.dt-glyph__ai,.dt-glyph__spark,.dt-ai__spark,.dt-ai__scan,.dt-ai__steps li.is-now .dt-ai__dot{animation:none!important}.dt-ai__room{animation:dt-fade .3s ease-out forwards}.dt-caret{animation:none}}@keyframes dt-fade{0%{opacity:0}}@media(prefers-contrast:more){.dt{--dt-hair: rgb(0 0 0 / .55);--dt-text-2: rgb(0 0 0 / .78)}.dt-card,.dt-storey,.dt-paper{box-shadow:0 0 0 1px var(--dt-hair)}.dt-input{box-shadow:0 0 0 1px var(--dt-hair) inset}}.dt-ftin{display:flex;gap:8px}.dt-ftin__box{position:relative;flex:1;min-width:0}.dt-ftin__box .dt-input{width:100%;padding:0 52px 0 12px;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.dt-ftin__box .dt-input::-webkit-inner-spin-button,.dt-ftin__box .dt-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.dt-step{position:absolute;top:6px;right:6px;bottom:6px;display:flex;flex-direction:column;width:26px;gap:2px}.dt-step button{flex:1;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:#ffffffb3;color:var(--ink);cursor:pointer}.dt-step button:hover{background:#fff;box-shadow:0 0 0 1px var(--dt-hair)}.dt-step button:active{transform:scale(.94)}.dt-step svg{width:12px;height:8px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dt-ftin__unit{position:absolute;top:50%;right:38px;transform:translateY(-50%);font-size:12px;color:var(--dt-text-2);pointer-events:none}.dt-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#14100c80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dt-modal__panel{position:relative;width:min(440px,100%);padding:40px 28px 28px;border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 24px 80px #0000004d}.dt-modal__panel h2{margin:0 0 12px;font-size:28px;letter-spacing:-.02em}.dt-modal__lede{margin:0 0 22px;color:#3c3c43b3;line-height:1.5}.dt-modal__x{position:absolute;top:14px;right:18px;border:0;background:none;font-size:30px;line-height:1;cursor:pointer;color:inherit}.dt-modal__label{display:block;margin-bottom:8px;font-weight:600;font-size:14px}.dt-modal__input{box-sizing:border-box;width:100%;padding:14px 16px;margin-bottom:18px;border:1.5px solid rgb(60 60 67 / .25);border-radius:14px;font:inherit;font-size:16px}.dt-modal__input:focus{outline:none;border-color:var(--ink)}.dt-modal__go{width:100%;padding:16px;border:0;border-radius:14px;background:#a5492a;color:#fff;font:inherit;font-weight:600;cursor:pointer}.dt-modal__go:disabled{opacity:.45;cursor:default}.dt .btn.dt-match{display:inline-flex;align-items:center;gap:6px;min-height:30px;margin-top:12px;padding:0 12px;font-size:13px;font-weight:500;color:var(--dt-text-2);background:transparent;box-shadow:0 0 0 1px var(--dt-hair) inset}.dt .btn.dt-match.dt-match--tool{margin-top:0}.dt .btn.dt-match:hover:not(:disabled){color:var(--ink);background:var(--dt-fill-soft)}.dt .btn.dt-match.is-on{color:#fff;background:#3f7d58;box-shadow:none}.dt .btn.dt-match.is-on:hover:not(:disabled){background:#356b4a}.dt-match__knob{position:relative;width:22px;height:14px;border-radius:999px;background:#76768059;transition:background-color .2s var(--dt-ease)}.dt-match__knob:after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:transform .2s var(--dt-ease)}.dt-match.is-on .dt-match__knob{background:#ffffff59}.dt-match.is-on .dt-match__knob:after{transform:translate(8px)}.dt-svg--draw.is-measure{cursor:crosshair}.dt .measure-mark{pointer-events:none}.dt .measure-mark__face,.dt .measure-mark__line,.dt .measure-mark__rubber,.dt .measure-mark__ext{stroke:#e8590c;stroke-linecap:round}.dt .measure-dim__hit{stroke:transparent}.dt .measure-dim--live .measure-dim__hit{pointer-events:stroke;cursor:move}.dt .measure-dim--selected .measure-mark__line,.dt .measure-dim--selected .measure-mark__ext{stroke:#1c7ed6}.dt .measure-mark__text{fill:#c2410c;font-weight:700;stroke:#fff;paint-order:stroke}.dt .measure-dim--selected .measure-mark__text{fill:#1c7ed6}.dt .btn.dt-match.dt-measurebtn.is-on{background:#d9480f}.dt .btn.dt-match.dt-measurebtn.is-on:hover:not(:disabled){background:#bf3f0d}.dt-measurebtn__glyph{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.dt-measures{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px}.dt-measures li{display:flex;align-items:center;border-radius:8px;box-shadow:0 0 0 1px var(--dt-hair) inset}.dt-measures li.is-on{box-shadow:0 0 0 1.5px #d9480f inset}.dt-measures__pick{flex:1;min-height:32px;padding:0 10px;text-align:left;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink);background:none;border:0;cursor:pointer}.dt-measures__x{width:32px;min-height:32px;font-size:18px;line-height:1;color:var(--dt-text-2);background:none;border:0;cursor:pointer}.dt-measures__x:hover{color:var(--danger)}.dt-length{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.dt-length strong{font-size:1.15rem}.dt-line-end{pointer-events:none}.dt-col{fill:#c2410c;stroke:#1f2933;stroke-width:.06;pointer-events:none}.dt-col.is-live{pointer-events:auto;cursor:grab}.dt-col.is-on{fill:#1c7ed6}.dt-svg--draw.is-pillars{cursor:copy}.dt .btn.dt-match.dt-pillarbtn.is-on{background:#c2410c}.dt .btn.dt-match.dt-pillarbtn.is-on:hover:not(:disabled){background:#a3370a}.dt-colgaps{pointer-events:none}.dt-colgaps__edge{stroke:#1c7ed6;opacity:.55}.dt-colgaps__run{stroke:#1f2933}.dt-colgaps__text{fill:#1f2933;font-weight:700;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:#fff;stroke-width:.12;stroke-linejoin:round}.dt-return{fill:var(--ink)}.dt-opening{fill:#fff}.dt-hatch__line{stroke:var(--ink)}.dt-stretch{fill-opacity:.6;stroke:var(--ink);stroke-width:.06;stroke-dasharray:.25 .15}.dt-stretch-grip{cursor:grab}.dt-baybad{fill:#c92a2a1f;stroke:var(--danger);pointer-events:none}.dt-colask{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:12px;background:#c92a2a14}.dt-colask__q{font-weight:600}.dt .btn.dt-match.dt-colask__all{color:var(--danger)}.dt-thick{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 10px}.dt-thick .dt-label{margin:0}.dt-wall--thick{stroke-linecap:butt}.dt-card--draw{padding:22px 20px 20px}.dt-dhead{padding:0 4px}.dt-dhead__eyebrow{display:block;font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--step)}.dt-card .dt-dhead__title{margin:2px 0;font-size:28px;letter-spacing:-.022em}.dt-dhead__sum{margin:0;font-size:14px;color:var(--dt-text-2);font-variant-numeric:tabular-nums}.dt-modes{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;margin-top:16px;padding:3px;background:var(--dt-fill);border-radius:13px}.dt-modes__btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:6px 4px;font:inherit;font-size:12px;font-weight:500;letter-spacing:0;color:var(--ink);background:transparent;border:0;border-radius:10px;cursor:pointer;transition:background-color .2s var(--dt-ease),box-shadow .2s var(--dt-ease),transform .1s ease-out}.dt-modes__btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;opacity:.75}.dt-modes__btn:hover:not(.is-on){background:#ffffff80}.dt-modes__btn:active{transform:scale(.96)}.dt-modes__btn.is-on{font-weight:600;color:var(--accent);background:#fff;box-shadow:0 .5px 1px #0000001f,0 3px 8px #00000014}.dt-modes__btn.is-on svg{opacity:1}.dt-modes__btn:focus-visible{outline:3px solid rgb(47 111 154 / .45);outline-offset:1px}.dt-modes__n{margin-left:4px;padding:0 5px;font-size:11px;font-style:normal;font-weight:600;color:var(--dt-text-2);background:var(--dt-fill);border-radius:999px}.dt-hintbar{margin:10px 0 0;padding:10px 12px;font-size:13px;line-height:1.45;color:var(--ink);background:#2f6f9a14;border-radius:11px;animation:dt-fade .18s ease-out both}.dt-empty__tips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.dt-tip{display:flex;gap:10px;align-items:center;padding:10px;background:var(--dt-fill-soft);border-radius:12px}.dt-tip .dt-glyph{width:26px;height:26px}.dt-tip span{display:grid;font-size:12px;line-height:1.3;color:var(--dt-text-2)}.dt-tip strong{font-size:13px;font-weight:600;color:var(--ink)}.dt-card--draw .dt-insp{margin-top:14px;padding:14px;background:#fff;border-radius:16px;box-shadow:0 0 0 1px var(--dt-hair),0 4px 16px #0000000a}.dt-insp__head{display:flex;align-items:center;gap:12px}.dt-insp__badge{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--c);box-shadow:0 0 0 .5px #00000026 inset}.dt-insp__badge--pillar{background:#3a3a3c}.dt-insp__badge svg{width:20px;height:20px;fill:#fff}.dt-insp__title{display:grid;flex:1;min-width:0}.dt-insp__title strong{font-size:17px;font-weight:600;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dt-insp__title span{font-size:13px;color:var(--dt-text-2);font-variant-numeric:tabular-nums}.dt-insp__done{flex:none;min-height:30px;padding:0 14px;font:inherit;font-size:14px;font-weight:600;color:var(--accent);background:#2f6f9a1a;border:0;border-radius:999px;cursor:pointer;transition:transform .1s ease-out}.dt-insp__done:active{transform:scale(.95)}.dt-card--draw .dt-insp .dt-label{margin:16px 0 7px;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.dt-label__sub{text-transform:none;letter-spacing:0;font-weight:500}.dt-card--draw .dt-kinds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dt-card--draw .dt-kind{justify-content:flex-start;min-height:36px;padding:0 8px;font-size:13px;font-weight:500;background:var(--dt-fill-soft);border-radius:9px;box-shadow:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dt-card--draw .dt-kind:hover:not(.is-on){background:var(--dt-fill)}.dt-card--draw .dt-kind.is-on{font-weight:600;background:color-mix(in srgb,var(--c) 22%,#fff);box-shadow:0 0 0 1.5px var(--c) inset}.dt-card--draw .dt-kind__dot{flex:none;width:10px;height:10px}.dt-input--own{min-height:38px;margin-top:8px;font-size:15px;border-radius:9px}.dt-card--draw .dt-sides{gap:10px}.dt-sides--by{position:relative}.dt-card--draw .dt-insp .dt-field{gap:4px;font-size:12px}.dt-card--draw .dt-insp .dt-field .dt-input{min-height:40px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;border-radius:10px}.dt-card--draw .dt-insp .dt-pick__acts{margin-top:14px;padding-top:12px;border-top:1px solid var(--dt-hair)}.dt-link--danger{color:var(--danger)}.dt-fine{margin-top:12px}.dt-fine summary{display:flex;align-items:center;gap:6px;min-height:32px;font-size:13px;font-weight:600;color:var(--dt-text-2);list-style:none;cursor:pointer}.dt-fine summary::-webkit-details-marker{display:none}.dt-fine summary:before{content:"";width:6px;height:6px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(-45deg);transition:transform .2s var(--dt-ease)}.dt-fine[open] summary:before{transform:rotate(45deg)}.dt-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.dt-stats>div{display:grid;gap:1px;padding:9px 10px;background:var(--dt-fill-soft);border-radius:11px}.dt-stats b{font-family:var(--dt-display);font-size:22px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.dt-stats span{font-size:11px;font-weight:500;color:var(--dt-text-2)}.dt-stats>div.is-bad{background:#c92a2a14}.dt-stats>div.is-bad b{color:var(--danger)}.dt-note--tight{margin-top:0;font-size:13px}.dt-autorow{display:flex;gap:8px;margin-top:10px}.dt-autorow__sub{display:block;margin-top:6px;font-size:12px}.dt-autorow__sub .dt-link{min-height:0;font-size:12px;font-weight:600}.dt-stepper{display:flex;align-items:center;padding:2px;background:var(--dt-fill);border-radius:11px}.dt-stepper button{width:36px;height:38px;font:inherit;font-size:20px;line-height:1;color:var(--ink);background:transparent;border:0;border-radius:9px;cursor:pointer}.dt-stepper button:hover:not(:disabled){background:#fff}.dt-stepper button:disabled{opacity:.3;cursor:default}.dt-stepper input{width:44px;height:38px;font:inherit;font-size:17px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;color:var(--ink);background:transparent;border:0}.dt-stepper input:focus{outline:none;background:#fff;border-radius:8px}.dt-primary{flex:1;min-height:42px;padding:0 16px;font:inherit;font-size:15px;font-weight:600;color:#fff;background:var(--accent);border:0;border-radius:11px;cursor:pointer;transition:filter .15s ease-out,transform .1s ease-out}.dt-primary:hover{filter:brightness(1.08)}.dt-primary:active{transform:scale(.98)}.dt-btnrow{display:flex;gap:8px}.dt-pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:var(--dt-fill);border:0;border-radius:999px;cursor:pointer;transition:transform .1s ease-out}.dt-pill:active{transform:scale(.96)}.dt-pill--danger{color:var(--danger);background:#c92a2a17}.dt-pill .dt-key{margin-left:8px}.dt-btnrow--wrap{flex-wrap:wrap}.dt-pill.is-on{color:#fff;background:var(--step)}.dt-pill:disabled{opacity:.45;cursor:default}.dt-warn--box{padding:9px 12px;font-size:13px;background:#c92a2a12;border-radius:10px}.dt-card--draw .dt-insp .dt-done{margin-top:12px;font-size:13px}.dt-longbay line{stroke:var(--danger);stroke-linecap:round;pointer-events:none}.dt-longbay text{fill:var(--danger);font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.dt-group{margin-top:18px;overflow:hidden;background:var(--dt-fill-soft);border-radius:14px}.dt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:8px 14px;font:inherit;text-align:left;color:var(--ink);background:transparent;border:0;cursor:pointer}.dt-row+.dt-row{box-shadow:0 -1px 0 var(--dt-hair)}.dt-row:hover:not(:disabled){background:var(--dt-fill-soft)}.dt-row:disabled{opacity:.4;cursor:default}.dt-row__text{display:grid;gap:1px;font-size:15px}.dt-row__text small{font-size:12px;color:var(--dt-text-2)}.dt-row--danger{color:var(--danger)}details.dt-row{display:block;padding:0;cursor:default}details.dt-row:hover{background:transparent}.dt-row--more summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 14px;list-style:none;cursor:pointer}.dt-row--more summary::-webkit-details-marker{display:none}.dt-row--more summary:after{content:"";width:7px;height:7px;border-right:2px solid rgb(60 60 67 / .3);border-bottom:2px solid rgb(60 60 67 / .3);transform:rotate(-45deg);transition:transform .2s var(--dt-ease)}.dt-row--more[open] summary:after{transform:rotate(45deg)}.dt-keys{display:grid;gap:8px;margin:0;padding:0 14px 14px;list-style:none;font-size:13px;line-height:1.45;color:var(--dt-text-2)}.dt-keys kbd{display:inline-block;min-width:18px;padding:0 5px;font:inherit;font-size:11px;font-weight:600;line-height:18px;text-align:center;color:var(--ink);background:#fff;border-radius:5px;box-shadow:0 0 0 .5px var(--dt-hair),0 1px 0 var(--dt-hair)}.dt-switch{flex:none;position:relative;width:44px;height:26px;border-radius:999px;background:#78788038;transition:background-color .22s var(--dt-ease)}.dt-switch:after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0000002e,0 0 0 .5px #0000000a;transition:transform .22s var(--dt-ease)}.dt-switch.is-on{background:#34c759}.dt-switch.is-on:after{transform:translate(18px)}@media(prefers-reduced-motion:reduce){.dt-switch,.dt-switch:after,.dt-modes__btn,.dt-fine summary:before{transition:none}}@media(max-width:420px){.dt-card--draw .dt-kinds{grid-template-columns:repeat(2,minmax(0,1fr))}}.dt-steps__well{fill:#ffffff8c;stroke:#1f293359;stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.dt-steps--out .dt-steps__well{fill:#fff6;stroke:none}.dt-steps__tread{stroke:#1f2933;stroke-width:.7;opacity:.7}.dt-steps__edge{stroke:#1f2933;stroke-width:1.1}.dt-steps__rail{stroke:#1f2933;stroke-width:1.2}.dt-steps__arrow{stroke:#1f2933;stroke-width:1.1}.dt-steps__up{fill:#1f2933;font-weight:700;letter-spacing:.06em}.dt-steps.is-live{cursor:move}.dt-steps.is-on .dt-steps__well{stroke:var(--step);stroke-width:2;stroke-dasharray:none}.dt-stairbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding:12px 14px;background:var(--dt-fill-soft);border-radius:14px;box-shadow:0 0 0 1px var(--dt-hair) inset}.dt-stairbar__name{font-weight:600;margin-right:4px}.dt-stairbar__hint{flex-basis:100%;font-size:13px;opacity:.6}.bnew{height:100%;overflow-y:auto;background:var(--bg);display:flex;justify-content:center;align-items:flex-start;padding:60px 30px}.bnew__card{width:100%;max-width:540px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:32px 34px 28px}.bnew__card h1{margin:6px 0 10px;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:34px;line-height:1.05}.bnew__form{margin-top:22px;display:flex;flex-direction:column;gap:6px}.bnew__label{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.bnew__input{font:inherit;font-size:17px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:11px 14px}.bnew__input:focus{outline:none;border-color:var(--ink)}.bnew__hint{margin:2px 0 0;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.6;color:var(--muted)}.bnew__acts{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.bpage{height:100%;overflow-y:auto;background:var(--bg);padding:26px 30px 40px;display:flex;flex-direction:column;gap:20px}.bpage__loading{padding:40px 30px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--muted)}.bpage__back{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--muted);text-decoration:none}.bpage__back:hover{color:var(--ink)}.bpage__title{margin:8px 0 2px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:34px;line-height:1.02}.bpage__rename{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.bpage__rename:hover{color:var(--ink)}.bpage__title-input{font:inherit;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:34px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;padding:2px 10px;margin:8px 0 2px;max-width:420px}.bpage__sub{margin:0;font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--muted)}.bpage__grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.bcard--floors{grid-column:1;grid-row:1 / span 2}.bcard--plot,.bcard--side{grid-column:2;grid-row:auto;padding:16px 18px 18px;gap:10px}.bcard--plot .bcard__facts>div,.bcard--side .bcard__facts>div{flex-wrap:wrap;gap:2px 12px}.bcard__facts>.bcard__fact--oneline{flex-wrap:nowrap;gap:8px}.bcard__fact--oneline dd{white-space:nowrap}.bcard--side .bcard__note,.bcard--plot .bcard__note--quiet{font-size:11px;line-height:1.45}@media(max-width:900px){.bpage__grid{grid-template-columns:minmax(0,1fr)}.bcard--floors,.bcard--plot,.bcard--side{grid-column:auto;grid-row:auto}}.bcard{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px 22px 22px;display:flex;flex-direction:column;gap:14px}.bcard__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.bcard__head h2{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:20px}.bcard__note{font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.6;color:var(--muted);margin:6px 0}.bcard__note--quiet{margin:-4px 0 0}.bcard__empty{margin:0;padding:18px;border:1px dashed var(--line);border-radius:6px;font-size:13px;line-height:1.6;color:var(--muted);background:var(--bg)}.bcard__floors{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.bcard__whole{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line)}.bcard__whole .bcard__note{flex-basis:100%;margin:0}.bcard__add{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:8px}.bcard__add-label{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.bcard__chips{display:flex;gap:8px;flex-wrap:wrap}.chip--add{cursor:pointer}.bcard__facts{margin:0;display:flex;flex-direction:column;gap:9px}.bcard__facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.bcard__facts dt{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.bcard__facts dd{margin:0;font-family:IBM Plex Mono,monospace;font-size:12px;text-align:right}.bcard__edit{align-self:flex-start}.bcard__danger{margin-top:4px;align-self:flex-start;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--danger);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.frow{display:flex;align-items:center;gap:14px;padding:11px 14px;background:var(--bg);border:1px solid var(--line);border-radius:6px;flex-wrap:wrap}.frow--busy{border-color:var(--ink)}.frow__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;color:inherit;text-decoration:none}.frow__name{font-size:14px;font-weight:600}.frow__meta{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.frow__status{flex:none;display:flex;align-items:center;gap:7px}.frow__bar{width:60px;height:4px;border-radius:2px;background:#e4e0d4;overflow:hidden}.frow__bar span{display:block;height:100%;background:#b0421c}.frow__step{font-family:IBM Plex Mono,monospace;font-size:11px;color:#b0421c}.frow__done{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--gap)}.frow__time{flex:none;width:82px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.frow__actions{flex:none;display:flex;align-items:center;gap:10px}.frow__open{font-size:12.5px;font-weight:600;text-decoration:none;color:var(--ink);border:1px solid var(--ink);border-radius:999px;padding:5px 13px}.frow__open:hover{background:var(--ink);color:#fff}.frow__copy{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.frow__copy:disabled{color:var(--muted);cursor:default;text-decoration:none}.frow__pick{flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.frow__pick-label{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-right:4px}.frow__pick-cancel{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.frow__delete{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--danger);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.bpage__order{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px}.bpage__order li{display:flex;align-items:center;gap:8px}.bpage__order li+li:before{content:"→";color:var(--muted);font-size:13px}.bpage__stage{display:flex;align-items:center;gap:8px;font:inherit;text-align:left;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;padding:6px 12px 6px 8px;cursor:pointer}.bpage__stage:hover{border-color:var(--ink)}.bpage__stage-badge{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600;color:#fff;background:var(--step)}.bpage__stage--done .bpage__stage-badge{color:var(--ink);background:var(--line)}.bpage__stage-text{display:flex;flex-direction:column;line-height:1.2}.bpage__stage-label{font-size:13px;font-weight:600}.bpage__stage-note{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--muted)}.bcard__requests{display:block;padding:9px 12px;border-radius:6px;border:1px solid var(--step);background:#fbeee8;color:var(--step);font-size:13px;font-weight:600;text-decoration:none}.bcard__requests:hover{background:#f7e0d5}.dhome{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 300px;background:var(--bg)}.dhome__main{min-width:0;overflow-y:auto;padding:30px 30px 40px;display:flex;flex-direction:column;gap:18px}.dhome__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.dhome__title{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:32px;line-height:1.02;letter-spacing:.01em}.dhome__count{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--muted)}.dhome__headright{display:flex;flex-wrap:wrap;gap:8px}.dhome__search{font:inherit;font-size:13px;width:220px;border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff}.dhome__new{font:inherit;font-size:13px;font-weight:600;color:#fff;background:#b0421c;border:0;border-radius:999px;padding:8px 16px;cursor:pointer;text-decoration:none;white-space:nowrap}.dhome__new:hover{background:#9c3a17}.dhome__describe{font:inherit;font-size:13px;font-weight:600;color:#b0421c;background:#fff;border:1px solid #b0421c;border-radius:999px;padding:8px 16px;cursor:pointer;text-decoration:none;white-space:nowrap}.dhome__describe:hover{background:#fbefe9}.dhome__letterhead{font:inherit;font-size:13px;font-weight:600;color:#4c5357;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;cursor:pointer;text-decoration:none;white-space:nowrap}.dhome__letterhead:hover{color:#b0421c;border-color:#b0421c}.dhome__chips{display:flex;gap:6px}.dhome__chip{font:inherit;font-family:IBM Plex Mono,monospace;font-size:11.5px;color:#4c5357;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px;cursor:pointer}.dhome__chip--on{color:#fff;background:linear-gradient(135deg,#b0421c,#cf6224);border-color:#9c3a17}.dhome__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.dhome__empty{color:var(--muted);font-size:14px;padding:8px 0}.drow{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:6px}.drow--busy{border-color:var(--ink)}.drow__thumb{position:relative;flex:none;width:56px;height:44px;border-radius:4px;overflow:hidden;background:#fbf8f1;border:1px solid #e4e0d4}.drow__thumb:before{content:"";position:absolute;left:6px;top:5px;bottom:5px;width:18px;border:1.5px solid var(--ink);background:#f7e3e0}.drow__thumb:after{content:"";position:absolute;left:24px;top:5px;right:6px;bottom:5px;border:1.5px solid var(--ink);border-left:0;background:#f7e9d1}.drow__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;color:inherit;text-decoration:none}.drow__name{font-size:14.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drow__meta{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.drow__name-input{font:inherit;font-size:14.5px;font-weight:600;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:5px 8px;width:100%;max-width:280px}.drow__status{flex:none;display:flex;align-items:center;gap:7px}.drow__bar{width:60px;height:4px;border-radius:2px;background:#e4e0d4;overflow:hidden}.drow__bar span{display:block;height:100%;background:#b0421c}.drow__step{font-family:IBM Plex Mono,monospace;font-size:11px;color:#b0421c}.drow__done{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--gap)}.drow__time{flex:none;width:92px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:11px;color:#9aa0a6}.drow__actions{flex:none;position:relative;display:flex;gap:6px}.drow__open{font:inherit;font-size:12px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 11px;cursor:pointer;text-decoration:none}.drow__open:hover{border-color:var(--accent)}.drow__more{font:inherit;font-size:12px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 9px;cursor:pointer;line-height:1}.drow__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:130px;display:flex;flex-direction:column;gap:4px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #1f293329}.drow__menu button{font:inherit;font-size:12.5px;font-weight:600;text-align:left;color:var(--ink);background:#fff;border:0;border-radius:6px;padding:7px 9px;cursor:pointer}.drow__menu button:hover{background:#f6f5ef}.drow__menu button.drow__menu-danger:hover{color:var(--danger)}.drow__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:19;background:transparent;border:0}.dhome__rail{overflow-y:auto;border-left:1px solid #ddcfa9;background:linear-gradient(170deg,#f8f2e0,#f2e7cd);padding:30px 22px;display:flex;flex-direction:column;gap:24px}.dhome__rail-group{display:flex;flex-direction:column;gap:10px}.dhome__rail-label{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#9aa0a6}.dhome__rail-btn{display:flex;flex-direction:column;gap:3px;text-align:left;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;padding:12px 14px;cursor:pointer}.dhome__rail-btn:hover{border-color:var(--accent)}.dhome__rail-btn b{font-size:13.5px;font-weight:600}.dhome__rail-btn span{font-size:11.5px;color:var(--muted)}.dhome__rail-btn--ink{color:#fff;background:linear-gradient(140deg,#16232e,#2f6f9a);border:0}.dhome__rail-btn--ink span{color:#fff9}.dhome__rail-btn--money{border-color:#4c8a5e80}.dhome__rail-btn--money b{color:#2f6b45}.dhome__rail-btn--money span{color:var(--gap)}.dhome__rail-note{margin:0;font-size:12.5px;line-height:1.6;color:#9aa0a6}@media(max-width:900px){.dhome{grid-template-columns:1fr;overflow-y:auto}.dhome__main,.dhome__rail{overflow-y:visible}.dhome__rail{border-left:0;border-top:1px solid #ddcfa9}.drow__time{display:none}}.brow{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:6px}.brow--done{border-color:var(--gap)}.brow__folder{position:relative;flex:none;width:56px;height:44px;border-radius:4px;background:#fbf8f1;border:1px solid #e4e0d4}.brow__folder:before{content:"";position:absolute;left:9px;top:12px;right:9px;bottom:9px;border:1.5px solid var(--ink);border-radius:2px;background:#f7e9d1}.brow__folder:after{content:"";position:absolute;left:9px;top:8px;width:20px;height:6px;border:1.5px solid var(--ink);border-bottom:0;border-radius:2px 2px 0 0;background:#f7e3e0}.brow__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;color:inherit;text-decoration:none}.brow__name{font-size:15.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brow__meta{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.brow__requests{align-self:flex-start;margin-top:3px;padding:2px 8px;border-radius:10px;background:var(--step);color:#fff;font-size:11px;font-weight:600}.brow__floors{flex:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:340px;justify-content:flex-end}.brow__chip{font-family:IBM Plex Mono,monospace;font-size:11px;text-decoration:none;color:#b0421c;border:1px solid #e8cdc2;background:#fdf5f1;border-radius:999px;padding:4px 10px;white-space:nowrap}.brow__chip:hover{border-color:#b0421c}.brow__chip--done{color:var(--gap);border-color:#cadfd0;background:#f4faf5}.brow__chip--add{color:var(--muted);border-color:var(--line);background:var(--bg)}.brow__chip--add:hover{color:var(--ink);border-color:var(--ink)}.brow__time{flex:none;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted);width:82px;text-align:right}.brow__open{flex:none;font-size:12.5px;font-weight:600;text-decoration:none;color:var(--ink);border:1px solid var(--ink);border-radius:999px;padding:6px 14px}.brow__open:hover{background:var(--ink);color:#fff}.dhome__sub{margin:10px 0 0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:18px}.dhome__sub span{font-family:IBM Plex Mono,monospace;font-weight:400;font-size:11px;color:var(--muted)}.furn-stage{--poche: #171b1d;--room: #edeee9;--sheet: #edeee9;--oxide: #b0421c;--ink-3: #838a8e;--paper-plan: #dddfd8}.furn-viewport{cursor:default}.furn-svg{display:block;flex:none;margin:auto;background:var(--paper-plan);touch-action:none;box-sizing:content-box;border-bottom:64px solid transparent;background-clip:padding-box}.furn-sym{cursor:move}.furn-sym .pl-sym--furn{stroke-width:1.1;pointer-events:none}.furn-hit{fill:none;stroke:transparent;stroke-width:16;stroke-linejoin:round;pointer-events:stroke}.furn-sym:hover .pl-sym--furn{stroke:var(--s-accent, #1e5771);stroke-width:1.6}.furn-sym--on .pl-sym--furn{stroke:var(--oxide);stroke-width:1.8}.furn-sym--invalid .pl-sym--furn,.furn-sym--invalid:hover .pl-sym--furn,.furn-sym--invalid.furn-sym--on .pl-sym--furn{stroke:#c0392b;stroke-width:1.8}.furn-ghost{stroke:var(--s-accent, #1e5771);stroke-width:1.2;opacity:.45;pointer-events:none}.furn-handle{fill:#fff;stroke:var(--oxide);stroke-width:2;cursor:ew-resize;touch-action:none}.furn-handle:hover{fill:var(--oxide)}.furn-marquee{fill:#1e57711f;stroke:var(--s-accent, #1e5771);stroke-width:1;stroke-dasharray:4 3;pointer-events:none}.pl-sym--pillar{pointer-events:none}.furn-tag{cursor:move}.furn-tag__hit{fill:transparent;pointer-events:all}.furn-tag text{-webkit-user-select:none;user-select:none}.furn-tag--armed{pointer-events:none}.furn-tag:hover text{fill:var(--s-accent, #1e5771)}.furn-text{cursor:move}.furn-text__hit{fill:transparent;pointer-events:all}.furn-text text{-webkit-user-select:none;user-select:none}.furn-text:hover text{fill:var(--s-accent, #1e5771)}.furn-text--on text{fill:var(--oxide)}.side__text{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 4px 4px 10px}.side__text--on{border-color:var(--oxide);box-shadow:0 0 0 1px var(--oxide)}.side__text--draft{border-style:dashed;border-color:var(--ink)}.side__text-in{flex:1;min-width:0;font:inherit;font-size:13px;color:var(--ink);background:transparent;border:0;padding:3px 0}.side__text-in:focus{outline:none}.side__text-del{flex:none;width:22px;height:22px;line-height:1;font-size:15px;color:var(--muted);background:transparent;border:0;border-radius:8px;cursor:pointer}.side__text-del:hover{color:#c0392b;background:#f6f5ef}.furn-more__shelves{display:flex;flex-direction:column;gap:5px;padding-left:10px;border-left:3px solid var(--line)}.furn-swap{display:flex;flex-direction:column;gap:5px;padding:4px 0 2px}.furn-swap__title{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.furn-clear{font-size:12px;line-height:1.35;color:#8a5a0c;background:#fdf6e7;border:1px solid #ecd3a0;border-radius:8px;padding:5px 8px}.furn-clear--row{font:inherit;font-size:12px;text-align:left;cursor:pointer}.furn-clear--row:hover{border-color:#c99a3e}.furn-clear--on{border-color:var(--oxide);box-shadow:0 0 0 1px var(--oxide)}.furn-clear-status{color:#a8670b;font-weight:600}.furn-sym--warn .furn-hit{stroke:#d68c1429}.furn-sym--warn:not(.furn-sym--on):not(:hover) .pl-sym--furn{stroke:#b7791f;stroke-width:1.4}.furn-menu{position:fixed;z-index:60;min-width:190px;display:flex;flex-direction:column;padding:4px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #00000029}.furn-menu__item{display:flex;align-items:baseline;justify-content:space-between;gap:14px;font:inherit;font-size:13px;text-align:left;color:var(--ink);background:transparent;border:0;border-radius:6px;padding:6px 10px;cursor:pointer}.furn-menu__item:hover,.furn-menu__item:focus-visible{background:#f6f5ef;outline:none}.furn-menu__item--sub{padding-left:22px}.furn-menu__item--danger{color:#c0392b}.furn-menu__key{font-size:11px;color:var(--muted)}.furn-note__more{font:inherit;color:var(--s-accent, #1e5771);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}.sketchpage{height:100%;padding:26px 32px 64px;background:var(--bg);color:var(--ink);overflow-y:auto}.sketchpage .eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.sketchpage h1{margin:0 0 10px;font-size:30px;line-height:1.15}.sketchpage .lede{margin:0 0 12px;color:var(--muted)}.sketch__body{display:grid;grid-template-columns:240px minmax(0,1fr) 240px;gap:24px;align-items:start}.sketch__rooms{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sketch__room{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:1px solid var(--line);border-left:4px solid var(--room-accent, var(--line));border-radius:6px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.sketch__room--armed{border-color:var(--accent);border-left-color:var(--room-accent, var(--accent));box-shadow:0 0 0 2px var(--accent)}.sketch__room--done .sketch__label{color:var(--muted)}.sketch__swatch{width:12px;height:12px;border-radius:3px;background:var(--room-accent, var(--line))}.sketch__label{flex:1}.sketch__state{color:var(--gap);font-weight:600}.sketch__row{display:flex;gap:6px}.sketch__remove{flex:none;width:34px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}.sketch__remove:hover{color:var(--danger);border-color:var(--danger)}.sketch__add h2{margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sketch__plus{color:var(--accent);font-size:18px;font-weight:600;line-height:1}.sketch__empty{color:var(--muted);font-size:14px}.sketch__canvas{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.sketch__svg{display:block;width:100%;max-height:70vh;-webkit-user-select:none;user-select:none}.sketch__svg--armed{cursor:crosshair}.sketch__shell{fill:#969ea6}.sketch__floor{fill:#eceee8}.sketch__wall{fill:#969ea6}.sketch__flatwall{stroke:#3d4652;stroke-width:.75;vector-effect:non-scaling-stroke}.sketch__flathatch-ground{fill:#fff}.sketch__flathatch-line{stroke:#3d4652}.sketch__side{font-size:1.1px;fill:var(--muted);text-anchor:middle;dominant-baseline:middle}.sketch__tile{cursor:grab;touch-action:none}.sketch__tile rect{stroke:var(--ink);stroke-width:.08}.sketch__tilename{font-size:.9px;fill:var(--ink);text-anchor:middle;pointer-events:none}.sketch__optbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.sketch__optnote{margin-right:auto;color:var(--muted);font-size:14px}.sketch__options{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.sketch__option{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;cursor:pointer}.sketch__option--picked{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.sketch__thumb{display:block;width:100%}.sketch__thumbroom{fill-opacity:.55}.sketch__thumbname,.sketch__thumbsize{text-anchor:middle;fill:var(--ink);pointer-events:none}.sketch__thumbname{font-size:.85px;font-weight:600}.sketch__thumbsize{font-size:.75px}.sketch__optionlabel{font-size:14px;font-weight:600}.sketch__left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.sketch__missed{color:var(--danger);font-weight:400}@media(max-width:800px){.sketchpage{padding:24px 16px 48px}.sketch__body{grid-template-columns:1fr}}.sketch__row .sketch__room{flex:1;width:auto}@media(max-width:1100px)and (min-width:801px){.sketch__body{grid-template-columns:220px minmax(0,1fr)}.sketch__add{grid-column:1 / -1}.sketch__add .sketch__rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.custom__bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.custom__add{font:inherit;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink)}.custom__note{color:var(--muted);font-size:14px}.custom__expand{margin-left:auto}.btn.custom__expand--on,.btn.custom__expand--on:hover:not(:disabled){border-color:var(--accent);background:#e6eff6;color:var(--accent)}.custom__plot{fill:#e4ecdc}.custom__room{cursor:grab;touch-action:none}.custom__room rect{fill-opacity:.6;stroke:var(--ink);stroke-width:.06}.custom__room--picked rect{stroke:var(--accent);stroke-width:.25}.custom__room--bad rect{fill:var(--danger);fill-opacity:.55;stroke:var(--danger);stroke-width:.2}.custom__name,.custom__size{text-anchor:middle;fill:var(--ink);pointer-events:none}.custom__name{font-size:.9px;font-weight:600}.custom__size{font-size:.8px}.custom__body{display:grid;grid-template-columns:232px minmax(0,1fr) 230px;gap:12px;align-items:start}@media(max-width:800px){.custom__body{grid-template-columns:minmax(0,1fr)}}.custom__palette{display:flex;flex-direction:column;gap:8px}.custom__palette .side__group:first-child{border-top:0;padding-top:0}.custom__tab{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.custom__tabhead{margin:0 0 10px;font-size:15px}.custom__tablabel{display:block;margin-bottom:6px;font-size:11.5px;color:var(--muted)}.custom__presets{margin-top:10px}.custom__swapbox{container-type:inline-size;margin:10px 0 6px}.btn.custom__swap{display:block;width:100%;padding:4px 6px;font-size:min(12px,7cqi);white-space:nowrap}.custom__chips{display:flex;flex-wrap:wrap;gap:6px}.custom__chip{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}.custom__chip:hover{background:#f6f5ef}.custom__chip--on{border-color:var(--accent);color:var(--accent)}.custom__tabhint{margin:12px 0 0;font-size:12.5px;line-height:1.4;color:var(--muted)}.custom__grips{touch-action:none}.custom__griphit{fill:transparent}.custom__gripmark,.custom__corner{fill:#fff;stroke:var(--accent);stroke-width:.1}.custom__gripmark{pointer-events:none}.custom__grip--n,.custom__grip--s{cursor:ns-resize}.custom__grip--e,.custom__grip--w{cursor:ew-resize}.custom__grip--nw,.custom__grip--se{cursor:nwse-resize}.custom__grip--ne,.custom__grip--sw{cursor:nesw-resize}.custom__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.custom__side .custom__actions{gap:8px;margin-top:0;padding-top:40px}.custom__side .custom__actions .btn{flex:1 1 0;min-width:0;padding-left:8px;padding-right:8px;white-space:nowrap}.sketch__boardname,.custom__zone{font-size:1.1px;font-weight:600;fill:var(--muted);text-anchor:middle;pointer-events:none}.sketch__part{width:100%;margin-top:8px;padding:4px 8px;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-align:left;color:var(--muted);cursor:pointer}.sketch__part--active{color:var(--accent);border-bottom-color:var(--accent)}.sketch__fixed rect{fill-opacity:.35;pointer-events:none}.sketch__thumbroom--bad{fill:var(--danger);stroke:var(--danger);stroke-width:.2}.sketch__vastu{margin:12px 0;padding:10px 12px;border:1px solid #e7d6a8;border-left:4px solid #d9a83a;border-radius:6px;background:#fdf8ea;font-size:13.5px;line-height:1.4}.sketch__canvas .sketch__vastu{margin-bottom:0}.sketch__vastuhead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px;font-weight:600}.sketch__vastusub{font-weight:400;color:var(--muted)}.sketch__vastu ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.sketch__vastu li{display:flex;align-items:flex-start;gap:8px}.sketch__vastu li>span{flex:1}.sketch__vastuall,.sketch__vastux{flex:none;border:0;background:none;font:inherit;color:var(--muted);cursor:pointer}.sketch__vastuall{font-size:12.5px;font-weight:400;text-decoration:underline}.sketch__vastux{padding:0 4px;font-size:16px;line-height:1}.sketch__vastuall:hover,.sketch__vastux:hover{color:var(--ink)}.sketch__vastucount{color:#a57718;font-weight:400}.sketch__compass{display:flex;align-items:center;gap:8px;margin-top:-4px}.sketch__road{flex:1;padding-top:3px;border-top:3px double #8d949c;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--muted)}.sketch__north{flex:none;width:28px;height:28px;color:var(--ink)}.wizard-loading{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px}.page-toprow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.btn--undo,.btn--redo{flex:none}.app{min-height:0;height:100%;display:grid;grid-template-columns:232px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:14px;padding:14px}.app--inspector{grid-template-columns:232px minmax(0,1fr) 186px}.app--layout.app--inspector{grid-template-columns:232px minmax(0,1fr) 205px}.app--furn.app--inspector{grid-template-columns:232px minmax(0,1fr) 210px}.app>.stage{grid-column:2;grid-row:1}.app--inspector .side--right{grid-column:3;grid-row:1}.app>.bottombar{grid-column:1 / -1;grid-row:2}.app>.hintbar{grid-column:1 / -1;grid-row:2}.side{grid-column:1;grid-row:1;display:flex;flex-direction:column;min-height:0;gap:12px}.side__tools{display:flex;flex-direction:column;align-items:stretch;gap:8px;overflow-y:auto;padding-right:2px}.side__foot{margin-top:auto;display:flex;flex-direction:column;gap:8px}.side__hint{margin:0;font-size:12px;line-height:1.45;color:var(--muted)}.hintbar{margin:0;padding:8px 16px;text-align:center;font-size:12px;line-height:1.45;color:var(--muted);border-top:1px solid var(--line)}.side__group{display:flex;flex-direction:column;gap:5px;padding-top:10px;border-top:1px solid var(--line)}.side__group--joined{padding-top:5px;border-top:0}.side__group--band{padding-left:10px;border-left:3px solid var(--side-accent, var(--line))}.side__title{margin:5px 0 2px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.side__title--toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font:inherit;background:none;border:none;padding:0;cursor:pointer}.side__title--toggle:hover{color:var(--ink)}.side__chevron{font-size:1em;transition:transform .15s ease}.side__chevron--open{transform:rotate(180deg)}.side__item{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font:inherit;font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 10px;cursor:pointer;text-align:left}.side__item:hover{background:#f6f5ef}.side__item:disabled{color:var(--muted);background:#f6f5ef;border-color:var(--line);cursor:not-allowed}.side__item:disabled:hover{background:#f6f5ef}.side__item--on{color:#fff;background:var(--ink);border-color:var(--ink)}.side__left{display:flex;align-items:center;gap:8px;min-width:0}.side__icon{flex:none;width:26px;height:26px;color:var(--muted)}.side__item--room{border-left:3px solid var(--room-accent, var(--line));border-top-left-radius:4px;border-bottom-left-radius:4px}.side__item--room:disabled{border-left-color:var(--room-accent, var(--line))}.side__item--on.side__item--room{border-left-color:var(--room-accent, var(--line))}.side__icon>*{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.side__item--on .side__icon{color:#ffffffd9}.side__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side__size{flex:none;white-space:nowrap;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted)}.side__item--on .side__size{color:#ffffffb8}.side__meta{font-size:12.5px;font-weight:600;color:var(--ink);padding:2px 0 4px}.side__meta--fine{padding:1px 0 2px}.side__meta--muted{font-weight:400;color:var(--muted)}.side__rename{width:100%;min-width:0;font:inherit;font-size:13px;border:1px solid var(--line);border-radius:10px;padding:7px 9px}.side__error{font-size:11px;font-weight:600;color:#c0392b;padding:2px 0 4px}.chips{display:flex;flex-wrap:wrap;gap:5px}.sidechip{font:inherit;font-size:11.5px;font-weight:600;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:9px;padding:4px 8px;cursor:pointer}.sidechip--on{color:#fff;background:var(--accent);border-color:var(--accent)}.widthbox{display:flex;gap:6px}.widthbox label{display:flex;align-items:center;gap:4px;flex:1;min-width:0;font-size:11.5px;color:var(--muted)}.widthbox input{width:100%;min-width:0;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;border:1px solid var(--line);border-radius:10px;padding:6px 7px}.sizebox{display:flex;align-items:center;gap:6px;margin-bottom:6px}.sizebox__label{flex:1;min-width:0;font-size:11.5px;color:var(--muted)}.sizebox__field{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted)}.sizebox--stepped{flex-wrap:wrap;row-gap:4px}.sizebox--stepped .sizebox__label{flex:1 0 100%}.sizebox--stepped .sizebox__steps{flex:1 0 100%;margin-left:0}.sizebox--stepped .sizebox__field input{width:60px}.sizebox__steps{display:flex;gap:4px;margin-left:auto}.sizebox__step{width:24px;height:26px;display:flex;align-items:center;justify-content:center;font:inherit;font-size:13px;line-height:1;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer}.sizebox__step:hover{background:#f6f5ef}.sizebox__field input{width:60px;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;border:1px solid var(--line);border-radius:10px;padding:6px 7px}.btn--wide{width:100%;text-align:center}.btn{font:inherit;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 20px;cursor:pointer;box-shadow:0 1px 2px #1f293314}.btn:hover:not(:disabled){background:#f6f5ef}.btn:disabled{opacity:.4;cursor:default}.btn--wide{padding-top:4px;padding-bottom:4px}.btn--mode{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;margin-bottom:12px;padding:12px 14px;border-radius:12px;background:var(--accent);border-color:var(--accent);color:#fff;font-size:1rem}.btn--mode:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.btn--mode-on{background:var(--ink);border-color:var(--ink)}.btn--mode-on:hover:not(:disabled){background:var(--ink)}.btn--mode__sub{font-size:.75rem;font-weight:400;opacity:.85}.btn--primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn--primary:hover:not(:disabled){background:#2c3947}.btn--room{padding:8px 14px;font-size:13px}.btn--compact,.btn--undo,.btn--redo{padding:7px 12px;font-size:13px}.toolbar__divider{width:1px;height:26px;background:var(--line)}.toolbar__hint{font-size:13px;color:var(--muted)}.zoom{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 1px 2px #1f293314;overflow:hidden}.zoom__btn,.zoom__level{font:inherit;color:var(--ink);background:none;border:0;cursor:pointer;padding:9px 0}.zoom__btn{flex:none;width:38px;font-size:18px;line-height:1}.zoom__level{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:1px;padding-inline:10px;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;border-inline:1px solid var(--line);cursor:text}.zoom__input{font:inherit;color:inherit;background:none;border:0;outline:none;padding:0;width:3ch;min-width:0;text-align:right;font-variant-numeric:tabular-nums}.zoom__input::-webkit-outer-spin-button,.zoom__input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.zoom__pct{opacity:.6}.zoom__btn--reset{flex:none;width:32px;font-size:14px;border-left:1px solid var(--line)}.zoom__btn:hover:not(:disabled),.zoom__level:hover{background:#f6f5ef}.zoom__level:focus-within{background:#f6f5ef;box-shadow:inset 0 0 0 1px var(--ink)}.zoom__btn:disabled{opacity:.35;cursor:default}.stage{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;padding:8px}.viewport{flex:1;min-height:0;display:flex;overflow:auto;overscroll-behavior:contain;background:var(--bg);border-radius:3px;box-shadow:inset 0 0 0 1px #6b78564d;cursor:grab}.viewport--dark{background:linear-gradient(140deg,var(--draw-1) 0%,var(--draw-2) 55%,var(--draw-3) 100%);box-shadow:inset 0 0 0 1px #080d12a6}.viewport--panning{cursor:grabbing}.viewport--nopan{cursor:default}.paper{position:relative;flex:none;margin:auto;background-color:var(--paper);background-image:linear-gradient(to right,var(--grid-super) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-super) 1px,transparent 1px),linear-gradient(to right,var(--major-color) 1px,transparent 1px),linear-gradient(to bottom,var(--major-color) 1px,transparent 1px),linear-gradient(to right,var(--fine-color) 1px,transparent 1px),linear-gradient(to bottom,var(--fine-color) 1px,transparent 1px);background-size:var(--super) var(--super),var(--super) var(--super),var(--major) var(--major),var(--major) var(--major),var(--fine) var(--fine),var(--fine) var(--fine);touch-action:none}.axis{position:absolute;background:var(--axis);pointer-events:none}.axis--v{left:50%;top:0;bottom:0;width:1px}.axis--h{top:50%;left:0;right:0;height:1px}.shape{position:absolute;display:grid;place-items:center;touch-action:none}.shape--outline{background:#fafbf6d1;border-radius:2px;pointer-events:none}.outline__wall{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid var(--ink);border-radius:2px;pointer-events:none;z-index:4}.shell-band{position:absolute;box-sizing:border-box;border-style:solid;border-color:#1f293329;border-radius:2px;pointer-events:none;z-index:2}.divider-band{position:absolute;background:#1f293329;border-radius:2px;pointer-events:none;z-index:1}.divider-face{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:1}.divider-face path{fill:none;stroke:var(--room-ink);stroke-width:1}.divider-band--flat{background:repeating-linear-gradient(45deg,#1f2933b3 0,#1f2933b3 1.5px,#fff 1.5px,#fff 5px);box-shadow:inset 0 0 0 1px #1f29338c}.wall-size{position:absolute;background:var(--handle);color:#fff;font-size:12px;font-weight:600;white-space:nowrap;padding:3px 8px;border-radius:5px;box-shadow:0 1px 3px #1f293324;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:4}.setout{position:absolute;border:1px dashed rgb(31 41 51 / .28);border-radius:2px;pointer-events:none;z-index:2}.setout__size{position:absolute;left:50%;bottom:2px;transform:translate(-50%);padding:0 3px;font-size:11px;font-weight:600;white-space:nowrap;color:var(--ink);background:var(--label-bg);border-radius:3px;opacity:.8}.plotframe{position:absolute;border:1.5px dashed rgb(107 120 86 / .75);background:#beb28c29;border-radius:2px;pointer-events:none;z-index:0}.plotframe--shape{border:none;background:none;overflow:visible}.plotframe--shape polygon{fill:#beb28c29;stroke:#6b7856bf;stroke-width:1.5;stroke-dasharray:6 4;stroke-linejoin:round}.stepspiece{position:absolute;background:#fafbf6b8;z-index:1;touch-action:none}.stepspiece--selected{box-shadow:0 2px 8px #1f293324}.stepspiece__steps{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.stepspiece__edge{stroke:#6b7856e6;stroke-width:1.1}.stepspiece__tread{stroke:#6b7856b3;stroke-width:.75}.stepspiece__arrow{stroke:#4a543ad9;stroke-width:.9}.stepspiece__rail{stroke:#4a543af2;stroke-width:1.1}.stepspiece__up{fill:#4a543ad9;stroke:none;font-weight:700;letter-spacing:.06em}.stepspiece--selected .stepspiece__edge{stroke:#6b7856;stroke-width:1.5}.steps-cut{position:absolute;background:none;border:1px dashed color-mix(in srgb,var(--room-ink, var(--ink)) 55%,transparent);opacity:.75;cursor:pointer;z-index:1}.steps-cut--fixed{cursor:default;pointer-events:none}.stairlayer{display:contents}.stairwell{position:absolute;background:#ffffffdb;border:1.5px dashed var(--room-ink);border-radius:2px;cursor:move;touch-action:none;z-index:4}.stairwell--selected{border-color:var(--ink);box-shadow:0 4px 14px #1f29332e}.stairwell--locked{cursor:default;pointer-events:none}.stairwell--invalid,.stairwell--invalid.stairwell--selected{border-color:#c0392b;border-width:2px;box-shadow:0 0 0 2px #c0392b2e}.stairwell__tag{position:absolute;top:2px;left:2px;padding:0 3px;background:#ffffffe0;border-radius:3px;font-size:11px;font-weight:700;color:var(--muted);pointer-events:none;-webkit-user-select:none;user-select:none}.shape--room{background:color-mix(in srgb,var(--room-tint, transparent) 24%,rgb(255 255 255 / .92));border:1.5px solid color-mix(in srgb,var(--room-tint, transparent) 50%,var(--room-ink));border-radius:2px;cursor:move;z-index:2}.shape__floor{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.shape__floor-fill{fill:color-mix(in srgb,var(--room-tint, transparent) 24%,rgb(255 255 255 / .92))}.shape__floor-line{fill:none;stroke:color-mix(in srgb,var(--room-tint, transparent) 50%,var(--room-ink));stroke-width:1.5}.shape--outline.shape--selected{box-shadow:0 6px 20px #1f293321}.shape--room.shape--selected{border-color:var(--ink);box-shadow:0 4px 14px #1f29332e;z-index:3}.shape--room.shape--inside,.shape--room.shape--inside.shape--selected{z-index:5}.shape--room.shape--invalid{border-color:#c0392b;border-width:2px;box-shadow:0 0 0 2px #c0392b2e}.shape--room.shape--lifted{opacity:.78;border-style:dashed;border-width:2px;box-shadow:0 10px 24px #1f293347;z-index:4}.shape--room.shape--blocked{border-color:#c0392b;box-shadow:0 10px 24px #c0392b47}.shape--room.shape--forced{border-style:solid;border-color:#1f7a4d;box-shadow:0 10px 24px #1f7a4d4d;opacity:.92}.shape--room.shape--target{cursor:crosshair;border-style:dashed;border-color:var(--ink);box-shadow:inset 0 0 0 2px #1f29331a}.shape--room.shape--stepped{background:none;border:0;box-shadow:none;pointer-events:none}.shape--room.shape--stepped .shape__floor-fill{pointer-events:fill}.shape--room.shape--stepped>.handle,.shape--room.shape--stepped>.dim{pointer-events:auto}.shape__label--seated{position:absolute;transform:translate(-50%,-50%);white-space:nowrap}.shape--room.shape--stepped.shape--selected .shape__floor{filter:drop-shadow(0 4px 7px rgb(31 41 51 / .2))}.shape--room.shape--stepped.shape--lifted .shape__floor{filter:drop-shadow(0 10px 12px rgb(31 41 51 / .3))}.shape--room.shape--stepped.shape--lifted .shape__floor-line{stroke-dasharray:5 3;stroke-width:2}.shape--room.shape--stepped.shape--blocked .shape__floor{filter:drop-shadow(0 10px 12px rgb(192 57 43 / .3))}.shape--room.shape--stepped.shape--blocked .shape__floor-line{stroke:#c0392b}.shape--room.shape--stepped.shape--forced .shape__floor{filter:drop-shadow(0 10px 12px rgb(31 122 77 / .32))}.shape--room.shape--stepped.shape--forced .shape__floor-line{stroke:#1f7a4d;stroke-dasharray:none}.shape--room.shape--stepped.shape--selected .shape__floor-line{stroke:var(--ink);stroke-width:2}.shape--room.shape--stepped.shape--invalid .shape__floor-line{stroke:#c0392b;stroke-width:2}.shape--locked{pointer-events:none;cursor:default}.houseshape{position:absolute;overflow:visible;pointer-events:none}.houseshape--shell{z-index:4}.houseshape__floor{fill:#fafbf6d1}.houseshape__shell{fill:#1f293329}.houseshape__wall{fill:none;stroke:var(--ink);stroke-width:2}.houseshape--sizing .houseshape__wall{stroke:var(--handle);stroke-width:3}.housegrip{position:absolute;z-index:6;background:#ffffffe6;border:2px solid var(--handle);border-radius:4px;box-shadow:0 1px 2px #1f293333;touch-action:none}.housegrip:hover{background:var(--handle)}.housegrip--step{background:#ffffff8c;border-style:dashed;border-color:#2f6f9a8c;box-shadow:none}.housegrip--step:hover{background:var(--handle);border-style:solid}.side__acts{display:flex;flex-direction:column;gap:6px;margin-top:0}.shape__size{position:absolute;font-size:11px;font-weight:700;line-height:1;white-space:nowrap;color:var(--muted);pointer-events:none;-webkit-user-select:none;user-select:none}.shape__size--top{text-align:center;padding-top:2px}.shape__size--left{display:flex;align-items:flex-start;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);padding-right:2px}.shape__label-tight{display:inline-block;margin:14px 0 0 14px;font-size:10px}.shape__label{font-size:11px;font-weight:700;color:var(--muted);text-align:center;padding:0 3px;pointer-events:none;-webkit-user-select:none;user-select:none}.room-guide{position:absolute;pointer-events:none;z-index:4}.room-guide--h{height:0;border-top:1.5px dashed var(--accent)}.room-guide--v{width:0;border-left:1.5px dashed var(--accent)}.room-guide--caught{z-index:6}.room-guide--h.room-guide--caught{border-top:2px solid var(--accent)}.room-guide--v.room-guide--caught{border-left:2px solid var(--accent)}.balcony-stretch{position:absolute;box-sizing:border-box;border:1.5px dashed color-mix(in srgb,var(--accent, #2563eb) 70%,transparent);background:color-mix(in srgb,var(--accent, #2563eb) 8%,transparent);cursor:pointer;z-index:4}.balcony-stretch--on{border-color:var(--accent, #2563eb);background:color-mix(in srgb,var(--accent, #2563eb) 14%,transparent)}.balcony-stretch__grip{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#fff;border:2px solid var(--accent, #2563eb);box-shadow:0 1px 2px #00000040;touch-action:none;z-index:8}.balcony-stretch__grip:hover{background:var(--accent, #2563eb)}.pillar{position:absolute;background:var(--danger);border-radius:1px;box-shadow:0 0 0 1px #fff;cursor:move;touch-action:none;z-index:6}.trace-band{position:absolute;background:color-mix(in srgb,var(--room-ink) 20%,transparent);border:1.5px solid var(--room-ink);border-radius:2px;pointer-events:none;z-index:1}.trace-room{position:absolute;border:1px dashed color-mix(in srgb,var(--room-accent, var(--room-ink)) 55%,transparent);background:color-mix(in srgb,var(--room-accent, var(--room-ink)) 9%,transparent);pointer-events:none;z-index:1}.trace-room__tag{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:10px;letter-spacing:.02em;white-space:nowrap;color:var(--room-ink);opacity:.5}.pillar--fixed{cursor:default;pointer-events:none}.pillar--selected{outline:2px solid var(--accent);outline-offset:1.5px}.pillar--cut{background:none;box-shadow:none;border:1px dashed color-mix(in srgb,var(--danger) 70%,transparent);opacity:.75;cursor:pointer;z-index:5}.pillar-upto{position:absolute;left:50%;bottom:100%;transform:translate(-50%,-2px);font-size:9px;font-weight:600;letter-spacing:.04em;line-height:1;white-space:nowrap;color:var(--ink);opacity:.75;pointer-events:none}.pillar--cut .pillar-upto{opacity:.6}.pillar-delete{position:absolute;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:7px;background:var(--panel, #fff);border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);box-shadow:0 4px 14px #00000029;white-space:nowrap;z-index:30}.pillar-delete__ask{font-size:11px;opacity:.7}.pillar-delete button{font-size:11px;font-weight:600;padding:3px 8px;border-radius:5px;border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);background:transparent;color:inherit;cursor:pointer}.pillar-delete__cut{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.pillar-delete__all:hover{border-color:var(--danger, #c0392b);color:var(--danger, #c0392b)}.pillar-target,.room-target{position:absolute;cursor:copy;touch-action:none;z-index:7}.shape--art{place-items:start start}.shape--art .shape__label{margin:2px;padding:0 3px;background:#ffffffe0;border-radius:3px;z-index:1}.roomstair{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.roomstair__tread{stroke:var(--room-ink);stroke-width:.7;opacity:.75}.roomstair__rail{stroke:var(--room-ink);stroke-width:1}.roomstair__arrow{stroke:var(--ink);stroke-width:1.1;opacity:1}.roomstair__up{fill:var(--ink);stroke:none;opacity:1;font-weight:700;letter-spacing:.06em}.dim{position:absolute;background:var(--label-bg);color:var(--ink);font-size:12px;font-weight:600;white-space:nowrap;padding:3px 8px;border-radius:5px;box-shadow:0 1px 3px #1f293324;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:4}.dim--top{left:50%;bottom:100%;transform:translate(-50%);margin-bottom:9px}.dim--left{top:50%;left:0;transform:translate(-50%,-50%) rotate(-90deg) translateY(-22px)}.dim--editing{background:var(--handle);color:#fff}.dim--editing:after{content:"";display:inline-block;width:1px;height:11px;margin-left:2px;vertical-align:-2px;background:currentColor;animation:dim-caret 1s step-start infinite}@keyframes dim-caret{50%{opacity:0}}.handle{position:absolute;width:13px;height:13px;transform:translate(-50%,-50%);background:#fff;border:2px solid var(--handle);border-radius:4px;box-shadow:0 1px 2px #1f293333;touch-action:none;z-index:4}.handle:hover{background:var(--handle)}.edge-grip{position:absolute;touch-action:none;z-index:3}.edge-grip--n,.edge-grip--s{left:0;right:0;height:10px}.edge-grip--e,.edge-grip--w{top:0;bottom:0;width:10px}.edge-grip--n{top:-5px}.edge-grip--s{bottom:-5px}.edge-grip--w{left:-5px}.edge-grip--e{right:-5px}.handle--step{display:flex;align-items:center;justify-content:center;width:auto;min-width:22px;height:17px;padding:0 5px;border-radius:9px;color:var(--handle);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;-webkit-user-select:none;user-select:none}.handle--step:hover{background:var(--handle);color:#fff}.statusbar{position:absolute;left:50%;bottom:-20px;transform:translate(-50%) scale(var(--sb-fit, 1));transform-origin:bottom center;z-index:5;pointer-events:none;width:max-content;display:flex;align-items:center;gap:10px;flex-wrap:nowrap;white-space:nowrap;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 22px;font-size:13px;color:var(--muted);box-shadow:0 2px 10px #1f29331a}.statusbar--wrap{transform:translate(-50%);width:max-content;max-width:calc(100% - 24px);box-sizing:border-box;flex-wrap:wrap;row-gap:4px;white-space:normal}.statusbar--wrap>span{white-space:nowrap}.statusbar--wrap>.statusbar__notice{white-space:normal;text-align:center}.statusbar strong{color:var(--ink)}.statusbar__sep{color:var(--line)}.statusbar__notice{color:#9a5b2c;font-weight:600}.statusbar__muted{color:var(--line)}.bottombar{display:grid;grid-template-columns:18% 62% 18%;align-items:center;gap:12px;min-height:40px;padding:6px 10px}.bottombar__back{grid-column:1;justify-self:start}.bottombar__note{grid-column:2;justify-self:center;text-align:center;font-size:13px;color:var(--muted)}.bottombar__next{grid-column:3;justify-self:end}.btn--back{padding:11px 26px}.btn.btn--next{background:var(--step);border-color:var(--step);color:#fff;padding:11px 26px}.btn.btn--next:hover:not(:disabled){background:var(--step-2);border-color:var(--step-2)}.btn.btn--dxf{background:linear-gradient(140deg,var(--draw-2),var(--draw-edge));border-color:var(--draw-1);color:#fff}.btn.btn--dxf:hover:not(:disabled){background:linear-gradient(140deg,var(--draw-1),var(--draw-edge))}.btn.btn--3d{background:#fff;border-color:var(--draw-1);color:var(--draw-1)}.btn.btn--3d:hover:not(:disabled){background:#eef1f4}.namedialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px}.namedialog__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f293373}.namedialog__panel{position:relative;width:100%;max-width:420px;display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px;box-shadow:0 12px 40px #1f293340}.namedialog__title{margin:0;font-size:17px}.namedialog__hint{margin:0;font-size:13px;color:var(--muted)}.namedialog__input{width:100%;min-width:0;font:inherit;border:1px solid var(--line);border-radius:6px;padding:8px 10px}.namedialog__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.splitdialog__choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.splitdialog__choice{display:flex;flex-direction:column;align-items:center;gap:4px;font:inherit;font-weight:600;background:var(--panel, #f7f6f2);border:1px solid var(--line);border-radius:10px;padding:16px 10px;cursor:pointer}.splitdialog__choice:hover{border-color:var(--accent, #b08d57)}.splitdialog__glyph{font-size:22px;line-height:1}.splitdialog__note{font-size:12px;font-weight:400;color:var(--muted)}.walls-viewport{cursor:grab}.wallpaper{position:relative;flex:none;margin:auto;background:var(--paper);box-sizing:content-box;border-bottom:64px solid transparent;background-clip:padding-box}.wallpaper__lift{position:absolute;pointer-events:none}.wallpaper__lift .wall__handle,.wallpaper__lift .stairwell,.wallpaper__lift .stepspiece,.wallpaper__lift .pillar:not(.pillar--fixed){pointer-events:auto}.walls{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.walls--armed{pointer-events:auto;cursor:crosshair}.measure-mark{pointer-events:none}.measure-mark__face{stroke:#e8590c;stroke-linecap:round}.measure-mark__line,.measure-mark__rubber,.measure-mark__ext{stroke:#e8590c}.measure-dim__hit{stroke:transparent}.measure-dim--live .measure-dim__hit{pointer-events:stroke;cursor:move}.measure-dim--selected .measure-mark__line,.measure-dim--selected .measure-mark__ext{stroke:#1c7ed6}.measure-dim--selected .measure-mark__text{fill:#1c7ed6}.measure-mark__text{fill:#c2410c;font-weight:700;stroke:#fff;paint-order:stroke}.measure-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;cursor:crosshair}.measure-layer svg{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.walls__floor{fill:#fafbf6d1}.walls__furn{fill:none;stroke:#3c48588c;stroke-width:1px;vector-effect:non-scaling-stroke;pointer-events:none}.walls__zone{fill:#4f6a8a17;fill-opacity:.19;pointer-events:none}.walls__edge{fill:none;stroke:#0000001f;stroke-width:.05;pointer-events:none}.wall-band{fill:var(--ink);pointer-events:fill;cursor:pointer}.walls--armed .wall-band{cursor:inherit}.wall__line{fill:transparent}.wall__hit{stroke:transparent;stroke-width:14;pointer-events:stroke;cursor:pointer}.walls--armed .wall__hit{pointer-events:none}.wall:hover .wall__line,.wall--selected .wall__line{fill:var(--accent)}.wall__draft{stroke:var(--accent);stroke-width:3;stroke-dasharray:7 5;stroke-linecap:round}.wallgrips{position:absolute;top:0;right:0;bottom:0;left:0}.wall__handle{position:absolute;width:13px;height:13px;transform:translate(-50%,-50%);border-radius:50%;background:var(--paper);border:1.5px solid var(--accent);cursor:pointer}.wall__handle:hover{background:var(--accent)}.dway__v{fill:none;stroke:var(--ink);stroke-width:.7;stroke-linejoin:round;stroke-linecap:round}.dway__hit{fill:none;stroke:transparent;stroke-width:18;stroke-linejoin:round;pointer-events:stroke;cursor:move}.walls--armed .dway__hit{pointer-events:none}.dway--selected .dway__v{stroke:var(--accent);stroke-width:1.3}.dway--invalid .dway__v,.dway--invalid.dway--selected .dway__v{stroke:#c0392b;stroke-width:1.5}.win__glass{fill:none;stroke:var(--ink);stroke-width:.6;stroke-linejoin:round;vector-effect:non-scaling-stroke}.win__hit{fill:transparent;stroke:transparent;stroke-width:14;vector-effect:non-scaling-stroke;pointer-events:fill;cursor:move}.walls--armed .win__hit{pointer-events:none}.win:hover .win__glass,.win--selected .win__glass{stroke:var(--accent);stroke-width:1.3}.gap__cut{fill:#fafbf6d1;stroke:none}.gap__mark{fill:none;stroke:var(--gap);stroke-width:1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}.glass__pane{stroke:var(--glass);stroke-width:2.4;stroke-linecap:square}.gap:hover .glass__pane,.gap--selected .glass__pane{stroke-width:3.6}.shutter__line{stroke:var(--ink-3, #555);stroke-width:2.4;stroke-dasharray:6 4}.gap--selected .shutter__line{stroke-width:3.6}.gap__hit{fill:transparent;stroke:transparent;stroke-width:14;vector-effect:non-scaling-stroke;pointer-events:fill;cursor:move}.walls--armed .gap__hit{pointer-events:none}.gap:hover .gap__mark,.gap--selected .gap__mark{stroke-width:1.6}.gap--selected .gap__mark{stroke-dasharray:none}.roomtag{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.roomtag__name{font-size:12px;font-weight:700;line-height:1.15;color:var(--ink);overflow-wrap:anywhere}.roomtag__size{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}.roomtag__size--stacked{display:flex;flex-direction:column;align-items:center;font-size:10px;line-height:1.15;white-space:nowrap}.roomtag--hall .roomtag__name{font-weight:600;letter-spacing:.04em;color:var(--muted)}.roomtag--ghost{opacity:.62}.roomtag--ghost .roomtag__name{font-weight:600;font-style:italic;color:var(--muted)}.dirs{display:flex;background:#fff;border:1px solid var(--line);border-radius:999px;overflow:hidden;box-shadow:0 1px 2px #1f293314}.dirs__btn{font:inherit;font-size:17px;line-height:1;width:38px;padding:9px 0;color:var(--muted);background:none;border:0;border-inline-end:1px solid var(--line);cursor:pointer}.dirs__btn:last-child{border-inline-end:0}.dirs__btn:hover{background:#f6f5ef}.dirs__btn--on{background:var(--door);color:#fff}.splitbtn{display:flex;width:100%;border-radius:999px;overflow:hidden;box-shadow:0 1px 2px #1f293314}.splitbtn__half{flex:1;min-width:0;font:inherit;font-size:12px;font-weight:600;line-height:1;text-align:center;white-space:nowrap;color:var(--ink);background:#fff;border:1px solid var(--line);padding:10px 6px;cursor:pointer}.splitbtn__half+.splitbtn__half{border-inline-start:0}.splitbtn__half:hover:not(:disabled){background:#f6f5ef}.splitbtn__half--on{background:var(--ink);border-color:var(--ink);color:#fff}.splitbtn__half--on:hover:not(:disabled){background:#2c3947}.shape--apron{position:absolute;background:repeating-linear-gradient(-45deg,rgba(60,70,80,.08) 0 6px,transparent 6px 12px);pointer-events:none}.wall-dim{position:absolute;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600;color:#1f2933b8;white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 0 3px var(--label-bg),0 0 3px var(--label-bg),0 0 2px var(--label-bg);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:6}.wall-dim--live{color:var(--handle);font-weight:700;font-size:12px}.wall-dim--editing{background:var(--handle);color:#fff;font-weight:700;font-size:12px;padding:3px 8px;border-radius:5px;box-shadow:0 1px 3px #1f293324;text-shadow:none}.wall-dim--editing:after{content:"";display:inline-block;width:1px;height:11px;margin-left:2px;vertical-align:-2px;background:currentColor;animation:dim-caret 1s step-start infinite}.flat-dim{position:absolute;pointer-events:none;z-index:6;color:var(--flat-line)}.flat-dim--h{height:0;border-top:1px solid currentColor}.flat-dim--v{width:0;border-left:1px solid currentColor}.flat-dim:before,.flat-dim:after{content:"";position:absolute;background:currentColor}.flat-dim--h:before,.flat-dim--h:after{top:-5px;width:1px;height:9px}.flat-dim--h:before{left:0}.flat-dim--h:after{right:0}.flat-dim--v:before,.flat-dim--v:after{left:-5px;width:9px;height:1px}.flat-dim--v:before{top:0}.flat-dim--v:after{bottom:0}.flat-dim__text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:0 4px;background:var(--label-bg);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.flat-dim--v .flat-dim__text{transform:translate(-50%,-50%) rotate(-90deg)}.flat-dim__text--field{pointer-events:auto;cursor:text}.flat-dim__text--field:hover{text-decoration:underline dashed;text-underline-offset:2px}.flat-dim__text.wall-dim--editing{padding:3px 8px;background:var(--handle);color:#fff}.pillar-run{position:absolute;pointer-events:none;z-index:5}.pillar-run--h{height:0;border-top:1.5px dashed var(--ink)}.pillar-run--v{width:0;border-left:1.5px dashed var(--ink)}.pillar-gap{position:absolute;font-family:IBM Plex Mono,monospace;font-size:11.5px;font-weight:700;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 0 3px var(--label-bg),0 0 3px var(--label-bg),0 0 2px var(--label-bg);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:7}.pillar-gap--over{color:#c0392b;pointer-events:auto}.wall-gap--on{padding:1px 6px;border:1.5px solid var(--ink);border-radius:4px;background:var(--label-bg);text-shadow:none}.pillar-ask{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:6px 2px}.pillar-ask__acts{display:flex;gap:6px}.pillar-ask__acts .btn{flex:1;min-width:0}.pillar-ask__label{display:flex;align-items:center;gap:6px;font-size:12.5px;flex:1}.pillar-ask__input{width:64px;padding:3px 6px;font:inherit}.finaltouch-mark{position:absolute;pointer-events:none;z-index:6;border:2px solid #c0392b;background:repeating-linear-gradient(45deg,#c0392b47 0,#c0392b47 6px,#c0392b14 6px,#c0392b14 12px);box-sizing:border-box}.access-tight{position:absolute;pointer-events:none;z-index:6;border:2px dashed #d97706;background:#f59e0b4d;box-sizing:border-box;fill:#f59e0b59;stroke:#d97706;stroke-width:1.5;stroke-dasharray:4 3}.statusbar__notice--amber{color:#b45309}.sketch__figures{font-weight:400;color:var(--muted)}.sketch__door{fill:var(--accent);stroke:none;pointer-events:none}.canvas-compass{position:absolute;top:16px;right:16px;z-index:20;display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 6px 5px;border:1px solid var(--line);border-radius:4px;background:#fbfaf5eb;color:var(--ink);pointer-events:none;-webkit-user-select:none;user-select:none}.canvas-compass__arrow{display:block}.canvas-compass__road{display:flex;flex-direction:column;align-items:center;line-height:1.15;font-size:9px;color:var(--muted)}.canvas-compass__road-word{font-weight:700;letter-spacing:.08em;color:var(--ink);border-bottom:2px solid var(--muted);padding-bottom:1px}.authedspine__status--unsaved{color:var(--muted);font-style:italic}.authedspine__status--failed{color:#b42318;font-weight:600}.authedspine__shortcuts{width:28px;height:28px;margin-right:8px;padding:0;font-size:13px;font-weight:700;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;cursor:pointer;vertical-align:middle}.authedspine__shortcuts:hover{border-color:var(--accent)}.shortcuts__panel{max-width:560px;max-height:calc(100vh - 40px);overflow-y:auto}.shortcuts__list{margin:0;display:flex;flex-direction:column;gap:6px}.shortcuts__row{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:12px;align-items:baseline;font-size:13px}.shortcuts__keys{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--ink);white-space:pre-wrap}.shortcuts__what{margin:0;color:var(--ink)}.shortcuts__where{display:block;font-size:11px;color:var(--muted)}@media(max-width:640px){.authedshell__body .app,.authedshell__body .app.app--inspector{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-rows:auto;overflow-y:auto;padding:10px}.authedshell__body .app>.side,.authedshell__body .app>.stage,.authedshell__body .app>.side.side--right,.authedshell__body .app>.hintbar,.authedshell__body .app>.bottombar{grid-column:1;grid-row:auto}.authedshell__body .app>.stage{height:65vh}.shortcuts__row{grid-template-columns:minmax(0,1fr);gap:2px}}.dway__area{fill:transparent;stroke:none;pointer-events:fill;cursor:move}.walls--armed .dway__area{pointer-events:none}.sizebox--opening .sizebox__label{flex:0 0 auto;min-width:3.6em;white-space:nowrap}.sizebox--opening .sizebox__field{flex:1 1 0;min-width:0}.sizebox--opening .sizebox__field input{width:100%;min-width:0}.typepick__name strong{color:var(--ink)}.wallnote__how{position:relative;display:inline-block;text-align:left}.wallnote__how summary{cursor:pointer;font-weight:600;color:var(--accent)}.wallnote__body{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:60;width:min(520px,90vw);margin:0;padding:10px 14px 10px 28px;font-size:12.5px;line-height:1.5;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 20px #1f293324}.wallnote__body li+li{margin-top:4px}.wallmenu{position:fixed;z-index:100;min-width:190px;display:flex;flex-direction:column;padding:4px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #1f29332e}.wallmenu__item{font:inherit;font-size:13px;text-align:left;color:var(--ink);background:none;border:0;border-radius:7px;padding:7px 10px;cursor:pointer}.wallmenu__item:hover:not(:disabled){background:#f6f5ef}.wallmenu__item:disabled{cursor:default;color:var(--muted)}.wallmenu__item--on{font-weight:600}.wallmenu__sep{height:1px;margin:4px 6px;background:var(--line)}.room-menu{position:fixed;z-index:100;min-width:170px;display:flex;flex-direction:column;padding:4px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #1f29332e}.room-menu button{display:flex;align-items:center;justify-content:space-between;gap:12px;font:inherit;font-size:13px;text-align:left;color:var(--ink);background:none;border:0;border-radius:7px;padding:7px 10px;cursor:pointer}.room-menu button:hover{background:#f6f5ef}.room-menu__key{font-size:11px;color:var(--muted)}.room-menu .room-menu__danger:hover{color:var(--danger)}.statusbar__fix{pointer-events:auto;font:inherit;font-size:12px;font-weight:600;padding:3px 10px;border-radius:6px;border:1px solid var(--danger);background:color-mix(in srgb,var(--danger) 10%,#fff);color:var(--danger);cursor:pointer;white-space:nowrap}.statusbar__fix:disabled{opacity:.5;cursor:default}.shape-wrap{display:contents}.side__hint--stair{color:#9a5b2c}.hintbar__more{font:inherit;color:var(--ink);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.hintbar__how{display:block;max-width:980px;margin:6px auto 0}.home{height:100%;overflow-y:auto;background:var(--bg)}.home__inner{max-width:1120px;margin:0 auto;padding:28px 28px 48px;display:flex;flex-direction:column;gap:22px}.herob{position:relative;overflow:hidden;border-radius:12px;padding:28px 30px;min-height:188px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:#fff;background:linear-gradient(104deg,#7a2d13,#b0421c 42%,#d9793a 78%,#e8a35c)}.herob__grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgb(255 255 255 / .1) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .1) 1px,transparent 1px);background-size:34px 34px}.herob__rings{position:absolute;right:210px;top:-70px;width:300px;height:300px;border:1px solid rgb(255 255 255 / .28);border-radius:999px;pointer-events:none}.herob__rings:after{content:"";position:absolute;left:44px;top:96px;width:190px;height:190px;border:1px dashed rgb(255 255 255 / .34)}.herob__text{position:relative;display:flex;flex-direction:column;gap:8px;max-width:560px}.herob__eyebrow{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#ffffffb8}.herob__greet{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:40px;line-height:1;letter-spacing:.01em}.herob__sub{margin:0;font-size:14px;line-height:1.6;color:#ffffffd6;text-wrap:pretty}.herob__art{position:relative;flex:none;width:258px;height:150px;border-radius:8px;overflow:hidden;border:1px solid rgb(255 255 255 / .32);box-shadow:0 10px 24px #0000002e}.herob__art svg{display:block;width:100%;height:100%}.doors{display:grid;grid-template-columns:1fr 1fr;gap:18px}.doors .door{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;min-height:244px;padding:22px;border-radius:12px;text-decoration:none;box-shadow:0 10px 26px #1f29331f;transition:transform .12s ease}.door__eyebrow{margin-top:auto}.doors .door:hover{transform:translateY(-2px)}.door--design{color:#fff;background:linear-gradient(160deg,#16232e,#20384a 55%,#2f6f9a 130%)}.door--val{color:var(--ink);background:linear-gradient(160deg,#f7f0dc,#f0e2c0,#e6cf9c 120%);border:1px solid #ddcfa9}.door__art{position:absolute;right:16px;top:16px;width:170px;height:116px;border-radius:8px;overflow:hidden;opacity:.9;border:1px solid rgb(120 205 255 / .28)}.door__art svg{display:block;width:100%;height:100%}.door__eyebrow{position:relative;font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.door--design .door__eyebrow{color:#78cdffe6}.door--val .door__eyebrow{color:#2f6b45}.door__title{position:relative;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:40px;line-height:.98;letter-spacing:.02em}.door__desc{position:relative;max-width:290px;font-size:13.5px;line-height:1.6;text-wrap:pretty}.door--design .door__desc{color:#ffffffbd}.door--val .door__desc{color:#5c5a4e}.door__foot{position:relative;margin-top:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.door__chips{display:flex;flex-wrap:wrap;gap:6px}.door__chip{font-family:IBM Plex Mono,monospace;font-size:11px;border-radius:5px;padding:4px 9px;white-space:nowrap}.door--design .door__chip{color:#fff;background:#ffffff1f;border:1px solid rgb(255 255 255 / .18)}.door--design .door__chip--live{color:#7bcdff;background:#78cdff1f;border-color:#78cdff4d}.door--val .door__chip{color:#4c5357;background:#ffffffb3;border:1px solid #ddcfa9}.door__go{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:999px;font-size:16px;font-weight:600}.door--design .door__go{background:#fff;color:#16232e}.door--val .door__go{background:#1f2933;color:#fff}.barart{position:absolute;right:24px;top:22px;display:flex;align-items:flex-end;gap:6px;width:96px;height:108px}.barart>span{flex:1;background:#4c8a5e8c;border-radius:2px 2px 0 0}.barart>span:last-child{background:#4c8a5e}.resume{display:flex;flex-direction:column;gap:10px}.resume__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.resume__label{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:#9a917f}.resume__all{font-size:12.5px;font-weight:600;color:var(--danger);text-decoration:none;white-space:nowrap}.resume__all:hover{text-decoration:underline}.resume__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rcard{display:flex;gap:12px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--ink);box-shadow:0 2px #ece7db}.rcard:hover{border-color:var(--accent)}.rcard__thumb{flex:none;width:64px;height:52px;border-radius:5px;overflow:hidden;border:1px solid var(--line);background:var(--label-bg)}.rcard__thumb svg{display:block;width:100%;height:100%}.rcard__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.rcard__name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rcard__meta{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:#9a917f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rcard__prog{display:flex;align-items:center;gap:6px}.rcard__bar{flex:1;height:3px;border-radius:2px;background:#ece7db;overflow:hidden}.rcard__bar>span{display:block;height:100%;background:var(--danger)}.rcard__step{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--danger);white-space:nowrap}.rcard__tag{align-self:flex-start;font-family:IBM Plex Mono,monospace;font-size:10px;color:#2f6b45;background:#4c8a5e1f;border:1px solid rgb(76 138 94 / .3);border-radius:4px;padding:2px 6px}.paintlink{display:flex;align-items:center;gap:16px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px #ece7db;color:var(--ink);text-decoration:none}.paintlink:hover{border-color:var(--accent)}.paintlink__chips{flex:none;display:flex;width:72px;height:44px;border-radius:7px;overflow:hidden;border:1px solid rgb(0 0 0 / .1)}.paintlink__chips span{flex:1}.paintlink__chips--cube{display:grid;place-items:center;background:#1f2933;color:#7bcdff}.paintlink__chips--cube svg{width:30px;height:30px}.paintlink--locked{opacity:.62}.paintlink__lock{flex:none;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--danger)}.paintlink__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.paintlink__title{font-weight:700;font-size:16px}.paintlink__sub{font-size:13px;color:#6b6a60}.paintlink__go{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#1f2933;color:#fff}@media(max-width:880px){.doors,.resume__grid{grid-template-columns:1fr}.herob__art{display:none}.door__art{opacity:.55}}.home__requests{display:block;padding:11px 16px;border-radius:8px;border:1px solid var(--step);background:#fbeee8;color:var(--step);font-size:14px;text-decoration:none}.home__requests:hover{background:#f7e0d5}.subs{height:100%;overflow-y:auto;background:var(--bg);padding:34px 30px 48px}.subs__inner{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.subs__inner--narrow{max-width:660px}.subcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.subcard--ok{border-color:#cfe4d6}.subcard--wait{border-color:#e8dcc2}.subcard__badge{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--danger);background:#fdf1ee;border:1px solid #f0d2c9;border-radius:999px;padding:3px 10px}.subcard__badge--ok{color:#2f6f4a;background:#eef6f0;border-color:#cfe4d6}.subcard__badge--wait{color:#8a6320;background:#fbf4e6;border-color:#ecdcbc}.subs__title{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:30px;line-height:1.05;letter-spacing:.01em}.subs__lede{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink);max-width:56ch}.subs__small{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted);max-width:60ch}.subs__mono{font-family:IBM Plex Mono,monospace;font-size:.94em}.subhead{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:10px 0 2px}.subhead__eyebrow{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.subhead__title{margin:0;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:38px;line-height:1.03;letter-spacing:.01em}.subhead__lede{margin:0;font-size:14.5px;line-height:1.55;color:var(--muted);max-width:56ch}.subtoggle{align-self:center;display:inline-flex;gap:3px;padding:3px;background:#fff;border:1px solid var(--line);border-radius:999px}.subtoggle__opt{font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);background:none;border:0;border-radius:999px;padding:8px 20px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.subtoggle__opt:hover{color:var(--ink)}.subtoggle__opt.is-on{color:#fff;background:var(--draw-1)}.subtoggle__save{font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#2f6f4a;background:#eef6f0;border-radius:999px;padding:3px 8px}.subtoggle__opt.is-on .subtoggle__save{color:#d8efe0;background:#ffffff24}.subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}.subplan{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 24px 22px;display:flex;flex-direction:column;gap:7px}.subplan--pop{background:var(--draw-1);border-color:var(--draw-1);color:#fff}.subplan.is-chosen{border-color:var(--step);box-shadow:0 0 0 2px #b0421c38}.subplan__ribbon{position:absolute;top:-9px;right:20px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#fff;background:var(--step);border-radius:999px;padding:4px 11px}.subplan__name{font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:21px;letter-spacing:.02em;text-transform:uppercase}.subplan__blurb{font-size:13px;color:var(--muted);margin-bottom:6px}.subplan--pop .subplan__blurb{color:#fff9}.subplan__price{font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:44px;line-height:1;letter-spacing:.01em}.subplan__per{font-size:16px;font-weight:500;color:var(--muted);margin-left:8px}.subplan--pop .subplan__per{color:#fff9}.subplan__note{font-size:12.5px;line-height:1.45;color:var(--muted);min-height:2.9em}.subplan--pop .subplan__note{color:#ffffff9e}.subplan__seats{align-self:flex-start;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.03em;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:4px 11px}.subplan--pop .subplan__seats{color:#fff;background:#ffffff1a;border-color:#ffffff2e}.subplan__list{margin:10px 0 18px;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px;font-size:13.5px;line-height:1.4;color:var(--ink);flex:1 1 auto}.subplan--pop .subplan__list{color:#ffffffd6}.subplan__list li{display:flex;gap:9px}.subplan__list li:before{content:"—";flex:none;color:var(--accent)}.subplan--pop .subplan__list li:before{color:var(--draw-edge)}.subplan__pick{font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 22px;cursor:pointer;text-align:center}.subplan__pick:hover{border-color:var(--ink)}.subplan--pop .subplan__pick{color:#fff;background:var(--step);border-color:var(--step)}.subplan--pop .subplan__pick:hover{background:var(--step-2);border-color:var(--step-2)}.subplan__pick.is-chosen,.subplan--pop .subplan__pick.is-chosen{color:#fff;background:var(--step);border-color:var(--step)}.subpick{display:flex;flex-direction:column;gap:14px}.subpick__bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid var(--step);border-left:4px solid var(--step);border-radius:12px;padding:13px 18px}.subpick__what{flex:1 1 240px;display:flex;flex-direction:column;gap:2px}.subpick__plan{font-weight:600;font-size:14.5px}.subpick__sub{font-size:12.5px;color:var(--muted)}.subpick__price{font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:26px;letter-spacing:.01em}.subpick__change{font:inherit;font-size:13px;color:var(--muted);background:none;border:1px solid var(--line);border-radius:999px;padding:7px 16px;cursor:pointer}.subpick__change:hover{color:var(--ink);border-color:var(--ink)}.subfaq{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px 22px}.subfaq__title{margin:0 0 14px;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:19px;letter-spacing:.01em}.subfaq__list{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 26px}.subfaq__row dt{font-size:13.5px;font-weight:600;margin-bottom:4px}.subfaq__row dd{margin:0;font-size:12.5px;line-height:1.55;color:var(--muted)}.subs__foot{align-self:center;text-align:center;margin-top:2px}.subalert{background:#fdf1ee;border:1px solid #f0d2c9;border-radius:12px;padding:13px 16px;font-size:13.5px;line-height:1.55;color:var(--danger)}.subpay{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px}.subpay__title,.subform__title{margin:0 0 12px;font-family:Saira Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:19px;letter-spacing:.01em}.subpay__body{display:flex;align-items:flex-start;gap:22px;flex-wrap:wrap}.subpay__qr{width:148px;height:148px;object-fit:contain;border:1px solid var(--line);border-radius:10px;padding:6px;background:#fff}.subpay__rows{margin:0;flex:1 1 240px;display:flex;flex-direction:column;gap:9px}.subpay__row{display:flex;align-items:baseline;gap:12px}.subpay__row dt{width:128px;flex:none;font-size:12px;color:var(--muted)}.subpay__row dd{margin:0;font-size:14px}.subpay__mono{font-family:IBM Plex Mono,monospace;font-size:13.5px;letter-spacing:.01em}.subpay__soon{margin:0;font-size:13.5px;line-height:1.55;color:var(--muted);max-width:58ch}.subform{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px 22px;display:flex;flex-direction:column;gap:12px}.subform__hint{margin:-6px 0 2px;font-size:12.5px;line-height:1.5;color:var(--muted);max-width:62ch}.subform__row{display:flex;gap:12px;flex-wrap:wrap}.subfield{display:flex;flex-direction:column;gap:5px;flex:1 1 160px}.subfield--wide{flex:2 1 260px}.subfield__label{font-size:12px;color:var(--muted)}.subfield__input{font:inherit;font-size:14px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fff;color:var(--ink)}.subfield__input:focus{outline:2px solid var(--accent);outline-offset:-1px}.subform__error{margin:0;font-size:13px;color:var(--danger)}.subfield__fixed{font-family:IBM Plex Mono,monospace;font-size:14px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:var(--bg);color:var(--ink)}.subbtn{align-self:flex-start;font:inherit;font-size:14px;font-weight:600;color:#fff;background:var(--step);border:1px solid var(--step);border-radius:999px;padding:10px 22px;cursor:pointer}.subbtn:hover:not(:disabled){background:var(--step-2);border-color:var(--step-2)}.subbtn:disabled{opacity:.5;cursor:default}.subbtn--go{text-decoration:none;display:inline-block;margin-top:4px}.subbanner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid #f0d2c9;border-left:4px solid var(--danger);border-radius:12px;padding:14px 18px}.subbanner--soon{border-color:#ecdcbc;border-left-color:#c99a3a}.subbanner__text{flex:1 1 320px;display:flex;flex-direction:column;gap:3px}.subbanner__title{font-weight:600;font-size:14.5px}.subbanner__sub{font-size:12.5px;color:var(--muted)}.subbanner__go{font:inherit;font-size:13px;font-weight:600;text-decoration:none;color:#fff;background:var(--step);border-radius:999px;padding:8px 18px;white-space:nowrap}.subbanner__go:hover{background:var(--step-2)}.door--locked{opacity:.62}.door__chip--lock{color:var(--danger)}@media(max-width:720px){.subgrid,.subfaq__list{grid-template-columns:minmax(0,1fr)}.subplan__note{min-height:0}.subplan__list{margin-bottom:14px}}@media(max-width:560px){.subs{padding:22px 16px 36px}.subcard,.subpay,.subform,.subfaq,.subplan{padding-left:18px;padding-right:18px}.subs__title,.subhead__title{font-size:25px}.subtoggle__opt{padding:8px 14px}.subpick__bar{padding:13px 15px}}
