:root{--bs-color-neutral-0:#fff;--bs-color-neutral-50:#f5f6f7;--bs-color-neutral-100:#e8eaed;--bs-color-neutral-200:#d7dbe0;--bs-color-neutral-400:#9aa0a8;--bs-color-neutral-600:#59616c;--bs-color-neutral-900:#1c2025;--bs-color-blue-50:#e5f4ff;--bs-color-blue-600:#0b87e3;--bs-color-blue-700:#06c;--bs-color-blue-800:#0057ad;--bs-color-red-600:#dc3b3b;--bs-color-ink-900:#16191d;--bs-color-ink-800:#1d2126;--bs-color-ink-700:#24282e;--bs-color-ink-600:#2c3138;--bs-color-ink-500:#363c44;--bs-color-ink-300:#6b7482;--bs-color-ink-100:#b9c1cc;--bs-color-ink-50:#e6eaf0;--bs-color-blue-300:#6cb8ff;--bs-color-blue-950:#10344f;--bs-color-red-400:#ff7b7b;--bs-space-1:4px;--bs-space-2:8px;--bs-space-3:12px;--bs-space-4:16px;--bs-space-5:20px;--bs-space-6:24px;--bs-radius-sm:4px;--bs-radius-md:6px;--bs-radius-lg:10px;--bs-radius-xl:12px;--bs-font-size-xs:11px;--bs-font-size-sm:12px;--bs-font-size-md:13px;--bs-font-size-lg:16px;--bs-line-height-body:1.5;--bs-control-height-sm:24px;--bs-control-height-md:30px;--bs-control-height-lg:34px;--bs-opacity-muted:.45;--bs-duration-fast:.1s;--bs-duration-normal:.16s;--bs-ease-standard:cubic-bezier(.2, 0, 0, 1);--bs-shadow-panel-light:0 2px 8px #00000024;--bs-shadow-panel-dark:0 2px 12px #0000008c;--bs-shadow-popover-light:0 8px 24px #0000001f;--bs-shadow-popover-dark:0 8px 28px #0009;--bs-shadow-focus-blue:0 0 0 2px #0d99ff4d;--bs-scrim-light:#0000008c;--bs-scrim-dark:#000000b3;--bs-surface-canvas:var(--bs-color-neutral-100);--bs-surface-panel:var(--bs-color-neutral-0);--bs-surface-raised:var(--bs-color-neutral-50);--bs-surface-control:var(--bs-color-neutral-0);--bs-surface-control-hover:var(--bs-color-neutral-100);--bs-surface-control-pressed:var(--bs-color-blue-50);--bs-surface-input:var(--bs-color-neutral-50);--bs-surface-selection:var(--bs-color-blue-50);--bs-content-primary:var(--bs-color-neutral-900);--bs-content-secondary:var(--bs-color-neutral-600);--bs-content-disabled:var(--bs-color-neutral-400);--bs-content-on-accent:var(--bs-color-neutral-0);--bs-border-default:var(--bs-color-neutral-200);--bs-border-strong:var(--bs-color-neutral-400);--bs-border-on-content:var(--bs-color-neutral-0);--bs-border-focus:var(--bs-color-blue-600);--bs-action-accent:var(--bs-color-blue-700);--bs-action-accent-hover:var(--bs-color-blue-800);--bs-action-danger:var(--bs-color-red-600);--bs-state-hidden-opacity:var(--bs-opacity-muted);--bs-focus-ring:var(--bs-shadow-focus-blue);--bs-panel-shadow:var(--bs-shadow-panel-light);--bs-popover-shadow:var(--bs-shadow-popover-light);--bs-scrim:var(--bs-scrim-light);--bs-3d-background:#e5e7ea;--bs-3d-ground-neutral:#d2d5da;--bs-3d-grid-main:#858c96;--bs-3d-grid-sub:#b4bac2;--panel-bg:var(--bs-surface-panel);--panel-border:var(--bs-border-default);--text:var(--bs-content-primary);--text-dim:var(--bs-content-secondary);--accent:var(--bs-action-accent)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bs-surface-canvas:var(--bs-color-ink-900);--bs-surface-panel:var(--bs-color-ink-800);--bs-surface-raised:var(--bs-color-ink-700);--bs-surface-control:var(--bs-color-ink-600);--bs-surface-control-hover:var(--bs-color-ink-500);--bs-surface-control-pressed:var(--bs-color-blue-950);--bs-surface-input:var(--bs-color-ink-700);--bs-surface-selection:var(--bs-color-blue-950);--bs-content-primary:var(--bs-color-ink-50);--bs-content-secondary:var(--bs-color-ink-100);--bs-content-disabled:var(--bs-color-ink-300);--bs-content-on-accent:var(--bs-color-ink-900);--bs-border-default:var(--bs-color-ink-500);--bs-border-strong:var(--bs-color-ink-300);--bs-border-on-content:var(--bs-color-ink-900);--bs-border-focus:var(--bs-color-blue-300);--bs-action-accent:var(--bs-color-blue-300);--bs-action-accent-hover:var(--bs-color-blue-50);--bs-action-danger:var(--bs-color-red-400);--bs-panel-shadow:var(--bs-shadow-panel-dark);--bs-popover-shadow:var(--bs-shadow-popover-dark);--bs-scrim:var(--bs-scrim-dark);--bs-3d-background:#101317;--bs-3d-ground-neutral:#262b31;--bs-3d-grid-main:#4a525c;--bs-3d-grid-sub:#333941}.bs-button,.bs-icon-button,.bs-input{font:inherit;transition:background-color var(--bs-duration-fast) var(--bs-ease-standard), border-color var(--bs-duration-fast) var(--bs-ease-standard), color var(--bs-duration-fast) var(--bs-ease-standard), box-shadow var(--bs-duration-fast) var(--bs-ease-standard)}.bs-button{justify-content:center;align-items:center;gap:var(--bs-space-1);font-size:var(--bs-font-size-md);min-height:var(--bs-control-height-md);padding:var(--bs-space-1) var(--bs-space-2);border:1px solid var(--bs-border-default);border-radius:var(--bs-radius-md);background:var(--bs-surface-control);color:var(--bs-content-primary);cursor:pointer;display:inline-flex}.bs-button:hover:not(:disabled){background:var(--bs-surface-control-hover)}.bs-button[data-variant=danger],.bs-icon-button[data-variant=danger]{color:var(--bs-action-danger)}.bs-button[data-pressed=true],.bs-button[aria-pressed=true]{border-color:var(--bs-border-focus);background:var(--bs-surface-control-pressed);color:var(--bs-action-accent)}.bs-button[data-variant=primary]{border-color:var(--bs-action-accent);background:var(--bs-action-accent);color:var(--bs-content-on-accent)}.bs-button[data-variant=primary]:hover:not(:disabled){border-color:var(--bs-action-accent-hover);background:var(--bs-action-accent-hover)}.bs-icon-button{min-width:var(--bs-control-height-sm);min-height:var(--bs-control-height-sm);padding:2px var(--bs-space-1);border-radius:var(--bs-radius-sm);color:var(--bs-content-secondary);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.bs-icon-button:hover:not(:disabled){background:var(--bs-surface-control-hover);color:var(--bs-content-primary)}.bs-icon-button[data-pressed=true],.bs-icon-button[aria-pressed=true]{color:var(--bs-action-accent)}.bs-button:focus-visible,.bs-icon-button:focus-visible,.bs-input:focus-visible{border-color:var(--bs-border-focus);box-shadow:var(--bs-focus-ring);outline:none}.bs-button:disabled,.bs-icon-button:disabled,.bs-input:disabled{color:var(--bs-content-disabled);cursor:not-allowed;opacity:.7}.bs-input{min-height:var(--bs-control-height-md);width:100%;padding:var(--bs-space-1) var(--bs-space-2);border:1px solid var(--bs-border-default);border-radius:var(--bs-radius-md);background:var(--bs-surface-input);color:var(--bs-content-primary)}.bs-input[aria-invalid=true]{border-color:var(--bs-action-danger)}.bs-tabs{gap:var(--bs-space-1);padding:var(--bs-space-1);border-bottom:1px solid var(--bs-border-default);display:flex}.bs-tabs [role=tab]{min-height:var(--bs-control-height-md);padding:var(--bs-space-1) var(--bs-space-3);border-radius:var(--bs-radius-md);color:var(--bs-content-secondary);font:inherit;cursor:pointer;background:0 0;border:0}.bs-tabs [role=tab]:hover{background:var(--bs-surface-control-hover)}.bs-tabs [role=tab][aria-selected=true]{background:var(--bs-surface-control-pressed);color:var(--bs-action-accent);font-weight:600}.bs-tabs [role=tab]:focus-visible{box-shadow:var(--bs-focus-ring);outline:none}.bs-divider{background:var(--bs-border-default);flex:0 0 1px;align-self:stretch}.bs-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 16px;width:16px;height:16px;display:block}*{box-sizing:border-box;margin:0;padding:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{width:100%;height:100%;color:var(--text);background:var(--bs-surface-canvas);font-family:Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif;overflow:hidden}#mobile-guidance{display:none}@media (max-width:960px){#mobile-guidance{z-index:1000;background:var(--bs-surface-canvas);place-items:center;padding:28px;display:grid;position:fixed;inset:0}.mobile-guidance-card{width:min(100%,360px);color:var(--text);text-align:center}.mobile-guidance-mark{border:2px solid;border-radius:5px;width:36px;height:26px;margin:0 auto 22px;position:relative}.mobile-guidance-mark:before{content:"";background:currentColor;width:2px;height:5px;position:absolute;top:26px;left:15px}.mobile-guidance-mark:after{content:"";background:currentColor;width:16px;height:2px;position:absolute;top:31px;left:8px}.mobile-guidance-eyebrow{color:var(--text-dim);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:600}#mobile-guidance-title{letter-spacing:-.03em;font-size:clamp(24px,8vw,34px);line-height:1.2}#mobile-guidance-description{color:var(--text-dim);margin-top:14px;font-size:14px;line-height:1.7}.mobile-guidance-requirements{border:1px solid var(--panel-border);background:var(--bs-surface-panel);border-radius:999px;margin-top:24px;padding:8px 12px;font-size:12px;font-weight:600;display:inline-block}}#app-grid{grid-template-rows:minmax(0,1fr);grid-template-columns:56px 248px minmax(0,1fr) 280px;display:grid;position:fixed;inset:0}#editor-area{background:var(--bs-surface-canvas);grid-area:1/3;position:relative;overflow:hidden}#viewport{display:block;position:absolute;inset:0}#toolbar{background:var(--panel-bg);border:1px solid var(--panel-border);box-shadow:var(--bs-panel-shadow);-webkit-user-select:none;user-select:none;z-index:20;border-radius:12px;align-items:center;gap:4px;padding:6px;display:flex;position:fixed;bottom:18px;left:calc(50% - 16px);transform:translate(-50%)}#toolbar .toolbar-group,#sidebar-left .toolbar-group{align-items:center;gap:2px;display:flex}#toolbar .bs-button{white-space:nowrap;border-color:#0000;min-height:34px}#toolbar .tool-button{min-width:34px;padding-inline:7px}#toolbar .block-swatch-pair{flex-shrink:0;width:44px;height:32px;position:relative}#toolbar .block-swatch{border:2px solid var(--bs-border-on-content);border-radius:var(--bs-radius-sm);background-color:var(--bs-surface-control);cursor:pointer;background-size:cover;width:22px;height:22px;padding:0;position:absolute}#toolbar .block-swatch.active{z-index:2;inset-block-start:0;inset-inline-start:0}#toolbar .block-swatch.spare{z-index:1;inset-block-end:0;inset-inline-start:12px}#toolbar .block-swatch:hover,#toolbar .block-swatch:focus-visible{border-color:var(--accent)}#toolbar .block-swatch-swap.bs-icon-button{min-width:16px;min-height:16px;color:var(--text-dim);z-index:3;background:0 0;border-color:#0000;padding:0;position:absolute;inset-block-start:0;inset-inline-end:0}#toolbar .block-swatch-swap.bs-icon-button:hover,#toolbar .block-swatch-swap.bs-icon-button:focus-visible{color:var(--accent)}#toolbar .block-swatch-swap .bs-icon{width:14px;height:14px}#toolbar .tool-button .bs-icon{width:18px;height:18px}#toolbar .bs-divider{height:28px;margin:0 3px}#sidebar-left .sidebar-document{border-bottom:1px solid var(--panel-border);flex-direction:column;flex:none;gap:4px;padding:8px 12px 10px;display:flex}#sidebar-left .project-name{background:0 0;border-color:#0000;width:100%;min-height:32px;font-size:14px;font-weight:600}#sidebar-left .project-name:hover,#sidebar-left .project-name:focus{border-color:var(--panel-border);background:var(--bs-surface-input)}#sidebar-left .document-save-state{min-height:14px;color:var(--text-dim);margin:0;padding-inline:2px;font-size:11px;line-height:14px}#sidebar-left .document-status-row{justify-content:space-between;align-items:center;gap:8px;display:flex}#sidebar-left .document-status-row .document-save-state{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}#sidebar-left .document-actions{flex:none;gap:4px;display:flex}#sidebar-left .document-save,#sidebar-left .document-export{flex:none}#sidebar-left .document-storage-note{color:var(--text-dim);margin:0;padding-inline:2px;font-size:10px;line-height:13px}#sidebar-left .document-name-row{align-items:center;gap:2px;display:flex}#sidebar-left .document-name-row .project-name{flex:1;min-width:0}#sidebar-left .document-file-menu-button{flex:none}.document-file-menu{border:1px solid var(--panel-border);border-radius:var(--bs-radius-md);background:var(--bs-surface-panel,#fff);box-shadow:var(--bs-popover-shadow);margin:0;padding:4px;position:fixed;inset:auto}.document-file-menu:popover-open{flex-direction:column;gap:2px;min-width:132px;display:flex}.document-file-menu .document-file-menu-item{background:0 0;border-color:#0000;justify-content:flex-start}.document-file-menu .document-file-menu-item:hover{background:var(--bs-surface-control-hover)}#palette .recent{padding:10px 10px 0}#palette .recent-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}#palette .recent-grid .swatch.empty{aspect-ratio:1;border:1px dashed var(--panel-border);cursor:default;border-radius:4px}#palette .tabs{border-bottom:1px solid var(--panel-border);margin-top:10px;display:flex}#palette .tabs button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 0;font-size:13px}#palette .tabs button.active{color:var(--accent);border-bottom:2px solid var(--accent)}#palette .blocks{flex-wrap:wrap;flex:1;align-content:start;gap:6px;padding:10px;display:flex;overflow-y:auto}#palette .blocks .swatch{flex-shrink:0;width:calc(20% - 4.8px)}#palette .swatch{aspect-ratio:1;cursor:pointer;border:2px solid #0000;position:relative}#palette .swatch:hover{border-color:var(--bs-border-strong)}#palette .swatch.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}#palette .swatch.shape-slab{clip-path:polygon(0 0,100% 0,100% 50%,0 50%)}#palette .swatch.shape-stairs{clip-path:polygon(50% 0,100% 0,100% 100%,0 100%,0 50%,50% 50%)}#palette .active-name{border-top:1px solid var(--panel-border);color:var(--text-dim);min-height:32px;padding:8px 10px;font-size:12px}#recipes .recipes-header{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;padding:10px 12px;font-weight:600;display:flex}#recipes button{border:1px solid var(--panel-border);background:var(--bs-surface-control);color:var(--text);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px}#recipes button:hover{background:var(--bs-surface-control-hover)}#recipes .recipes-empty{color:var(--text-dim);padding:12px;line-height:1.6}#recipes .recipe{border-bottom:1px solid var(--panel-border)}#recipes .recipe.active .recipe-head{background:var(--bs-surface-selection)}#recipes .recipe-head{cursor:pointer;align-items:center;gap:8px;padding:8px 12px;display:flex}#recipes .recipe-head:hover{background:var(--bs-surface-control-hover)}#recipes .chips i{width:12px;height:12px;margin-right:2px;display:inline-block}#recipes .recipe-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}#recipes .badge{color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:1px 5px;font-size:10px}#recipes .icon-btn{color:var(--text-dim);background:0 0;border:none;padding:2px 4px}#recipes .icon-btn:hover{color:var(--bs-action-danger);background:0 0}#recipes .recipe-editor{background:var(--bs-surface-raised);padding:8px 12px 12px}#recipes .recipe-name-input{width:100%;margin-bottom:8px}#recipes .recipe-entry{align-items:center;gap:6px;padding:3px 0;display:flex}#recipes .recipe-entry-swatch{flex-shrink:0;width:14px;height:14px}#recipes .recipe-entry-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}#recipes .recipe-entry-weight{width:48px;min-height:24px}#recipes .recipe-entry-percent{text-align:right;width:36px;color:var(--text-dim);font-size:11px}#recipes .add-entry{width:100%;margin-top:8px}#recipes .recipe-editor-hint,#recipes .recipe-editor-empty{color:var(--text-dim);margin-top:8px;font-size:11px;line-height:1.5}#sidebar-left{background:var(--panel-bg);border-right:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;flex-direction:column;grid-area:1/2;display:flex;overflow:hidden}#sidebar-rail{border-right:1px solid var(--panel-border);background:var(--bs-surface-panel,#fff);flex-direction:column;grid-area:1/1;align-items:center;gap:4px;padding:8px 0;display:flex;overflow:hidden}#sidebar-rail .rail-logo{border-radius:var(--bs-radius-md);width:32px;height:32px;color:var(--accent);margin-bottom:4px}#sidebar-rail .rail-items{gap:var(--bs-space-1);flex-direction:column;flex:1;align-items:center;width:100%;display:flex}#sidebar-rail .rail-item{width:48px;height:auto;padding:var(--bs-space-3) 2px;border-radius:var(--bs-radius-md);color:var(--text-dim);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;display:flex}#sidebar-rail .rail-item-label{letter-spacing:-.02em;font-size:9px;line-height:1.1}#sidebar-rail .rail-item:hover{background:var(--bs-surface-control-hover);color:var(--bs-content-primary)}#sidebar-rail .rail-item.active{background:var(--bs-surface-control);color:var(--accent)}#sidebar-rail .rail-lang{border-radius:var(--bs-radius-sm,4px);width:32px;height:24px;color:var(--text-dim);letter-spacing:.02em;margin-top:auto;font-size:10px;font-weight:600}#sidebar-rail .rail-github{width:32px;height:28px;color:var(--text-dim);text-decoration:none}#sidebar-rail .rail-lang:hover{background:var(--bs-surface-control-hover);color:var(--bs-content-primary)}#sidebar-rail .rail-help{margin-top:4px}#sidebar-left .sidebar-panels{flex:1;min-height:0;position:relative}#sidebar-left .tab-panel{flex-direction:column;display:none;position:absolute;inset:0;overflow:hidden}#sidebar-left .tab-panel.active{display:flex}#sidebar-left #recipes{font-size:13px;overflow-y:auto}#right-panel{background:var(--panel-bg);border-left:1px solid var(--panel-border);flex-direction:column;grid-area:1/4;min-height:0;display:flex}#world-controls{border-bottom:1px solid var(--panel-border);flex:none;padding:14px}#world-controls h2{font-size:var(--bs-font-size-md);margin:0 0 12px;font-weight:600}#world-controls .world-control-row{gap:var(--bs-space-1);flex-direction:column;display:flex}#world-controls .world-control-row+.world-control-row{margin-top:var(--bs-space-4)}#world-controls .world-control-label{color:var(--bs-content-secondary);font-size:var(--bs-font-size-xs)}#world-controls .toolbar-group{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);gap:2px;min-width:0;padding:2px;display:flex}#world-controls .view-tools{width:-moz-fit-content;width:fit-content}#world-controls .view-tools .world-control-button{width:30px;min-width:30px;height:28px;min-height:28px;color:var(--bs-content-primary)}#world-controls .display-tools{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}#world-controls .toolbar-group .world-control-button+.world-control-button{border-left:1px solid var(--bs-border-default);border-radius:0}#world-controls .toolbar-group .world-control-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}#world-controls .toolbar-group .world-control-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}#world-controls .world-control-button{min-width:0;min-height:28px;font-size:var(--bs-font-size-xs);white-space:nowrap;background:0 0;border-color:#0000;padding:3px 6px}#world-controls .display-tools .world-control-button{text-overflow:ellipsis;justify-content:flex-start;overflow:hidden}#world-controls .texture-pack-tools{width:-moz-fit-content;width:fit-content}#world-controls .texture-pack-status{color:var(--bs-content-secondary);font-size:var(--bs-font-size-xs)}#world-controls.texture-drop-active{outline:2px solid var(--bs-border-focus);outline-offset:-3px}#block-usage{border-top:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;flex-direction:column;flex:none;min-height:0;padding:12px;font-size:12px;display:flex}#block-usage .usage-head{flex:none;justify-content:space-between;align-items:baseline;gap:8px;display:flex}#block-usage h2{margin:0;font-size:12px;font-weight:600}#block-usage .usage-scope{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}#block-usage .usage-summary,#block-usage .usage-empty{color:var(--text-dim);margin:6px 0 8px;font-size:11px}#block-usage .usage-list{flex:auto;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}#block-usage .usage-row{align-items:center;gap:6px;padding:4px 2px;display:flex;position:relative}#block-usage .usage-row:hover{background:var(--bs-surface-control-hover)}#block-usage .usage-swatch{border:1px solid var(--panel-border);border-radius:2px;flex:0 0 12px;width:12px;height:12px}#block-usage .usage-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}#block-usage .usage-count{color:var(--text-dim);font-variant-numeric:tabular-nums;flex:none}#block-usage .usage-actions{flex:none;gap:2px;display:flex}#block-usage .usage-change-button{min-height:24px;padding:2px 7px;font-size:11px}#block-usage .usage-bar{background:var(--bs-action-accent);opacity:.5;pointer-events:none;height:2px;position:absolute;bottom:0;left:0}.block-change-picker{inset:unset;z-index:80;border:1px solid var(--bs-border-default);border-radius:var(--bs-radius-xl);background:var(--bs-surface-panel);max-height:calc(100vh - 24px);color:var(--bs-content-primary);box-shadow:var(--bs-panel-shadow);font-size:var(--bs-font-size-sm);margin:0;padding:0;position:fixed;overflow:hidden}.block-change-picker::backdrop{background:0 0}.change-picker-head{justify-content:space-between;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-3);border-bottom:1px solid var(--bs-border-default);display:flex}.change-picker-head>div{flex-direction:column;gap:2px;min-width:0;display:flex}.change-picker-head strong{font-size:var(--bs-font-size-md)}.change-picker-head span{color:var(--bs-content-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.block-change-picker>.bs-tabs{padding-inline:var(--bs-space-3)}.block-change-picker>.bs-tabs [role=tab]{flex:1}.change-picker-panel{flex-direction:column;min-height:280px;max-height:min(540px,100vh - 140px);display:flex;overflow-y:auto}.change-picker-browser{flex-direction:column;flex:1;min-height:0;display:flex}.change-picker-browser.compact{min-height:260px;margin:0 var(--bs-space-3) var(--bs-space-3);border:1px solid var(--bs-border-default);border-radius:var(--bs-radius-lg)}.change-picker-browser-tools{align-items:center;gap:var(--bs-space-1);padding:var(--bs-space-3) var(--bs-space-3) var(--bs-space-2);flex:none;display:flex}.change-picker-search{width:100%;min-width:0}.change-picker-view-controls{border-radius:var(--bs-radius-md);background:var(--bs-surface-control);flex:none;gap:1px;padding:1px;display:flex}.change-picker-view-controls .bs-icon-button{border-radius:calc(var(--bs-radius-md) - 1px);width:28px;height:28px}.change-picker-view-controls .bs-icon-button[data-pressed=true]{background:var(--bs-surface-panel);color:var(--bs-content-primary)}.change-picker-filters{gap:var(--bs-space-1);padding:0 var(--bs-space-3) var(--bs-space-2);flex:none;display:flex;overflow-x:auto}.change-picker-filters button{padding:var(--bs-space-1) var(--bs-space-2);border-radius:var(--bs-radius-md);color:var(--bs-content-secondary);font:inherit;cursor:pointer;background:0 0;border:0;flex:none}.change-picker-filters button:hover{background:var(--bs-surface-control-hover)}.change-picker-filters button[data-active=true]{background:var(--bs-surface-control-pressed);color:var(--bs-action-accent)}.change-picker-grid{min-height:0;padding:0 var(--bs-space-3) var(--bs-space-3);gap:var(--bs-space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;overflow-y:auto}.change-picker-block{gap:var(--bs-space-1);min-width:0;color:var(--bs-content-secondary);font:inherit;font-size:var(--bs-font-size-xs);cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.change-picker-block-preview{aspect-ratio:1;width:100%;image-rendering:pixelated;background-position:50%;background-size:cover;border:2px solid #0000}.change-picker-block-preview.shape-slab{clip-path:polygon(0 0,100% 0,100% 50%,0 50%)}.change-picker-block-preview.shape-stairs{clip-path:polygon(50% 0,100% 0,100% 100%,0 100%,0 50%,50% 50%)}.change-picker-block:hover{color:var(--bs-content-primary)}.change-picker-block:focus-visible{border-radius:var(--bs-radius-sm);outline:2px solid var(--bs-border-focus);outline-offset:2px}.change-picker-block:disabled{color:var(--bs-content-disabled);cursor:default}.change-picker-block:disabled .change-picker-block-preview{border-color:var(--bs-border-focus);opacity:var(--bs-opacity-muted)}.change-picker-block>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.change-picker-grid[data-view=grid] .change-picker-block>span:last-child{display:none}.change-picker-grid[data-view=list]{grid-template-columns:minmax(0,1fr);gap:0}.change-picker-grid[data-view=list] .change-picker-block{min-height:40px;padding:var(--bs-space-1);align-items:center;gap:var(--bs-space-2);font-size:var(--bs-font-size-sm);text-align:left;flex-direction:row}.change-picker-grid[data-view=list] .change-picker-block:hover{background:var(--bs-surface-control-hover)}.change-picker-grid[data-view=list] .change-picker-block-preview{flex:0 0 30px;width:30px}.change-picker-pattern-header,.change-picker-editor-head{justify-content:space-between;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-3);display:flex}.change-picker-pattern-list{padding:0 var(--bs-space-3) var(--bs-space-3);gap:var(--bs-space-1);flex-direction:column;display:flex}.change-picker-pattern{min-height:var(--bs-control-height-lg);align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-1) var(--bs-space-2);border-radius:var(--bs-radius-md);color:var(--bs-content-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;display:flex}.change-picker-pattern:hover{background:var(--bs-surface-control-hover)}.change-picker-pattern[data-selected=true]{border-color:var(--bs-border-focus);background:var(--bs-surface-selection)}.change-picker-pattern-chips{gap:2px;min-width:46px;display:inline-flex}.change-picker-pattern-chips i{width:8px;height:22px}.change-picker-editor-head{padding-block:var(--bs-space-2);border-top:1px solid var(--bs-border-default);color:var(--bs-content-secondary)}.block-change-picker .recipe-editor{padding:0 var(--bs-space-3) var(--bs-space-3)}.block-change-picker .recipe-name-input{margin-bottom:var(--bs-space-2)}.block-change-picker .recipe-entry{min-height:var(--bs-control-height-lg);align-items:center;gap:var(--bs-space-1);grid-template-columns:18px minmax(0,1fr) 54px 38px 26px;display:grid}.block-change-picker .recipe-entry-swatch{border:1px solid var(--bs-border-default);border-radius:var(--bs-radius-sm);width:14px;height:14px}.block-change-picker .recipe-entry-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.block-change-picker .recipe-entry-weight{min-height:var(--bs-control-height-sm)}.block-change-picker .recipe-entry-percent{color:var(--bs-content-secondary);font-size:var(--bs-font-size-xs);text-align:right}.block-change-picker .recipe-editor-empty,.block-change-picker .recipe-editor-hint,.change-picker-empty{margin:var(--bs-space-2) 0;color:var(--bs-content-secondary);font-size:var(--bs-font-size-xs);line-height:var(--bs-line-height-body)}.change-picker-empty{padding:var(--bs-space-3)}.change-picker-add-block,.change-picker-apply{width:100%;margin-top:var(--bs-space-2)}.change-picker-apply{min-height:var(--bs-control-height-lg);border-radius:0;position:sticky;bottom:0}#inspector{-webkit-user-select:none;user-select:none;flex:0 auto;min-height:0;padding:14px;font-size:12px;overflow-y:auto}#inspector:before{content:"Design";border-bottom:1px solid var(--panel-border);margin:-14px -14px 14px;padding:13px 14px 12px;font-size:12px;font-weight:600;display:block}#inspector .inspector-empty{color:var(--text-dim);padding:8px 4px;line-height:1.6}#inspector .inspector-field{gap:var(--bs-space-1);margin-bottom:var(--bs-space-2);flex-direction:column;display:flex}#inspector .inspector-name-field{margin-bottom:14px}#inspector .inspector-section{border-top:1px solid var(--bs-border-default);margin:0 -14px;padding:14px}#inspector .inspector-section-title{color:var(--bs-content-primary);font-size:var(--bs-font-size-md);margin:0 0 12px;font-weight:600}#inspector .inspector-field-label{color:var(--text-dim);font-size:11px}#inspector input[type=text],#inspector input[type=number]{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);min-width:0;min-height:30px;color:var(--text);border:1px solid #0000;width:100%;padding:5px 8px;font-size:13px}#inspector input[type=text]:hover,#inspector input[type=number]:hover,#inspector select:hover{border-color:var(--bs-border-default)}#inspector .inspector-prefixed-control{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);min-width:0;min-height:30px;color:var(--bs-content-secondary);border:1px solid #0000;grid-template-columns:18px minmax(0,1fr);align-items:center;display:grid}#inspector .inspector-prefixed-control:hover,#inspector .inspector-prefixed-control:focus-within{border-color:var(--bs-border-default)}#inspector .inspector-prefixed-control>span{font-size:var(--bs-font-size-xs);padding-left:7px}#inspector .inspector-prefixed-control input,#inspector .inspector-prefixed-control output{min-width:0;min-height:28px;color:var(--bs-content-primary);font:inherit;background:0 0;border:0;padding:5px 6px 5px 2px}#inspector .inspector-prefixed-control input:focus{outline:0}#inspector .inspector-position,#inspector .inspector-dimensions{gap:var(--bs-space-1);grid-template-columns:repeat(3,1fr);display:grid}#inspector .inspector-meta{color:var(--bs-content-secondary);font-size:var(--bs-font-size-xs);margin:2px 0 0}#inspector .inspector-block-info{align-items:center;gap:8px;display:flex}#inspector .inspector-swatch{border:1px solid var(--panel-border);border-radius:4px;flex-shrink:0;width:20px;height:20px}#inspector .inspector-array-dup-grid{grid-template-columns:1.2fr 1fr 1fr;gap:6px;display:grid}#inspector .inspector-array-run{width:100%}#inspector .inspector-array-dup-cell{flex-direction:column;gap:3px;min-width:0;display:flex}#inspector .inspector-array-dup-cell span{color:var(--text-dim);font-size:10px}#inspector select{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);min-height:30px;color:var(--text);border:1px solid #0000;width:100%;padding:5px 6px;font-size:12px}#inspector .inspector-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}#inspector .inspector-icon-actions{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);gap:2px;padding:2px;display:inline-flex}#inspector .inspector-icon-action{min-width:30px;min-height:28px;color:var(--bs-content-primary);grid-auto-flow:column;gap:1px}#inspector .inspector-icon-axis{font-size:9px;font-weight:600}#inspector .inspector-transform-row{justify-content:space-between;align-items:center;gap:var(--bs-space-2);display:flex}#inspector .inspector-angle{border-radius:var(--bs-radius-md);background:var(--bs-surface-input);min-width:62px;min-height:30px;color:var(--bs-content-primary);padding:6px 8px}#inspector .inspector-object-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;display:grid}#inspector .inspector-object-actions .bs-button{text-align:left;justify-content:flex-start;min-width:0}#inspector .inspector-object-actions .inspector-component-action{grid-column:1/-1}#inspector .inspector-delete-action{color:var(--bs-action-danger)}#layers{overflow:hidden}#layers .layers-header{border-bottom:1px solid var(--panel-border);flex-shrink:0;align-items:center;gap:6px;padding:6px 8px;display:flex}#layers .layers-search{background:var(--bs-surface-input);border:1px solid var(--panel-border);min-width:0;color:inherit;border-radius:4px;flex:1;padding:4px 6px;font-size:12px}#layers .layers-search:focus{border-color:var(--accent);outline:none}#layers .layers-header-actions{flex-shrink:0;gap:2px;display:flex}#layers .layers-tree-host{flex:1;min-height:0;padding:2px 0;overflow-y:auto}#layers .layers-empty{color:var(--text-dim);padding:12px 10px;font-size:12px}#layers .layer-row{cursor:pointer;align-items:center;gap:4px;min-height:30px;padding:3px 8px 3px 0;font-size:13px;display:flex}#layers .layer-row:hover{background:var(--bs-surface-control-hover)}#layers .layer-row.active{background:var(--bs-surface-selection);color:var(--accent)}#layers .caret{text-align:center;width:14px;color:var(--text-dim);cursor:pointer;flex-shrink:0}#layers .caret.caret-static{cursor:default;opacity:.5}#layers .layer-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}#layers .layer-row input[type=text]{border:1px solid var(--accent);background:var(--bs-surface-input);color:var(--text);border-radius:4px;flex:1;padding:2px 6px;font-size:13px}#layers .layer-actions{gap:2px;display:flex}#layers .icon-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:2px 4px}#layers .icon-btn:hover{color:var(--bs-action-danger)}#layers .icon-btn-on,#layers .icon-btn-on:hover{color:var(--accent)}#layers .layer-row-dimmed{opacity:.45}#layers .layer-row[draggable=true]{cursor:grab}#layers .layer-row.drop-into{background:var(--bs-surface-selection);outline:1px dashed var(--accent);outline-offset:-1px}#layers .layer-row.drop-above{box-shadow:inset 0 2px 0 0 var(--accent)}#layers .layer-row.drop-below{box-shadow:inset 0 -2px 0 0 var(--accent)}#layers .layer-row-cell .layer-name{color:var(--text-dim);font-size:12px}#layers .layer-row-cell.active .layer-name{color:var(--accent)}#layers .layer-block-icon{border:1px solid var(--panel-border);background:var(--bs-surface-input);border-radius:3px;flex-shrink:0;width:18px;height:18px;overflow:hidden}#layers .layer-block-icon img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated}#help{background:var(--bs-scrim);z-index:100;justify-content:center;align-items:center;display:none;position:fixed;inset:0}#help:not([hidden]){display:flex}#help .help-panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:12px;width:420px;max-height:80vh;padding:18px 22px;overflow-y:auto}#help .help-title{margin-bottom:10px;font-size:16px;font-weight:700}#help .help-section{color:var(--accent);margin:12px 0 6px;font-size:12px;font-weight:600}#help .help-row{align-items:baseline;gap:10px;padding:3px 0;font-size:13px;display:flex}#help kbd{border:1px solid var(--panel-border);background:var(--bs-surface-input);text-align:center;border-radius:5px;flex-shrink:0;min-width:130px;padding:2px 8px;font-family:inherit;font-size:12px}#help .help-row span{color:var(--text-dim)}#help .help-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}#help .help-close,#help .help-tour{border:1px solid var(--panel-border);background:var(--bs-surface-control);color:var(--text);cursor:pointer;border-radius:6px;padding:7px 0}#help .help-tour{background:var(--text);color:var(--panel-bg)}#onboarding{z-index:900;background:var(--bs-scrim);place-items:center;padding:28px;display:none;position:fixed;inset:0}#onboarding:not([hidden]){display:grid}.onboarding-card{border:1px solid var(--panel-border);background:var(--panel-bg);border-radius:14px;width:min(100%,440px);padding:20px;box-shadow:0 18px 48px #00000024}.onboarding-top,.onboarding-footer{justify-content:space-between;align-items:center;display:flex}.onboarding-eyebrow{color:var(--text-dim);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:700}.onboarding-skip{color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:0;font-size:12px}.onboarding-visual{border:1px solid var(--panel-border);background:linear-gradient(90deg, transparent 49.5%, var(--panel-border) 50%, transparent 50.5%), linear-gradient(transparent 49.5%, var(--panel-border) 50%, transparent 50.5%);width:104px;height:104px;color:var(--text);place-items:center;margin:28px 0 24px;display:grid}.onboarding-visual span{background:var(--text);width:38px;height:38px;color:var(--panel-bg);place-items:center;font-size:13px;font-weight:700;display:grid}.onboarding-title{letter-spacing:-.025em;font-size:23px;line-height:1.3}.onboarding-body{color:var(--text-dim);margin-top:10px;font-size:13px;line-height:1.75}.onboarding-hint{border-left:2px solid var(--text);background:var(--bs-surface-control);margin-top:16px;padding:8px 10px;font-size:12px;font-weight:600}.onboarding-footer{margin-top:24px}.onboarding-dots{gap:5px;display:flex}.onboarding-dots span{background:var(--panel-border);border-radius:50%;width:5px;height:5px}.onboarding-dots .is-current{background:var(--text);border-radius:999px;width:16px}.onboarding-next{border:1px solid var(--text);background:var(--text);min-width:112px;color:var(--panel-bg);font:inherit;cursor:pointer;border-radius:7px;padding:9px 14px;font-weight:700}#statusbar{background:var(--panel-bg);border:1px solid var(--panel-border);box-shadow:var(--bs-panel-shadow);color:var(--text-dim);-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:8px;padding:5px 14px;font-size:12px;position:fixed;bottom:72px;left:calc(50% - 16px);transform:translate(-50%)}.shape-control{align-items:stretch;gap:0;display:flex}.shape-control .shape-main{border-top-right-radius:0;border-bottom-right-radius:0}.shape-control .shape-caret{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;width:16px;min-width:16px;padding:0}.shape-control .shape-caret svg{width:12px;height:12px}.shape-menu{border:1px solid var(--panel-border);border-radius:var(--bs-radius-md);background:var(--bs-surface-panel,#fff);box-shadow:var(--bs-popover-shadow);margin:0;padding:4px;position:fixed;inset:auto}.shape-menu:popover-open{flex-direction:column;gap:2px;min-width:160px;display:flex}.shape-menu .shape-menu-item{background:0 0;border-color:#0000;justify-content:flex-start;gap:8px}.shape-menu .shape-menu-item:hover{background:var(--bs-surface-control-hover)}.shape-menu .shape-menu-item[aria-checked=true]{background:var(--bs-surface-control-selected,var(--bs-surface-control-hover));font-weight:600}.shape-menu .shape-menu-key{color:var(--bs-text-muted,#888);margin-left:auto;font-size:11px}.shape-menu .shape-menu-hollow{border-top:1px solid var(--panel-border);border-radius:0;margin-top:4px;padding-top:6px}.shape-menu .shape-params{border-top:1px solid var(--panel-border);flex-direction:column;gap:4px;margin-top:4px;padding-top:6px;display:flex}.shape-menu .shape-param{align-items:center;gap:6px;padding:0 6px;display:flex}.shape-menu .shape-param-label{color:var(--bs-text-muted,#888);flex:1;font-size:11px}.shape-menu .shape-axis-button{min-width:26px;padding:2px 6px}.shape-menu .shape-step-input{width:56px}.shape-menu [hidden]{display:none}.inspector-repaint{flex-direction:column;gap:4px;width:100%;display:flex}.inspector-repaint-scope{width:100%}#components{font-size:13px;overflow-y:auto}#components .recipes-header{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;padding:10px 12px;font-weight:600;display:flex}#components .panel-empty{color:var(--text-dim);padding:12px;line-height:1.6}#components .component-list{margin:0;padding:0;list-style:none}#components .component-item{border-bottom:1px solid var(--panel-border);align-items:center;gap:8px;padding:8px 12px;display:flex}#components .component-item:hover{background:var(--bs-surface-control-hover)}#components .component-thumb{max-width:48px;max-height:40px;image-rendering:pixelated;flex:none}#components .component-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}#components button{color:var(--text);background:var(--bs-surface-control);border:1px solid var(--panel-border);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px}#components button:hover{background:var(--bs-surface-control-hover)}#layers .layer-row-instance{background:#66339914}#layers .layer-row-instance.active{background:var(--bs-surface-selection)}#layers .layer-instance-mark{color:#639;opacity:.85;flex:0 0 12px;width:12px;height:12px}#components .component-name-input{min-width:0;color:var(--text);background:var(--bs-surface-input);border:1px solid var(--accent);border-radius:4px;flex:1;padding:2px 6px;font-size:13px}#components .component-remove{color:var(--text-dim);background:0 0;border-color:#0000;flex:none;padding:4px 7px}#components .component-remove:hover{color:var(--bs-action-danger);background:var(--bs-surface-control-hover)}#components .component-editing{border-bottom:1px solid var(--panel-border);background:#6633991a;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.axis-gizmo{right:var(--bs-space-4);bottom:var(--bs-space-4);pointer-events:none;background:var(--bs-surface-panel);border:1px solid var(--bs-border-default);opacity:.9;border-radius:50%;width:76px;height:76px;position:absolute}.axis-gizmo-label{font-size:var(--bs-font-size-xs);font-variant-numeric:tabular-nums;color:var(--bs-content-secondary);transition:opacity var(--bs-duration-fast) var(--bs-ease-standard);font-weight:600;line-height:1;position:absolute;top:50%;left:50%}
