@font-face{font-family:Mise Approx;src:local(Helvetica Neue),local(Helvetica),local(Arial),local(Roboto);unicode-range:U+2248}:root{--paper:#f4efe4;--paper-raised:#fbf8f1;--desk:#f4f1ea;--ink:#27231f;--graphite:#5b5349;--pencil:#d5ccbc;--pencil-strong:#8c8272;--wash:#2d6489;--wash-tint:#dce6ec;--wash-tint-strong:#c9d9e4;--red-pencil:#b02a20;--hatch:#27231f21;--ink-wash:#27231f0d;--font-hand:"Architects Daughter", "Bradley Hand", cursive;--font-sans:"Work Sans", system-ui, sans-serif;--font-mono:"Mise Approx", "JetBrains Mono", ui-monospace, "SF Mono", monospace;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:72px;--r-1:2px;--r-2:3px;--r-3:4px;--line:1px;--line-strong:1.5px;--lift:0 1px 0 #27231f0d, 0 10px 24px -14px #27231f59;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .15 0 0 0 0 .13 0 0 0 0 .1 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--hatching:repeating-linear-gradient(-45deg, transparent 0 6px, var(--hatch) 6px 7px);--ease-out:cubic-bezier(.2, 0, 0, 1);--draw:.2s;--press:.15s}:is(.home,.editor,.fp-setup,.app-status){color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}:is(.home,.editor,.fp-setup,.app-status) ::selection{background:var(--wash-tint-strong);color:var(--ink)}:is(.home,.editor,.fp-setup,.app-status) :focus-visible{outline:2px solid var(--wash);outline-offset:2px}:is(.home,.editor,.fp-setup,.app-status) a{color:var(--wash);text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px;transition:text-decoration-color .12s ease-out}@media (hover:hover){:is(.home,.editor,.fp-setup,.app-status) a:hover{text-decoration-color:currentColor}}:is(.home,.editor,.fp-setup) button{border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation;transition:background-color .12s ease-out, border-color .12s ease-out, color .12s ease-out, scale var(--press) ease-out;justify-content:center;align-items:center;gap:6px;padding:5px 10px;display:inline-flex;position:relative}@media (hover:hover){:is(.home,.editor,.fp-setup) button:hover:not(:disabled){border-color:var(--ink)}}@media (prefers-reduced-motion:no-preference){:is(.home,.editor,.fp-setup) button:active:not(:disabled){scale:.96}}:is(.home,.editor,.fp-setup) button:disabled{background:var(--hatching), var(--paper);color:var(--graphite);cursor:not-allowed;border-style:dashed}:is(.home,.editor,.fp-setup) button.primary{border-color:var(--ink);background:var(--ink);color:var(--paper-raised);font-weight:500}@media (hover:hover){:is(.home,.editor,.fp-setup) button.primary:hover:not(:disabled){background:color-mix(in srgb, var(--ink) 84%, var(--paper))}}:is(.editor,.fp-setup) button[aria-pressed=true]{background:var(--wash-tint);color:var(--ink);border-color:#0000}:is(.editor,.fp-setup) :is(button[aria-pressed=true],.popover-button[aria-expanded=true]):after{content:"";border:var(--line-strong) solid var(--ink);border-radius:var(--r-2);filter:url(#pencil);pointer-events:none;position:absolute;inset:-1px}:is(.editor,.fp-setup) :is(button[aria-pressed=true],.popover-button[aria-expanded=true]):nth-child(2n):after{filter:url(#pencil-2)}.editor :is(.tabs,.parts,.views) button{white-space:nowrap;padding:3px 8px;font-size:13px}.editor :is(.tabs,.parts,.views) button:not([aria-pressed=true]){color:var(--graphite);background:0 0;border-color:#0000}@media (hover:hover){.editor :is(.tabs,.parts,.views) button:not([aria-pressed=true]):hover{background:var(--ink-wash);color:var(--ink);border-color:#0000}}:is(.editor,.fp-setup) .icon-button{width:28px;height:28px;color:var(--graphite);background:0 0;border-color:#0000;place-items:center;padding:0;display:inline-grid}@media (hover:hover){:is(.editor,.fp-setup) .icon-button:hover:not(:disabled){background:var(--ink-wash);color:var(--ink);border-color:#0000}}:is(.editor,.fp-setup) .icon-button:disabled{opacity:.4;background:0 0;border-color:#0000}:is(.editor,.fp-setup) :is(input[type=search],input[type=number],input:not([type]),select){box-sizing:border-box;border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);min-width:0;color:var(--ink);font:inherit;padding:5px 8px}:is(.editor,.fp-setup) :is(input,select):focus-visible{outline-offset:0;border-color:var(--wash)}:is(.editor,.fp-setup) ::placeholder{color:var(--graphite);opacity:1}:is(.editor,.fp-setup) :is(.mono,.price,.dims){font-family:var(--font-mono);font-variant-numeric:tabular-nums}:is(.home,.editor,.fp-setup) .empty{padding:var(--s-4);border:var(--line) dashed var(--pencil-strong);border-radius:var(--r-3);background:var(--hatching), var(--paper-raised);color:var(--graphite);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}:is(.home,.editor,.fp-setup) .empty b{color:var(--ink);font:400 18px/1.3 var(--font-hand);margin-bottom:2px;display:block}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-status{box-sizing:border-box;min-height:100%;padding:var(--s-8) max(var(--s-4), (100% - 720px) / 2);background:var(--grain), var(--paper)}.app-status h1{margin:0 0 var(--s-2);font:400 32px/1.2 var(--font-hand)}.app-status p{max-width:52ch;margin:0 0 var(--s-4);color:var(--graphite);line-height:1.5}.home{box-sizing:border-box;background:var(--grain), var(--paper);grid-template-rows:auto 1fr auto;min-height:100%;font-size:15px;display:grid}.home-intro hgroup{margin-bottom:var(--s-4)}.home-intro h1{font:400 64px/1 var(--font-hand);letter-spacing:-.01em;margin:0}.home-intro .tagline{margin:var(--s-2) 0 0;font:400 22px/1.3 var(--font-hand)}.home-intro p{max-width:34ch;color:var(--graphite);text-wrap:pretty;margin:0;font-size:16px;line-height:1.55}.landing{align-items:center;gap:var(--s-7) var(--s-8);padding:var(--s-8) max(var(--s-6), (100% - 1240px) / 2) var(--s-5);grid-template-rows:1fr auto;grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.home a.cta{align-items:center;gap:var(--s-2);margin-top:var(--s-6);border:var(--line) solid var(--ink);border-radius:var(--r-2);background:var(--ink);color:var(--paper-raised);transition:background-color .12s ease-out, scale var(--press) ease-out;padding:10px 16px 10px 18px;font-size:16px;font-weight:500;text-decoration:none;display:inline-flex}.cta .icon{transition:translate .16s var(--ease-out)}@media (hover:hover){.home a.cta:hover{background:color-mix(in srgb, var(--ink) 84%, var(--paper))}.home a.cta:hover .icon{translate:2px}}@media (prefers-reduced-motion:no-preference){.home a.cta:active{scale:.97}}.landing-demo{margin:0}.home a.landing-rooms{border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--paper-raised);color:var(--ink);padding:6px;text-decoration:none;transition:border-color .12s ease-out;display:block}.landing-rooms ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.landing-rooms li{position:relative}.landing-rooms :is(img,video){border-radius:var(--r-2);outline:var(--line) solid var(--pencil);outline-offset:-1px;width:100%;height:auto;transition:opacity .15s ease-out;display:block}.room-label{border-radius:var(--r-1);background:var(--paper-raised);box-shadow:var(--lift);color:var(--graphite);opacity:0;transition:opacity .15s ease-out, translate .2s var(--ease-out);pointer-events:none;padding:3px 7px 4px;font-size:12px;line-height:1.35;display:grid;position:absolute;inset:auto 6px 6px;translate:0 3px}.room-label b{color:var(--ink);font:400 15px/1.2 var(--font-hand)}@media (hover:hover){.home a.landing-rooms:hover{border-color:var(--ink)}.landing-rooms li:hover .room-label{opacity:1;translate:0}.landing-rooms ul:hover li:not(:hover) :is(img,video){opacity:.72}}@media (prefers-reduced-motion:reduce){.room-label{translate:none}}.landing-demo figcaption{margin-top:var(--s-3);padding-top:var(--s-3);border-top:var(--line) solid var(--pencil);gap:2px;display:grid}.landing-title{font:400 20px/1.2 var(--font-hand)}.home:not(.landing){place-content:start center;gap:var(--s-6);padding:var(--s-6) var(--s-6) var(--s-5);grid-template-columns:minmax(0,760px)}.home-top{align-items:center;display:flex}.home a.wordmark{color:var(--ink);font:400 32px/1 var(--font-hand);text-decoration:none}.home main.home-scans{gap:var(--s-5);flex-direction:column;padding:0;display:flex}.home-heading{align-items:center;gap:var(--s-3);font:400 22px/1.2 var(--font-hand);margin:0;display:flex}.home-heading:after{content:"";height:var(--line);background:var(--pencil);flex:1}.scan{align-items:start;column-gap:var(--s-5);padding:var(--s-5) var(--s-5) var(--s-3) var(--s-4);border:var(--line) solid var(--pencil);border-radius:var(--r-3);background:var(--paper-raised);grid-template-columns:132px minmax(0,1fr);display:grid}.scan>:not(.plan){grid-column:2}.scan header{justify-content:space-between;align-items:flex-start;gap:var(--s-4);margin-bottom:var(--s-2);display:flex}.scan h3{margin:0 0 var(--s-1);letter-spacing:-.01em;text-wrap:balance;font-size:19px;font-weight:600;line-height:1.25}.scan header p{color:var(--graphite);margin:0;font-size:13px}.home button.primary{white-space:nowrap;padding:7px 14px 7px 12px}.plan{aspect-ratio:1;grid-row:1/span 3;margin:0}.plan-drawing{width:100%;height:100%;display:block;overflow:visible}.plan figcaption{box-sizing:border-box;height:100%;padding:var(--s-3);border:var(--line) dashed var(--pencil-strong);border-radius:var(--r-2);background:var(--hatching);color:var(--graphite);font:400 15px/1.2 var(--font-hand);text-align:center;place-items:center;display:grid}.plan-wall{fill:none;stroke:var(--ink);stroke-width:1.5px;stroke-linecap:square}.plan-gap{stroke:var(--paper-raised);stroke-width:4px}.plan-window{stroke:var(--ink);stroke-width:1px}.plan-swing{fill:none;stroke:var(--graphite);stroke-width:1px;stroke-dasharray:2 1.5}.plan-original{fill:var(--ink-wash);stroke:var(--pencil-strong);stroke-width:1px}.plan-dims path{fill:none;stroke:var(--graphite);stroke-width:1px}.plan-dims text{fill:var(--graphite);font:9px var(--font-mono)}.designs{margin:0 calc(-1 * var(--s-2));padding:0;list-style:none}.designs li+li{border-top:var(--line) solid var(--pencil)}.home .designs a{align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-2);border-radius:var(--r-2);color:var(--ink);grid-template-columns:minmax(0,1fr) auto 16px;text-decoration:none;transition:background-color .12s ease-out;display:grid}.designs .name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.designs .meta{color:var(--graphite);font-variant-numeric:tabular-nums;font-size:13px}.designs a>.icon{color:var(--graphite);transition:translate .16s var(--ease-out), color .12s ease-out}.designs a:focus-visible{background:var(--ink-wash)}@media (hover:hover){.designs a:hover{background:var(--ink-wash)}.designs a:hover>.icon{color:var(--ink);translate:2px}}.home .empty{margin:var(--s-1) 0 var(--s-2)}.home .error{margin:0 0 var(--s-2);color:var(--red-pencil)}.by-claude{color:var(--graphite);margin-right:6px}.by-claude .icon{vertical-align:-2px}.home-error{justify-content:space-between;align-items:flex-end;gap:var(--s-4);padding:var(--s-4);border:var(--line) dashed var(--red-pencil);border-radius:var(--r-3);background:var(--paper-raised);display:flex}.home-error p{max-width:56ch;color:var(--graphite);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.home-error b{color:var(--red-pencil);font:400 18px/1.3 var(--font-hand);margin-bottom:2px;display:block}.home-error button{flex:none}.home-footer{margin-top:var(--s-5);padding-top:var(--s-4);border-top:var(--line) solid var(--pencil);grid-column:1/-1;align-self:end}.home-footer p{max-width:96ch;color:var(--graphite);text-wrap:pretty;margin:0;font-size:12px;line-height:1.6}.home .home-footer a{color:inherit}.scan.loading{row-gap:var(--s-3);padding-bottom:var(--s-5)}.bone.plan{border-radius:var(--r-2)}.bone{border:var(--line) dashed var(--pencil-strong);border-radius:var(--r-2);background:var(--hatching);animation:1.2s ease-in-out infinite alternate bone-pulse;display:block}.bone.title{width:40%;height:24px;margin-bottom:var(--s-1)}.bone.row{height:40px}@keyframes bone-pulse{0%{opacity:.4}}@media (width<=800px){.landing{align-items:start;gap:var(--s-6);padding:var(--s-7) var(--s-4) var(--s-5);grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr)}.home:not(.landing){gap:var(--s-5);padding:var(--s-5) var(--s-4)}.home-intro h1{font-size:52px}.home a.cta{margin-top:var(--s-5)}.landing-rooms ul{gap:4px}.scan{column-gap:var(--s-4);padding:var(--s-4) var(--s-4) var(--s-2);grid-template-columns:88px minmax(0,1fr)}.plan{grid-row:1}.scan>:is(.designs,.empty,.error){grid-column:1/-1}.home-error{flex-direction:column;align-items:flex-start}.scan.loading>.bone.plan{grid-row:1/span 3}.scan>.designs{margin-top:var(--s-3)}.scan header{gap:var(--s-3);flex-direction:column}.scan h3{font-size:17px}.home .designs a{gap:2px var(--s-3);grid-template:"name icon""meta icon"/minmax(0,1fr) 16px}.designs .name{grid-area:name}.designs .meta{grid-area:meta}.designs a>.icon{grid-area:icon}}@media (prefers-reduced-motion:reduce){.bone{animation:none}}.home-heading-row{align-items:center;gap:var(--s-4);display:flex}.home-heading-row .home-heading{flex:1}.scan-tag{color:var(--wash)}.import-dialog{box-sizing:border-box;width:min(560px,100vw - 32px);max-height:76vh;padding:var(--s-4) var(--s-5) var(--s-5);border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--grain), var(--paper-raised);color:var(--ink);box-shadow:var(--lift);font:14px/1.5 var(--font-sans);margin-top:12vh}.import-dialog::backdrop{background:0 0}.import-dialog>header{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3);display:flex}.import-dialog h2{font:400 24px/1.2 var(--font-hand);margin:0}.import-part{border:0;min-width:0;margin:0;padding:0}.import-field{gap:var(--s-1);margin-bottom:var(--s-3);display:grid}.import-field>span:first-child{font-weight:600}.import-field .muted,.import-dialog .muted{color:var(--graphite);font-size:13px}.import-dialog input{box-sizing:border-box;border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);color:var(--ink);font:inherit;padding:6px 8px}.import-dialog .error{margin:0 0 var(--s-3);color:var(--red-pencil)}.import-dialog footer{justify-content:flex-end;gap:var(--s-2);display:flex}.home .icon-button{width:28px;height:28px;color:var(--graphite);background:0 0;border-color:#0000;place-items:center;padding:0;display:inline-grid}@media (hover:hover){.home .icon-button:hover:not(:disabled){background:var(--ink-wash);color:var(--ink);border-color:#0000}}.home .icon-button:disabled{opacity:.4;background:0 0;border-color:#0000}.library-results{max-height:min(52vh,440px);margin:0 0 var(--s-3);border-block:var(--line) solid var(--pencil);padding:0;list-style:none;overflow-y:auto}.library-results li{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;display:flex}.library-results li+li{border-top:var(--line) solid var(--pencil)}.home button.library-pick{justify-content:stretch;gap:var(--s-3);min-width:0;padding:var(--s-1) var(--s-2) var(--s-1) var(--s-1);text-align:left;background:0 0;border-color:#0000;flex:1;grid-template-columns:56px minmax(0,1fr) 16px;display:grid}.home button.library-pick:disabled{opacity:.55;background:0 0;border-style:solid;border-color:#0000}@media (hover:hover){.home button.library-pick:hover:not(:disabled){background:var(--ink-wash);border-color:#0000}.library-pick:hover:not(:disabled) .icon{color:var(--ink);translate:2px}}.library-pick .icon{color:var(--graphite);transition:translate .16s var(--ease-out), color .12s ease-out}.library-room{gap:1px;min-width:0;display:grid}.library-room .school{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.library-room .muted{color:var(--graphite);font-size:13px}.library-room .hint{color:var(--wash);font-size:12px}.home button.library-empty{flex:none;font-size:13px}.library-thumb{aspect-ratio:1;border:var(--line) solid var(--pencil);border-radius:var(--r-2);background:#fff;width:56px;display:block;overflow:hidden}.library-thumb img{object-fit:cover;width:100%;height:100%;display:block}.library-thumb .plan{width:100%;height:100%}.library-thumb .plan figcaption{border:0;font-size:11px}.home .library-none{margin:0 0 var(--s-3)}.import-dialog .library-results{max-height:min(30vh,272px);margin-bottom:0}.library-part{margin-top:var(--s-4);padding-top:var(--s-4);border-top:var(--line) solid var(--pencil)}.home button.drop-zone{justify-items:center;gap:var(--s-1);width:100%;margin-bottom:var(--s-3);padding:var(--s-5) var(--s-4);border:var(--line-strong) dashed var(--pencil-strong);border-radius:var(--r-3);background:var(--paper);text-align:center;display:grid}.drop-zone .drop-title{text-wrap:balance;font-weight:500}.home button.drop-zone.over{border-color:var(--wash);background:var(--wash-tint)}.home button.drop-zone[aria-disabled=true]{background:var(--hatching), var(--paper);color:var(--graphite);cursor:not-allowed}@media (hover:hover){.home button.drop-zone:hover:not([aria-disabled=true]){border-color:var(--ink)}}.home button.drop-zone:active{scale:none}.drop-files{margin:0 0 var(--s-3);border-block:var(--line) solid var(--pencil);padding:0;list-style:none}.drop-files li{align-items:center;gap:var(--s-3);padding:var(--s-1) 0;grid-template-columns:48px minmax(0,1fr) auto 28px;display:grid}.drop-files li+li{border-top:var(--line) solid var(--pencil)}.drop-kind{color:var(--graphite);font-size:12px}.drop-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.drop-files .muted{font-variant-numeric:tabular-nums}.import-steps{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.import-steps li{padding-left:22px;position:relative}.import-steps li:before{content:"";border:var(--line-strong) solid var(--pencil-strong);border-radius:50%;width:10px;height:10px;position:absolute;top:5px;left:2px}.import-steps li.todo{color:var(--graphite)}.import-steps li.running:before{border-color:var(--ink);border-top-color:#0000;animation:.9s linear infinite step-spin}.import-steps li.done:before{content:"✓";color:var(--wash);border:0;font-weight:600;line-height:20px;top:0}.import-steps li.note{padding-left:0}.import-steps li.note:before{content:none}.step-label{font-variant-numeric:tabular-nums}@keyframes step-spin{to{rotate:1turn}}@media (prefers-reduced-motion:reduce){.import-steps li.running:before{border-top-color:var(--ink);animation:none}}.generate{flex-direction:column;gap:8px;display:flex}.generate p{margin:0}.generate progress{width:100%;accent-color:var(--wash)}.generate [role=alert]{color:var(--red-pencil)}.inspector .tool{gap:var(--s-2);margin:0 0 var(--s-3);flex-direction:column;display:flex}.inspector .tool p{margin:0}.inspector .tool>p.muted{font-size:12px}.inspector .fields{align-items:center;gap:6px var(--s-2);color:var(--graphite);flex-wrap:wrap;font-size:13px;display:flex}.inspector .fields input[type=number]{width:64px;color:var(--ink);font-family:var(--font-mono);padding:4px 6px;font-size:13px}.inspector .fields select{color:var(--ink);flex:1}.inspector .fields button{font-family:var(--font-mono);gap:4px;padding:3px 8px 3px 6px;font-size:12.5px}.inspector .tool input[type=search]{width:100%}.inspector .picks{margin:0 0 var(--s-3);flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.inspector .pick{align-items:center;gap:var(--s-3);border-color:var(--pencil);text-align:left;grid-template-columns:48px minmax(0,1fr);width:100%;padding:6px;display:grid}.inspector .pick img{box-sizing:border-box;border-radius:var(--r-1);background:var(--paper);object-fit:contain;width:48px;height:48px}.inspector .pick>span{flex-direction:column;gap:2px;min-width:0;display:flex}.inspector .pick .title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.inspector .pick .muted{font-family:var(--font-mono);font-size:11.5px}.inspector .fit-label{border-radius:var(--r-1);align-self:flex-start;margin-top:2px;padding:0 6px;font-size:11px;font-weight:600}.inspector .fit-label.fits{background:var(--wash-tint);color:var(--ink)}.inspector .fit-label.closest{background:var(--ink-wash);color:var(--graphite)}.inspector h3{align-items:center;gap:var(--s-2);margin:var(--s-5) 0 var(--s-2);font:400 18px/1.2 var(--font-hand);display:flex}.inspector h3:after{content:"";height:var(--line);background:var(--pencil);flex:1}.inspector .parts{margin:0 -6px var(--s-2);flex-wrap:wrap;gap:2px;display:flex}.inspector .swatches{gap:var(--s-2);grid-template-columns:repeat(6,1fr);display:grid}.inspector .swatch{aspect-ratio:1;border:var(--line) solid var(--hatch);border-radius:var(--r-1);padding:0}@media (hover:hover){.inspector .swatch:hover:not(:disabled){border-color:var(--ink)}}.inspector .swatch[aria-pressed=true]{border-color:#0000}.inspector .swatch[aria-pressed=true]:after{inset:-4px}.inspector .color-choice .actions{justify-content:space-between;align-items:center}.inspector .picker{align-items:center;gap:var(--s-2);cursor:pointer;font-size:13px;display:flex}.inspector .picker input{border:var(--line) solid var(--pencil-strong);border-radius:var(--r-1);cursor:pointer;background:0 0;width:28px;height:28px;padding:0}.editor .refine-bar{z-index:1;justify-content:center;place-self:end center;align-items:center;gap:var(--s-2);box-sizing:border-box;max-width:calc(100% - 2 * var(--s-3));margin-bottom:var(--s-3);pointer-events:none;flex-wrap:wrap;grid-area:view;padding-left:120px;display:flex}.editor .refine-bar>*{pointer-events:auto}.editor .refine-box{align-items:center;gap:var(--s-2);border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--grain), var(--paper-raised);width:min(460px,100%);padding:4px 4px 4px 10px;display:flex}.editor .refine-box>.icon{color:var(--graphite);flex:none}.editor .refine-box:focus-within{border-color:var(--wash)}.editor .refine-box:focus-within>.icon{color:var(--wash)}.editor .refine-box input{background:0 0;border:0;flex:1;padding:4px 0}.editor .refine-box input:focus-visible{outline:none}.editor .refine-box button{flex:none}.editor .refine-bar .replay{border-color:var(--pencil-strong);padding:5px 10px 5px 8px;font-size:13px}.editor .refine-bar .replay .icon{color:var(--graphite)}.editor .refine-bar .progress{color:var(--graphite);font-size:12px}.editor .refine-bar .error{border-radius:var(--r-2);background:var(--paper-raised);color:var(--red-pencil);text-align:center;flex-basis:100%;margin:0;padding:4px 8px;font-size:13px}@media (width<=760px){.editor .refine-bar{padding-left:0}}.editor .generate-button .icon{color:var(--graphite);transition:color var(--press) var(--ease-out)}@media (hover:hover){.editor .generate-button:hover .icon{color:var(--ink)}}.brief-dialog{box-sizing:border-box;width:min(760px,100vw - 32px);max-height:calc(100vh - 48px);padding:var(--s-4) var(--s-5) var(--s-5);border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--grain), var(--paper-raised);color:var(--ink);box-shadow:var(--lift);overscroll-behavior:contain;font-size:14px;overflow-y:auto}.brief-dialog::backdrop{background:0 0}@media (prefers-reduced-motion:no-preference){.brief-dialog[open]{animation:brief-in var(--draw) var(--ease-out)}}@keyframes brief-in{0%{opacity:0;transform:translateY(6px)}}.brief-dialog>header{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-1);display:flex}.brief-dialog h2{font:400 24px/1.2 var(--font-hand);margin:0}.brief-dialog form>p{max-width:62ch;margin:0 0 var(--s-4);color:var(--graphite);line-height:1.5}.brief-dialog .field{gap:var(--s-2);margin:0 0 var(--s-4);border:0;padding:0;display:grid}.brief-dialog .field>span:first-child,.brief-dialog legend{padding:0;font-weight:600}.brief-dialog legend{margin-bottom:var(--s-2)}.brief-dialog textarea,.brief-dialog .money{box-sizing:border-box;border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);transition:border-color var(--press) var(--ease-out)}.brief-dialog textarea{width:100%;padding:var(--s-2) 10px;color:var(--ink);font:inherit;resize:vertical;line-height:1.45}.brief-dialog :is(textarea,.money):focus-within{border-color:var(--wash);outline:none}.brief-dialog .chips{gap:2px var(--s-1);flex-wrap:wrap;display:flex}.editor .brief-dialog .chips button{padding:3px 8px;font-size:13px}.editor .brief-dialog .chips button:not([aria-pressed=true]){color:var(--graphite);background:0 0;border-color:#0000}@media (hover:hover){.editor .brief-dialog .chips button:not([aria-pressed=true]):hover{background:var(--ink-wash);color:var(--ink);border-color:#0000}}.brief-dialog .field-row{gap:0 var(--s-5);flex-wrap:wrap;display:flex}.brief-dialog .field-row>.field{flex:200px}.brief-dialog .budget{justify-items:start}.brief-dialog .money{padding-left:var(--s-2);color:var(--graphite);font-family:var(--font-mono);align-items:center;gap:2px;display:inline-flex}.editor .brief-dialog .money input{width:12ch;font-family:var(--font-mono);background:0 0;border:0;padding-left:2px}.brief-dialog .hint{color:var(--graphite);font-size:12px}.brief-dialog footer{justify-content:flex-end;align-items:center;gap:var(--s-2);display:flex}.editor .brief-dialog button.primary:disabled{border-color:var(--pencil-strong);background:var(--hatching), var(--paper);color:var(--graphite)}.brief-dialog .cards-step footer{margin-top:var(--s-4);justify-content:space-between;font-size:13px}.brief-dialog .error{margin:0 0 var(--s-3);color:var(--red-pencil);font-size:13px;line-height:1.45}.design-cards{gap:var(--s-3);margin:var(--s-2) 0 0;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0;list-style:none;display:grid}.design-cards>li{display:flex}@media (prefers-reduced-motion:no-preference){.design-cards>li{animation:card-in .24s var(--ease-out) both;animation-delay:calc(var(--i,0) * 60ms)}}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}}.editor .design-card{justify-content:flex-start;align-items:flex-start;gap:var(--s-2);padding:var(--s-3);border:var(--line) solid var(--pencil);border-radius:var(--r-3);background:var(--paper-raised);text-align:left;flex-direction:column;flex:1;display:flex}@media (hover:hover){.editor .design-card:hover:not(:disabled){border-color:var(--ink)}}.editor .design-card[aria-current=true]{border-color:var(--ink);background:var(--wash-tint)}.design-card h3{font:400 21px/1.2 var(--font-hand);margin:0}.design-card .rationale{-webkit-line-clamp:4;-webkit-box-orient:vertical;flex:1;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.design-cards .direction{color:var(--graphite);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:600}.design-card .swatches{gap:var(--s-1);display:flex}.design-card .swatches span{border:var(--line) solid var(--pencil-strong);border-radius:var(--r-1);width:16px;height:16px}.design-card .card-foot{justify-content:space-between;gap:2px var(--s-3);flex-wrap:wrap;width:100%;font-size:12px;display:flex}.design-card .total{font-family:var(--font-mono);font-size:13px;font-weight:500}.design-card .counts{color:var(--graphite);font-family:var(--font-mono)}.design-card .open{align-items:center;gap:var(--s-1);color:var(--wash);font-size:13px;font-weight:500;display:inline-flex}@media (prefers-reduced-motion:no-preference){.design-card .open .icon{transition:translate var(--draw) var(--ease-out)}.design-card:hover .open .icon{translate:3px}}.editor .design-card:disabled{color:var(--ink)}.editor .design-card.drawing{cursor:progress}.editor .design-card.failed{cursor:default}.design-card .plan{gap:var(--s-1);color:var(--ink);font-size:12.5px;line-height:1.45;display:grid}.design-card .plan>span{-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:4.35em;display:-webkit-box;overflow:hidden}.design-card .step{min-height:2.9em;color:var(--graphite);font-size:13px;line-height:1.45}.design-card .error{margin:0}.cards-step .seconds{font-family:var(--font-mono)}.plan-sketch{width:100%;height:160px;display:block;overflow:visible}.plan-sketch :is(.wall,.window,.swing,.original,.piece>*){vector-effect:non-scaling-stroke}.plan-sketch .floor{fill:var(--paper-raised)}.plan-sketch .wall{stroke:var(--ink);stroke-width:var(--line-strong);stroke-linecap:square}.plan-sketch .window{fill:var(--paper-raised);stroke:var(--ink);stroke-width:var(--line)}.plan-sketch .swing{fill:none;stroke:var(--pencil-strong);stroke-width:var(--line);stroke-dasharray:2 2}.plan-sketch .original{fill:none;stroke:var(--pencil-strong);stroke-width:var(--line)}.plan-sketch .original[style]{fill-opacity:.55}.plan-sketch .piece>*{fill:var(--color,var(--pencil-strong));stroke:var(--ink);stroke-width:var(--line)}.plan-sketch .piece.rug>:first-child{fill-opacity:.5;stroke:var(--pencil-strong)}.plan-sketch .piece.rug .border{fill:none;stroke:var(--pencil-strong)}.plan-sketch .piece.latest>*{stroke:var(--wash);stroke-width:var(--line-strong)}.plan-sketch .paint{stroke-linecap:butt}.plan-sketch :is(.piece,.paint){transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.plan-sketch :is(.piece,.paint){animation:plan-in var(--draw) var(--ease-out) both}}@media (prefers-reduced-motion:reduce){.plan-sketch :is(.piece,.paint){animation:plan-fade var(--draw) linear both}}@keyframes plan-in{0%{opacity:0;transform:scale(.8)}}@keyframes plan-fade{0%{opacity:0}}.controls-hint{top:var(--s-3);left:var(--s-3);max-width:calc(100% - 2 * var(--s-3));border:var(--line) solid var(--pencil);border-radius:var(--r-2);background:var(--paper-raised);color:var(--graphite);font:400 12px/1.4 var(--font-sans);pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity var(--press) ease-out;margin:0;padding:3px 8px;position:absolute}.controls-hint[data-seen]{opacity:0}.controls-hint .coarse,.walk-hint .coarse{display:none}@media (pointer:coarse){.controls-hint .fine,.walk-hint .fine{display:none}.controls-hint .coarse,.walk-hint .coarse{display:inline}}.walk-hint{bottom:calc(var(--s-3) + 5px);border-radius:var(--r-2);background:color-mix(in srgb, var(--paper-raised) 72%, transparent);color:var(--graphite);font:400 11px/1.4 var(--font-sans);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;padding:2px 8px;position:absolute;left:50%;translate:-50%}@container (width<=640px){.walk-hint{display:none}}.fit-mark{pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.pencil-loop{position:absolute;overflow:visible}.pencil-loop path{fill:none;stroke:var(--red-pencil);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.9}@media (prefers-reduced-motion:no-preference){.pencil-loop path{stroke-dasharray:1;animation:sketch-draw var(--draw) var(--ease-out) both}}.fit-note{border-radius:var(--r-2);background:var(--paper-raised);color:var(--red-pencil);font:400 15px/1.3 var(--font-hand);padding:1px 7px 2px;animation:.15s ease-out .15s both sketch-fade;position:absolute;translate:0 -100%}.fit-note div{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.sketch-dimension{border-radius:var(--r-1);background:var(--paper-raised);color:var(--ink);font:500 11px/1.6 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;padding:0 4px;display:block}.callout{--rise:44px;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.callout-leader{left:-4px;top:calc(-1 * var(--rise));height:calc(var(--rise) + 4px);transform-origin:4px var(--rise);position:absolute;overflow:visible}.callout-leader path{fill:none;stroke-linecap:round;stroke-linejoin:round}.callout-leader .halo{stroke:var(--paper-raised);stroke-opacity:.7;stroke-width:5px}.callout-leader .ink{stroke:var(--ink);stroke-width:1.25px}.callout-leader circle{fill:var(--ink);stroke:var(--paper-raised);stroke-width:1.5px}.callout[data-side=left] .callout-leader{scale:-1 1}.callout-label{top:calc(10px - var(--rise));border:var(--line) solid var(--pencil);border-radius:var(--r-2);background:var(--paper-raised);flex-direction:column;width:max-content;max-width:180px;margin:0;padding:3px 8px 4px;display:flex;position:absolute;left:60px;translate:0 -50%}.callout[data-side=left] .callout-label{text-align:right;left:auto;right:60px}.callout-title{-webkit-line-clamp:2;color:var(--ink);font:400 15px/1.25 var(--font-hand);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.callout-detail{color:var(--graphite);font:400 12px/1.5 var(--font-sans)}.callout-detail.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px}@media (prefers-reduced-motion:no-preference){.callout-leader .ink{stroke-dasharray:1;animation:sketch-draw var(--draw) var(--ease-out) both}.callout-leader .halo,.callout-leader circle{animation:sketch-fade var(--draw) ease-out both}}.callout-label{animation:.15s ease-out .12s both sketch-fade}@keyframes sketch-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes sketch-fade{0%{opacity:0}}.editor .sketch-toggle{left:var(--s-3);bottom:var(--s-3);border-color:var(--pencil-strong);padding:4px 10px 4px 8px;font-size:13px;position:absolute}.editor{background:var(--grain), var(--paper);grid-template:"top top top""catalog view inspector"minmax(0,5fr)"catalog view history"minmax(0,3fr)"foot foot foot"/280px minmax(0,1fr) 300px;height:100%;font-size:14px;line-height:1.4;display:grid}.editor:has(.inspector .picks){grid-template-rows:auto minmax(0,6fr) minmax(0,2fr) auto}.editor .muted{color:var(--graphite)}.topbar{align-items:center;gap:var(--s-3);box-sizing:border-box;min-width:0;height:44px;padding:0 var(--s-3) 0 var(--s-4);border-bottom:var(--line) solid var(--pencil);grid-area:top;display:flex}.topbar .spacer{flex:1}.editor .topbar .back{color:var(--graphite);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){.editor .topbar .back:hover{color:var(--ink)}}.topbar .scan-name{color:var(--graphite);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar .scan-name:after{content:"/";margin-left:var(--s-3);color:var(--pencil-strong)}.topbar .views{gap:2px;display:flex}.catalog{gap:var(--s-3);min-height:0;padding:var(--s-4) var(--s-4) 0;border-right:var(--line) solid var(--pencil);overscroll-behavior:contain;flex-direction:column;grid-area:catalog;display:flex;overflow-y:auto}.catalog h2{font:400 22px/1.2 var(--font-hand);margin:0}.catalog .tabs{flex-wrap:wrap;gap:2px;margin:0 -6px;display:flex}.catalog input[type=search]{width:100%}.cards{margin:0 calc(-1 * var(--s-2));flex-direction:column;padding:0;list-style:none;display:flex}.card{align-items:center;gap:var(--s-3);padding:var(--s-2);border-top:var(--line) solid var(--pencil);border-radius:var(--r-2);cursor:grab;grid-template-columns:56px minmax(0,1fr) auto;transition:background-color .12s ease-out;display:grid}.card:first-child{border-top-color:#0000}@media (hover:hover){.card:hover{background:var(--ink-wash)}}.card img{box-sizing:border-box;border:var(--line) solid var(--pencil);border-radius:var(--r-2);background:var(--paper-raised);object-fit:contain;width:56px;height:56px}.card .title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.card .price{color:var(--graphite);margin-top:2px;font-size:12px}.editor .card button{gap:2px;padding:3px 8px 3px 5px;font-size:13px}.catalog .empty{margin-bottom:var(--s-4)}.inspector{min-height:0;padding:var(--s-4) var(--s-5);border-left:var(--line) solid var(--pencil);overscroll-behavior:contain;grid-area:inspector;overflow-y:auto}.inspector .kind{margin:0 0 var(--s-1);color:var(--graphite);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.inspector h2{-webkit-line-clamp:3;margin:0 0 var(--s-2);text-wrap:pretty;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.inspector h2 .icon{color:var(--graphite);vertical-align:-1px;margin-left:6px;display:inline-block}.inspector p{margin:0 0 var(--s-2)}.inspector .dims{font-size:12.5px;line-height:1.5}.inspector .dims span{color:var(--graphite)}.inspector .price{font-size:13px}.inspector .actions{margin:var(--s-3) 0;flex-wrap:wrap;gap:6px;display:flex}.inspector .actions button{gap:4px}.inspector>.empty{margin-bottom:var(--s-4)}.editor .badge{margin:0 0 var(--s-2);border:var(--line) solid currentColor;border-radius:var(--r-1);color:var(--graphite);font:500 11px/1.5 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:4px;padding:1px 6px;display:inline-flex}.view{background:var(--desk);grid-area:view;min-height:0;position:relative;container-type:inline-size}.view .stats{position:absolute!important}.view-loading{color:var(--graphite);pointer-events:none;place-items:center;margin:0;font-size:15px;display:grid;position:absolute;inset:0}.editor-footer{padding:var(--s-1) var(--s-4);border-top:var(--line) solid var(--pencil);color:var(--graphite);box-sizing:border-box;grid-area:foot;height:24px;font-size:11px;line-height:15px}.view [data-dollhouse]{cursor:grab}.view [data-dollhouse=moving]{cursor:grabbing}.view [data-item=select]:not([data-dollhouse=moving]){cursor:pointer}.view [data-item=move]:not([data-dollhouse=moving]){cursor:move}.view [data-item=moving]{cursor:grabbing}.kept-lock{border:var(--line) solid var(--ink);border-radius:var(--r-2);background:var(--paper-raised);width:24px;height:24px;color:var(--ink);pointer-events:none;place-items:center;display:grid}@media (width<=760px){.editor{grid-template:"top""view"52dvh"inspector""history""catalog""foot"/minmax(0,1fr);height:auto;min-height:100%}.editor:has(.inspector .picks){grid-template-rows:auto 52dvh auto auto auto auto}.topbar{gap:var(--s-1) var(--s-2);height:auto;padding:6px var(--s-2) 6px var(--s-3);flex-wrap:wrap}.topbar .back .label,.topbar .scan-name{display:none}.topbar .designs-menu{flex:1}.topbar .designs-menu .popover-anchor{min-width:0}.editor .topbar .designs-menu .popover-button{max-width:100%}.topbar .spacer{flex-basis:100%;order:1}.topbar .views{order:2}.topbar .views[aria-label=View]{margin-left:auto}.catalog,.inspector,.history{border:0;border-top:var(--line) solid var(--pencil);overflow:visible}.catalog{padding-bottom:var(--s-4)}.catalog .tabs{margin:0 calc(-1 * var(--s-4));padding:0 var(--s-3);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.catalog .tabs button{flex:none}.cards{max-height:60dvh;overflow-y:auto}.inspector{padding:var(--s-4)}}.editor .icon{flex:none;display:block}.popover-anchor{position:relative}.editor .popover-button[aria-expanded=true]{background:var(--wash-tint);border-color:#0000}.popover{z-index:10;box-sizing:border-box;overscroll-behavior:contain;width:max-content;min-width:260px;max-width:min(380px,100vw - 32px);max-height:min(70vh,560px);padding:var(--s-2);border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--grain), var(--paper-raised);box-shadow:var(--lift);transform-origin:0 0;opacity:0;visibility:hidden;transition:opacity .14s ease-out, transform .18s var(--ease-out), visibility 0s .18s;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;transform:translateY(-4px)scale(.98)}.popover.end{transform-origin:100% 0;left:auto;right:0}.popover[data-open=true]{opacity:1;visibility:visible;transition-delay:0s;transform:none}.popover:focus:not(:focus-visible){outline:none}.popover h2,.popover .menu-heading{font:400 20px/1.2 var(--font-hand);margin:0}@media (prefers-reduced-motion:reduce){.popover{transform:none}}.designs-menu{align-items:center;gap:var(--s-2);min-width:0;display:flex}.editor .designs-menu .popover-button{background:0 0;border-color:#0000;padding:4px 6px 4px 8px}@media (hover:hover){.editor .designs-menu .popover-button:hover{background:var(--ink-wash);border-color:#0000}}.editor .designs-menu .popover-button[aria-expanded=true]{background:var(--wash-tint)}.designs-menu .popover-button strong{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;font-weight:600;overflow:hidden}.popover .menu-heading{padding:var(--s-1) var(--s-2) var(--s-2);font-size:18px}.menu-designs{margin:0;padding:0;list-style:none}.editor .menu-designs a{align-items:center;gap:var(--s-2);padding:7px var(--s-2);border-radius:var(--r-2);color:var(--ink);grid-template-columns:16px minmax(0,1fr) auto;text-decoration:none;display:grid}.menu-designs a:focus-visible{background:var(--ink-wash)}@media (hover:hover){.menu-designs a:hover{background:var(--ink-wash)}}.menu-designs a[aria-current=page]{background:var(--wash-tint)}.menu-designs .tick{color:var(--wash)}.menu-designs .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-designs .muted{font-variant-numeric:tabular-nums;font-size:12px}.menu-actions{gap:var(--s-1);margin-top:var(--s-2);padding-top:var(--s-2);border-top:var(--line) solid var(--pencil);display:flex}.menu-actions button{white-space:nowrap;flex:1}.editor .rename{border-color:var(--wash);width:24ch;padding:4px 8px;font-weight:600}.save-status{color:var(--graphite);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.save-status.failed{color:var(--red-pencil)}.topbar-error{color:var(--red-pencil);font-size:12px}.editor .cart .popover-button{font-family:var(--font-mono);padding-inline:8px 10px;font-size:13px}.cart .popover{width:380px;padding:var(--s-4) var(--s-4) var(--s-3)}.cart-head{margin-bottom:var(--s-2);justify-content:space-between;align-items:baseline;display:flex}.cart-head .muted{font-family:var(--font-mono);font-size:12px}.cart-pieces{margin:0;padding:0;list-style:none}.cart-pieces li{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-top:var(--line) solid var(--pencil);grid-template-columns:44px minmax(0,1fr) auto;display:grid}.cart-pieces img{box-sizing:border-box;border:var(--line) solid var(--pencil);border-radius:var(--r-2);background:var(--paper);object-fit:contain;width:44px;height:44px}.cart-piece{flex-direction:column;gap:2px;min-width:0;display:flex}.cart-piece .title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.cart-piece a{font-size:12px}.cart .price{white-space:nowrap;font-size:12.5px}.cart-total{padding:var(--s-3) 0;border-top:var(--line) solid var(--ink);justify-content:space-between;align-items:baseline;margin:0;display:flex}.cart-total span{font-weight:600}.cart-total strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.cart .empty{margin:var(--s-1) 0 var(--s-3)}.cart-in-room{padding-top:var(--s-3);border-top:var(--line) solid var(--pencil)}.cart-in-room h3{margin:0 0 var(--s-2);color:var(--graphite);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.cart-in-room p{color:var(--graphite);margin:0;font-size:13px}.cart-in-room ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cart-in-room li{border:var(--line) solid var(--pencil);border-radius:var(--r-2);align-items:center;gap:6px;padding:2px 8px;font-size:13px;display:inline-flex}.cart-in-room .badge{margin:0;padding:0 4px;font-size:10px}.history{border-top:var(--line) solid var(--pencil);border-left:var(--line) solid var(--pencil);flex-direction:column;grid-area:history;min-height:0;display:flex}.history header{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-3) var(--s-2) var(--s-5);display:flex}.history h2{font:400 20px/1.2 var(--font-hand);margin:0}.history header .muted{font-family:var(--font-mono);font-size:12px}.history .spacer{flex:1}.history ol{min-height:0;padding:var(--s-1) var(--s-3) var(--s-3);overscroll-behavior:contain;margin:0;list-style:none;overflow-y:auto}@property --history-fade{syntax:"<length>";inherits:false;initial-value:0}.history ol{-webkit-mask-image:linear-gradient(transparent, black var(--history-fade));mask-image:linear-gradient(transparent, black var(--history-fade))}@supports (animation-timeline:scroll()){.history ol{animation:linear both history-fade;animation-timeline:scroll(self);animation-range:0 var(--s-4)}}@keyframes history-fade{to{--history-fade:var(--s-4)}}.history .deleted{align-items:center;gap:var(--s-2);margin:0 var(--s-3) var(--s-2);border-radius:var(--r-2);background:var(--wash-tint);padding:6px 6px 6px 10px;font-size:13px;display:flex}.history .deleted .text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.editor .history .deleted button{flex:none;padding:2px 8px;font-size:12px}.history li{align-items:start;gap:var(--s-2);border-radius:var(--r-2);grid-template-columns:20px minmax(0,1fr) auto 28px;padding:6px 2px 6px 8px;display:grid}.history li:has(:focus-visible){background:var(--ink-wash)}@media (hover:hover){.history li:hover{background:var(--ink-wash)}}@media (prefers-reduced-motion:no-preference){.history li{animation:history-row-in .18s var(--ease-out)}}.history .step{border:var(--line) solid var(--pencil-strong);width:20px;height:20px;color:var(--graphite);font:500 10.5px/1 var(--font-mono);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid}.history .what{flex-direction:column;gap:2px;min-width:0;padding-top:1px;display:flex}.editor .history button.text{color:inherit;text-align:left;background:0 0;border:0;padding:0}.editor .history button.text:active{scale:none}.history .text{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.history .reason{color:var(--red-pencil);font-size:12px}.history li.skipped .text{color:var(--graphite);text-decoration:line-through;-webkit-text-decoration-color:var(--pencil-strong);text-decoration-color:var(--pencil-strong)}.history .by{color:var(--graphite);margin-top:2px;font-size:11px}.history .by.claude{color:var(--wash);font-weight:500}.editor .history .delete{opacity:0}.history li:hover .delete{opacity:1}.history li:has(:focus-visible) .delete{opacity:1}.history>.empty{margin:0 var(--s-5) var(--s-4)}@keyframes history-row-in{0%{opacity:0;transform:translateY(4px)}}@media (hover:none){.editor .history .delete{opacity:1}}.fp-setup{box-sizing:border-box;background:var(--grain), var(--paper);grid-template:"top top""plan side"minmax(0,1fr)/minmax(0,1fr) 340px;height:100%;font-size:14px;line-height:1.45;display:grid}.fp-header{align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-5);border-bottom:var(--line) solid var(--pencil);background:var(--paper-raised);grid-area:top;display:flex}.fp-header h1{font:400 22px/1.2 var(--font-hand);margin:0}.fp-header h1 span{color:var(--graphite)}.fp-status{color:var(--graphite);text-align:right;flex:1}.fp-plan{padding:var(--s-5);grid-area:plan;overflow:auto}.fp-sheet{border:var(--line) solid var(--pencil);border-radius:var(--r-3);max-width:1100px;box-shadow:var(--lift);background:#fff;margin:0 auto;position:relative}.fp-sheet img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.fp-overlay{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.fp-overlay *{vector-effect:non-scaling-stroke}.fp-tool-trace,.fp-tool-scale{cursor:crosshair}.fp-room{fill:#2d64891a;stroke:var(--wash);stroke-width:2.5px;stroke-linejoin:round}.fp-room-open{fill:none}.fp-opening{stroke-width:6px;stroke-linecap:round}.fp-window{stroke:#4b9ad1}.fp-door{stroke:#d17a3a}.fp-corner{fill:var(--paper-raised);stroke:var(--wash);stroke-width:2.5px;cursor:grab}.fp-corner-on{fill:var(--wash)}.fp-tool-trace .fp-corner,.fp-tool-scale .fp-corner{pointer-events:none}.fp-insert{cursor:copy;opacity:.55;transition:opacity var(--press) var(--ease-out)}.fp-insert circle{fill:var(--paper-raised);stroke:var(--wash);stroke-width:1.5px}.fp-insert path{stroke:var(--wash);stroke-width:1.5px}@media (hover:hover){.fp-insert:hover{opacity:1}}.fp-scale-point{fill:var(--red-pencil)}.fp-scale-line{stroke:var(--red-pencil);stroke-width:2px;stroke-dasharray:6 4}.fp-sidebar{padding:var(--s-4) var(--s-5) var(--s-6);border-left:var(--line) solid var(--pencil);background:var(--paper-raised);grid-area:side;overflow-y:auto}.fp-sidebar section{padding:var(--s-4) 0;border-bottom:var(--line) solid var(--pencil)}.fp-sidebar section:last-child{border-bottom:0}.fp-sidebar h2{margin:0 0 var(--s-2);font:400 19px/1.2 var(--font-hand)}.fp-sidebar p{margin:0 0 var(--s-3)}.fp-sidebar .muted{color:var(--graphite)}.fp-sidebar .error{color:var(--red-pencil)}.fp-note{padding:var(--s-2) var(--s-3);border-radius:var(--r-2);background:var(--wash-tint)}.fp-row{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.fp-row input{flex:1;min-width:120px}.fp-chips{gap:var(--s-1);flex-wrap:wrap;display:flex}.fp-field{align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);grid-template-columns:64px minmax(0,1fr) auto;display:grid}.fp-field>span:first-child{font-weight:600}.fp-field input[type=color]{border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);width:36px;height:30px;padding:2px}.fp-dialog{box-sizing:border-box;width:min(560px,100vw - 32px);padding:var(--s-4) var(--s-5) var(--s-5);border:var(--line) solid var(--pencil-strong);border-radius:var(--r-3);background:var(--grain), var(--paper-raised);color:var(--ink);box-shadow:var(--lift);font:14px/1.5 var(--font-sans)}.fp-dialog::backdrop{background:0 0}.fp-dialog>header{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-2);display:flex}.fp-dialog h2{font:400 24px/1.2 var(--font-hand);margin:0}.fp-dialog form>p{margin:0 0 var(--s-4);color:var(--graphite)}.fp-dialog-field{gap:var(--s-1);margin-bottom:var(--s-4);display:grid}.fp-dialog-field>span:first-child{font-weight:600}.fp-dialog-field .muted{color:var(--graphite);font-size:13px}.fp-dialog input:not([type=file]){box-sizing:border-box;border:var(--line) solid var(--pencil-strong);border-radius:var(--r-2);background:var(--paper-raised);color:var(--ink);font:inherit;padding:6px 8px}.fp-dialog footer{justify-content:flex-end;gap:var(--s-2);display:flex}.fp-dialog .error{color:var(--red-pencil)}.fp-reading{margin:0}.fp-reading .muted{color:var(--graphite)}.rs{--rs-bg:#16181c;--rs-panel:#202329;--rs-line:#343842;--rs-text:#e7e9ee;--rs-muted:#9aa1ad;--rs-accent:#e5b567;background:var(--rs-bg);height:100%;color:var(--rs-text);grid-template-rows:auto 1fr;grid-template-columns:320px 1fr;font-size:14px;display:grid}.rs a{color:var(--rs-accent)}.rs button,.rs select,.rs input{font:inherit;color:inherit}.rs button{border:1px solid var(--rs-line);cursor:pointer;background:#2b2f37;border-radius:6px;padding:5px 10px}.rs button:hover:not(:disabled){border-color:var(--rs-muted)}.rs button:disabled{opacity:.45;cursor:default}.rs .rs-primary{background:var(--rs-accent);border-color:var(--rs-accent);color:#1b1b1b;font-weight:600}.rs .rs-link{color:#f87171;background:0 0;border:none;padding:0 4px}.rs select,.rs input:not([type]),.rs input[type=number]{border:1px solid var(--rs-line);background:#15171b;border-radius:6px;min-width:0;padding:4px 6px}.rs kbd{border:1px solid var(--rs-line);border-radius:4px;padding:0 4px;font-size:12px}.rs small{color:var(--rs-muted)}.rs-header{border-bottom:1px solid var(--rs-line);background:var(--rs-panel);grid-column:1/-1;align-items:center;gap:16px;padding:10px 16px;display:flex}.rs-header h1{flex:1;margin:0;font-size:16px}.rs-header h1 span{color:var(--rs-muted);font-weight:400}.rs-status{color:var(--rs-muted)}.rs-toggle{cursor:pointer;align-items:center;gap:6px;display:flex}.rs-sidebar{border-right:1px solid var(--rs-line);background:var(--rs-panel);overflow-y:auto}.rs-steps{grid-template-columns:1fr 1fr 1fr;gap:6px;margin:0;padding:12px;list-style:none;display:grid}.rs .rs-step{text-align:left;align-items:center;gap:6px;width:100%;padding:6px 8px;display:flex}.rs .rs-step-on{border-color:var(--rs-accent)}.rs-step-number{background:#15171b;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:11px;display:inline-grid}.rs-panel{padding:4px 16px 24px}.rs-panel h2{margin:8px 0;font-size:15px}.rs-panel p{color:#c9cdd5;margin:8px 0;line-height:1.45}.rs-note{font-size:13px;color:var(--rs-muted)!important}.rs-warn{color:#fbbf24!important}.rs-field{gap:4px;margin:12px 0;display:grid}.rs-field input[type=range]{width:100%}.rs-row{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;display:flex}.rs-check{cursor:pointer;align-items:baseline;gap:6px;margin:8px 0;display:flex}.rs-chips{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.rs .rs-chip{border-radius:999px;padding:3px 9px}.rs .rs-chip-on{border-color:var(--rs-accent);color:var(--rs-accent)}.rs-list{gap:6px;margin:12px 0;padding:0;list-style:none;display:grid}.rs-list li{align-items:center;gap:8px;display:flex}.rs-list li input{flex:1}.rs-item{border:1px solid var(--rs-line);border-radius:8px;flex-direction:column;padding:8px;align-items:stretch!important}.rs-card{border:1px solid var(--rs-line);background:#1a1d22;border-radius:8px;margin:12px 0;padding:4px 10px 10px}.rs-size{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.rs-size label{gap:2px;display:grid}.rs-swatch{border:1px solid var(--rs-line);border-radius:4px;flex:none;width:18px;height:18px}.rs-histogram{margin:4px 0 12px}.rs-histogram svg{background:#15171b;border-radius:6px;width:100%;height:60px}.rs-histogram rect{fill:#b7bdc8}.rs-histogram line{stroke:var(--rs-accent);stroke-width:1.5px;stroke-dasharray:3 2}.rs-histogram figcaption{color:var(--rs-muted);margin-top:2px;font-size:12px}.rs-view{min-width:0;min-height:0;position:relative}.rs-preview{border:1px solid var(--rs-line);background:#202329eb;border-radius:8px;gap:2px;max-width:240px;padding:10px 12px;display:grid;position:absolute;top:12px;right:12px}.rs-message{padding:24px}
