@font-face{font-family:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-vietnamese-wght-normal-BKsN3ITN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-latin-ext-wght-normal-B5dZ8C4S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-latin-wght-normal-Bl-S9Xys.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--gray-0: #ffffff;--gray-50: #fcfaf8;--gray-100: #f7f4f1;--gray-150: #f0ece8;--gray-200: #e7e2dd;--gray-300: #d5cfc9;--gray-400: #b8b1aa;--gray-600: #736b65;--gray-700: #57514c;--gray-900: #2a2a2a;--navy-500: #3a7196;--navy-700: #0f4d71;--navy-900: #0b3a56;--navy-700-rgb: 15 77 113;--sky-100: #eef6fd;--sky-200: #dcebfa;--sky-300: #bfdaf3;--coral-500: #ff5b3a;--coral-600: #e8472a;--coral-700: #c23a21;--blush-50: #fff7f4;--blush-200: #fcdcd4;--rose-100: #fde3e4;--lilac-50: #fbf6fb;--lilac-100: #f3e9f3;--lilac-300: #d7bad6;--lilac-500: #b58db4;--lilac-800: #5e3f5d;--maple-50: #fdf8f1;--maple-100: #f7ecdd;--maple-200: #efdfc9;--maple-300: #e3cdb0;--maple-400: #d0b28e;--maple-600: #a88561;--steel-400: #a4abb2;--steel-700: #5d656d;--surface-app: var(--gray-100);--surface-stage: var(--gray-100);--surface-stage-bar: var(--gray-50);--surface-panel: var(--gray-0);--surface-panel-muted: var(--gray-50);--surface-raised: var(--gray-0);--surface-float: color-mix(in srgb, var(--gray-0) 78%, transparent);--surface-sunken: var(--gray-150);--surface-hover: var(--gray-50);--surface-pressed: var(--gray-150);--surface-drawing: var(--gray-0);--surface-inverse: var(--gray-900);--scrim: rgb(42 42 42 / .36);--ink-primary: var(--gray-900);--ink-secondary: var(--gray-700);--ink-tertiary: var(--gray-600);--ink-disabled: var(--gray-400);--ink-inverse: var(--gray-0);--line-subtle: var(--gray-200);--line-default: var(--gray-300);--line-strong: var(--gray-400);--accent: var(--navy-700);--accent-hover: var(--navy-900);--accent-soft: var(--sky-100);--accent-soft-hover: var(--sky-200);--accent-border: var(--sky-300);--accent-ink: var(--navy-900);--ink-on-accent: var(--gray-0);--accent-rgb: var(--navy-700-rgb);--accent-tint: rgb(var(--accent-rgb) / .08);--accent-tint-strong: rgb(var(--accent-rgb) / .16);--accent-ring: rgb(var(--accent-rgb) / .18);--focus-ring: var(--navy-500);--cta: var(--coral-500);--cta-hover: var(--coral-600);--ink-on-cta: var(--gray-0);--note-bg: var(--lilac-100);--note-border: var(--lilac-300);--note-strong: var(--lilac-500);--note-ink: var(--lilac-800);--note-soft: var(--lilac-50);--danger: var(--coral-600);--danger-soft: var(--rose-100);--danger-ink: var(--coral-700);--success: var(--navy-500);--highlight: var(--coral-500);--highlight-soft: var(--blush-50);--highlight-border: var(--blush-200);--measure: var(--coral-600);--measure-ink: var(--gray-0);--piece-fill: var(--maple-100);--piece-wall: var(--maple-200);--piece-drawer: var(--maple-50);--piece-stroke: var(--maple-600);--piece-stroke-width: 1px;--piece-knob: var(--steel-700);--piece-hook-plate: var(--steel-400);--piece-bar: var(--maple-600);--piece-bar-shine: var(--maple-400);--piece-selected-stroke: var(--navy-700);--piece-selected-tint: rgb(var(--accent-rgb) / .18);--piece-face-top: var(--maple-50);--piece-face-front: var(--maple-200);--piece-face-side: var(--maple-300);--piece-face-bottom: var(--maple-400);--room-plane: var(--gray-150);--room-floor: var(--gray-200);--room-line: var(--gray-300);--canvas-border: var(--gray-400);--canvas-border-width: 1px;--space-1: 2px;--space-2: 4px;--space-3: 6px;--space-4: 8px;--space-5: 12px;--space-6: 16px;--space-7: 20px;--space-8: 24px;--space-9: 32px;--space-10: 48px;--radius-xs: 3px;--radius-sm: 7px;--note-radius: 5px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 18px;--radius-pill: 999px;--font-sans: "Work Sans Variable", "Work Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-md: 13px;--text-lg: 15px;--text-xl: 18px;--text-2xl: 24px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.45;--tracking-caps: .06em;--shadow-xs: 0 1px 2px rgb(42 42 42 / .08);--shadow-md: 0 6px 16px rgb(42 42 42 / .14);--shadow-lg: 0 12px 28px rgb(42 42 42 / .16);--shadow-sheet: 0 -6px 18px rgb(42 42 42 / .07);--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.7, 0, .3, 1);--duration-fast: .12s;--duration-base: .18s;--duration-slow: .28s;--z-hud: 20;--z-panel: 30;--z-overlay: 40;--z-popover: 50;--z-toast: 60;--z-tooltip: 100;--layer-behind: 1;--layer-piece: 2;--layer-frame: 3;--layer-catcher: 4;--layer-note: 5;--layer-note-selected: 6;--layer-preview: 8;--layer-line: 9;--layer-guide: 10;--layer-measure: 12;--layer-hot: 13;--modal-width: 820px;--modal-width-legal: 680px;--modal-width-faq: 640px;--modal-width-send: 460px;--modal-width-kofi: 460px;--modal-width-celebrate: 440px;--kofi-frame-height: 640px;--popover-min-width: 220px;--tooltip-max-width: 400px;--report-width: 272px;--size-stepper-width: 170px;--start-art-width: 360px;--start-art-height: 280px;--start-art-width-mobile: 220px;--start-art-height-mobile: 180px;--photo-crop-width: 200px;--photo-crop-max-height: 260px;--dock-selection-height: 380px;--gallery-max-width: 760px;--gallery-resize-width: 240px;--gallery-resize-min-width: 120px;--apply-all-width: 92px;--icon-md: 18px;--icon-lg: 22px;--icon-xl: 26px;--close-lg: 48px;--hit-pad-3d: 8px;--glyph-width: 26px;--scene-perspective: 1600px;--control-sm: 26px;--control-md: 32px;--control-lg: 38px;--switch-control: calc(var(--control-md) + 4px);--menu-switch-row: 36px;--touch-target: 44px;--switch-width: 40px;--switch-height: 24px;--segment-height: calc(var(--control-md) - 6px);--tap-min-width: 0px;--topbar-height: 60px;--panel-width: 344px;--palette-tile: 84px;--sheet-max-height: 62vh;--dock-rest-height: 128px;--dock-closed-control: 36px;--lang-row-height: 48px;--dock-materials-height: 280px;--strip-tile-height: 54px;--dock-closed-reserve: 172px;--front: 0px;--pull-out: 0px;--keep-x: 0px;--keep-y: 0px;--keep-max: none;--anchor-right: var(--space-6);--anchor-bottom: calc(2 * var(--space-4) + var(--control-md) + var(--space-5));--modal-pad-top: var(--space-9);--modal-pad-x: var(--space-10);--modal-pad-bottom: var(--space-9)}@media (max-width: 767px),(hover: none) and (pointer: coarse){:root{--control-sm: var(--touch-target);--control-md: var(--touch-target);--control-lg: 48px;--switch-control: var(--touch-target);--hit-pad-3d: 14px;--segment-height: var(--touch-target);--tap-min-width: var(--touch-target);--switch-width: 44px;--switch-height: 26px;--text-md: 14px;--topbar-height: auto;--palette-tile: 56px}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html:has(.shell),body:has(.shell){overflow:hidden;overscroll-behavior:none}body{margin:0;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--ink-primary);background:var(--surface-app);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.modal:focus,.popover:focus,.sheet:focus{outline:none}[hidden]{display:none!important}.caps{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink-tertiary)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:root{--toast-offset: var(--space-8)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-width:var(--tap-min-width);height:var(--control-md);padding:0 var(--space-5);border:1px solid var(--line-subtle);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--ink-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.btn:hover:not(:disabled){background:var(--surface-hover)}.btn:active:not(:disabled){background:var(--surface-pressed)}.btn:disabled{color:var(--ink-disabled);background:var(--surface-sunken);border-color:transparent}.btn--sm{height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm)}.btn--icon{width:var(--control-md);padding:0;font-size:var(--text-lg)}.btn svg{flex:none;width:18px;height:18px}.btn--sm.btn--icon{width:var(--control-sm)}.btn--block{width:100%}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--ink-on-accent)}.btn--primary:hover:not(:disabled),.btn--primary:active:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn--cta{background:var(--cta);border-color:var(--cta);color:var(--ink-on-cta)}.btn--cta:hover:not(:disabled),.btn--cta:active:not(:disabled){background:var(--cta-hover);border-color:var(--cta-hover)}.btn--ghost{background:transparent;border-color:transparent;color:var(--ink-secondary)}.btn--ghost:hover:not(:disabled){color:var(--ink-primary)}.btn--danger{color:var(--danger)}.btn--danger:hover:not(:disabled),.btn--danger:active:not(:disabled){background:var(--danger-soft);border-color:var(--danger-soft);color:var(--danger-ink)}.btn.is-active,.btn.is-active:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.close-x{display:grid;place-items:center;flex:none;width:var(--touch-target);height:var(--touch-target);padding:0;border:1px solid var(--line-default);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink-secondary);line-height:1;touch-action:manipulation}.close-x svg{width:var(--icon-lg);height:var(--icon-lg)}.close-x:hover,.close-x:active{border-color:var(--line-strong);background:var(--surface-hover);color:var(--ink-primary)}.stepper{display:inline-flex;align-self:flex-start;align-items:stretch;height:calc(var(--control-md) + 2px);border:1px solid var(--line-subtle);border-radius:var(--radius-md);background:var(--surface-raised);overflow:hidden}.stepper__btn{display:grid;place-items:center;width:var(--control-md);padding:0;border:0;background:transparent;color:var(--ink-secondary);font-size:var(--text-lg);line-height:1;-webkit-user-select:none;user-select:none;touch-action:manipulation}.stepper__btn:hover:not(:disabled){background:var(--surface-hover);color:var(--ink-primary)}.stepper__btn:active:not(:disabled){background:var(--surface-pressed)}.stepper__btn:disabled,.stepper__btn.is-capped{color:var(--ink-disabled)}.stepper__btn.is-capped{cursor:not-allowed}.stepper__value--edit{border-top:0;border-bottom:0;background:transparent;color:var(--ink-primary);cursor:text}.stepper__value--edit:hover{background:var(--surface-hover)}.stepper__input{width:0;flex:1;border-top:0;border-bottom:0;outline:none;background:var(--accent-soft);text-align:center}.stepper:has(.stepper__input){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.stepper--block{display:flex;align-self:stretch;width:100%}.stepper--block .stepper__value{flex:1;min-width:0}.stepper__value{display:grid;place-items:center;min-width:60px;padding:0 var(--space-3);border-inline:1px solid var(--line-subtle);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.switch{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--space-4);min-height:var(--control-md);padding:0;border:0;background:transparent;font-size:var(--text-sm);text-align:left;touch-action:manipulation}.switch__track{flex:none;width:var(--switch-width);height:var(--switch-height);padding:3px;border-radius:var(--radius-pill);background:var(--line-default);transition:background var(--duration-base) var(--ease-standard)}.switch__knob{display:block;width:calc(var(--switch-height) - 6px);height:calc(var(--switch-height) - 6px);border-radius:var(--radius-pill);background:var(--surface-raised);box-shadow:var(--shadow-xs);transition:transform var(--duration-base) var(--ease-standard)}.switch[aria-checked=true] .switch__track{background:var(--accent)}.switch[aria-checked=true] .switch__knob{transform:translate(calc(var(--switch-width) - var(--switch-height)))}.segmented{--segmented-pad: 3px;display:inline-flex;gap:2px;padding:var(--segmented-pad);border-radius:var(--radius-lg);background:var(--surface-sunken)}.segmented--block{display:flex}.segmented--block .segmented__opt{flex:1}.segmented__opt{min-width:var(--tap-min-width);height:var(--segment-height);padding:0 var(--space-5);border:0;border-radius:calc(var(--radius-lg) - var(--segmented-pad));background:transparent;color:var(--ink-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;touch-action:manipulation;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.segmented__opt:hover{color:var(--ink-primary)}.segmented__opt[aria-checked=true]{background:var(--surface-raised);color:var(--ink-primary);box-shadow:var(--shadow-xs)}.tabs{display:flex;gap:var(--space-6);border-bottom:1px solid var(--line-subtle)}.tabs__tab{padding:var(--space-2) 1px var(--space-2);margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;color:var(--ink-tertiary);font-size:var(--text-sm);font-weight:var(--weight-semibold);touch-action:manipulation}.tabs__tab:hover{color:var(--ink-secondary)}.count-label{display:inline-flex;align-items:center;gap:var(--space-3)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-secondary);font-size:var(--text-2xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;line-height:1}.count-badge__n{display:block;text-box:trim-both cap alphabetic}[aria-selected=true]>.count-label .count-badge{background:var(--ink-primary);color:var(--surface-raised)}.tabs__tab[aria-selected=true]{color:var(--ink-primary);border-bottom-color:var(--ink-primary)}.popover{position:fixed;z-index:var(--z-popover);min-width:var(--popover-min-width);max-width:calc(100vw - 16px);max-height:calc(100vh - 80px);overflow:auto;padding:var(--space-5);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-lg);animation:pop-in var(--duration-base) var(--ease-standard)}.overlay__title{margin-bottom:var(--space-5)}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:var(--scrim);animation:fade-in var(--duration-base) var(--ease-standard)}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-popover);display:flex;flex-direction:column;max-height:var(--sheet-max-height);padding-bottom:env(safe-area-inset-bottom);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface-raised);box-shadow:var(--shadow-lg);transition:transform var(--duration-base) var(--ease-standard);animation:sheet-in var(--duration-slow) var(--ease-standard)}.sheet__top{display:flex;flex-direction:column;flex:none;cursor:grab;touch-action:none}.sheet__top .sheet__grip{align-self:center;margin-top:var(--space-4)}.sheet__grip{width:36px;height:4px;border-radius:var(--radius-pill);background:var(--line-default)}.sheet__head{display:flex;align-items:center;justify-content:space-between;flex:none;margin-top:calc(-1 * var(--space-3));padding:0 var(--space-2) var(--space-2) var(--space-6)}.sheet__back{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--control-sm);padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:var(--text-md);font-weight:var(--weight-semibold);cursor:pointer}.sheet__back-icon{width:var(--icon-md);height:var(--icon-md);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sheet__body{overflow:auto;padding:0 var(--space-6) var(--space-6)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-popover) + 1);display:grid;place-items:center;padding:var(--space-8);background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--duration-base) var(--ease-standard)}.modal{position:relative;display:flex;flex-direction:column;width:min(var(--modal-width),100%);max-height:calc(100dvh - 2 * var(--space-8));overflow:hidden;border-radius:var(--radius-xl);background:var(--surface-raised);box-shadow:var(--shadow-lg);animation:pop-in var(--duration-base) var(--ease-standard)}.modal__close{position:absolute;top:var(--space-5);right:var(--space-5);z-index:2}.modal__body{flex:1;min-height:0;overflow:auto;padding:var(--modal-pad-top) var(--modal-pad-x) var(--modal-pad-bottom)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.modal-scrim{place-items:stretch;padding:0}.modal{width:100%;height:100dvh;max-height:none;border-radius:0}.modal__body{--modal-pad-top: calc(var(--space-7) + env(safe-area-inset-top));--modal-pad-x: var(--space-6);--modal-pad-bottom: calc(var(--space-6) + env(safe-area-inset-bottom))}.modal__close{top:calc(var(--space-3) + env(safe-area-inset-top));right:var(--space-3)}}.tooltip{position:fixed;z-index:var(--z-tooltip);max-width:var(--tooltip-max-width);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-inverse);color:var(--ink-inverse);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.35;text-align:center;pointer-events:none;box-shadow:var(--shadow-md);transform:translate(-50%,calc(-100% - 8px));animation:fade-in var(--duration-fast) var(--ease-standard)}.tooltip--below{transform:translate(-50%,8px)}.toast{position:fixed;left:50%;bottom:var(--toast-offset);z-index:var(--z-toast);display:flex;align-items:center;gap:var(--space-4);max-width:calc(100vw - var(--space-8));padding:var(--space-3) var(--space-3) var(--space-3) var(--space-6);border-radius:var(--radius-pill);background:var(--surface-inverse);color:var(--ink-inverse);font-size:var(--text-sm);box-shadow:var(--shadow-lg);transform:translate(-50%);animation:toast-in var(--duration-slow) var(--ease-standard)}.toast__dot{flex:none;width:8px;height:8px;border-radius:var(--radius-pill)}.toast--success .toast__dot{background:var(--success)}.toast--danger{background:var(--danger-soft);color:var(--danger-ink)}.toast__icon{flex:none;display:grid;place-items:center;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--danger);color:var(--ink-on-cta);font-size:var(--text-2xs);font-weight:var(--weight-bold)}.toast__close{display:grid;place-items:center;flex:none;width:var(--control-sm);height:var(--control-sm);padding:0;border:0;border-radius:var(--radius-pill);background:transparent;color:inherit;opacity:.7}.toast__close:hover{opacity:1}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (prefers-reduced-motion: reduce){.popover,.sheet,.sheet-scrim,.tooltip,.toast{animation:none}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.shell{display:grid;height:100%;background:var(--surface-app)}.shell--desktop{grid-template-columns:minmax(0,1fr) var(--panel-width);grid-template-rows:var(--topbar-height) minmax(0,1fr);grid-template-areas:"top top" "stage panel"}.shell--mobile{position:relative;height:100dvh;background:var(--surface-stage);grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) var(--dock-rest-height);grid-template-areas:"top" "stage" "dock"}.stage{grid-area:stage;position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--surface-stage)}.stage__canvas{position:relative;flex:1;min-height:0;touch-action:pan-x pan-y}.stage__room{position:absolute;inset:var(--space-9) var(--space-8) var(--space-6);visibility:hidden;pointer-events:none}.stage__fit{position:absolute;inset:var(--space-9) var(--space-8) var(--space-6);display:flex;overflow:hidden}.stage__fit.is-zoomed{overflow:auto}.stage__content{margin:auto;flex:none}.shell--mobile .stage{grid-row:stage-start / dock-end}.shell--mobile .stage__room{inset:var(--space-8) var(--space-5) calc(var(--space-10) + var(--dock-rest-height))}.shell--mobile .stage__fit{top:0;right:0;bottom:0;left:0;flex-direction:column;padding:var(--space-8) var(--space-5) calc(var(--dock-closed-reserve) + env(safe-area-inset-bottom));touch-action:none}.shell--mobile .stage__fit:after{content:"";flex:0 1 calc(var(--space-10) + var(--dock-rest-height) - var(--dock-closed-reserve) - env(safe-area-inset-bottom))}.stage-bar{flex:none;display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-6) var(--space-4);border-top:1px solid var(--line-subtle);background:var(--surface-stage-bar)}.zoom{flex:none;display:flex;align-items:center;gap:var(--space-1);padding:3px;border:1px solid var(--line-subtle);border-radius:var(--radius-pill);background:var(--surface-raised)}.zoom__btn{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink-secondary);font-size:var(--text-lg);line-height:1}.zoom__btn:hover:not(:disabled){background:var(--surface-hover)}.zoom__btn:disabled{color:var(--ink-disabled)}.zoom__value{min-width:44px;height:24px;padding:0 var(--space-2);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.zoom__value:hover{background:var(--surface-hover)}.stage-bar__hint{flex:1 1 0%;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);min-width:0;color:var(--ink-tertiary);font-size:var(--text-xs);line-height:1.35}.stage-bar__hint strong{color:var(--ink-secondary);font-weight:var(--weight-semibold)}.stage-bar__sep{color:var(--line-default)}.stage-bar__keys{display:contents}@media (max-width: 1023px),(hover: none),(pointer: coarse){.stage-bar__keys{display:none}}.stage-bar__keys--measure{position:fixed;left:-9999px;top:-9999px;display:flex;gap:var(--space-2) var(--space-4);white-space:nowrap;visibility:hidden}.lang-switch{flex:none;display:flex;align-items:center;gap:var(--space-1);margin-left:auto;padding:var(--space-1) var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-tertiary);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-semibold);cursor:pointer}.lang-switch:hover,.lang-switch[aria-expanded=true]{background:var(--surface-hover);color:var(--ink-secondary)}.lang-switch__list{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none}.lang-switch__opt{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-primary);font-size:var(--text-sm);text-align:left;cursor:pointer}.lang-switch__name{flex:1}.lang-switch__check{width:var(--icon-md);height:var(--icon-md);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lang-switch__opt:hover{background:var(--surface-hover)}.lang-switch__opt.is-on{background:var(--accent-soft);color:var(--accent-ink);font-weight:var(--weight-semibold)}.panel{grid-area:panel;position:relative;overscroll-behavior:contain;display:flex;flex-direction:column;min-height:0;overflow:auto;border-left:1px solid var(--line-subtle);background:var(--surface-panel)}.panel__section{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-6)}.panel__section+.panel__section{border-top:1px solid var(--line-subtle)}.dock{grid-area:dock;z-index:var(--z-panel);display:flex;flex-direction:column;gap:var(--space-3);max-height:58dvh;padding:var(--space-3) var(--space-6) calc(var(--space-5) + env(safe-area-inset-bottom));border-top:1px solid var(--line-subtle);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface-panel);box-shadow:var(--shadow-sheet)}.shell--mobile .dock{position:absolute;left:0;right:0;bottom:0}.topbar{grid-area:top;z-index:var(--z-panel);display:flex;align-items:center;gap:var(--space-6);min-width:0;padding:0 var(--space-6);border-bottom:1px solid var(--line-subtle);background:var(--surface-panel)}.topbar__spacer{flex:1}.topbar--mobile{flex-direction:column;align-items:stretch;gap:var(--space-4);padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-5) var(--space-4)}.topbar__row{display:flex;align-items:center;gap:var(--space-3);min-width:0}.topbar--mobile .topbar__row+.topbar__row{margin-top:var(--space-3)}.brand{flex:none;display:block;width:auto;height:40px}.topbar:not(.topbar--mobile) .brand{height:50px}.topbar{--topbar-control: var(--switch-control)}.topbar:not(.topbar--mobile) .btn{height:var(--topbar-control);font-size:var(--text-lg)}.topbar:not(.topbar--mobile) .btn--cta{padding:0 var(--space-7)}.topbar__divider{flex:none;width:1px;height:28px;background:var(--line-default)}.view-switch,.unit-switch{--segmented-pad: 4px;border-radius:var(--radius-md)}.view-switch .segmented__opt,.unit-switch .segmented__opt{height:calc(var(--switch-control) - 2 * var(--segmented-pad));padding:0 var(--space-6);border-radius:calc(var(--radius-md) - var(--segmented-pad));font-size:var(--text-md)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.view-switch .segmented__opt,.unit-switch .segmented__opt{padding:0 var(--space-4)}}.fill-dot{flex:none;width:36px;height:36px;margin-left:calc(-1 * var(--space-3));padding:0;border:1px solid var(--line-default);border-radius:var(--radius-pill);box-shadow:inset 0 0 0 2px var(--surface-raised);cursor:pointer}.fill-dot:hover,.fill-dot.is-open{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--surface-raised),0 0 0 3px var(--accent-ring)}.topbar>.brand+.closet-chip{margin-left:calc(-1 * var(--space-2))}.closet-chip{display:flex;align-items:center;gap:var(--space-4);min-width:0;height:36px;padding:0 var(--space-4) 0 var(--space-5);border:1px solid var(--line-subtle);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink-primary);white-space:nowrap;touch-action:manipulation;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.closet-chip:hover,.closet-chip.is-open{border-color:var(--line-default);background:var(--surface-hover)}.topbar--mobile .closet-chip{height:var(--touch-target);padding:0 var(--space-4);border-radius:var(--radius-lg)}.closet-chip__size{min-width:0;overflow:hidden;text-overflow:clip;font-size:var(--text-md);font-weight:var(--weight-semibold)}.closet-chip__caret{flex:none;color:var(--ink-secondary)}.closet-menu{display:flex;flex-direction:column;gap:var(--space-5)}.menu-heading{color:var(--ink-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.menu-divider{height:1px;background:var(--line-subtle)}.settings{display:flex;flex-direction:column;gap:var(--space-6);padding-bottom:var(--space-4)}.settings__head{display:flex;align-items:center;justify-content:space-between}.size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.size-field{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.size-field__label{color:var(--ink-primary);font-size:var(--text-sm)}.size-field .stepper__btn{width:24px}.size-field .stepper__value{padding:0;font-size:var(--text-sm)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.size-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.size-field{flex-direction:row;align-items:center;justify-content:space-between}.size-field__label{font-size:var(--text-sm)}.size-field .stepper{width:var(--size-stepper-width);flex:none}.size-field .stepper__btn{width:var(--touch-target)}}.bg-picker{display:flex;flex-direction:column;gap:var(--space-4)}.swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.swatch{display:grid;place-items:center;height:32px;padding:0;border:1px solid var(--line-subtle);border-radius:var(--radius-sm);touch-action:manipulation}.swatch[aria-checked=true]{outline:2px solid var(--accent);outline-offset:2px}.swatch__check{display:grid;place-items:center;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--accent);font-size:9px;font-weight:var(--weight-bold);box-shadow:var(--shadow-xs)}.swatch--custom{position:relative;overflow:hidden;background:conic-gradient(#f47b7b,#f4f47b,#85e085,#7dd6e8,#9797ed,#e79de7,#f47b7b);cursor:pointer}.swatch__plus{display:grid;place-items:center;width:18px;height:18px;border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1;box-shadow:var(--shadow-xs)}.swatch-slot{position:relative;display:grid}.swatch-slot__native{position:absolute;left:0;bottom:0;width:100%;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.field{flex:none;min-width:0;height:var(--control-md);padding:0 var(--space-4);border:1px solid var(--line-default);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:var(--text-sm)}.field:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.export-menu{display:flex;flex-direction:column;gap:var(--space-4)}.export-menu__head{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-1)}.export-menu__title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.export-card{display:flex;align-items:center;gap:var(--space-5);width:100%;min-height:52px;padding:var(--space-4) var(--space-5);border:1px solid var(--line-subtle);border-radius:var(--radius-md);background:var(--surface-raised);text-align:left;touch-action:manipulation;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.export-card:hover{border-color:var(--line-default);background:var(--surface-hover)}.export-card__text{display:flex;flex-direction:column;gap:2px;min-width:0}.export-card__title{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.export-card__note{color:var(--ink-tertiary);font-size:var(--text-2xs)}.thumb{position:relative;flex:none;width:40px;height:32px;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius-xs);background:var(--surface-drawing)}.thumb span{position:absolute}.thumb__frame{left:3px;top:3px;bottom:3px;width:18px;border:1px solid var(--ink-tertiary)}.thumb__line{left:25px;right:3px;height:1.5px;background:var(--line-strong)}.thumb__line--1{top:6px;background:var(--ink-tertiary)}.thumb__line--2{top:12px}.thumb__line--3{top:18px;right:7px}.thumb--image{background:var(--piece-drawer)}.thumb__divider{left:18px;top:2px;bottom:2px;width:2px;background:var(--piece-stroke)}.thumb__shelf{height:2px;background:var(--piece-stroke)}.thumb__shelf--1{left:2px;width:16px;top:9px}.thumb__shelf--2{left:20px;right:2px;top:13px}.thumb__shelf--3{left:2px;width:16px;top:21px}.thumb--layout{display:grid;place-items:center;border-color:var(--accent);background:var(--accent-soft)}.thumb--svg{display:grid;place-items:center}.thumb__glyph--text{color:var(--ink-secondary)!important;font-size:var(--text-2xs)!important;letter-spacing:.04em}.thumb__glyph{position:static!important;color:var(--accent);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.export-menu__switches{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--line-subtle)}.export-menu__switches .switch{width:100%}.sheet .export-menu__switches{gap:0}.sheet .export-menu__switches .switch{min-height:var(--menu-switch-row)}.export-menu__switches .switch__label{font-size:var(--text-md)}.topbar__more{width:var(--topbar-control);padding:0;font-size:var(--text-lg)}.more-menu{display:flex;flex-direction:column;gap:var(--space-5)}.more-menu__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.more-menu__item{display:flex;align-items:center;gap:var(--space-5);width:100%;min-height:var(--touch-target);padding:0;border:0;background:transparent;color:var(--ink-primary);font:inherit;font-size:var(--text-md);font-weight:var(--weight-semibold);text-align:left;cursor:pointer}.more-menu__name{flex:1}.more-menu__icon{display:grid;place-items:center;width:var(--icon-xl);height:var(--icon-xl);flex:none;border:1px solid var(--line-default);border-radius:var(--radius-pill);color:var(--ink-secondary)}.more-menu__glyph{font-weight:var(--weight-semibold);line-height:1}.more-menu__value{display:inline-flex;align-items:center;gap:var(--space-3);color:var(--ink-tertiary)}.more-menu__chevron{width:var(--icon-md);height:var(--icon-md);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.more-menu .lang-switch--badge{margin-left:0;cursor:inherit}.more-menu__copyright{margin:var(--space-2) 0 0;color:var(--ink-tertiary);font-size:var(--text-xs)}.sheet .lang-switch__list{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-4)}.sheet .lang-switch__opt{gap:var(--space-4);min-height:var(--lang-row-height);padding:0 var(--space-4);font-size:var(--text-md)}.palette{display:grid;gap:var(--space-3)}.palette--grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:var(--palette-tile);padding:var(--space-4) var(--space-2) var(--space-3);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface-raised);color:var(--ink-primary);-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.tile:hover{border-color:var(--accent-border);background:var(--accent-soft)}.tile.is-armed,.tile.is-armed:hover{border:1.5px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink);box-shadow:0 0 0 3px var(--accent-ring)}.tile__art{display:grid;place-items:center;width:42px;height:30px;border:1px solid var(--line-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-muted);color:var(--ink-tertiary)}.tile--select .tile__art{border-color:transparent;background:transparent;color:var(--ink-primary)}.tile.is-armed .tile__art{color:var(--accent)}.tile__name{font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1.15;text-align:center}.tile__key{color:var(--ink-disabled);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1}.palette--strip{display:flex;gap:var(--space-3);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin:0 calc(-1 * var(--space-6));padding:var(--space-2) var(--space-6)}.palette--strip::-webkit-scrollbar{display:none}.palette--strip .tile{flex:none;gap:var(--space-1);min-height:0;min-width:var(--strip-tile-height);height:var(--strip-tile-height);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--surface-panel-muted)}.palette--strip .tile__art{width:auto;height:var(--icon-lg);border:0;background:transparent}.palette--strip .tile__swatch{width:var(--icon-lg);height:var(--icon-lg);border:1px solid var(--line-default);border-radius:var(--radius-pill);box-shadow:inset 0 0 0 2px var(--surface-raised)}.palette--strip .tile__name{font-size:var(--text-sm);white-space:nowrap}.palette--strip .glyph{transform:scale(1.15)}.palette--strip .tile__key{display:none}.glyph{position:relative;flex:none;width:var(--glyph-width);height:16px}.glyph:before,.glyph:after{content:"";position:absolute;box-sizing:border-box}.glyph--select:before{left:8px;top:0;width:11px;height:16px;background:currentColor;clip-path:polygon(0 0,100% 62%,58% 66%,80% 100%,62% 100%,40% 70%,0 92%)}.glyph--wall:before{left:11px;top:0;width:4px;height:16px;background:currentColor}.glyph--shelf:before{left:1px;top:7px;width:24px;height:2px;background:currentColor}.glyph--stack:before{left:1px;top:2px;width:24px;height:2px;background:currentColor;box-shadow:0 5px 0 currentColor,0 10px 0 currentColor}.glyph--drawer:before,.glyph--drawerStack:before,.glyph--drawerStack:after{left:3px;width:20px;height:8px;border:1.5px solid currentColor;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:center;background-size:6px 2px}.glyph--drawer:before{top:4px}.glyph--drawerStack:before{top:0}.glyph--drawerStack:after{top:7px}.glyph--bar{--glyph-hanger: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 16'%3E%3Cpath d='M13 8.6V4.15A1.75 1.75 0 0 1 16.5 4.15V6.3M13 8.6L6 13.2H20Z' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.glyph--bar:before{left:1px;top:3.5px;width:24px;height:2px;border-radius:var(--radius-pill);background:currentColor}.glyph--bar:after{top:0;right:0;bottom:0;left:0;background:currentColor;-webkit-mask:var(--glyph-hanger) no-repeat center / contain;mask:var(--glyph-hanger) no-repeat center / contain}.glyph--hook{--glyph-hook: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 16'%3E%3Cellipse cx='12' cy='2.8' rx='2' ry='2.6' fill='black'/%3E%3Cpath d='M12 4.5V10.5C12 15 17 15 17 11' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E")}.glyph--hook:before{top:0;right:0;bottom:0;left:0;background:currentColor;-webkit-mask:var(--glyph-hook) no-repeat center / contain;mask:var(--glyph-hook) no-repeat center / contain}.glyph--label:before{left:2px;top:2px;width:22px;height:12px;border:1.5px solid var(--note-strong);border-radius:3px;background:var(--note-bg)}.glyph--label:after{content:"Aa";left:2px;top:2px;width:22px;height:12px;line-height:12px;text-align:center;font-size:8px;font-weight:700;color:var(--note-strong)}.glyph--measure:before{left:1px;top:7px;width:24px;height:2px;background:currentColor}.glyph--measure:after{left:1px;top:3px;width:24px;height:10px;border-left:2px solid currentColor;border-right:2px solid currentColor}.panel__top{position:sticky;top:0;z-index:1;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-6) 0;border-bottom:1px solid var(--line-subtle);background:var(--surface-panel)}.panel__top .tabs{margin-top:var(--space-3);margin-bottom:-1px;border-bottom:0}.panel__top .tabs__tab{font-size:calc(var(--text-lg) - 1px)}.panel__top+.panel__section{padding-top:var(--space-7)}.undo-redo{display:flex;gap:var(--space-3)}.undo-redo__arrow--flip{transform:scaleX(-1)}.panel .undo-redo .btn{flex:1}.panel__hint{color:var(--ink-tertiary);font-size:var(--text-xs);line-height:1.4}.panel__note{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-xs);line-height:1.4}.panel__note--warn{border:1px solid var(--highlight-border);background:var(--highlight-soft);color:var(--ink-secondary)}.panel__note-icon{flex:none;display:grid;place-items:center;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--highlight);color:var(--ink-on-cta);font-size:var(--text-2xs);font-weight:var(--weight-bold)}.panel>.selected{flex:1}.selected{gap:var(--space-6);border-top:1px solid var(--line-subtle);background:var(--surface-panel-muted)}.selected>.selected__head,.selected>.selected__name{margin-bottom:var(--space-3)}.selected__head{display:flex;flex-direction:column;gap:var(--space-1)}.selected__name{font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.selected__prefix{color:var(--ink-tertiary);font-weight:var(--weight-regular)}.prop{display:flex;flex-direction:column;gap:var(--space-3)}.prop__label{color:var(--ink-primary);font-size:var(--text-sm)}.prop__auto{color:var(--ink-tertiary)}.prop__auto:has(.prop__action:disabled){color:var(--ink-disabled)}.prop__action{padding:0;border:0;background:transparent;color:inherit;font:inherit}.prop__action:hover:not(:disabled){text-decoration:underline}.prop__row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.prop__row .stepper{align-self:center}.prop__row .btn--sm{height:calc(var(--control-md) + 2px);margin-left:var(--space-4)}.prop__row .prop__apply{min-width:0;margin-left:var(--space-2);padding:0 var(--space-3);color:var(--accent);font-weight:var(--weight-regular)}.prop__row .prop__apply:hover:not(:disabled){color:var(--accent-hover);text-decoration:underline}.stepper--static{width:calc(2 * var(--control-md) + 62px);background:var(--surface-sunken)}.stepper--static .stepper__value{flex:1;border-inline:0;color:var(--ink-secondary)}.selected--label{gap:var(--space-4);background:var(--note-soft)}.selected--label__caps{color:var(--note-ink)}.field--note{border-color:var(--note-border);font-weight:var(--weight-semibold)}.field--note:focus{border-color:var(--note-strong);box-shadow:0 0 0 3px var(--note-border)}.selected--label .prop__label,.selected--label .panel__hint{color:var(--note-ink)}.pointer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.pointer-grid__opt{height:var(--control-md);border:1px solid var(--note-border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--note-ink);font-size:var(--text-md);font-weight:var(--weight-semibold);touch-action:manipulation}.pointer-grid__opt:hover{background:var(--note-soft)}.pointer-grid__opt[aria-checked=true]{border-color:var(--note-strong);background:var(--note-bg);box-shadow:0 0 0 2px var(--note-border)}.handle-switch .segmented__opt{position:relative;display:grid;place-items:center;min-width:var(--control-md)}.handle-icon{display:block;height:4px;border-radius:var(--radius-pill);background:currentColor}.handle-icon--knob{width:7px;height:7px}.handle-icon--bar{width:14px}.handle-icon--long{width:26px}.hook-switch .segmented__opt{position:relative;display:grid;place-items:center;min-width:var(--control-md)}.hook-switch .hook-switch__art{position:static;width:auto;height:15px}.hook-switch .hook-switch__art--peg{height:8px}.hook-switch__art .hook-art__plate{fill:currentColor;opacity:.45}.hook-switch__art .hook-art__arm{stroke:currentColor}.hook-switch__art .hook-art__cap{fill:currentColor}.view-toggles{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-6) var(--space-4)}.view-toggles__switch .switch__label{font-size:var(--text-lg)}.view-toggles__human{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--space-5);row-gap:var(--space-2)}.human-height{display:flex;align-items:center;gap:var(--space-3)}.human-height__field{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-tertiary);font-size:var(--text-xs)}.human-height__input{width:3.2em;height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--line-default);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink-primary);font-size:var(--text-sm);text-align:center}.more-menu .view-toggles{gap:0;padding:0}.more-menu .view-toggles__switch{min-height:var(--menu-switch-row)}.materials__head{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-4);margin-bottom:var(--space-3)}.items{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none}.item{display:flex;align-items:center;gap:var(--space-4);width:100%;min-height:var(--control-lg);padding:var(--space-3) var(--space-4);border:0;border-radius:var(--radius-sm);background:transparent;font-size:var(--text-sm);text-align:left;touch-action:manipulation}.item:hover{background:var(--surface-hover)}.item.is-on,.item.is-on:hover{background:var(--accent-soft);color:var(--accent-ink)}.item .glyph{color:var(--ink-tertiary);transform:scale(.8)}.item.is-on .glyph{color:var(--accent)}.item__name{min-width:86px;font-weight:var(--weight-semibold);white-space:nowrap}.item__dim{margin-left:auto;color:var(--ink-tertiary);font-size:var(--text-xs);white-space:nowrap}.dock__grip{flex:none;align-self:center;width:36px;height:4px;border-radius:var(--radius-pill);background:var(--line-default)}.dock__close{position:absolute;top:var(--space-2);right:var(--space-2);z-index:1}.dock__handle{flex:none;display:grid;place-items:center;height:var(--space-6);margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-6)) 0;cursor:grab;touch-action:none}.dock:not(.dock--selection)>.tabs{margin-right:var(--touch-target)}.dock--bar{flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-5) var(--space-6) calc(var(--space-8) + env(safe-area-inset-bottom))}.dock__hint{margin:0;overflow:hidden;color:var(--ink-tertiary);font-size:var(--text-xs);line-height:var(--leading-tight);white-space:nowrap;text-overflow:ellipsis}.dock-float{position:absolute;left:var(--space-5);right:var(--space-5);bottom:calc(100% + var(--space-4));display:flex;align-items:center;justify-content:space-between;pointer-events:none}.dock-float>*{pointer-events:auto;box-shadow:var(--shadow-xs)}.dock-float .zoom,.dock-float .btn:not(.is-active){background:var(--surface-float);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dock-float .btn{height:var(--dock-closed-control)}.dock-float .zoom__btn,.dock-float .zoom__value{height:calc(var(--dock-closed-control) - var(--space-4))}.dock-float .zoom{gap:0}.dock-float .zoom__btn{width:calc(var(--dock-closed-control) - var(--space-4))}.dock-float .zoom__value{min-width:0;padding:0 var(--space-2);font-size:var(--text-sm)}.dock__list{flex:1;min-height:0;overflow:auto}.dock__title{display:flex;align-items:center;gap:var(--space-4)}.dock__title .dock__close{position:static}.dock__title .menu-heading{margin:0}.dock__title .count-label{line-height:1}.shell--mobile .dock-stack{position:absolute;left:0;right:0;bottom:0;z-index:var(--z-panel);display:flex;flex-direction:column}.shell--mobile .dock-stack>.dock{position:relative}.dock--materials{max-height:min(var(--dock-materials-height),40dvh);padding-bottom:var(--space-3)}.dock--materials+.dock--bar{border-radius:0;box-shadow:none}.dock__scroll{position:relative;overscroll-behavior:contain;flex:1;min-height:0;margin:0 calc(-1 * var(--space-6));overflow:auto}.dock__scroll .panel__section{border-top:0;background:transparent;gap:var(--space-3);padding-top:var(--space-2);padding-bottom:var(--space-4)}.dock__done{position:absolute;top:var(--space-6);right:var(--space-6);z-index:1;height:var(--dock-closed-control)}.dock__scroll .selected--label .prop{flex-direction:column;align-items:stretch}.more-menu .view-toggles__switch .switch__label{font-size:var(--text-md)}.dock--selection{max-height:min(var(--dock-selection-height),62dvh)}.dock__scroll .prop{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-4)}.dock__scroll .prop__label{font-size:var(--text-md)}.dock__scroll .prop__row{flex:none;flex-wrap:nowrap}.dock__scroll .prop__row .stepper__value{min-width:48px;font-size:var(--text-lg)}.dock__scroll .stepper--static{width:calc(2 * var(--control-md) + 50px)}.dock__scroll .prop__row .btn--sm{width:var(--apply-all-width);padding:0}.dock__scroll .prop__row:not(:has(.btn)):after{content:"";flex:none;width:var(--apply-all-width);margin-left:var(--space-4)}.dock__scroll .panel__hint{display:none}.dock>.tabs{margin-bottom:var(--space-6)}.dock>.tabs .tabs__tab{font-size:var(--text-lg)}.surface{position:relative;flex:none;border:var(--canvas-border-width) solid var(--canvas-border);box-shadow:none;touch-action:none;user-select:none;-webkit-user-select:none}.surface.is-armed{cursor:crosshair}.surface__photo{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.piece{position:absolute;z-index:var(--layer-piece);border:var(--piece-stroke-width) solid var(--piece-stroke);border-radius:1px;background:linear-gradient(var(--piece-face-top),var(--piece-fill))}.piece:before{content:"";position:absolute;top:-6px;right:-1px;bottom:-6px;left:-1px}.piece--wall{background:linear-gradient(90deg,var(--piece-fill),var(--piece-wall) 50%,var(--piece-fill))}.piece--wall:before{top:-1px;right:-6px;bottom:-1px;left:-6px}.piece--drawer{border-radius:0;background:var(--piece-drawer);box-shadow:inset 0 0 0 3px var(--piece-drawer),inset 0 0 0 4px var(--piece-fill)}.piece--drawer:before{content:none}.piece--stacked{--stack-frame-top: 0 0 0 0 transparent;--stack-frame-top-line: 0 0 0 0 transparent;--stack-frame-bottom: 0 0 0 0 transparent;--stack-frame-bottom-line: 0 0 0 0 transparent;box-shadow:inset 3px 0 0 var(--piece-drawer),inset -3px 0 0 var(--piece-drawer),var(--stack-frame-top),var(--stack-frame-bottom),inset 4px 0 0 var(--piece-fill),inset -4px 0 0 var(--piece-fill),var(--stack-frame-top-line),var(--stack-frame-bottom-line)}.piece--stacked-first{--stack-frame-top: inset 0 3px 0 var(--piece-drawer);--stack-frame-top-line: inset 0 4px 0 var(--piece-fill)}.piece--stacked-last{--stack-frame-bottom: inset 0 -3px 0 var(--piece-drawer);--stack-frame-bottom-line: inset 0 -4px 0 var(--piece-fill)}.piece--stacked:not(.piece--stacked-first){border-top-width:0}.piece--bar{border:0;border-radius:var(--radius-pill);background:linear-gradient(var(--piece-bar-shine),var(--piece-bar) 60%)}.piece--bar:after{content:"";position:absolute;top:-3px;right:0;bottom:-3px;left:0;border-inline:3px solid var(--piece-knob);border-radius:1px;pointer-events:none}.piece__knob{position:absolute;left:50%;top:50%;width:clamp(12px,16%,34px);height:clamp(3px,9%,6px);border-radius:var(--radius-pill);background:var(--piece-knob);transform:translate(-50%,-50%);pointer-events:none}.piece__knob--knob{width:clamp(5px,5%,10px);height:auto;aspect-ratio:1}.surface--3d .piece__knob{transform:translate(-50%,-50%) translateZ(var(--pull-out));box-shadow:var(--shadow-xs)}.piece__knob--long{width:36%;min-width:40px}.piece--hook{border:0;background:none}.piece--hook:before{top:-4px;right:-4px;bottom:-4px;left:-4px}.hook-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.hook-art__plate{fill:var(--piece-hook-plate)}.hook-art__arm{fill:none;stroke:var(--piece-knob);stroke-linecap:round;stroke-linejoin:round}.hook-art__cap{fill:var(--piece-knob)}.piece--hook.is-hover .hook-art__arm{stroke:var(--accent)}.piece--hook.is-hover .hook-art__cap{fill:var(--accent)}.piece--hook.is-selected .hook-art__arm{stroke:var(--piece-selected-stroke)}.piece--hook.is-selected .hook-art__cap{fill:var(--piece-selected-stroke)}.hook3d,.hook3d__plate,.hook3d__rod,.hook3d__cap{position:absolute;transform-style:preserve-3d}.hook3d__plate-top,.hook3d__rod-top,.hook3d__cap-top{position:absolute;left:0;right:0;top:0;transform-origin:50% 0;border-radius:var(--radius-pill);background:var(--piece-hook-plate);filter:brightness(.85)}.hook3d__plate-cap,.hook3d__rod-cap,.hook3d__cap-cap{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--piece-hook-plate)}.hook3d__rod-top,.hook3d__cap-top,.hook3d__rod-cap,.hook3d__cap-cap{background:var(--piece-knob)}.piece--hook.is-hover .hook3d__rod-top,.piece--hook.is-hover .hook3d__cap-top,.piece--hook.is-hover .hook3d__rod-cap,.piece--hook.is-hover .hook3d__cap-cap{background:var(--accent)}.piece--hook.is-selected .hook3d__rod-top,.piece--hook.is-selected .hook3d__cap-top,.piece--hook.is-selected .hook3d__rod-cap,.piece--hook.is-selected .hook3d__cap-cap{background:var(--piece-selected-stroke)}.preview--hook{border-width:1px;background:none;opacity:.75}.surface.is-tool-measure,.is-tool-measure .piece{cursor:crosshair}.is-armed .piece{cursor:inherit;pointer-events:none}.piece.is-hover{border-color:var(--accent)}.piece.is-selected{border-color:var(--piece-selected-stroke);border-radius:0}.piece.is-selected:not(.piece--bar):after,.piece.is-selected .face:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--piece-selected-tint);pointer-events:none}.piece--bar.is-selected{background:linear-gradient(var(--piece-selected-tint),var(--piece-selected-tint)),linear-gradient(var(--piece-bar-shine),var(--piece-bar) 60%)}.plane-corner{position:absolute;width:0;height:0;pointer-events:none}.plane-corner--tl{left:0;top:0}.plane-corner--tr{right:0;top:0}.plane-corner--br{right:0;bottom:0}.plane-corner--bl{left:0;bottom:0}.label-catcher{position:absolute;left:-25%;top:-25%;width:145%;height:145%;z-index:var(--layer-catcher);cursor:inherit}.sel-frame{position:absolute;z-index:var(--layer-frame);box-shadow:0 0 0 2px var(--accent);pointer-events:none}.ghost{position:absolute;z-index:var(--layer-frame);border:1.5px dashed var(--accent);background:var(--accent-tint);pointer-events:none}.align-guide{position:absolute;left:0;right:0;z-index:var(--layer-guide);border-top:1px dashed var(--highlight);pointer-events:none}.align-guide--v{top:0;bottom:0;right:auto;border-top:0;border-left:1px dashed var(--highlight)}.surface--3d .align-guide{transform:translateZ(var(--front))}.span-line{position:absolute;z-index:var(--layer-line);display:flex;align-items:center;pointer-events:none}.span-line__tick,.span-line__rule{opacity:.55}.span-line__pill{margin:0 var(--space-3)}.span-line--v .span-line__pill{margin:var(--space-3) 0}.span-line--v{flex-direction:column}.span-line__tick{flex:none;width:1px;height:9px;background:var(--accent)}.span-line--v .span-line__tick{width:9px;height:1px}.span-line__rule{flex:1;min-width:4px;min-height:4px;background:var(--accent)}.span-line--h .span-line__rule{height:1px;min-height:0}.span-line--v .span-line__rule{width:1px;min-width:0}.closet-dim{position:absolute;z-index:var(--layer-line);pointer-events:none}.closet-dim--w{left:0;width:100%;bottom:calc(100% + var(--space-4))}.closet-dim--h{top:0;height:100%;right:calc(100% + var(--space-4))}.closet-dim .span-line__tick,.closet-dim .span-line__rule{background:var(--ink-tertiary)}.closet-dim .span-line__pill{background:var(--surface-raised);color:var(--ink-secondary);box-shadow:inset 0 0 0 1px var(--line-default)}.closet-dims-3d{position:absolute;left:0;top:0;transform-style:preserve-3d;pointer-events:none}.closet-dim__side{position:absolute;left:0;top:0;height:0;transform-origin:0 0;transform:rotateY(90deg);transform-style:preserve-3d}.closet-dim--d{left:0;width:100%;bottom:var(--space-4);transform-style:preserve-3d}.closet-dim--d .span-line__pill{transform:rotateY(-90deg)}.span-line__pill,.chip-accent{flex:none;padding:4px 7px;border-radius:var(--radius-xs);background:var(--accent);color:var(--ink-on-accent);font-size:var(--text-2xs);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap}.cell{position:absolute;z-index:var(--layer-behind);display:grid;place-items:center;pointer-events:none;box-shadow:inset 0 0 0 1px transparent;transition:background-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cell.is-hot{background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent)}.cell__zone{display:grid;place-items:center;width:calc(100% - 2 * var(--space-4));height:calc(100% - 2 * var(--space-4));pointer-events:auto;cursor:pointer}.cell__menu{z-index:var(--layer-note-selected);opacity:0;visibility:hidden;pointer-events:none;transform:translate(var(--keep-x)) translateY(3px) scale(.96);transition:opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),visibility 0s linear var(--duration-fast);display:flex;align-items:center;gap:var(--space-2);padding:3px;border:1px solid var(--line-default);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-md);white-space:nowrap;flex-wrap:wrap;justify-content:center;width:max-content;max-width:var(--keep-max)}.cell.is-hot .cell__menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(var(--keep-x));transition-delay:0s}.cell__menu:not(.is-open){padding:0;border:0;background:none;box-shadow:none}@media (prefers-reduced-motion: reduce){.cell,.cell__menu{transition:none}}.cell__add{display:flex;align-items:center;gap:var(--space-2);min-width:var(--tap-min-width);height:var(--control-sm);padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.cell__add:not(.cell__add--more):hover{background:var(--surface-hover)}.cell__add .glyph{margin:0 -4px;color:var(--ink-tertiary);transform:scale(.7)}.cell__menu.is-open{gap:2px;padding:2px}.cell__add--tool{flex-direction:column;justify-content:center;gap:2px;min-width:max(40px,var(--tap-min-width));height:auto;min-height:max(36px,var(--tap-min-width));padding:var(--space-1) var(--space-1) 3px}.cell__add--tool .glyph{margin:-2px 0}.cell__add-name{font-size:var(--text-2xs);line-height:1.1}.cell__add--more{color:var(--accent)}.cell.is-hot .cell__menu:not(.is-open){opacity:.7}.cell.is-hot .cell__menu:not(.is-open):hover,.cell.is-hot .cell__menu:not(.is-open):focus-within{opacity:1}.cell__plus{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:1}.preview{position:absolute;z-index:var(--layer-preview);border:1.5px dashed var(--accent);background:var(--accent-tint-strong);pointer-events:none}.preview--bar{border-radius:var(--radius-pill)}.surface--3d .preview{transform-style:preserve-3d}.preview__top{position:absolute;left:-1.5px;right:-1.5px;top:-1.5px;transform-origin:50% 0;transform:rotateX(-90deg);border:1.5px dashed var(--accent);background:var(--accent-tint-strong);pointer-events:none}.preview--label{border-color:var(--note-strong);background:var(--note-bg)}.preview__size.preview__size--w{transform:translate(-50%,calc(-100% - 4px))}.preview__size.preview__size--h{transform:translate(calc(-100% - 4px),-50%)}.preview__size{position:absolute;z-index:var(--layer-guide);padding:4px 7px;border-radius:var(--radius-xs);background:var(--accent);color:var(--ink-on-accent);font-size:var(--text-2xs);font-weight:var(--weight-semibold);white-space:nowrap;transform:translate(12px,12px);pointer-events:none}.gap-band{position:absolute;z-index:var(--layer-preview);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);border-block:1px dashed var(--accent);background:var(--accent-tint);pointer-events:none}.gap-dim{position:absolute;top:0;bottom:0;right:var(--space-6);display:flex;flex-direction:row-reverse;align-items:center;gap:var(--space-3)}.gap-dim__line{position:relative;align-self:stretch;width:1px;background:var(--accent)}.gap-dim__line:before,.gap-dim__line:after{content:"";position:absolute;left:-6px;width:9px;height:1px;background:var(--accent)}.gap-dim__line:before{top:0}.gap-dim__line:after{bottom:0}.gap-handle{position:relative;width:28px;height:8px;padding:0;border:1.5px solid var(--accent);border-radius:var(--radius-pill);background:var(--surface-raised);cursor:ns-resize;pointer-events:auto;touch-action:none}.gap-handle:before{content:"";position:absolute;top:-12px;right:-10px;bottom:-12px;left:-10px}@media (hover: none){.gap-handle{width:40px;height:12px}.gap-handle:before{top:-16px;right:-12px;bottom:-16px;left:-12px}}.wall-ends{position:absolute;z-index:var(--layer-preview);pointer-events:none}.wall-end{position:absolute;left:50%;width:12px;height:12px;margin-left:-6px;border:1.5px solid var(--surface-raised);border-radius:var(--radius-xs);background:var(--accent);box-shadow:var(--shadow-xs);cursor:ns-resize;pointer-events:auto;touch-action:none}.wall-end--top{top:-6px}.wall-end--bottom{bottom:-6px}.mark{position:absolute;z-index:var(--layer-measure);background:var(--measure);pointer-events:none}.mark--v{width:1px;transform:translate(-50%)}.mark--h{height:1px;transform:translateY(-50%)}.mark__label{position:absolute;padding:4px 5px;border-radius:var(--radius-xs);background:var(--measure);color:var(--measure-ink);font-size:var(--text-2xs);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap}.mark--v .mark__label{left:5px;top:50%;transform:translateY(-50%)}.mark--h .mark__label{top:4px;left:50%;transform:translate(-50%)}.note{position:absolute;z-index:var(--layer-note);display:flex;align-items:center;gap:var(--space-3);padding:5px 9px;border:1px solid var(--note-border);border-radius:var(--note-radius);background:var(--note-bg);color:var(--note-ink);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap;cursor:move;touch-action:none}.note.is-selected{z-index:var(--layer-note-selected);border-color:var(--note-strong);box-shadow:0 0 0 3px var(--note-border)}.note__ptr{position:absolute;overflow:visible;pointer-events:none}.note__ptr--down{top:100%;left:50%;margin-left:-4px}.note__ptr--up{bottom:100%;left:50%;margin-left:-4px}.note__ptr--left{right:100%;top:50%;margin-top:-4px}.note__ptr--right{left:100%;top:50%;margin-top:-4px}.note__ptr-ring{display:none;fill:var(--note-border)}.note.is-selected .note__ptr-ring{display:inline}.note__ptr-border{fill:var(--note-border)}.note.is-selected .note__ptr-border{fill:var(--note-strong)}.note__ptr-fill{fill:var(--note-bg)}.note.is-editing{cursor:text}.note__input{min-width:3ch;padding:0;border:0;outline:none;background:transparent;color:inherit;font:inherit}.note-tools{position:absolute;bottom:calc(100% + 14px);left:50%;margin-left:var(--keep-x);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--line-default);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-md);white-space:nowrap;cursor:default;transform:translate(-50%);animation:fade-in var(--duration-fast) var(--ease-standard)}.note-tools .btn--ghost{color:var(--ink-primary)}.note-tools .btn--danger{background:var(--danger-soft)}.note-aim{position:absolute;display:block;width:10px;height:10px;padding:0;border:0;background:transparent;color:var(--note-strong);opacity:.45;cursor:pointer;touch-action:manipulation;transition:opacity var(--duration-fast) var(--ease-standard)}.note-aim:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.note-aim svg{display:block;width:10px;height:10px;fill:currentColor}.note-aim:hover,.note-aim:focus-visible{opacity:1}.note-aim.is-on{opacity:0;pointer-events:none}.note-aim.is-shown{opacity:0}.note-aim--up{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.note-aim--down{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.note-aim--left{right:calc(100% + 6px);top:50%;transform:translateY(-50%)}.note-aim--right{left:calc(100% + 6px);top:50%;transform:translateY(-50%)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.note-aim:before{top:-14px;right:-14px;bottom:-14px;left:-14px}.note-aim--up:before{bottom:-2px}.note-aim--down:before{top:-2px}.note-aim--left:before{right:-2px}.note-aim--right:before{left:-2px}.note-tools{bottom:calc(100% + 40px)}}.cell.is-hot{z-index:var(--layer-hot)}.surface--3d .cell,.surface--3d .cell__zone{transform-style:preserve-3d}.cell__depth{position:absolute;background:transparent;border:0;pointer-events:auto}.cell__depth--top{left:0;right:0;top:0;transform-origin:50% 0}.cell__depth--bottom{left:0;right:0;bottom:0;transform-origin:50% 100%}.cell__depth--left{top:0;bottom:0;left:0;transform-origin:0 50%}.cell__depth--right{top:0;bottom:0;right:0;transform-origin:100% 50%}.cell__depth--front{top:0;right:0;bottom:0;left:0}.surface--3d .cell__menu{transform:translateZ(var(--front)) translate(var(--keep-x)) translateY(3px) scale(.96)}.surface--3d .cell.is-hot .cell__menu{transform:translateZ(var(--front)) translate(var(--keep-x))}.surface--3d .preview{transform:translateZ(var(--front))}.surface--3d .preview__size{transform:translateZ(var(--front)) translate(12px,12px)}.surface--3d .preview__size.preview__size--w{transform:translateZ(var(--front)) translate(-50%,calc(-100% - 4px))}.surface--3d .preview__size.preview__size--h{transform:translateZ(var(--front)) translate(calc(-100% - 4px),-50%)}.measure-tag--space{border:1.5px dashed var(--accent);background:var(--accent-tint)}.measure-tag{position:absolute;z-index:var(--layer-measure);display:grid;place-items:center;pointer-events:none}.measure-tag__w{left:0;top:100%;width:100%}.measure-tag__h{left:100%;top:0;height:100%}.marquee{position:absolute;z-index:var(--layer-line);border:1px solid var(--accent);background:var(--accent-tint);pointer-events:none}.hud{position:absolute;z-index:var(--z-hud);margin-left:var(--keep-x);margin-top:var(--keep-y);flex-wrap:wrap;width:max-content;max-width:var(--keep-max);display:flex;align-items:center;gap:var(--space-3);padding:2px var(--space-2);border:1px solid var(--line-default);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-md);white-space:nowrap;cursor:default}.hud__gap{display:flex;align-items:center;gap:var(--space-1);height:var(--control-sm);padding:0 var(--space-1);border:1px solid var(--accent-border);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent)}.hud__gap-btn{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius-xs);background:transparent;color:var(--accent);font-size:var(--text-lg);line-height:1}.hud__gap-btn:hover:not(:disabled){background:var(--accent-soft-hover)}.hud__gap-btn:disabled{color:var(--ink-disabled)}.hud__gap-value{min-width:28px;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:center}.hud .hud__gap+.hud__gap{margin-left:calc(-1 * var(--space-2))}.hud__divider{flex:none;width:1px;height:20px;margin:0 var(--space-1);background:var(--line-default)}.hud .btn,.note-tools .btn{border-color:transparent;background:transparent}.shell--mobile .hud .btn,.shell--mobile .note-tools .btn{height:var(--dock-closed-control)}.hud .btn:hover:not(:disabled),.note-tools .btn:hover:not(:disabled){background:var(--surface-hover)}.hud .btn--danger:hover:not(:disabled),.note-tools .btn--danger:hover:not(:disabled){background:var(--danger-soft);border-color:transparent;color:var(--danger-ink)}.sel-actions{display:flex;align-items:center;gap:var(--space-3)}.sel-actions__icon{color:var(--ink-tertiary);font-size:var(--text-lg);line-height:1}.stage__fit.is-3d{cursor:grab;touch-action:none}.stage__fit.is-3d:active{cursor:grabbing}.scene{position:relative;perspective:var(--scene-perspective);perspective-origin:50% 40%}.scene__rig,.room{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d}.room__plane{position:absolute;border:1px solid var(--room-line);background:var(--room-plane);pointer-events:none}.room__plane--left{left:0;top:0;bottom:0;transform-origin:0 50%;transform:rotateY(-90deg)}.room__plane--right{right:0;top:0;bottom:0;transform-origin:100% 50%;transform:rotateY(90deg)}.room__plane--floor{left:0;right:0;bottom:0;transform-origin:50% 100%;transform:rotateX(-90deg);background:var(--room-floor)}.scene__rig,.room,.room__plane{pointer-events:none}.scene .surface{pointer-events:auto}.surface--3d{position:absolute;left:0;top:0;transform-style:preserve-3d;border-color:var(--room-line)}.surface--3d .piece,.surface--3d .wall-ends,.surface--3d .gap-band{transform-style:preserve-3d}.surface--3d .piece,.surface--3d .piece.is-selected,.surface--3d .piece--drawer,.surface--3d .piece--bar{border-color:transparent;background:transparent;box-shadow:none}.surface--3d .piece:before,.surface--3d .piece:after{content:none}.surface--3d .face--front:before{content:"";position:absolute;inset:calc(-1 * var(--hit-pad-3d)) -1px}.surface--3d .piece--wall .face--front:before{inset:-1px calc(-1 * var(--hit-pad-3d))}.surface--3d .piece--drawer .face--front:before{content:none}.face{position:absolute;border:var(--piece-stroke-width) solid var(--piece-stroke);background:var(--piece-face-front)}.face--front{top:0;right:0;bottom:0;left:0}.face--top{left:0;right:0;top:0;transform-origin:50% 0;transform:rotateX(90deg);background:var(--piece-face-top)}.face--bottom{left:0;right:0;bottom:0;transform-origin:50% 100%;transform:rotateX(-90deg);background:var(--piece-face-bottom)}.face--left,.face--right{top:0;bottom:0;background:var(--piece-face-side)}.face--left{left:0;transform-origin:0 50%;transform:rotateY(-90deg)}.face--right{right:0;transform-origin:100% 50%;transform:rotateY(90deg)}.piece--wall .face--front{background:var(--piece-wall)}.piece--drawer .face--front{transform-style:preserve-3d;background:var(--piece-drawer);box-shadow:inset 0 0 0 3px var(--piece-drawer),inset 0 0 0 4px var(--piece-fill)}.piece--stacked .face--front{box-shadow:inset 3px 0 0 var(--piece-drawer),inset -3px 0 0 var(--piece-drawer),var(--stack-frame-top),var(--stack-frame-bottom),inset 4px 0 0 var(--piece-fill),inset -4px 0 0 var(--piece-fill),var(--stack-frame-top-line),var(--stack-frame-bottom-line)}.piece--stacked:not(.piece--stacked-first) .face--front{border-top-width:0}.piece--stacked:not(.piece--stacked-first) .face--top{border-top-width:0}.face--bar{border:0;border-radius:var(--radius-pill)}.piece--bar .face--top{background:linear-gradient(var(--piece-bar),var(--piece-bar-shine))}.piece--bar .face--front{background:linear-gradient(var(--piece-bar-shine),var(--piece-bar) 60%)}.piece.is-hover .face{border-color:var(--accent)}.piece.is-selected .face{border-color:var(--piece-selected-stroke)}.piece--bar.is-hover .face--bar{box-shadow:inset 0 0 0 var(--piece-stroke-width) var(--accent)}.piece--bar.is-selected .face--bar{box-shadow:inset 0 0 0 var(--piece-stroke-width) var(--piece-selected-stroke)}.stage__hud{position:absolute;top:var(--space-5);left:50%;z-index:var(--z-hud);transform:translate(-50%)}.hud--floating{position:static}.human{display:block;color:var(--ink-tertiary);pointer-events:auto}.human__lean{transform-box:view-box;transform-origin:82px 356px;transition:transform var(--duration-slow) var(--ease-emphasized)}.human:hover .human__lean{transform:rotate(-3.5deg)}.human__arm,.human__eyes{transition:opacity var(--duration-base) var(--ease-emphasized)}.human__arm--up,.human__eyes--up,.human:hover .human__arm--down,.human:hover .human__eyes--rest{opacity:0}.human:hover .human__arm--up,.human:hover .human__eyes--up{opacity:1}.stage__span{position:relative;flex:none}.stage__span-view{position:absolute;left:0;bottom:0}.stage__person{position:absolute;bottom:0;left:0}.human--3d{position:absolute;transform-origin:50% 100%;color:var(--ink-tertiary)}.span-line__pill,.chip-accent,.mark__label,.preview__size{text-box:trim-both cap alphabetic}.hanger{position:absolute;z-index:var(--layer-behind);pointer-events:none}.hanger--front{z-index:var(--layer-frame)}.hanger__wire{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.hanger path{fill:none;stroke:var(--ink-tertiary);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4;vector-effect:non-scaling-stroke}.modal--start:before{content:"";position:absolute;top:0;right:0;z-index:0;width:var(--start-art-width);height:var(--start-art-height);background-image:linear-gradient(var(--line-default) 1px,transparent 1px),linear-gradient(90deg,var(--line-default) 1px,transparent 1px);background-size:24px 24px;background-position:right -1px top -1px;-webkit-mask-image:radial-gradient(circle at top right,black,transparent 72%);mask-image:radial-gradient(circle at top right,black,transparent 72%);pointer-events:none}.modal--start .modal__body{position:relative;z-index:1}.start{display:flex;flex-direction:column;gap:var(--space-8)}.start__intro{display:flex;flex-direction:column;gap:var(--space-5);padding-right:var(--space-9)}.start__logo{display:block;flex:none;align-self:flex-start;width:auto;max-width:100%;height:76px;margin-bottom:var(--space-4);object-fit:contain}.start__title{margin:0;color:var(--ink-primary);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.start__lede{margin:0;max-width:78ch;color:var(--ink-secondary);font-size:var(--text-lg);line-height:1.5}.start__choices{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--space-6)}.start-card{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-7);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface-panel-muted)}.start-card--open{align-items:center;border:1px dashed var(--line-strong);background:var(--surface-raised);text-align:center;transition:border-color var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard)}.start-card--open .start-card__text{flex:1}.start-card--open .btn{align-self:stretch}.start-card--open.is-dropping{border-color:var(--accent);background:var(--accent-soft)}.start-card__drop-icon{color:var(--ink-tertiary)}.start-card--open.is-dropping .start-card__drop-icon{color:var(--accent)}.start__warn{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);border:1px solid var(--highlight-border);border-radius:var(--radius-md);background:var(--highlight-soft)}.start__warn-icon{flex:none;display:grid;place-items:center;width:var(--icon-lg);height:var(--icon-lg);border-radius:var(--radius-pill);background:var(--highlight);color:var(--ink-on-cta);font-size:var(--text-sm);font-weight:var(--weight-bold)}.start__warn-text{flex:1;margin:0;color:var(--ink-secondary);font-size:var(--text-md);line-height:1.45}.start__warn-text strong{color:var(--ink-primary);font-weight:var(--weight-semibold)}.start__warn .btn{flex:none}.start__warn--compact{display:block;margin:0;padding:var(--space-4) var(--space-5);color:var(--ink-secondary);font-size:var(--text-md);line-height:1.45}.start__warn-link{color:var(--accent);font-weight:var(--weight-semibold)}.start-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.start-card__title{margin:0;color:var(--ink-primary);font-size:var(--text-xl);font-weight:var(--weight-semibold)}.start-card__text{margin:0;color:var(--ink-secondary);font-size:var(--text-md);line-height:1.45}.start__sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.start-field{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.start-field__label{color:var(--ink-primary);font-size:var(--text-sm)}.start-field__box{position:relative;display:flex}.start-field__box .field{flex:1;width:100%;height:var(--control-lg);padding-right:var(--space-9);font-size:var(--text-lg);font-weight:var(--weight-semibold);-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.start-field__box .field::-webkit-inner-spin-button,.start-field__box .field::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.start-field__unit{position:absolute;top:50%;right:var(--space-4);color:var(--ink-tertiary);font-size:var(--text-sm);pointer-events:none;transform:translateY(-50%)}.start-card__notice{display:flex;align-items:flex-start;gap:var(--space-4);margin:0;padding:var(--space-4) var(--space-5);border:1px solid var(--highlight-border);border-radius:var(--radius-sm);background:var(--highlight-soft);color:var(--ink-secondary);font-size:var(--text-sm);line-height:1.45}.start-card__notice .start__warn-icon{width:18px;height:18px;font-size:var(--text-xs)}.start-card__hint{margin:0;color:var(--ink-tertiary);font-size:var(--text-xs);line-height:1.5}.link-btn{padding:0;border:0;background:transparent;color:var(--ink-secondary);font:inherit;text-decoration:underline}@media (max-width: 767px),(hover: none) and (pointer: coarse){.start__choices{grid-template-columns:minmax(0,1fr)}.start__intro{padding-right:0}.start__logo{height:56px}.modal--start:before{width:var(--start-art-width-mobile);height:var(--start-art-height-mobile);background-size:18px 18px}}.modal--start .modal__close{width:var(--close-lg);height:var(--close-lg)}.modal--start .modal__close svg{width:var(--icon-xl);height:var(--icon-xl)}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-toast);width:100%;height:100%;pointer-events:none}.modal-scrim:has(.modal--celebrate){backdrop-filter:none;-webkit-backdrop-filter:none}.modal.modal--celebrate{width:min(var(--modal-width-celebrate),100%);text-align:center}.modal--celebrate .modal__body{--modal-pad-top: var(--space-10);--modal-pad-x: var(--space-9);--modal-pad-bottom: var(--space-8)}.modal.modal--kofi{width:min(var(--modal-width-kofi),100%)}.modal--kofi .modal__body{--modal-pad-top: var(--space-10);--modal-pad-x: var(--space-5);--modal-pad-bottom: var(--space-5)}.celebrate{display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}.celebrate__title,.celebrate__text,.celebrate__dismiss{animation:celebrate-rise var(--duration-slow) var(--ease-standard) both;animation-delay:var(--celebrate-in)}.celebrate__title{--celebrate-in: 0ms}.celebrate__text{--celebrate-in: 90ms}.coffee-callout{--celebrate-in: .95s;animation:celebrate-pop calc(var(--duration-slow) + var(--duration-base)) var(--ease-emphasized) both;animation-delay:var(--celebrate-in)}.celebrate__dismiss{--celebrate-in: 1.25s}@keyframes celebrate-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes celebrate-pop{0%{opacity:0;transform:translateY(14px) scale(.86)}60%{opacity:1;transform:translateY(-2px) scale(1.04)}to{opacity:1;transform:none}}.celebrate__title{margin:0;color:var(--ink-primary);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.celebrate__text{margin:0;color:var(--ink-secondary);font-size:var(--text-lg);line-height:1.45}.celebrate__motto{display:block;margin:0}.celebrate__file{color:var(--ink-primary);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.coffee-callout{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);width:100%;margin-top:var(--space-3);padding:var(--space-6);border:1px solid var(--highlight-border);border-radius:var(--radius-lg);background:var(--highlight-soft)}.coffee-callout__text{margin:0;color:var(--ink-primary);font-size:var(--text-md);line-height:1.45}.celebrate__dismiss{color:var(--ink-tertiary);font-size:var(--text-sm)}.kofi-frame{display:block;width:100%;height:min(var(--kofi-frame-height),calc(100dvh - 160px));border:0;border-radius:var(--radius-lg);background:var(--surface-raised)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.modal-scrim:has(.modal--celebrate,.modal--kofi){place-items:center;padding:var(--space-6)}.modal.modal--celebrate,.modal.modal--kofi{height:auto;max-height:calc(100dvh - 2 * var(--space-6));border-radius:var(--radius-xl)}.modal--celebrate .modal__body{--modal-pad-top: var(--space-10);--modal-pad-x: var(--space-6);--modal-pad-bottom: var(--space-7)}.modal--celebrate .modal__close,.modal--kofi .modal__close{top:var(--space-5);right:var(--space-5)}}@media (prefers-reduced-motion: reduce){.celebrate__title,.celebrate__text,.coffee-callout,.celebrate__dismiss{animation:none;opacity:1;transform:none}}.legal-links{display:flex;align-items:center;gap:var(--space-3);color:var(--ink-tertiary);font-size:var(--text-xs)}.legal-links__link{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:none;text-underline-offset:2px}.legal-links__link:hover,.legal-links__link:focus-visible{color:var(--ink-secondary);text-decoration:underline}.stage-bar__legal .legal-links__link{text-decoration:underline}.modal.modal--legal{width:min(var(--modal-width-legal),100%)}.legal{display:flex;flex-direction:column;gap:var(--space-6)}.legal .tabs{position:sticky;top:calc(-1 * var(--modal-pad-top));z-index:1;margin:calc(-1 * var(--space-6)) calc(-1 * var(--modal-pad-x)) 0;padding:var(--space-6) calc(var(--modal-pad-x) + var(--space-9)) 0 var(--modal-pad-x);border-bottom:1px solid var(--line-subtle);background:var(--surface-raised)}.legal .tabs__tab{font-size:var(--text-lg)}.legal__body{color:var(--ink-secondary);font-size:var(--text-md);line-height:1.6}.legal__body h3{margin:var(--space-7) 0 var(--space-3);color:var(--ink-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.legal__body p,.legal__body ul{margin:0 0 var(--space-4)}.legal__body ul{padding-left:var(--space-8)}.legal__body li+li{margin-top:var(--space-3)}.legal__body strong{color:var(--ink-primary);font-weight:var(--weight-semibold)}.legal__body a{color:var(--accent)}.legal__meta{color:var(--ink-tertiary);font-size:var(--text-sm)}.legal__body code{padding:1px var(--space-2);border-radius:var(--radius-xs);background:var(--surface-sunken);font-family:var(--font-mono);font-size:var(--text-sm)}.report{position:fixed;z-index:var(--z-popover);display:flex;flex-direction:column;gap:var(--space-4);width:var(--report-width);max-width:calc(100vw - var(--space-9));padding:var(--space-5) var(--space-6) var(--space-5) var(--space-5);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-md);animation:report-in var(--duration-slow) var(--ease-standard) both}.report--feedback,.report--bug{bottom:var(--anchor-bottom);right:var(--anchor-right)}.report__close{position:absolute;top:calc(-1 * var(--space-5));right:calc(-1 * var(--space-5));display:grid;place-items:center;width:var(--control-sm);height:var(--control-sm);padding:0;border:1px solid var(--line-subtle);border-radius:var(--radius-pill);background:var(--surface-raised);box-shadow:var(--shadow-xs);color:var(--ink-tertiary);cursor:pointer}.report__close:hover{border-color:var(--line-default);background:var(--surface-hover);color:var(--ink-primary)}.report__form{display:flex;flex-direction:column;gap:var(--space-5)}.report__ask{display:flex;align-items:center;gap:var(--space-5)}.report--open .report__ask{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.report__question{color:var(--ink-primary);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.report__pick{display:flex;align-items:center;gap:var(--space-4)}.report__select{display:none;color:var(--ink-secondary);font-size:var(--text-xs)}.report--open .report__select{display:inline}.report__thumbs{display:flex;flex:none;gap:var(--space-3)}.report__thumb{display:grid;place-items:center;width:var(--control-sm);height:var(--control-sm);padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:var(--shadow-xs);color:var(--ink-secondary);cursor:pointer}.report__thumb:hover{border-color:var(--ink-secondary);background:var(--surface-hover);color:var(--ink-primary)}.report__thumb.is-chosen{box-shadow:inset 0 0 0 1px currentColor}.report__thumb--up.is-chosen{border-color:var(--accent);background:var(--accent-soft-hover);color:var(--accent)}.report__thumb--down.is-chosen{border-color:var(--danger);background:var(--danger-soft);color:var(--danger-ink)}.report__thumb--down .report__thumb-icon{transform:rotate(180deg)}.report__more{display:flex;flex-direction:column;gap:var(--space-3)}.report__label{color:var(--ink-secondary);font-size:var(--text-xs);line-height:var(--leading-normal)}.report__text{width:100%;padding:var(--space-4);border:1px solid var(--line-default);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink-primary);font-family:inherit;font-size:var(--text-sm);line-height:var(--leading-normal);resize:vertical;margin-bottom:var(--space-4)}.report__text:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.report__problem{margin:0;color:var(--danger-ink);font-size:var(--text-xs);line-height:var(--leading-normal)}.report__thanks{margin:0;color:var(--ink-primary);font-size:var(--text-sm);line-height:var(--leading-normal)}.report__buttons{display:flex;gap:var(--space-3)}.report__trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}@keyframes report-in{0%{opacity:0;transform:translateY(var(--space-4))}to{opacity:1;transform:none}}@media (max-width: 767px),(hover: none) and (pointer: coarse){.report{position:fixed;top:auto;right:var(--space-5);bottom:var(--space-5);left:var(--space-5);z-index:var(--z-toast);width:auto;max-width:none}.report{width:auto}}@media (prefers-reduced-motion: reduce){.report{animation:none}}.bug{position:relative;display:flex;flex:none;align-items:center}.bug__button{display:grid;place-items:center;width:var(--control-sm);height:var(--control-sm);min-width:var(--tap-min-width);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-tertiary);cursor:pointer}.bug__button:hover,.bug__button[aria-expanded=true]{background:var(--surface-hover);color:var(--ink-secondary)}.stage-bar .bug{margin-right:calc(-1 * var(--space-2))}.stage-bar__feedback{padding:0;border:0;background:transparent;color:var(--ink-tertiary);font:inherit;font-size:var(--text-xs);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.stage-bar__feedback:hover,.stage-bar__feedback:focus-visible{color:var(--ink-secondary)}.modal.modal--send{width:min(var(--modal-width-send),100%)}.send{display:flex;flex-direction:column;gap:var(--space-5);padding-right:var(--space-8)}.send__title{margin:0;color:var(--ink-primary);font-size:var(--text-xl);font-weight:var(--weight-semibold)}.send__lede{margin:0;color:var(--ink-secondary);font-size:var(--text-md);line-height:1.45}.send__lede strong{color:var(--ink-primary);font-weight:var(--weight-semibold)}.send__actions{display:flex;justify-content:flex-end;gap:var(--space-4)}@media (max-width: 767px),(hover: none) and (pointer: coarse){.send{padding-right:0;padding-top:var(--space-6)}}.photo-bg{display:flex;flex-direction:column;gap:var(--space-4)}.photo-upload{margin-top:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:var(--space-5);border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--surface-raised);text-align:center;touch-action:manipulation;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.photo-upload:hover{border-color:var(--accent);background:var(--accent-soft)}.photo-upload__title{font-size:var(--text-md);font-weight:var(--weight-semibold)}.photo-crop{align-self:center;width:min(100%,var(--photo-crop-width));max-height:var(--photo-crop-max-height);border:1px solid var(--line-strong);border-radius:var(--radius-sm);touch-action:pan-y}.photo-crop.is-movable{cursor:grab;touch-action:none}.photo-crop.is-movable:active{cursor:grabbing}.photo-hint{margin:0;color:var(--ink-tertiary);font-size:var(--text-xs);line-height:1.4}.photo-tile{display:flex;flex-direction:column;gap:var(--space-3)}.photo-tile__label{color:var(--ink-primary);font-size:var(--text-sm)}.photo-tile input[type=range]{width:100%;accent-color:var(--accent)}.photo-actions{display:flex;gap:var(--space-4)}.faq-button{display:grid;place-items:center;flex:none;width:var(--control-sm);height:var(--control-sm);min-width:var(--tap-min-width);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-tertiary);font-size:var(--text-sm);font-weight:var(--weight-semibold);touch-action:manipulation}.faq-button:hover{background:var(--surface-hover);color:var(--ink-secondary)}.faq-button>span{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid currentColor;border-radius:var(--radius-pill);line-height:1}.stage-bar .faq-button{margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-2))}.modal.modal--faq{width:min(var(--modal-width-faq),100%)}.faq{display:flex;flex-direction:column;gap:var(--space-6);padding-right:var(--space-8)}.faq__title{margin:0;color:var(--ink-primary);font-size:var(--text-xl);font-weight:var(--weight-semibold)}.faq__item{display:flex;flex-direction:column;gap:var(--space-2);scroll-margin-top:calc(var(--close-lg) + var(--space-4))}.faq__q{margin:0;color:var(--ink-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.faq__a{margin:0;color:var(--ink-secondary);font-size:var(--text-md);line-height:1.55}@media (max-width: 767px),(hover: none) and (pointer: coarse){.faq{padding-right:0;padding-top:var(--space-6)}}.design-note{margin:0;color:var(--ink-tertiary);font-size:var(--text-xs);line-height:1.4}.items+.design-note{margin-top:var(--space-4)}.design-note__link{padding:0;border:0;background:transparent;color:var(--accent);font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.gallery{max-width:var(--gallery-max-width);margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-10);display:flex;flex-direction:column;gap:var(--space-8)}.gallery__head h1{font-size:var(--text-xl);font-weight:var(--weight-semibold)}.gallery__meta{color:var(--ink-tertiary);font-size:var(--text-xs)}.gallery__section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5);padding:var(--space-6);border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--surface-panel)}.gallery__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.gallery__stack{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-5)}.gallery__note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--note-bg);color:var(--note-ink);font-size:var(--text-xs)}.gallery__resize{width:var(--gallery-resize-width);height:80px;min-width:var(--gallery-resize-min-width);max-width:100%;display:grid;place-items:center;resize:both;overflow:auto;border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--ink-tertiary);font-size:var(--text-xs)}
