@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap";
.editor-settings-modal{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2a282547;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.editor-settings-modal__surface{border:1px solid var(--border-mid);background:var(--surface-panel);border-radius:18px;grid-template-rows:auto minmax(0,1fr);width:min(820px,100vw - 32px);max-height:min(720px,100vh - 32px);display:grid;overflow:hidden;box-shadow:0 24px 80px #3a383238,inset 0 1px #ffffffe6}.editor-settings-modal__header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.editor-settings-modal__header p,.editor-settings-modal__header h2{margin:0}.editor-settings-modal__header p{color:var(--text-muted);letter-spacing:.08em;font-size:10px;font-weight:700}.editor-settings-modal__header h2{font-size:18px}.editor-settings-modal__body{gap:14px;padding:16px;display:grid}.editor-settings-list{gap:8px;display:grid}.editor-settings-row{border:1px solid var(--border-soft);background:#ffffff85;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;display:grid}.editor-settings-row strong,.editor-settings-row small{display:block}.editor-settings-row strong{font-size:12px}.editor-settings-row small{color:var(--text-muted);margin-top:2px;font-size:10.5px}.editor-settings-row code{max-width:280px;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-app:#ecece4;--bg-canvas-area:#e2e1d9;--surface-panel:#fcfbf7;--surface-elevated:#fff;--surface-recessed:#f3f2eb;--text-primary:#2a2825;--text-secondary:#6b6862;--text-muted:#9a968d;--text-faint:#c6c2b8;--border-soft:#e7e4da;--border-mid:#d2cfc3;--border-strong:#b8b2a4;--border-focus:#5a8f7a;--accent-sage:#5a8f7a;--accent-sage-soft:#dce7e1;--accent-sage-tint:#ebf1ed;--accent-sage-press:#44735f;--status-normal:#b8b2a4;--status-motion:#c99b3a;--status-motion-soft:#f7eac6;--status-link:#5b7fae;--status-link-soft:#dee7f2;--status-protected:#b86f5c;--status-protected-soft:#f2dad0;--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--shadow-tile:0 1px 0 #ffffffe6 inset, 0 1px 2px #3a38320f, 0 2px 6px #3a38320d;--shadow-card:0 1px 0 #ffffffe6 inset, 0 1px 3px #3a383214, 0 6px 16px #3a38320f;--shadow-modal:0 1px 0 #ffffffe6 inset, 0 24px 60px #28241c2e, 0 8px 20px #28241c1a;--topbar-h:44px;--statusbar-h:28px;--leftrail-w:48px;--rightrail-w:336px;--font-ui:Manrope, ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-ui), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box;scrollbar-color:var(--accent-sage) transparent;scrollbar-width:thin}body{background:var(--bg-app);width:100%;height:100vh;min-height:100vh;color:var(--text-primary);margin:0;overflow:hidden}button,input,textarea,select{font:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--accent-sage);border:1px solid var(--accent-sage-soft);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--accent-sage-press)}.sr-only,.editor-selection-announcer{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.editor-route,.omote-editor-shell{width:100%;min-width:0;height:100vh;min-height:0;overflow:hidden}.omote-editor-shell{grid-template-rows:var(--topbar-h) 1fr var(--statusbar-h);background:var(--bg-app);display:grid;position:relative}.omote-editor-shell--preview{grid-template-rows:var(--topbar-h) 1fr}.editor-top-bar{border-bottom:1px solid var(--border-soft);background:var(--surface-panel);box-shadow:var(--shadow-tile);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:0 14px;display:grid}.editor-top-bar__left,.editor-top-bar__right{align-items:center;gap:10px;min-width:0;display:flex}.editor-logo{background:var(--text-primary);width:26px;height:26px;color:var(--surface-elevated);border-radius:8px;place-items:center;font-weight:700;line-height:1;display:grid}.editor-brand,.editor-breadcrumb,.editor-breadcrumb-separator{color:var(--text-secondary);font-size:13px}.editor-divider{background:var(--border-soft);width:1px;height:24px}.editor-project-name{min-width:110px;max-width:220px;color:var(--text-primary);background:0 0;border:0;font-weight:700}.editor-draft-badge{border-radius:var(--r-sm);background:var(--accent-sage-tint);color:var(--accent-sage-press);letter-spacing:.08em;padding:3px 8px;font-size:11px;font-weight:700}.editor-secondary-button,.editor-publish-button,.editor-icon-button,.editor-rail-button,.editor-zoom-controls button,.editor-panel-header button,.editor-open-module-button,.editor-focused-module button{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-tile);cursor:pointer}.editor-tool-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px;display:block}.editor-tool-icon rect,.editor-tool-icon circle{fill:none;stroke:currentColor}.editor-fullscreen-glyph{font-family:var(--font-mono);letter-spacing:0;font-size:10px;font-weight:800}.editor-secondary-button,.editor-publish-button,.editor-icon-button{justify-content:center;align-items:center;gap:7px;height:32px;padding:0 12px;font-size:13px;display:inline-flex}.editor-icon-button{min-width:40px;padding:0 10px}.editor-publish-button{border-color:var(--accent-sage);background:var(--accent-sage);color:var(--surface-elevated)}button:disabled{cursor:not-allowed;opacity:.55}.omote-editor-main{grid-template-columns:var(--leftrail-w) minmax(0, 1fr) var(--rightrail-w);min-width:0;min-height:0;display:grid}.omote-editor-shell--preview .omote-editor-main{grid-template-columns:minmax(0,1fr)}.omote-editor-shell--preview .editor-left-rail,.omote-editor-shell--preview .editor-right-rail{display:none}.omote-editor-shell--preview .editor-canvas-area{background-color:#e7e6de}.omote-editor-shell--preview .editor-status-bar{display:none}.editor-draft-recovery-banner{z-index:30;top:calc(var(--topbar-h) + 10px);left:calc(var(--leftrail-w) + 12px);width:min(430px, calc(100vw - var(--leftrail-w) - var(--rightrail-w) - 36px));border:1px solid var(--border-soft);border-radius:var(--r-md);min-height:0;box-shadow:var(--shadow-card);color:var(--text-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fcfbf7f5;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 8px;padding:7px 8px 7px 10px;font-size:12px;display:grid;position:absolute}.editor-draft-recovery-banner strong{color:var(--text-primary);font-size:12px;font-weight:700;line-height:1.15}.editor-draft-recovery-banner__copy{gap:1px;min-width:0;display:grid}.editor-draft-recovery-banner__copy span{min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.editor-draft-recovery-banner button{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-height:24px;color:var(--text-primary);padding:0 8px;font-size:11px;font-weight:600;box-shadow:inset 0 1px #fffc,0 1px 2px #3a38320d}.editor-draft-recovery-banner button:hover{background:var(--surface-recessed)}.omote-editor-shell--preview .editor-draft-recovery-banner{width:min(430px,100vw - 32px)}.editor-left-rail{border-right:1px solid var(--border-soft);background:var(--surface-panel);flex-direction:column;justify-content:space-between;align-items:center;padding:12px 6px;display:flex}.editor-left-rail__tools{gap:8px;display:grid}.editor-rail-button{width:36px;height:36px;padding:0;font-size:11px;font-weight:700}.editor-local-image-picker{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.editor-local-image-picker__input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;inset:0}.editor-canvas-area{isolation:isolate;background-color:var(--bg-canvas-area);background-image:radial-gradient(#3a383212 1px,#0000 1.4px);background-size:22px 22px;place-items:center;min-width:0;min-height:0;padding:58px 24px 78px;display:grid;position:relative;overflow:hidden}.editor-canvas-area--preview{background-size:26px 26px;padding:24px 18px 58px}.editor-canvas-scale{transform-origin:50%;transition:transform .14s;position:absolute;top:50%;left:50%}.editor-viewport-badge{z-index:3;border:1px solid var(--border-soft);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.04em;box-shadow:var(--shadow-tile);background:#ffffffd1;border-radius:999px;padding:6px 12px;font-size:11px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.editor-zoom-controls{z-index:5;font-family:var(--font-mono);pointer-events:auto;align-items:center;gap:8px;font-size:11px;display:flex;position:absolute;bottom:14px;right:14px}.editor-zoom-controls__pill,.editor-zoom-controls__preview{border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--surface-panel);align-items:center;height:38px;display:inline-flex;box-shadow:inset 0 1px #ffffffeb,0 8px 18px #3a383217,0 2px 4px #3a38320f}.editor-zoom-controls__pill{gap:2px;padding:4px}.editor-zoom-controls__pill>span{text-align:center;min-width:38px;color:var(--text-primary);padding:0 9px;line-height:30px}.editor-zoom-controls__pill button{border-radius:var(--r-sm);min-width:30px;height:30px;box-shadow:none;color:var(--text-secondary);background:0 0;border:0;justify-content:center;align-items:center;transition:background .12s,color .12s,transform 80ms;display:inline-flex}.editor-zoom-controls__pill button:hover{background:var(--surface-recessed);color:var(--text-primary)}.editor-zoom-controls__pill button:active{transform:translateY(1px)}.editor-zoom-controls__preview{font-family:var(--font-ui);text-transform:none;font-size:13px;font-weight:600;border:1px solid var(--border-soft)!important;border-radius:var(--r-md)!important;background:var(--surface-panel)!important;min-width:102px!important;height:38px!important;color:var(--text-primary)!important;justify-content:center!important;gap:7px!important;padding:0 15px!important;box-shadow:inset 0 1px #ffffffeb,0 8px 18px #3a383217,0 2px 4px #3a38320f!important}.editor-zoom-controls__preview:hover{background:var(--surface-recessed)!important}.editor-panel-header{z-index:2;border-bottom:1px solid var(--border-soft);background:var(--surface-panel);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex;position:sticky;top:0}.editor-panel-header h2{color:var(--text-secondary);letter-spacing:.08em;margin:0;font-size:11.5px;font-weight:700}.editor-panel-header span{color:var(--text-muted);font-family:var(--font-mono);font-size:11px}.editor-open-module-button{width:calc(100% - 28px);margin:12px 14px 0;padding:9px 10px;font-weight:700}.editor-project-overview{flex-direction:column;gap:14px;padding:12px;display:flex}.editor-overview-kicker{color:var(--text-muted);letter-spacing:.08em;margin:0 0 6px;font-size:11px;font-weight:700}.editor-color-dot{border:1.5px solid var(--border-mid);vertical-align:-3px;background:#1e63d4;border-radius:4px;width:16px;height:16px;margin-right:5px;display:inline-block}.editor-fact-grid,.runtime-facts{gap:8px;margin:0;display:grid}.editor-fact-grid div,.runtime-facts div{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:12px;padding:6px 0;display:flex}.editor-fact-grid dt,.runtime-facts dt{color:var(--text-secondary)}.editor-fact-grid dd,.runtime-facts dd{font-family:var(--font-mono);margin:0}.editor-status-bar{border-top:1px solid var(--border-soft);background:var(--surface-panel);color:var(--text-secondary);align-items:center;gap:14px;padding:0 12px;font-size:11px;display:flex;overflow:hidden}.editor-status-bar__segment{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.editor-status-bar__segment--mono{font-family:var(--font-mono)}.editor-status-bar__segment--save{color:var(--accent-sage-press);flex:none;align-items:center;gap:5px;display:inline-flex}.editor-status-bar__segment--save:before{background:var(--accent-sage);content:"";border-radius:999px;flex:none;width:7px;height:7px}.editor-status-bar__divider{background:var(--border-soft);flex:none;width:1px;height:14px}.editor-status-bar__spacer{flex:1;min-width:18px}.editor-status-bar__segment--right{flex:none}.editor-toast-stack{z-index:60;right:18px;bottom:calc(var(--statusbar-h) + 16px);pointer-events:none;gap:8px;width:min(360px,100vw - 36px);display:grid;position:fixed}.editor-toast{border:1px solid var(--border-soft);border-radius:var(--r-md);box-shadow:var(--shadow-card);pointer-events:auto;background:#fcfbf7f5;border-left-width:4px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px 12px;display:grid}.editor-toast__copy{gap:3px;min-width:0;display:grid}.editor-toast__close{margin-block-start:-4px;margin-inline-end:-6px}.editor-toast strong{color:var(--text-primary);font-size:12px}.editor-toast span{color:var(--text-secondary);font-size:12px}.editor-toast--success{border-left-color:var(--accent-sage)}.editor-toast--info{border-left-color:var(--status-link)}.editor-toast--error{border-left-color:var(--status-protected)}.editor-focused-module{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2a282547;place-items:center;display:grid;position:fixed;inset:0}.editor-focused-module__surface{border:1px solid var(--border-soft);border-radius:var(--r-xl);background:var(--surface-panel);width:min(1200px,100vw - 80px);min-width:0;height:min(740px,100vh - 80px);min-height:0;box-shadow:var(--shadow-card);grid-template-rows:48px 1fr;display:grid;overflow:hidden}.editor-focused-module__header{border-bottom:1px solid var(--border-soft);grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:0 12px;display:grid}.editor-focused-module__header p,.editor-focused-module__header h2{margin:0}.editor-focused-module__header p{color:var(--text-muted);font-size:12px}.editor-focused-module__chip{border:1px solid var(--border-soft);border-radius:var(--r-sm);background:var(--surface-recessed);color:var(--text-secondary);font-family:var(--font-mono);padding:5px 8px;font-size:11px}.editor-focused-module__actions{gap:8px;display:flex}.editor-focused-module__body{grid-template-columns:256px minmax(0,1fr) 332px;min-width:0;min-height:0;display:grid}.editor-focused-module__body.is-simple{grid-template-columns:220px minmax(360px,1fr) 332px}.editor-focused-module__left,.editor-focused-module__right,.editor-focused-module__preview{min-width:0;min-height:0;overflow:auto}.editor-focused-module__left,.editor-focused-module__right{background:var(--surface-panel);padding:12px}.editor-focused-module__left{border-right:1px solid var(--border-soft)}.editor-focused-module__right{border-left:1px solid var(--border-soft)}.editor-focused-module__left h3{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:11px}.editor-submodule-grid,.editor-module-layer-stack{gap:8px;margin-bottom:18px;display:grid}.editor-submodule-tile{width:54px;height:54px}.editor-module-layer-row{text-align:left;justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:8px;display:flex}.editor-module-layer-row small{color:var(--text-muted);font-family:var(--font-mono);font-size:10px}.editor-focused-module__preview{background-color:var(--bg-canvas-area);background-image:radial-gradient(#3a383212 1px,#0000 1.4px);background-size:22px 22px;place-items:center;padding:24px;display:grid}.editor-focused-preview-card{aspect-ratio:16/10;border:1px solid var(--border-soft);border-radius:var(--r-lg);background:var(--surface-elevated);width:min(520px,100%);box-shadow:var(--shadow-card);place-items:center;display:grid;position:relative;overflow:hidden}.editor-focused-preview-card__image{background-position:50%;background-repeat:no-repeat;background-size:contain;width:100%;height:100%}.editor-focused-preview-card span{color:var(--text-secondary);background:#ffffffc7;border-radius:999px;padding:4px 8px;font-size:11px;position:absolute;bottom:10px;left:12px}.editor-focused-preview-toolbar,.editor-focused-tabs{gap:8px;margin-top:14px;display:flex}.editor-focused-tabs{border-bottom:1px solid var(--border-soft);margin:0;padding:10px 10px 12px}.editor-focused-tabs button{flex:1 1 0;min-height:34px;padding:0 14px}.editor-focused-tabs button[aria-selected=true]{border-color:var(--accent-sage);background:var(--accent-sage-tint);color:var(--accent-sage-press)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}.editor-shell{grid-template-rows:auto 1fr;gap:18px;min-width:0;height:100vh;padding:18px;display:grid;overflow:hidden}.topbar{border-bottom:1px solid #d7d7d7;justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;padding-bottom:14px;display:flex}.eyebrow{letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:12px}h1{margin:0;font-size:24px}p{line-height:1.55}.status-chip{border:1px solid;margin:0;padding:8px 10px;font-size:13px}.preview-panel{grid-template-columns:minmax(0,1fr) 220px;gap:18px;min-width:0;max-width:100%;height:100%;min-height:0;display:grid;overflow:hidden}.preview-stage{background:#f7f7f7;border:1px solid #d7d7d7;place-items:center;min-width:0;min-height:0;display:grid;overflow:hidden auto}.preview-canvas-shell{max-width:100%;position:relative}.preview-canvas-shell--drop-active,.preview-canvas-shell:focus-visible{outline-offset:8px;outline:2px solid #050505}.preview-engine-root{position:relative}.scene-selection-overlay{z-index:4;pointer-events:none;position:absolute;inset:0}.selection-target{color:#050505;pointer-events:auto;cursor:pointer;touch-action:none;background:0 0;border:1px solid #05050557;padding:0;display:block;position:absolute}.selection-target:hover,.selection-target--selected{box-shadow:none;border-color:#050505}.selection-target--dragging{cursor:grabbing}.selection-target>.selection-target__label{text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #050505;max-width:160px;padding:2px 5px;font-size:11px;line-height:1.2;position:absolute;top:-22px;left:0;overflow:hidden}.selection-target:not(.selection-target--selected):not(:hover)>.selection-target__label{opacity:0}.runtime-panel,.status-line{border:1px solid #d7d7d7;align-self:start;margin:0;padding:14px}.runtime-panel{z-index:5;gap:18px;min-width:0;max-height:100%;display:grid;position:relative;overflow:hidden auto}.effect-property-panel,.effect-list,.effect-card,.effect-control,.focused-module-inspector,.module-kind-inspector,.editor-history-panel,.history-actions,.object-property-control,.runtime-control{display:grid}.editor-history-panel,.focused-module-inspector,.effect-property-panel,.module-kind-inspector{gap:12px}.panel-header{border-bottom:1px solid #d7d7d7;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.panel-header h2{margin:0;font-size:16px}.panel-header span{text-align:center;font-variant-numeric:tabular-nums;border:1px solid;min-width:28px;padding:2px 6px;font-size:12px}.history-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.history-actions button{color:#fff;min-height:34px;font:inherit;cursor:pointer;background:#050505;border:1px solid #050505;font-size:13px}.history-actions button:nth-child(2){color:inherit;background:0 0}.history-actions button:disabled{color:#8a8a8a;cursor:not-allowed;border-color:#d7d7d7}.history-status,.history-meta{overflow-wrap:anywhere;border:1px solid #d7d7d7;margin:0;padding:8px;font-size:12px}.history-meta{color:#555;border-style:dashed}.object-empty{border:1px dashed #d7d7d7;margin:0;padding:8px;font-size:12px}.inspector-summary{border:1px solid #d7d7d7;gap:4px;padding:8px;display:grid}.inspector-summary strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.inspector-summary small{overflow-wrap:anywhere;color:#555;min-width:0;font-size:11px}.inspector-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:2px;display:grid}.inspector-summary-field{gap:2px;min-width:0;display:grid}.inspector-summary-field em{color:#707070;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;line-height:1;overflow:hidden}.inspector-summary-field b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:500;overflow:hidden}.transform-panel{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.module-kind-header{border:1px solid #d7d7d7;grid-column:1/-1;gap:8px;padding:10px;display:grid}.module-kind-header h3{margin:0;font-size:13px}.module-kind-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.module-kind-fact{gap:2px;min-width:0;display:grid}.module-kind-fact em{color:#707070;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;line-height:1;overflow:hidden}.module-kind-fact b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:500;overflow:hidden}.transform-panel label,.object-property-control{gap:6px;display:grid}.transform-panel span{text-transform:uppercase;font-size:11px}.transform-panel input{width:100%;color:inherit;font:inherit;background:0 0;border:1px solid #d7d7d7;padding:7px 6px;font-size:13px}.object-property-control .token-label{display:block}.object-edit-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.object-edit-actions button{min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #050505;font-size:12px}.object-edit-actions .object-delete-button{color:#d30000;border:1px solid #d30000}.object-order-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.object-order-actions button{min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #050505;font-size:12px}.object-order-actions button:disabled{color:#9a9a9a;cursor:not-allowed;border-color:#d7d7d7}.object-text-editor,.object-style-editor{grid-column:1/-1;gap:8px;display:grid}.object-text-editor label,.object-style-editor label{gap:6px;display:grid}.object-style-editor span{text-transform:uppercase;font-size:11px}.object-text-editor textarea{resize:vertical;width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:1px solid #d7d7d7;padding:7px 8px;font-size:13px}.object-field-note{color:#6f6f6f;margin:0;font-size:12px}.object-style-editor input[type=color]{background:0 0;border:1px solid #d7d7d7;width:100%;height:34px;padding:0}.object-text-editor button{min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #050505;font-size:12px}.object-text-editor button:disabled{color:#9a9a9a;cursor:not-allowed;border-color:#d7d7d7}.effect-list{gap:10px}.effect-list-actions{display:grid}.effect-card{border:1px solid #d7d7d7;gap:10px;padding:8px}.effect-card header{justify-content:space-between;align-items:baseline;gap:8px;min-width:0;display:flex}.effect-card header div{gap:2px;min-width:0;display:grid}.effect-card strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.effect-card header span{text-transform:uppercase;font-size:11px}.effect-control{gap:8px}.token-label{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.token-label strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.token-label small{text-transform:uppercase;font-size:11px}.editor-number-control,.editor-color-control{align-items:center;gap:8px;display:grid}.editor-number-control{grid-template-columns:minmax(0,1fr) 68px}.editor-color-control{grid-template-columns:40px minmax(0,1fr)}.editor-number-control input[type=number],.effect-control input[type=number],.effect-control input[type=text],.effect-control select{width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:1px solid #d7d7d7;padding:7px 8px;font-size:13px}.editor-color-control input[type=color],.effect-control input[type=color]{background:0 0;border:1px solid #d7d7d7;width:100%;height:32px;padding:0}.effect-control input[type=checkbox]{justify-self:start}.effect-token-note{overflow-wrap:anywhere;border:1px dashed #d7d7d7;margin:0;padding:7px 8px;font-size:12px}.runtime-facts{margin:0}.runtime-facts dt{text-transform:uppercase;font-size:12px}.runtime-facts{gap:14px;display:grid}.runtime-facts div{justify-content:space-between;gap:12px;min-width:0;display:flex}.runtime-facts dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0;margin:0}.status-line--error{border-color:#d30000}.editor-top-bar{box-shadow:inset 0 1px #ffffffe6,0 1px 3px #3a38320d}.editor-top-bar__left{gap:9px}.editor-logo{font-size:15px;box-shadow:inset 0 1px #ffffff2e,0 1px 2px #2a28252e}.editor-brand{color:var(--text-primary);font-weight:700}.editor-breadcrumb{color:var(--text-secondary)}.editor-project-name{border-radius:var(--r-sm);height:28px;padding:0;font-size:14px}.editor-project-name:hover,.editor-project-name:focus{background:var(--surface-recessed);padding:0 7px}.editor-secondary-button,.editor-publish-button,.editor-icon-button{white-space:nowrap}.editor-secondary-button,.editor-icon-button{border-color:var(--border-soft);background:var(--surface-elevated)}.editor-secondary-button:hover:not(:disabled),.editor-icon-button:hover:not(:disabled){background:var(--surface-recessed)}.editor-left-rail{justify-content:flex-start;box-shadow:inset 1px 0 #ffffffb3}.editor-rail-button{border-color:var(--border-soft);background:var(--surface-elevated);color:var(--text-secondary);font-family:var(--font-mono);box-shadow:var(--shadow-tile);border-radius:9px;font-size:12px}.editor-rail-button:hover:not(:disabled){border-color:var(--border-mid);background:var(--surface-recessed);color:var(--text-primary)}.editor-rail-button.is-active{border-color:var(--accent-sage-soft);background:var(--accent-sage-tint);color:var(--accent-sage-press)}.editor-left-rail__divider{background:var(--border-soft);width:24px;height:1px;margin:3px auto;display:block}.editor-left-rail__bottom{margin-top:auto}.editor-left-rail__avatar{background:linear-gradient(135deg, var(--accent-sage), var(--accent-sage-press));width:30px;height:30px;color:var(--surface-elevated);border-radius:999px;place-items:center;margin-top:8px;font-size:12px;font-weight:800;display:grid;box-shadow:0 1px 2px #00000026,inset 0 1px #fff3}.preview-canvas-shell{filter:drop-shadow(0 14px 30px #3a38321c)}.preview-engine-root{background-color:#fffefa;background-image:linear-gradient(45deg,#3a383214 25%,#0000 25%),linear-gradient(-45deg,#3a383214 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#3a383214 75%),linear-gradient(-45deg,#0000 75%,#3a383214 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:8px;overflow:hidden}.preview-canvas-shell--empty .preview-engine-root{box-shadow:0 1px 0 #ffffffd9 inset, 0 0 0 1px var(--border-soft) inset, 0 0 0 8px #f3f2eba6 inset;background-color:#fffefa}.preview-canvas-shell--empty:after{content:"";pointer-events:none;border:1px dashed #5a8f7a66;border-radius:6px;position:absolute;inset:12px}.preview-canvas-shell--empty.preview-canvas-shell--drop-active:after{border-color:var(--accent-sage);background:#5a8f7a14}.preview-engine-root canvas{display:block}.preview-canvas-shell:focus-visible,.preview-canvas-shell--drop-active{outline:2px solid var(--accent-sage);outline-offset:10px}.selection-target{color:var(--text-primary);box-shadow:none;border:1px solid #0000;outline:0}.selection-target:hover:not(.selection-target--selected){outline-offset:1px;box-shadow:none;border-color:#0000;outline:1.5px dashed #5a8f7ab8}.selection-target--selected{outline:2px solid var(--accent-sage);outline-offset:1px;box-shadow:none;border-color:#0000}.selection-target--empty{border:1px dashed #5a8f7a8c}.selection-target__handles{width:auto;max-width:none;height:auto;box-shadow:none;color:#0000;opacity:1;pointer-events:none;background:0 0;border:0;border-radius:0;padding:0;font-size:0;line-height:0;position:absolute;inset:0;overflow:visible}.selection-target__handle{box-sizing:border-box;border:1.5px solid var(--accent-sage);background:var(--surface-panel);opacity:1;pointer-events:auto;border-radius:2px;width:7px;max-width:none;height:7px;padding:0;display:block;position:absolute;overflow:visible;box-shadow:inset 0 1px #fffc,0 1px 3px #3a383229}.selection-target__handle--nw{cursor:nwse-resize;top:-5px;left:-5px}.selection-target__handle--n{cursor:ns-resize;top:-5px;left:50%;transform:translate(-50%)}.selection-target__handle--ne{cursor:nesw-resize;top:-5px;right:-5px}.selection-target__handle--e{cursor:ew-resize;top:50%;right:-5px;transform:translateY(-50%)}.selection-target__handle--se{cursor:nwse-resize;bottom:-5px;right:-5px}.selection-target__handle--s{cursor:ns-resize;bottom:-5px;left:50%;transform:translate(-50%)}.selection-target__handle--sw{cursor:nesw-resize;bottom:-5px;left:-5px}.selection-target__handle--w{cursor:ew-resize;top:50%;left:-5px;transform:translateY(-50%)}.selection-target__label{border:1px solid var(--border-soft);border-radius:var(--r-xs);max-width:160px;color:var(--text-primary);box-shadow:var(--shadow-tile);font-family:var(--font-ui);text-overflow:ellipsis;white-space:nowrap;background:#fcfbf7f2;padding:3px 7px;font-size:11px;font-weight:600;position:absolute;top:-30px;left:0;overflow:hidden}.selection-target:not(.selection-target--selected):not(:hover) .selection-target__label{opacity:0}.selection-target:hover:not(.selection-target--selected) .selection-target__label{border-color:#5a8f7a73}.selection-target__empty-label{color:#3a3832b8;font-family:var(--font-ui);text-align:center;text-overflow:ellipsis;white-space:normal;pointer-events:none;place-items:center;padding:6px;font-size:12px;font-weight:700;line-height:1.15;display:grid;position:absolute;inset:0;overflow:hidden}.editor-panel-header{min-height:44px;padding:10px 14px}.editor-panel-header h2{color:var(--text-secondary);line-height:1}.editor-panel-header span{color:var(--text-secondary)}.editor-panel-header button{border-color:var(--border-soft);background:var(--surface-elevated);height:30px;color:var(--text-primary);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.editor-open-module-button{border-color:var(--border-mid);border-radius:var(--r-md);background:var(--surface-elevated);min-height:34px;box-shadow:var(--shadow-card);color:var(--text-primary);letter-spacing:0;margin:0;padding:0 12px;font-size:12px;font-weight:700}.editor-open-module-button:hover{background:var(--surface-recessed)}.editor-inspector-module-hero{border:1px solid var(--border-soft);border-radius:var(--r-lg);background:var(--surface-elevated);box-shadow:var(--shadow-card);grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:10px;margin:12px 14px 10px;padding:10px;display:grid}.editor-inspector-module-hero__copy{gap:4px;min-width:0;display:grid}.editor-inspector-module-hero__copy strong{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.editor-inspector-module-hero__copy span{min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.editor-inspector-module-hero__meta{flex-wrap:wrap;gap:4px;display:flex}.editor-inspector-module-hero__meta small{border:1px solid var(--border-soft);border-radius:var(--r-xs);background:var(--surface-recessed);color:var(--text-secondary);font-family:var(--font-mono);padding:1px 5px;font-size:9px}.editor-overview-kicker,.module-kind-fact em,.inspector-summary-field em,.object-text-editor span,.object-style-editor span,.token-label small,.effect-card header span{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.editor-fact-grid div,.runtime-facts div{border-bottom-color:var(--border-soft)}.focused-module-inspector{gap:0}.focused-module-inspector--embedded{padding:0}.focused-module-inspector--embedded>.object-empty{margin:12px}.editor-inspector-panel .module-kind-inspector{gap:12px;padding:0 14px 14px}.editor-inspector-panel .module-kind-header{display:none}.inspector-summary{border:0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:var(--surface-panel);gap:6px;padding:14px}.inspector-summary strong{color:var(--text-primary);font-size:16px;font-weight:700}.editor-panel-header{border-bottom:1px solid var(--border-soft);background:var(--surface-recessed);min-height:44px;padding:8px 12px}.editor-panel-header h2{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:11.5px;font-weight:800}.editor-panel-header button{min-height:24px;box-shadow:none;color:var(--text-primary);background:0 0;border:0;align-items:center;gap:4px;padding:3px 7px;font-size:10.5px;display:inline-flex}.editor-module-thumb{overflow:visible}.inspector-summary small{color:var(--text-muted);font-size:12px}.inspector-summary-grid,.module-kind-facts{gap:10px 14px;margin-top:6px}.inspector-summary-field b,.module-kind-fact b{color:var(--text-primary);font-size:12px;font-weight:700}.transform-panel{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px}.editor-control-section{border-bottom:1px solid var(--border-soft);gap:10px;padding-bottom:12px;display:grid}.editor-control-section h4{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}.editor-control-section--actions{gap:8px}.editor-inspector-panel .editor-control-section--actions{display:none}.editor-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.module-kind-header{border:0;border-bottom:1px solid var(--border-soft);background:var(--surface-panel);grid-column:1/-1;padding:0 0 12px}.module-kind-header h3{color:var(--text-primary);font-size:15px}.object-property-control,.effect-control{gap:5px}.object-property-control .token-label,.effect-control .token-label{min-height:18px;display:flex}.token-label strong{color:var(--text-secondary);letter-spacing:.04em;font-size:11.5px;font-weight:700}.transform-panel input,.object-text-editor textarea,.editor-number-control input[type=number],.effect-control input[type=number],.effect-control input[type=text],.effect-control select,.editor-color-control input[type=text]{border-color:var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-height:28px;color:var(--text-primary);font-family:var(--font-mono);font-size:11px;box-shadow:inset 0 1px #ffffffe6}.transform-panel input[type=range],.effect-control input[type=range]{accent-color:var(--accent-sage)}.editor-color-control input[type=color],.effect-control input[type=color],.object-style-editor input[type=color]{border-color:var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);height:31px;padding:3px;box-shadow:inset 0 1px #ffffffe6}.object-text-editor,.object-style-editor{border-top:1px solid var(--border-soft);gap:8px;padding-top:12px}.object-text-editor textarea{resize:vertical;min-height:76px;font-family:var(--font-ui);line-height:1.45}.object-text-editor button,.object-edit-actions button,.object-order-actions button,.effect-list-actions button,.effect-remove-button{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-height:32px;color:var(--text-primary);box-shadow:var(--shadow-tile);font:inherit;font-size:12px}.object-text-editor button:hover:not(:disabled),.object-edit-actions button:hover:not(:disabled),.object-order-actions button:hover:not(:disabled),.effect-list-actions button:hover:not(:disabled),.effect-remove-button:hover:not(:disabled){background:var(--surface-recessed)}.object-edit-actions .object-delete-button,.effect-remove-button{border-color:var(--status-protected-soft);color:var(--status-protected)}.object-field-note,.object-empty,.effect-token-note{border-color:var(--border-soft);border-radius:var(--r-sm);background:var(--surface-recessed);color:var(--text-muted)}.effect-property-panel{border-top:1px solid var(--border-soft);gap:0}.effect-property-panel>.panel-header{border-bottom:0;padding:12px 14px 8px}.effect-property-panel>.panel-header h2{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.effect-property-panel>.panel-header span{min-width:0;color:var(--text-muted);border:0;padding:0}.effect-list-actions{gap:7px}.effect-card{border-color:var(--border-soft);border-radius:var(--r-md);background:var(--surface-elevated);box-shadow:var(--shadow-tile);gap:10px;padding:10px}.effect-card strong{color:var(--text-primary);font-size:13px;font-weight:700}.editor-focused-module{background:#2a282557}.editor-focused-module__surface{border-color:var(--border-mid);background:var(--surface-panel);box-shadow:var(--shadow-modal);border-radius:22px}.editor-focused-module__header{grid-template-columns:auto minmax(0,1fr) auto auto auto;min-height:48px}.editor-focused-module__header h2{font-size:15px}.editor-focused-module__chip{border-color:var(--border-soft);background:var(--surface-recessed);color:var(--text-secondary)}.editor-focused-module__right .module-kind-header{display:none}.editor-focused-module__left,.editor-focused-module__right{background:var(--surface-panel)}.editor-focused-module__left{grid-template-rows:42px auto minmax(0,1fr);padding:0;display:grid;overflow:hidden}.editor-focused-module__right{grid-template-rows:auto auto minmax(0,1fr);padding:0;display:grid;overflow:hidden}.editor-focused-module__body.is-simple .editor-focused-module__left{grid-template-rows:42px auto minmax(0,1fr)}.editor-focused-module__body.is-simple .editor-focused-section-header{flex-direction:column;align-items:flex-start;gap:2px}.editor-focused-module__right .focused-module-inspector--embedded{min-height:0;padding:0 14px 18px;overflow-y:auto}.editor-focused-module__right .effect-property-panel>.panel-header,.editor-focused-module__right .effect-list{padding-left:14px;padding-right:14px}.editor-focused-module__right .object-style-editor,.editor-focused-module__right .object-text-editor{padding-top:12px}.editor-focused-module__actions{align-items:center}.editor-focused-module__actions button{text-transform:lowercase;align-items:center;gap:6px;min-height:30px;padding:0 9px;font-size:12px;display:inline-flex}.editor-focused-module__close{width:34px;font-family:var(--font-mono);text-transform:uppercase;place-items:center;padding:0;font-size:16px;font-weight:700;display:inline-grid}.editor-focused-module__preview{background-color:var(--bg-canvas-area);justify-content:center;align-items:center;padding:56px 28px 68px;display:flex;position:relative}.editor-focused-module__body.is-simple .editor-focused-module__preview{padding-left:36px;padding-right:36px}.editor-submodule-tile,.editor-module-layer-row,.editor-focused-tabs button,.editor-focused-preview-toolbar button{border-color:var(--border-soft);background:var(--surface-elevated);box-shadow:var(--shadow-tile)}.editor-focused-preview-toolbar button{align-items:center;gap:6px;display:inline-flex}.editor-focused-breadcrumb{border-bottom:1px solid var(--border-soft);background:var(--surface-recessed);grid-template-columns:24px 32px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:5px 10px;display:grid}.editor-focused-breadcrumb button,.editor-focused-section-header button{border-color:var(--border-soft);background:var(--surface-elevated);color:var(--text-secondary);place-items:center;padding:0;display:inline-grid}.editor-focused-breadcrumb button{width:24px;height:24px}.editor-focused-breadcrumb span{min-width:0;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.editor-focused-left-section{border-bottom:1px solid var(--border-soft);min-width:0;padding:12px 14px}.editor-focused-left-section--layers{border-bottom:0;min-height:0;overflow-y:auto}.editor-focused-section-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.editor-focused-section-header h3{margin:0}.editor-focused-section-header button{width:24px;height:24px}.editor-submodule-grid{grid-template-columns:repeat(4,42px);align-items:start}.editor-focused-module__body.is-simple .editor-submodule-grid{grid-template-columns:repeat(3,42px)}.editor-submodule-tile{border-style:solid;width:42px;height:42px}.editor-submodule-tile.is-active{grid-area:span 2/span 2;width:54px;height:54px}.editor-submodule-tile.is-disabled{color:var(--text-muted);border-style:dashed}@media (max-width:1180px){.editor-top-bar{gap:8px;padding:0 8px}.editor-top-bar__left,.editor-top-bar__right{gap:6px}.editor-breadcrumb,.editor-breadcrumb-separator,.editor-draft-badge{display:none}.editor-project-name{min-width:96px;max-width:150px}.editor-secondary-button,.editor-publish-button,.editor-icon-button{padding-left:9px;padding-right:9px}.editor-top-bar__right .editor-divider:last-of-type,.editor-top-bar__right .editor-secondary-button:disabled,.editor-publish-button{display:none}}@media (max-width:1040px){.editor-top-bar__right button:nth-of-type(4),.editor-top-bar__right button:nth-of-type(5){display:none}}.editor-submodule-tile{place-items:center;padding:0;display:grid}.editor-module-layer-row{border-radius:var(--r-md);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;padding:9px;display:grid}.editor-module-layer-row__badge{border-radius:var(--r-sm);background:var(--surface-recessed);width:32px;height:32px;color:var(--text-secondary);font-family:var(--font-mono);place-items:center;font-size:10px;font-weight:700;display:grid}.editor-module-layer-row--protected .editor-module-layer-row__badge{background:var(--accent-sage-tint);color:var(--accent-sage-press)}.editor-module-layer-row--effect .editor-module-layer-row__badge{background:var(--status-motion-soft);color:var(--status-motion)}.editor-module-layer-row__label{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-focused-preview-context,.editor-focused-depth-chip{z-index:2;color:var(--text-muted);font-size:12px;position:absolute;top:14px}.editor-focused-preview-context{left:18px}.editor-focused-preview-context strong{color:var(--text-secondary)}.editor-focused-preview-toolbar{border:1px solid var(--border-soft);background:var(--surface-elevated);box-shadow:var(--shadow-tile);border-radius:999px;align-items:center;padding:4px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.editor-focused-build-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px 8px;display:flex}.editor-focused-build-header span{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.editor-focused-build-header small{color:var(--text-secondary);font-family:var(--font-mono);font-size:10px}.editor-focused-depth-chip{border:1px solid var(--border-soft);border-radius:var(--r-xs);background:var(--surface-elevated);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;font-size:10px;font-weight:700;right:18px}.editor-submodule-tile.is-active,.editor-focused-tabs button[aria-selected=true],.editor-module-layer-row.is-active{border-color:var(--accent-sage);background:var(--accent-sage-tint);color:var(--accent-sage-press)}.editor-focused-preview-card{isolation:isolate;aspect-ratio:4/3;border-color:var(--border-soft);border-radius:var(--r-lg);background:linear-gradient(180deg, #ffffffdb, #fcfbf7f0), var(--surface-elevated);width:min(420px,82%);box-shadow:var(--shadow-card)}.editor-focused-module__body.is-simple .editor-focused-preview-card{width:min(520px,88%)}.editor-focused-preview-card__image{background-color:#101015;background-repeat:no-repeat;transition:background-position .16s,background-size .16s}.editor-focused-preview-card__image:after{border-radius:calc(var(--r-lg) - 4px);content:"";pointer-events:none;border:1px solid #5a8f7aad;position:absolute;inset:18px;box-shadow:inset 0 0 0 1px #ffffff3d,0 0 22px #5a8f7a29}.editor-focused-preview-reticle{z-index:3;border-radius:calc(var(--r-lg) - 5px);opacity:.5;pointer-events:none;border:1px dashed #ffffff61;position:absolute;inset:24px}.editor-module-thumb{--editor-module-thumb-color:var(--accent-sage);border:2px solid var(--status-normal);border-radius:var(--r-md);background:var(--surface-elevated);box-shadow:var(--shadow-tile);flex:none;place-items:center;display:inline-grid;position:relative;overflow:visible}.editor-module-thumb--sm{border-radius:8px;width:32px;height:32px}.editor-module-thumb--md{width:42px;height:42px}.editor-module-thumb--lg{border-radius:12px;width:54px;height:54px}.editor-module-thumb.is-selected{border-color:var(--accent-sage);box-shadow:0 0 0 2px var(--accent-sage-tint), var(--shadow-tile)}.editor-module-thumb--effect{border-color:var(--status-motion)}.editor-module-thumb--protected{border-color:var(--status-protected)}.editor-module-thumb svg{border-radius:inherit;width:100%;height:100%;overflow:hidden}.editor-module-thumb text{font-family:var(--font-ui)}.editor-module-thumb__badge{border:1px solid var(--border-mid);background:var(--surface-elevated);min-width:18px;height:18px;color:var(--status-motion);box-shadow:var(--shadow-tile);font-family:var(--font-mono);border-radius:999px;place-items:center;font-size:8px;font-weight:700;display:grid;position:absolute;top:-5px;right:-5px}@media (max-width:760px){.editor-shell{padding:14px}.preview-panel{grid-template-rows:minmax(220px,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.topbar{align-items:stretch}.status-chip{max-width:96px}}.editor-top-bar{height:var(--topbar-h);border-bottom:1px solid var(--border-soft);background:var(--surface-panel);box-shadow:none;grid-template-columns:none;align-items:center;gap:8px;padding:0 10px;display:flex}.editor-top-bar__left,.editor-top-bar__right{flex:1 1 0;align-items:center;gap:8px;min-width:0;display:flex}.editor-top-bar__right{justify-content:flex-end}.editor-logo{background:var(--text-primary);width:26px;height:26px;color:var(--surface-elevated);font-family:var(--font-ui);border-radius:8px;font-size:14px;font-weight:800;box-shadow:inset 0 1px #ffffff0f,0 1px 2px #00000014}.editor-brand{color:var(--text-primary);letter-spacing:0;font-size:13px;font-weight:700}.editor-breadcrumb{color:var(--text-muted);font-size:12px}.editor-breadcrumb-chevron{color:var(--text-faint);flex:none}.editor-project-name{width:auto;min-width:110px;max-width:220px;color:var(--text-primary);background:0 0;border:1px solid #0000;border-radius:6px;padding:3px 8px;font-size:13px;font-weight:700}.editor-project-name:hover{background:var(--surface-recessed);border-color:var(--border-soft)}.editor-project-name:focus{border-color:var(--accent-sage);background:var(--surface-elevated)}.editor-draft-badge{background:var(--accent-sage-tint);color:var(--accent-sage-press);letter-spacing:.08em;text-transform:uppercase;border-radius:4px;padding:3px 7px;font-size:10px;font-weight:700}.editor-divider{background:var(--border-soft);flex:none;width:1px;height:22px;margin:0 4px}.editor-icon-button,.editor-secondary-button,.editor-publish-button{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-width:30px;height:32px;color:var(--text-primary);box-shadow:var(--shadow-tile);justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:13px;transition:background 80ms,transform 80ms,border-color 80ms,box-shadow 80ms;display:inline-flex}.editor-icon-button{width:30px;box-shadow:none;color:var(--text-secondary);background:0 0;border-color:#0000;padding:0}.editor-icon-button:not(:disabled):hover,.editor-secondary-button:hover,.editor-publish-button:hover{border-color:var(--border-strong);background:var(--surface-recessed);transform:translateY(-1px)}.editor-publish-button{border-color:var(--accent-sage);background:var(--accent-sage);color:var(--surface-elevated);padding:0 14px}.editor-top-bar__utility-actions{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.editor-logo{font-family:"Yu Gothic", "Yu Gothic UI", "Meiryo", "Noto Sans JP", var(--font-ui);place-items:center;line-height:1;display:inline-grid}.editor-project-name--button{cursor:text;text-align:left}.editor-project-name--button,.editor-project-name--input{outline:none;align-items:center;height:26px;display:inline-flex}.editor-project-name--button:focus-visible,.editor-project-name--input:focus{border-color:var(--accent-sage);background:var(--surface-elevated);box-shadow:0 0 0 2px var(--accent-sage-soft)}.editor-file-menu{align-items:center;display:inline-flex;position:relative}.editor-file-menu__trigger{color:var(--text-muted)}.editor-file-menu__popover{z-index:80;border:1px solid var(--border-mid);border-radius:var(--r-md);background:var(--surface-elevated);width:172px;box-shadow:var(--shadow-card);gap:3px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.editor-file-menu__popover button{border-radius:var(--r-sm);height:32px;color:var(--text-primary);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:0 8px;font-size:12px;font-weight:600;display:flex}.editor-file-menu__popover button:hover,.editor-file-menu__popover button:focus-visible{border-color:var(--border-soft);background:var(--surface-recessed);outline:none}:root{--topbar-h:44px}.editor-top-bar{height:var(--topbar-h);gap:8px;padding:0 10px}.editor-top-bar__left,.editor-top-bar__right{flex:none;gap:8px}.editor-top-bar__right{gap:8px;margin-left:auto}.editor-logo{border:0;border-radius:8px;width:26px;height:26px;font-size:14px;font-weight:800}.editor-brand{font-size:13px;font-weight:700}.editor-breadcrumb,.editor-project-name{font-size:12px}.editor-breadcrumb-chevron{width:11px;height:11px}.editor-project-name{min-width:110px;max-width:220px;padding:3px 8px;font-weight:700}.editor-project-name--button,.editor-project-name--input{height:26px}.editor-draft-badge{letter-spacing:.08em;border-radius:4px;padding:3px 7px;font-size:10px}.editor-divider{height:22px;margin:0 4px}.editor-icon-button{width:30px;height:30px;color:var(--text-muted)}.editor-secondary-button,.editor-publish-button{border-radius:var(--r-md);height:32px;font-size:var(--t-sm);gap:6px;padding:6px 10px;font-weight:500;line-height:1.4}.editor-publish-button{min-width:0;padding:6px 14px}.editor-file-menu--brand{flex:none}.editor-file-menu__popover--brand{top:calc(100% + 10px);left:0;right:auto}.editor-project-name--button:not(:hover):not(:focus-visible),.editor-icon-button{box-shadow:none;background:0 0;border-color:#0000}.editor-icon-button:not(:disabled):hover{border-color:var(--border-soft);background:var(--surface-recessed);color:var(--text-primary)}.editor-secondary-button,.editor-publish-button{border-color:var(--border-mid);background:var(--surface-elevated);box-shadow:inset 0 1px #fffc,0 1px 2px #3a38320d}.editor-secondary-button:hover{border-color:var(--border-strong);background:color-mix(in srgb, var(--surface-elevated) 68%, var(--surface-recessed))}.editor-publish-button{border-color:color-mix(in srgb, var(--accent-sage) 70%, var(--accent-sage-press));background:var(--accent-sage);color:var(--surface-elevated);box-shadow:inset 0 1px #ffffff38,0 1px 3px #44735f66}.editor-publish-button:hover{background:var(--accent-sage-press);color:var(--surface-elevated)}.editor-left-rail{width:var(--leftrail-w);z-index:20;border-right:1px solid var(--border-soft);background:var(--surface-panel);flex-direction:column;align-items:center;gap:4px;padding:10px 0;display:flex;position:relative;overflow:visible}.editor-rail-stack,.editor-rail-bottom-stack{flex-direction:column;align-items:center;gap:7px;display:flex}.editor-rail-bottom-stack{margin-top:auto}.editor-rail-button{border:1px solid var(--border-soft);background:var(--surface-elevated);width:36px;height:36px;color:var(--text-secondary);box-shadow:var(--shadow-tile);border-radius:10px;place-items:center;padding:0;transition:background 90ms,color 90ms,border-color 90ms,box-shadow 90ms,transform 90ms;display:inline-grid;position:relative}.editor-rail-button:hover{border-color:var(--border-mid);background:var(--surface-recessed);color:var(--text-primary);transform:translateY(-1px)}.editor-rail-button.is-active{border-color:var(--accent-sage-soft);background:var(--accent-sage-tint);color:var(--accent-sage-press);box-shadow:inset 0 1px #ffffffeb,0 1px 2px #44735f1a}.editor-rail-button.is-coming-soon{color:var(--text-muted)}.editor-rail-button.is-coming-soon:hover{color:var(--text-secondary)}.editor-rail-button--folder{border-radius:10px}.editor-rail-button.is-coming-soon:after{content:"coming soon";z-index:200;pointer-events:none;border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);width:max-content;color:var(--text-secondary);box-shadow:var(--shadow-tile);white-space:nowrap;opacity:0;padding:5px 7px;font-size:10px;font-weight:700;transition:opacity 90ms,transform 90ms;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)translate(-3px)}.editor-rail-button.is-coming-soon:hover:after,.editor-rail-button.is-coming-soon:focus-visible:after{opacity:1;transform:translateY(-50%)translate(0)}.editor-rail-divider{background:var(--border-soft);width:22px;height:1px;margin:4px 0}.editor-left-rail__avatar{color:#fff;background:linear-gradient(135deg,#5a8f7a,#3f6a57);border-radius:999px;place-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:grid;box-shadow:0 1px 2px #00000026,inset 0 1px #fff3}.editor-right-rail{width:var(--rightrail-w);min-width:var(--rightrail-w);max-width:var(--rightrail-w);border-left:1px solid var(--border-soft);background:var(--surface-panel);flex-direction:column;min-height:0;display:flex;overflow:hidden;box-shadow:inset -1px 0 #ffffffb3}.editor-inspector-panel{border-bottom:1px solid var(--border-soft);background:var(--surface-panel);flex:0 0 44%;grid-template-rows:44px minmax(0,1fr);min-height:240px;max-height:none;display:grid;overflow:hidden}.editor-inspector-panel__body{scrollbar-gutter:stable;min-height:0;overflow:hidden auto}.editor-layers-panel{background:var(--surface-panel);flex:56%;grid-template-rows:44px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.editor-panel-header{z-index:2;border-bottom:1px solid var(--border-soft);background:var(--surface-recessed);justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:8px 12px;display:flex;position:relative}.editor-panel-header h2{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11.5px;font-weight:800;line-height:1}.editor-panel-header button{border-radius:var(--r-sm);min-height:26px;box-shadow:none;color:var(--text-primary);background:0 0;border:0;align-items:center;gap:4px;padding:3px 7px;font-size:10.5px;display:inline-flex}.editor-panel-header button:not(:disabled):hover{background:var(--surface-elevated);box-shadow:var(--shadow-tile)}.editor-panel-header button:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.72}.editor-panel-context-chip{border-radius:var(--r-xs);background:var(--accent-sage-tint);min-height:18px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;padding:2px 6px;font-weight:800;line-height:1;display:inline-flex;color:var(--accent-sage-press)!important;font-size:9.5px!important}.editor-panel-context-chip--plain{background:0 0;padding-left:0;padding-right:0;color:var(--text-muted)!important}.editor-project-overview{gap:16px;padding:14px 16px 18px;display:grid}.editor-overview-section{gap:4px;display:grid}.editor-overview-kicker{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:10.5px;font-weight:800}.editor-project-overview__title{color:var(--text-primary);font-size:13px;font-weight:800}.editor-project-overview__subline{color:var(--text-muted);font-size:10.5px}.editor-fact-grid{gap:0;margin:0;display:grid}.editor-fact-grid div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;min-height:32px;padding:6px 0;display:flex}.editor-fact-grid dt{color:var(--text-secondary)}.editor-fact-grid dd{color:var(--text-primary);font-family:var(--font-mono);margin:0}.editor-fact-grid small{color:var(--text-muted);font-family:var(--font-ui);font-size:10px}.editor-inspector-panel .focused-module-inspector--embedded,.editor-focused-module__right .focused-module-inspector--embedded{gap:12px;display:grid}.editor-inspector-panel .focused-module-inspector--embedded{padding:0 12px 18px}.editor-inspector-panel .transform-panel,.editor-focused-module__right .transform-panel{gap:12px}.editor-inspector-panel .transform-panel{padding:0}.editor-inspector-panel .editor-control-section,.editor-inspector-panel .object-text-editor,.editor-inspector-panel .object-style-editor{box-shadow:none;background:0 0;border:0;border-radius:0;gap:8px;padding:0}.editor-inspector-panel .object-text-editor,.editor-inspector-panel .object-style-editor,.editor-inspector-panel .effect-property-panel{border-top:1px solid var(--border-soft);padding-top:12px}.editor-control-section,.object-text-editor,.object-style-editor{border:1px solid var(--border-soft);border-radius:var(--r-md);box-shadow:var(--shadow-tile);background:linear-gradient(#ffffffbd,#fcfbf7eb);gap:10px;padding:11px;display:grid}.editor-control-section h4,.object-text-editor h4,.object-style-editor h4{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:800}.editor-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.editor-inspector-panel .editor-control-grid{gap:6px}.editor-property-control{gap:5px;min-width:0;display:grid}.editor-property-control--range,.editor-property-control--color{grid-column:1/-1}.editor-property-control.is-disabled{opacity:.72}.editor-property-control .token-label{align-items:center;min-height:16px}.editor-property-control .token-label strong{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.editor-property-control .token-label small{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.03em;font-size:9px}.editor-property-control__field{min-width:0;display:block}.editor-property-control__field>input:not([type=range]):not([type=color]),.editor-property-control__field>select,.editor-number-control input[type=number],.editor-color-control input[type=text],.effect-control select,.effect-control input[type=text],.effect-control input[type=number]{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);width:100%;min-height:30px;color:var(--text-primary);font-family:var(--font-mono);padding:6px 8px;font-size:11.5px;box-shadow:inset 0 1px #ffffffe6}.editor-number-control{grid-template-columns:minmax(0,1fr) 58px;gap:8px}.editor-number-control input[type=range],.effect-control input[type=range]{appearance:none;width:100%;height:26px;accent-color:var(--accent-sage);background:0 0}.editor-number-control input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent-sage) 0%, var(--accent-sage) var(--editor-range-fill,0%), var(--border-mid) var(--editor-range-fill,0%), var(--border-soft) 100%);border-radius:999px;height:4px}.effect-control input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent-sage) 0%, var(--accent-sage) var(--editor-range-fill,0%), var(--border-mid) var(--editor-range-fill,0%), var(--border-soft) 100%);border-radius:999px;height:4px}.editor-number-control input[type=range]::-webkit-slider-thumb{appearance:none;border:1px solid var(--accent-sage);background:var(--accent-sage);border-radius:999px;width:14px;height:14px;margin-top:-5px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #3a383229}.effect-control input[type=range]::-webkit-slider-thumb{appearance:none;border:1px solid var(--accent-sage);background:var(--accent-sage);border-radius:999px;width:14px;height:14px;margin-top:-5px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #3a383229}.editor-number-control input[type=range]::-moz-range-track{background:var(--border-soft);border-radius:999px;height:4px}.effect-control input[type=range]::-moz-range-track{background:var(--border-soft);border-radius:999px;height:4px}.editor-number-control input[type=range]::-moz-range-progress{background:var(--accent-sage);border-radius:999px;height:4px}.effect-control input[type=range]::-moz-range-progress{background:var(--accent-sage);border-radius:999px;height:4px}.editor-number-control input[type=range]::-moz-range-thumb{border:1px solid var(--accent-sage);background:var(--accent-sage);border-radius:999px;width:14px;height:14px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #3a383229}.effect-control input[type=range]::-moz-range-thumb{border:1px solid var(--accent-sage);background:var(--accent-sage);border-radius:999px;width:14px;height:14px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #3a383229}.editor-number-control input[type=number]{text-align:right}.token-label--scrubbable{cursor:ew-resize;-webkit-user-select:none;user-select:none}.token-label--scrubbable strong{cursor:ew-resize}.editor-is-scrubbing-number,.editor-is-scrubbing-number *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}.editor-color-control{grid-template-columns:34px minmax(0,1fr);gap:8px}.editor-color-control input[type=color],.effect-control input[type=color],.object-style-editor input[type=color]{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);width:34px;height:30px;box-shadow:var(--shadow-tile);padding:3px}.object-text-editor label,.object-style-editor label{gap:6px;display:grid}.object-text-editor span,.object-style-editor span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.object-text-editor textarea{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-height:84px;color:var(--text-primary);padding:8px 9px;font-size:12px;line-height:1.45;box-shadow:inset 0 1px #ffffffe6}.object-text-editor button,.object-edit-actions button,.object-order-actions button,.effect-list-actions button,.effect-remove-button{border-radius:var(--r-sm);min-height:30px;font-size:12px}.object-field-note,.effect-token-note,.object-empty{border:1px solid var(--border-soft);border-radius:var(--r-sm);background:var(--surface-recessed);padding:8px}.effect-property-panel{border-top:0}.effect-property-panel>.panel-header{padding:2px 0 0}.editor-inspector-panel .effect-property-panel>.panel-header,.editor-focused-module__right .effect-property-panel>.panel-header{padding-left:0;padding-right:0}.effect-property-panel>.panel-header h2{color:var(--text-muted);font-size:var(--t-xs);letter-spacing:.08em;font-weight:800}.effect-list{gap:9px;padding:0}.effect-list-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.effect-card{border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--surface-elevated);box-shadow:var(--shadow-tile);padding:10px}.effect-card header{align-items:center}.effect-card header span{color:var(--text-muted);font-family:var(--font-mono);font-size:9.5px}.effect-control.editor-property-control--range,.effect-control.editor-property-control--color{grid-column:auto}.editor-focused-module__right .effect-property-panel{margin:0}.editor-focused-module__right .editor-control-section,.editor-focused-module__right .object-text-editor,.editor-focused-module__right .object-style-editor{padding:10px}.editor-inspector-module-hero{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;margin:10px 12px 4px;padding:0}.editor-inspector-module-hero__copy strong{font-size:13px;line-height:1.2}.editor-inspector-module-hero__name.editor-ui-button.editor-ui-button--ghost{width:100%;min-width:0;min-height:0;color:var(--text-primary);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;box-shadow:none;cursor:text;background:0 0;border:0;justify-content:flex-start;padding:0;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.editor-inspector-module-hero__name.editor-ui-button.editor-ui-button--ghost:hover,.editor-inspector-module-hero__name.editor-ui-button.editor-ui-button--ghost:focus-visible{color:var(--text-primary);background:0 0}.editor-inspector-module-hero__copy .editor-ui-text-field{width:100%;height:26px;min-height:26px;font-size:12px;font-weight:700}.editor-inspector-module-hero__copy span{font-size:10.5px}.editor-inspector-module-hero__meta{display:none}.editor-inspector-module-hero .editor-open-module-button{border-radius:var(--r-md);text-transform:lowercase;justify-content:center;align-items:center;gap:4px;width:auto;min-height:30px;margin:0;padding:0 10px;font-size:11px;font-weight:500;display:inline-flex}.editor-focused-module{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#28241c5c}.editor-focused-module__surface{border-radius:20px;grid-template-rows:48px 1fr;width:1200px;max-width:calc(100vw - 32px);height:740px;max-height:calc(100vh - 32px)}.editor-focused-module__header{grid-template-columns:30px minmax(0,1fr) auto auto;gap:10px;min-height:48px;padding:0 12px}.editor-focused-module__header p{margin-bottom:1px;font-size:10.5px}.editor-focused-module__chip{letter-spacing:.1em;padding:4px 8px;font-size:9.5px;font-weight:800}.editor-focused-module__body.is-simple .editor-focused-left-section{padding-left:10px;padding-right:10px}.editor-focused-module__right-scroll{scrollbar-gutter:stable;min-height:0;overflow:hidden auto}.editor-focused-breadcrumb{grid-template-columns:22px 22px minmax(0,1fr) auto;gap:5px;min-height:38px;padding:8px 10px}.editor-focused-breadcrumb__depth{background:var(--surface-elevated);color:var(--text-muted);font-family:var(--font-mono);border-radius:5px;justify-self:end;padding:4px 6px;font-size:9px;font-weight:700;line-height:1}.editor-focused-module .editor-focused-breadcrumb .editor-module-thumb{border-width:1.5px;border-radius:5px;width:22px;height:22px}.editor-focused-section-header{border-bottom:1px solid var(--border-soft);background:var(--surface-panel);flex-direction:row;justify-content:space-between;align-items:center;gap:4px;min-height:0;margin:0;padding:8px 10px 6px}.editor-focused-module__body.is-simple .editor-focused-section-header{flex-direction:row;align-items:center}.editor-focused-section-header h3{letter-spacing:.075em;white-space:nowrap;margin:0;font-size:10px}.editor-focused-section-header small{margin-top:1px;font-size:9.5px;line-height:1.2;display:block}.editor-focused-left-section--map,.editor-focused-left-section--layers{grid-template-rows:auto minmax(0,1fr);padding:0;display:grid}.editor-focused-left-section--map{border-bottom:1px solid var(--border-soft)}.editor-focused-source-footer{border-top:1px solid var(--border-soft);color:var(--text-muted);align-items:center;gap:5px;padding:6px 10px;font-size:10.5px;display:flex}.editor-focused-source-footer svg{color:var(--status-protected)}.editor-focused-size-toggle{border:1px solid var(--border-soft);background:var(--surface-recessed);border-radius:7px;flex:none;gap:1px;padding:2px;display:inline-flex}.editor-focused-size-toggle button{width:22px;height:18px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;padding:0;display:grid}.editor-focused-size-toggle button.is-active{border-color:var(--border-mid);background:var(--surface-elevated);color:var(--accent-sage-press);box-shadow:inset 0 1px #ffffffe6}.editor-submodule-grid,.editor-focused-module__body.is-simple .editor-submodule-grid{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:0;padding:8px 10px 10px;display:flex;overflow-y:auto}.editor-submodule-tile,.editor-focused-module__body.is-simple .editor-submodule-tile{flex:none;place-items:center;padding:0;display:grid}.editor-submodule-tile--dot{border-radius:6px;width:22px;height:22px}.editor-submodule-tile--small{border-radius:8px;width:32px;height:32px}.editor-submodule-tile--medium{border-radius:10px;width:44px;height:44px}.editor-submodule-tile--dot .editor-module-thumb,.editor-focused-module__body.is-simple .editor-submodule-tile--dot .editor-module-thumb{border-width:1.5px;border-radius:6px;width:22px;height:22px}.editor-submodule-tile--small .editor-module-thumb,.editor-focused-module__body.is-simple .editor-submodule-tile--small .editor-module-thumb{border-radius:8px;width:32px;height:32px}.editor-submodule-tile--medium .editor-module-thumb,.editor-focused-module__body.is-simple .editor-submodule-tile--medium .editor-module-thumb{border-radius:10px;width:44px;height:44px}.editor-submodule-tile.is-add svg{width:33%;height:33%}.editor-focused-module .editor-focused-module__header>.editor-module-thumb{border-radius:7px;width:30px;height:30px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--dot{border-radius:6px;flex-basis:22px;width:22px;height:22px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--small{border-radius:8px;flex-basis:32px;width:32px;height:32px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--medium{border-radius:10px;flex-basis:44px;width:44px;height:44px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--dot .editor-module-thumb{border-width:1.5px;border-radius:6px;width:22px;height:22px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--small .editor-module-thumb{border-radius:8px;width:32px;height:32px}.editor-focused-module .editor-submodule-tile.editor-submodule-tile--medium .editor-module-thumb{border-radius:10px;width:44px;height:44px}.editor-module-layer-stack{grid-auto-rows:min-content;align-content:start;gap:8px;min-height:0;margin-bottom:0;padding:8px 10px 0;overflow-y:auto}.editor-module-layer-row{grid-template-columns:28px minmax(0,1fr) auto;justify-content:normal;gap:7px;min-height:44px;padding:6px 7px;display:grid}.editor-module-layer-row__badge{border-radius:7px;width:28px;height:28px;font-size:9px}.editor-module-layer-row__label{font-size:12px;font-weight:600}.editor-module-layer-row small{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;justify-self:end;font-size:9px}.editor-focused-module .editor-module-layer-row{grid-template-columns:28px minmax(0,1fr) auto;gap:7px;min-height:44px;padding:6px 7px}.editor-focused-module .editor-module-layer-row__badge{border-radius:7px;width:28px;height:28px;font-size:9px}.editor-focused-module .editor-module-layer-row__label{font-size:12px;font-weight:600}.editor-focused-module__preview{padding:56px 28px 68px}.editor-focused-preview-card,.editor-focused-module__body.is-simple .editor-focused-preview-card{aspect-ratio:auto;background:var(--surface-elevated);width:min(360px,100% - 48px);min-height:280px;box-shadow:var(--shadow-card);justify-content:center;align-items:center;padding:24px;display:flex;overflow:visible}.editor-focused-module .editor-focused-preview-card__image{width:min(240px,100%);height:180px;box-shadow:var(--shadow-card);background-color:#101015;background-position:50%;background-repeat:no-repeat;border-radius:14px}.editor-focused-module .editor-focused-preview-card__image:after{border-radius:10px;inset:12px}.editor-focused-module .editor-focused-preview-reticle{border-color:#ffffff61;border-radius:10px;width:min(212px,100% - 72px);height:152px;inset:auto}.editor-focused-module .editor-focused-preview-card span{bottom:34px;left:42px}.editor-focused-preview-toolbar{bottom:16px}.editor-focused-tabs{border-bottom:1px solid var(--border-soft);background:var(--surface-recessed);align-items:center;gap:8px;padding:8px 12px}.editor-focused-tabs button{border-radius:8px;min-height:34px;font-size:12px}.editor-focused-tabs button[aria-selected=true]{border-color:var(--border-mid);background:var(--surface-elevated);color:var(--text-primary);box-shadow:inset 0 1px #ffffffe6,0 1px 2px #0000000f}.editor-focused-module__right .focused-module-inspector--embedded{padding:0 16px 18px}.editor-focused-module__right .transform-panel{padding:14px 0 0}.editor-focused-module__right .editor-control-section,.editor-focused-module__right .object-text-editor,.editor-focused-module__right .object-style-editor{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.editor-focused-module__right .editor-control-section--actions,.editor-focused-module__right .object-text-editor,.editor-focused-module__right .object-style-editor,.editor-focused-module__right .effect-property-panel{border-top:1px solid var(--border-soft);padding-top:12px}.editor-inspector-panel .focused-module-inspector--embedded,.editor-focused-module__right .focused-module-inspector--embedded,.editor-inspector-panel .module-kind-inspector,.editor-focused-module__right .module-kind-inspector{flex-direction:column;gap:0;padding:0;display:flex}.editor-inspector-panel .module-kind-header,.editor-focused-module__right .module-kind-header{display:none}.editor-inspector-panel .transform-panel,.editor-focused-module__right .transform-panel{flex-direction:column;gap:0;padding:0;display:flex}.editor-inspector-panel .editor-control-section,.editor-inspector-panel .object-text-editor,.editor-inspector-panel .object-style-editor,.editor-inspector-panel .effect-property-panel,.editor-focused-module__right .editor-control-section,.editor-focused-module__right .object-text-editor,.editor-focused-module__right .object-style-editor,.editor-focused-module__right .effect-property-panel{border:0;border-top:1px solid var(--border-soft);box-shadow:none;background:0 0;border-radius:0;flex-direction:column;gap:8px;margin:0;padding:14px 16px;display:flex}.editor-inspector-panel .editor-control-section:first-child,.editor-focused-module__right .editor-control-section:first-child{border-top:0}.editor-inspector-panel .editor-control-section h4,.editor-inspector-panel .object-text-editor h4,.editor-inspector-panel .object-style-editor h4,.editor-focused-module__right .editor-control-section h4,.editor-focused-module__right .object-text-editor h4,.editor-focused-module__right .object-style-editor h4{color:var(--text-muted);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:14px;font-weight:800;line-height:1.1}.editor-inspector-panel .editor-control-grid,.editor-focused-module__right .editor-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 8px;display:grid}.editor-focused-module__right .editor-control-section--transform .editor-control-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range),.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range){border:1px solid var(--border-mid);background:var(--surface-elevated);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;min-height:30px;padding:0 7px;display:grid;box-shadow:inset 0 1px #ffffffe6}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label,.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label{min-height:0;display:block}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label small,.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label small{display:none}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label strong,.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .token-label strong{color:var(--text-muted);letter-spacing:.04em;font-size:9.5px;font-weight:800}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) input,.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) input{min-height:0;box-shadow:none;color:var(--text-primary);text-align:right;background:0 0;border:0;padding:0;font-size:11px}.editor-inspector-panel .editor-property-control--range,.editor-focused-module__right .editor-property-control--range{grid-column:1/-1;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;display:grid}.editor-inspector-panel .editor-property-control--range .token-label,.editor-focused-module__right .editor-property-control--range .token-label{display:block}.editor-inspector-panel .editor-property-control--range .token-label small,.editor-focused-module__right .editor-property-control--range .token-label small{display:none}.editor-inspector-panel .editor-number-control,.editor-focused-module__right .editor-number-control{grid-template-columns:minmax(0,1fr) 54px;align-items:center;gap:8px;display:grid}.editor-inspector-panel .editor-number-control input[type=range],.editor-focused-module__right .editor-number-control input[type=range],.editor-inspector-panel .effect-control input[type=range],.editor-focused-module__right .effect-control input[type=range]{height:24px}.editor-inspector-panel .editor-number-control input[type=number],.editor-focused-module__right .editor-number-control input[type=number]{text-align:center;min-height:28px}.editor-inspector-panel .object-style-editor .editor-property-control,.editor-inspector-panel .effect-control,.editor-focused-module__right .object-style-editor .editor-property-control,.editor-focused-module__right .effect-control{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;display:grid}.editor-inspector-panel .object-style-editor .editor-property-control .token-label,.editor-inspector-panel .effect-control .token-label,.editor-focused-module__right .object-style-editor .editor-property-control .token-label,.editor-focused-module__right .effect-control .token-label{display:block}.editor-inspector-panel .object-style-editor .editor-property-control .token-label small,.editor-inspector-panel .effect-control .token-label small,.editor-focused-module__right .object-style-editor .editor-property-control .token-label small,.editor-focused-module__right .effect-control .token-label small{display:none}.editor-inspector-panel .editor-color-control,.editor-focused-module__right .editor-color-control{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;display:grid}.editor-inspector-panel .editor-color-control input[type=color],.editor-focused-module__right .editor-color-control input[type=color],.editor-inspector-panel .effect-control input[type=color],.editor-focused-module__right .effect-control input[type=color]{border-radius:6px;width:24px;height:24px}.editor-inspector-panel .editor-property-control__field>input:not([type=range]):not([type=color]),.editor-inspector-panel .editor-property-control__field>select,.editor-inspector-panel .editor-color-control input[type=text],.editor-inspector-panel .effect-control input[type=text],.editor-inspector-panel .effect-control input[type=number],.editor-inspector-panel .effect-control select,.editor-focused-module__right .editor-property-control__field>input:not([type=range]):not([type=color]),.editor-focused-module__right .editor-property-control__field>select,.editor-focused-module__right .editor-color-control input[type=text],.editor-focused-module__right .effect-control input[type=text],.editor-focused-module__right .effect-control input[type=number],.editor-focused-module__right .effect-control select{border:1px solid var(--border-mid);background:var(--surface-elevated);border-radius:6px;min-height:28px;padding:4px 7px;font-size:11px;box-shadow:inset 0 1px #ffffffe6}.editor-inspector-panel .object-text-editor label,.editor-focused-module__right .object-text-editor label{gap:6px;display:grid}.editor-inspector-panel .object-text-editor textarea,.editor-focused-module__right .object-text-editor textarea{border:1px solid var(--border-mid);background:var(--surface-elevated);border-radius:7px;min-height:64px;padding:7px 8px;font-size:11.5px;box-shadow:inset 0 1px #ffffffe6}.editor-inspector-panel .object-edit-actions,.editor-inspector-panel .object-order-actions,.editor-focused-module__right .object-edit-actions,.editor-focused-module__right .object-order-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.editor-inspector-panel .object-edit-actions button,.editor-inspector-panel .object-order-actions button,.editor-focused-module__right .object-edit-actions button,.editor-focused-module__right .object-order-actions button{border-radius:7px;min-height:30px;font-size:11.5px}.editor-inspector-panel .effect-property-panel>.panel-header,.editor-focused-module__right .effect-property-panel>.panel-header{border:0;min-height:0;padding:0}.editor-inspector-panel .effect-property-panel>.panel-header h2,.editor-focused-module__right .effect-property-panel>.panel-header h2{color:var(--text-muted);letter-spacing:.11em;font-size:14px;font-weight:800;line-height:1.1}.editor-inspector-panel .effect-property-panel>.panel-header span,.editor-focused-module__right .effect-property-panel>.panel-header span{color:var(--text-muted);background:0 0;border:0;padding:0}.editor-inspector-panel .effect-list,.editor-focused-module__right .effect-list{flex-direction:column;gap:8px;padding:0;display:flex}.editor-inspector-panel .effect-list-actions,.editor-focused-module__right .effect-list-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.editor-inspector-panel .effect-card,.editor-focused-module__right .effect-card{border-radius:8px;padding:8px}.editor-inspector-panel .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .editor-property-control__field>input,.editor-focused-module__right .editor-control-section--transform .editor-property-control:not(.editor-property-control--range) .editor-property-control__field>input{min-height:0;box-shadow:none;text-align:right;background:0 0;border:0;padding:0}.editor-inspector-panel .prototype-object-inspector{flex-direction:column;gap:12px;padding:0 12px 18px;display:flex}.editor-inspector-panel .prototype-inspector-section{box-shadow:none;background:0 0;border:0;flex-direction:column;gap:4px;padding:0;display:flex}.editor-inspector-panel .prototype-inspector-section h4{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:10.5px;font-weight:800;line-height:1.1}.editor-inspector-panel .prototype-transform-grid.editor-control-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.editor-inspector-panel .prototype-transform-pill.editor-property-control{border:1px solid var(--border-mid);background:var(--surface-elevated);border-radius:5px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;min-height:28px;padding:0 7px;display:grid;box-shadow:inset 0 1px #ffffffe6}.editor-inspector-panel .prototype-transform-pill .token-label{min-height:0;display:block}.editor-inspector-panel .prototype-transform-pill .token-label strong{color:var(--text-muted);letter-spacing:0;font-size:10px;font-weight:800}.editor-inspector-panel .prototype-transform-pill .token-label small{display:none}.editor-inspector-panel .prototype-transform-pill .editor-property-control__field>input{min-height:0;box-shadow:none;color:var(--text-primary);font-family:var(--font-mono);text-align:left;background:0 0;border:0;padding:0;font-size:10.5px}.editor-inspector-panel .prototype-control-stack{flex-direction:column;gap:7px;display:flex}.editor-inspector-panel .prototype-row-control{grid-template-columns:86px minmax(0,1fr);align-items:center;gap:8px;min-height:24px;display:grid}.editor-inspector-panel .prototype-row-control .token-label{min-height:0;display:block}.editor-inspector-panel .prototype-row-control .token-label strong{color:var(--text-secondary);letter-spacing:0;text-transform:none;font-size:11px;font-weight:500}.editor-inspector-panel .prototype-row-control .token-label small{display:none}.editor-inspector-panel .prototype-row-control .editor-number-control{grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px;display:grid}.editor-inspector-panel .prototype-row-control--opacity .editor-number-control{grid-template-columns:minmax(0,1fr) 40px 10px;gap:2px}.editor-inspector-panel .prototype-row-control--opacity .editor-number-control:after{content:"%";color:var(--text-secondary);font-family:var(--font-mono);font-size:10.5px;line-height:1}.editor-inspector-panel .prototype-row-control .editor-number-control input[type=range]{height:20px}.editor-inspector-panel .prototype-row-control .editor-number-control input[type=number]{min-height:0;box-shadow:none;color:var(--text-secondary);text-align:right;background:0 0;border:0;padding:0;font-size:10.5px}.editor-inspector-panel .prototype-row-control--opacity .editor-number-control input[type=number]{appearance:textfield;width:40px}.editor-inspector-panel .prototype-row-control--opacity .editor-number-control input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.editor-inspector-panel .prototype-row-control--opacity .editor-number-control input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.editor-inspector-panel .prototype-row-control .editor-property-control__field>select,.editor-inspector-panel .prototype-row-control--blend select{border:1px solid var(--border-mid);background:var(--surface-elevated);width:100%;min-height:31px;color:var(--text-primary);border-radius:6px;padding:4px 8px;font-size:11.5px;box-shadow:inset 0 1px #ffffffe6}.editor-inspector-panel .prototype-row-control .editor-color-control{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:7px;display:grid}.editor-inspector-panel .prototype-row-control .editor-color-control input[type=color]{border:1px solid var(--border-mid);background:var(--surface-elevated);width:28px;height:28px;box-shadow:var(--shadow-tile);cursor:pointer;border-radius:8px;padding:3px}.editor-inspector-panel .prototype-row-control .editor-color-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.editor-inspector-panel .prototype-row-control .editor-color-control input[type=color]::-webkit-color-swatch{border:1px solid #3a383224;border-radius:5px}.editor-inspector-panel .prototype-row-control .editor-color-control input[type=text],.editor-inspector-panel .prototype-row-control--font input{min-height:28px;box-shadow:none;font-family:var(--font-mono);background:0 0;border:0;padding:0;font-size:11px}.editor-inspector-panel .prototype-inspector-section.object-text-editor{gap:8px}.editor-inspector-panel .prototype-inspector-section.object-text-editor span{color:var(--text-secondary);letter-spacing:0;text-transform:none;font-size:11px;font-weight:500}.editor-inspector-panel .prototype-inspector-section.object-text-editor textarea{border-radius:7px;min-height:68px;font-size:11.5px}.editor-focused-module{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#28241c5c;padding:40px}.editor-focused-module__surface{border:1px solid var(--border-soft);background:var(--surface-panel);width:min(1200px,100vw - 80px);height:min(740px,100vh - 80px);box-shadow:var(--shadow-modal);border-radius:20px}.editor-focused-module__header{border-bottom:1px solid var(--border-soft);background:var(--surface-elevated);height:48px;min-height:48px;padding:0 12px}.editor-focused-module__header p{color:var(--text-muted);font-size:10.5px;line-height:1.15}.editor-focused-module__header h2{font-size:15px;line-height:1.15}.editor-focused-module__chip{letter-spacing:.1em;text-transform:uppercase;border-radius:4px;padding:2px 7px;font-size:9.5px;font-weight:700}.editor-focused-module__actions button{border-radius:7px;min-height:28px;padding:0 9px;font-size:12px;font-weight:500}.editor-focused-module__close{width:28px;height:28px;min-height:28px}.editor-focused-module__body,.editor-focused-module__body.is-simple{grid-template-columns:256px minmax(320px,1fr) 332px}.editor-focused-module__left{grid-template-rows:42px minmax(142px,.44fr) minmax(0,1fr) auto}.editor-focused-module__right{grid-template-rows:auto minmax(0,1fr)}.editor-focused-left-section--layers{min-height:0}.editor-focused-breadcrumb{background:var(--surface-recessed);grid-template-columns:24px 30px minmax(0,1fr) auto;min-height:42px;padding:6px 10px}.editor-focused-breadcrumb__label{display:none}.editor-focused-breadcrumb__depth{background:var(--surface-elevated);color:var(--text-muted);font-family:var(--font-mono);border-radius:4px;justify-self:end;padding:2px 6px;font-size:9px;font-weight:700}.editor-focused-section-header{background:var(--surface-panel);min-height:46px;padding:8px 10px 6px}.editor-focused-section-header h3{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;font-weight:700}.editor-focused-section-header small{color:var(--text-muted);font-size:9.5px}.editor-submodule-grid,.editor-focused-module__body.is-simple .editor-submodule-grid{gap:6px;padding:8px 10px 10px}.editor-module-layer-stack{gap:8px;padding:8px 10px 10px}.editor-focused-source-footer{background:var(--surface-panel);padding:6px 10px}.editor-focused-module__preview{background-color:var(--surface-recessed);background-image:radial-gradient(#3a383212 1px,#0000 1.4px);background-size:16px 16px;padding:56px 28px 68px}.editor-focused-preview-card,.editor-focused-module__body.is-simple .editor-focused-preview-card{border-radius:12px;width:360px;max-width:calc(100% - 48px);height:280px;min-height:0;padding:24px}.editor-focused-module .editor-focused-preview-card__image{border-radius:14px;width:240px;height:180px}.editor-focused-workspace-stage{width:240px;height:180px;box-shadow:var(--shadow-card);background-color:#101015;background-image:linear-gradient(45deg,#3a383214 25%,#0000 25%),linear-gradient(-45deg,#3a383214 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#3a383214 75%),linear-gradient(-45deg,#0000 75%,#3a383214 75%),none;background-position:0 0,0 8px,8px -8px,-8px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:16px 16px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border-radius:14px;position:relative;overflow:hidden}.editor-focused-workspace-scale{transform-origin:50%;position:absolute;top:50%;left:50%}.editor-focused-workspace-root{width:100%;height:100%}.editor-focused-workspace-root canvas{display:block}.editor-focused-workspace-message{z-index:3;max-width:220px;color:var(--text-secondary);background:#ffffffd6;border-radius:999px;padding:4px 8px;font-size:11px;position:absolute}.editor-focused-preview-context{font-size:11px;top:12px;left:14px}.editor-focused-depth-chip{font-size:9.5px;top:12px;right:14px}.editor-focused-preview-toolbar{gap:4px;padding:4px;bottom:12px}.editor-focused-preview-toolbar button{border-radius:999px;min-height:22px;padding:0 8px;font-size:11px}.editor-focused-tabs{background:var(--surface-recessed);gap:4px;padding:8px}.editor-focused-tabs button{border-radius:8px;min-height:34px;font-size:12px;font-weight:600}.editor-focused-build-header{min-height:52px;padding:12px 14px 8px}.editor-inspector-panel{flex:0 0 var(--editor-inspector-basis,38%);min-height:180px}.editor-rail-resize-grip{z-index:4;cursor:ns-resize;background:var(--surface-panel);flex:0 0 6px;position:relative}.editor-rail-resize-grip:before{background:var(--border-soft);content:"";border-radius:999px;height:1px;position:absolute;top:2px;left:14px;right:14px}.editor-rail-resize-grip:hover:before,.editor-rail-resize-grip:focus-visible:before{background:var(--accent-sage);height:2px}.editor-object-context-dock{border-bottom:1px solid var(--border-soft);background:var(--surface-panel);flex:0 0 124px;height:124px;overflow:hidden}.editor-object-context-dock__header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;min-height:34px;padding:0 14px;display:flex}.editor-object-context-dock__header h2{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.editor-object-context-dock__header span{background:var(--accent-sage-tint);color:var(--accent-sage-press);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:6px;padding:3px 6px;font-size:9px;font-weight:800}.editor-object-context-dock__body,.editor-object-context-dock__empty{grid-template-rows:38px 34px;gap:7px;height:89px;padding:8px 14px 9px;display:grid}.editor-object-context-dock__empty{grid-template-columns:minmax(0,1fr)}.editor-object-context-dock__summary{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.editor-object-context-dock__main{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.editor-object-context-dock__summary strong,.editor-object-context-dock__empty strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;display:block;overflow:hidden}.editor-object-context-dock__summary span,.editor-object-context-dock__empty span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.editor-object-context-dock__summary small{color:var(--text-muted);font-family:var(--font-mono);font-size:10px}.editor-object-context-dock__empty{color:var(--text-muted)}.editor-object-context-actions{gap:7px;display:grid}.editor-object-context-actions--dock{grid-template-columns:repeat(4,26px)}.editor-object-context-actions button{border:1px solid var(--border-mid);background:var(--surface-elevated);width:26px;min-width:26px;height:26px;min-height:26px;box-shadow:var(--shadow-tile);color:var(--text-primary);border-radius:7px;justify-content:center;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.editor-object-context-actions button:hover:not(:disabled){border-color:var(--accent-sage);color:var(--accent-sage-press)}.editor-object-context-actions button:disabled{opacity:.45}.editor-object-context-actions__delete{border-color:var(--status-protected-soft)!important;color:var(--status-protected)!important}.editor-object-context-tools{align-items:center;gap:5px;min-width:0;display:flex;overflow:hidden}.editor-object-context-tools button{border:1px solid var(--border-soft);background:var(--surface-elevated);min-width:26px;height:26px;color:var(--text-muted);font-family:var(--font-mono);border-radius:7px;justify-content:center;align-items:center;font-size:11px;display:inline-flex;box-shadow:inset 0 1px #ffffffe6}.editor-object-context-tools button:last-child{min-width:72px;font-family:var(--font-ui);text-transform:lowercase;padding:0 8px;font-size:10.5px}.editor-object-context-tools button:disabled{opacity:.5}.editor-focused-module__header{grid-template-columns:30px minmax(0,1fr) auto auto}.editor-object-context-actions--focused{grid-template-columns:repeat(4,26px);gap:5px}.editor-object-context-actions--focused button{border-radius:7px}.editor-focused-left-section--map{min-height:0;max-height:none}.editor-focused-left-section--object{border-bottom:2px solid var(--border-mid);grid-template-rows:42px minmax(0,1fr);padding:0 10px 8px;display:grid}.editor-focused-object-body{justify-content:flex-start;align-items:center;min-width:0;display:flex}.editor-focused-panel-resize-grip{z-index:3;cursor:ns-resize;background:linear-gradient(var(--surface-panel), var(--surface-panel)) padding-box, linear-gradient(90deg, transparent 0, var(--accent-sage) 42%, var(--accent-sage) 58%, transparent 100%) border-box;position:relative}.editor-focused-panel-resize-grip:before{background:var(--accent-sage);content:"";border-radius:999px;height:3px;position:absolute;top:3px;left:18px;right:18px;box-shadow:inset 0 1px #ffffffe6}.editor-focused-panel-resize-grip:hover:before,.editor-focused-panel-resize-grip:focus-visible:before{background:var(--accent-sage-press)}.editor-focused-module__left .editor-focused-breadcrumb,.editor-focused-left-section--map,.editor-focused-left-section--layers{border-bottom:2px solid var(--border-mid)}.editor-focused-section-header{border-bottom:1px solid var(--border-soft)}@media (max-width:1080px){.editor-focused-module__surface{width:min(1120px,100vw - 32px)}.editor-focused-module__body,.editor-focused-module__body.is-simple{grid-template-columns:256px minmax(280px,1fr) 332px}.editor-submodule-grid,.editor-focused-module__body.is-simple .editor-submodule-grid{grid-template-columns:repeat(5,42px)}}.editor-ui-button,.editor-ui-segmented-control button{border:1px solid var(--border-mid);border-radius:var(--r-md);background:var(--surface-elevated);min-height:30px;color:var(--text-primary);box-shadow:var(--shadow-tile);cursor:pointer;justify-content:center;align-items:center;gap:7px;display:inline-flex}.editor-ui-button--sm{min-height:28px;padding:0 10px;font-size:12px}.editor-ui-button--md{padding:0 14px}.editor-ui-button--icon{width:32px;height:32px;min-height:32px;padding:0}.editor-ui-button--primary{background:var(--accent-sage);color:var(--surface-elevated);border-color:#44735f59}.editor-ui-button--danger{border-color:var(--status-protected-soft);color:var(--status-protected)}.editor-ui-button--ghost{box-shadow:none;color:var(--text-secondary);background:0 0;border-color:#0000}.editor-ui-button--ghost:hover,.editor-ui-button--ghost:focus-visible{background:var(--surface-recessed);color:var(--text-primary)}.editor-ui-button:disabled,.editor-ui-segmented-control button:disabled{cursor:not-allowed;opacity:.46}.editor-ui-segmented-control{border:1px solid var(--border-soft);border-radius:var(--r-lg);background:var(--surface-recessed);box-shadow:var(--shadow-tile);align-items:center;gap:4px;padding:4px;display:inline-flex}.editor-ui-segmented-control button{border-color:#0000;min-width:72px}.editor-ui-segmented-control button.is-active{border-color:var(--border-mid);background:var(--surface-elevated)}.editor-ui-section{background:var(--surface-panel);border-bottom:2px solid var(--border-mid);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.editor-ui-section__header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:8px 10px;display:flex}.editor-ui-section__header h3{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.editor-ui-section__header small{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.editor-ui-section__action{align-items:center;gap:5px;display:inline-flex}.editor-ui-section__body{min-width:0;min-height:0;padding:10px}.editor-ui-section__footer{border-top:1px solid var(--border-soft);padding:7px 10px}.editor-ui-scroll-region{scrollbar-color:var(--accent-sage) transparent;scrollbar-gutter:stable;scrollbar-width:thin;min-width:0;min-height:0;overflow:auto}.editor-ui-resize-grip{z-index:4;background:var(--surface-panel);position:relative}.editor-ui-resize-grip--vertical{cursor:ns-resize;height:10px}.editor-ui-resize-grip--vertical:before{background:var(--accent-sage);content:"";border-radius:999px;height:3px;position:absolute;top:3px;left:18px;right:18px;box-shadow:inset 0 1px #ffffffe6}.editor-ui-resize-grip:hover:before,.editor-ui-resize-grip:focus-visible:before{background:var(--accent-sage-press)}.editor-ui-number-field{grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:10px;min-width:0;display:grid}.editor-ui-slider{appearance:none;background:0 0;width:100%;min-width:0}.editor-ui-slider::-webkit-slider-runnable-track{background:linear-gradient(var(--accent-sage), var(--accent-sage)) 0 0 / var(--editor-range-fill,0%) 100% no-repeat, var(--border-soft);border-radius:999px;height:6px}.editor-ui-slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--surface-elevated);background:var(--accent-sage);border-radius:999px;width:18px;height:18px;margin-top:-6px;box-shadow:0 1px 2px #3a383238}.editor-ui-slider::-moz-range-track{background:var(--border-soft);border-radius:999px;height:6px}.editor-ui-slider::-moz-range-progress{background:var(--accent-sage);border-radius:999px;height:6px}.editor-ui-slider::-moz-range-thumb{border:2px solid var(--surface-elevated);background:var(--accent-sage);border-radius:999px;width:16px;height:16px}.editor-ui-color-field{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.editor-ui-color-field__swatch{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:linear-gradient(var(--editor-color-value), var(--editor-color-value)) center / 18px 18px no-repeat, var(--surface-elevated);width:32px;height:32px;box-shadow:var(--shadow-tile);cursor:pointer}.editor-ui-color-field__native{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.editor-ui-select-field,.editor-ui-text-field,.editor-ui-textarea-field,.editor-ui-number-field input[type=number],.editor-ui-color-field input[type=text]{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);min-width:0;height:32px;color:var(--text-primary);font-family:var(--font-mono);padding:0 10px;font-size:12px;box-shadow:inset 0 1px #fffc}.editor-ui-textarea-field{resize:vertical;width:100%;height:auto;min-height:74px;padding:9px 10px;line-height:1.35}.editor-ui-select-field{width:100%}.editor-ui-tile{border:1px solid var(--border-mid);border-radius:var(--r-sm);background:var(--surface-elevated);box-shadow:var(--shadow-tile)}.editor-ui-tile.is-selected{border-color:var(--accent-sage);background:var(--accent-sage-tint)}.editor-ui-tile--dock-module,.editor-ui-tile--dock-action,.editor-ui-tile--dock-empty,.editor-ui-tile--dock-overflow,.editor-ui-tile--dock-unavailable{min-width:44px;min-height:44px}.editor-ui-tile--dock-module:hover,.editor-ui-tile--dock-action:hover,.editor-ui-tile--dock-empty:hover,.editor-ui-tile--dock-overflow:hover,.editor-ui-tile--dock-unavailable:hover{border-color:var(--accent-sage)}.editor-ui-tile--dock-module:focus-visible,.editor-ui-tile--dock-action:focus-visible,.editor-ui-tile--dock-empty:focus-visible,.editor-ui-tile--dock-overflow:focus-visible,.editor-ui-tile--dock-unavailable:focus-visible{outline:2px solid var(--accent-sage);outline-offset:2px}.editor-ui-tile--dock-module[aria-disabled=true],.editor-ui-tile--dock-action[aria-disabled=true],.editor-ui-tile--dock-empty[aria-disabled=true],.editor-ui-tile--dock-overflow[aria-disabled=true],.editor-ui-tile--dock-unavailable[aria-disabled=true]{opacity:.54}.editor-ui-tile--dock-module.is-selected{border-color:var(--accent-sage)}.editor-ui-tile--dock-action.editor-ui-tile--is-pending,.editor-ui-tile--dock-action.is-error,.editor-ui-tile--dock-empty.is-customizing,.editor-ui-tile--dock-overflow[aria-disabled=true],.editor-ui-tile--dock-unavailable.is-error{box-shadow:var(--shadow-tile), 0 0 0 2px var(--accent-sage-tint)}.editor-mount-surface-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;block-size:100%;min-block-size:0;min-inline-size:0;max-inline-size:100%;position:relative;overflow:auto}.editor-mount-surface{isolation:isolate;background:0 0;position:relative}.editor-mount-surface__background{z-index:0;pointer-events:none;position:absolute;inset:0}.editor-mount-surface__content{z-index:1;position:absolute;inset:0}.editor-mount-surface__bump-mark{fill:#f6f4edd1;stroke:#8a887fc7;stroke-width:1.5px}.editor-dock-host{grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;padding:0;display:grid;position:relative;overflow:hidden}.editor-dock-status{z-index:5;border:1px solid var(--border-muted);color:var(--text-muted);box-shadow:var(--shadow-soft);background:#fffdf7eb;border-radius:8px;margin:0;padding:6px 8px;font-size:.72rem;line-height:1.25;position:absolute;inset-block-end:8px;inset-inline:8px}.editor-dock-grid{z-index:2;pointer-events:none;position:absolute;inset:0}.editor-dock-slot{z-index:3;pointer-events:auto;min-width:0;position:absolute}.editor-dock-slot.is-drop-target{outline:2px dashed var(--accent-sage);outline-offset:2px}.editor-dock-zone{background:0 0;border:none;display:contents}.editor-dock-zone+.editor-dock-zone{margin-top:10px}.editor-dock-zone__header{z-index:4;border-radius:var(--r-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffb8;border:1px solid #e7e4dacc;grid-template-columns:24px minmax(0,1fr) auto 26px 26px;align-items:center;gap:6px;padding:7px 8px;display:grid;position:absolute}.editor-dock-zone__header strong{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.editor-dock-zone__header span{color:var(--text-muted);font-size:10.5px}.editor-dock-zone__header-button.editor-ui-button{border-radius:var(--r-sm);width:26px;height:26px;color:var(--text-secondary);box-shadow:none;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.editor-dock-zone__header-button.editor-ui-button:not([aria-disabled=true]):hover,.editor-dock-zone__header-button.editor-ui-button:focus-visible{background:var(--surface-recessed);color:var(--text-primary)}.editor-dock-zone__header-button.editor-ui-button[aria-disabled=true]{color:var(--text-muted);cursor:default}.editor-dock-zone__body{min-width:0;min-height:0}.editor-ui-tile--dock-module,.editor-ui-tile--dock-action,.editor-ui-tile--dock-empty,.editor-ui-tile--dock-overflow,.editor-ui-tile--dock-unavailable{aspect-ratio:1;border:1.5px solid var(--border-soft);width:100%;min-width:0;height:100%;color:var(--text-secondary);box-shadow:var(--shadow-tile), 0 1px 0 #ffffffd1 inset;background:linear-gradient(#fffffff2,#eeeadeeb);border-radius:10px;place-items:center;padding:3px;transition:transform .14s cubic-bezier(.2,.9,.4,1.2),box-shadow .14s,border-color .14s;display:grid}.editor-ui-tile--dock-module:hover,.editor-ui-tile--dock-action:hover{z-index:2;border-color:var(--border-mid);transform:translateY(-1px);box-shadow:0 6px 14px #28241c2e,0 2px 4px #28241c0f}.editor-ui-tile--dock-action,.editor-ui-tile--dock-empty,.editor-ui-tile--dock-overflow,.editor-ui-tile--dock-unavailable{background:#fcfbf7b8;border-style:dashed}.editor-ui-tile__content{place-items:center;gap:1px;min-width:0;display:grid;position:relative}.editor-ui-tile__content--module{width:100%;height:100%}.editor-ui-tile--dock-module .editor-module-thumb--sm{border-radius:8px;width:32px;height:32px}.editor-ui-tile--dock-module .editor-module-thumb__badge{min-width:15px;height:15px;font-size:7px;top:-6px;right:-6px}.editor-ui-tile__code{border-radius:var(--r-xs);color:var(--accent-sage);font-family:var(--font-mono);background:#fcfbf7e0;padding:0 3px;font-size:7px;font-weight:900;line-height:1.25;position:absolute;bottom:1px;left:2px}.editor-ui-tile__label{max-width:38px;color:var(--text-secondary);font-family:var(--font-mono);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;line-height:1.05;overflow:hidden}.editor-ui-tile--dock-action .editor-ui-tile__label,.editor-ui-tile--dock-empty .editor-ui-tile__label{display:none}.editor-ui-tile--dock-action .editor-ui-tile__content,.editor-ui-tile--dock-empty .editor-ui-tile__content{width:100%;height:100%}.editor-ui-tile--dock-action svg,.editor-ui-tile--dock-empty svg{width:18px;height:18px}.editor-focused-left-section.editor-ui-section{padding:0}.editor-focused-left-section.editor-ui-section .editor-ui-section__body{padding:10px}.editor-focused-left-section--object.editor-ui-section{grid-template-rows:42px minmax(0,1fr)}.editor-right-rail{--editor-object-basis:78px;min-inline-size:var(--rightrail-w)}.editor-right-rail>.editor-ui-resize-grip{flex:0 0 10px}.editor-object-context-dock.editor-ui-section{flex:0 0 var(--editor-object-basis);height:var(--editor-object-basis);border-bottom:2px solid var(--border-mid);background:var(--surface-panel);grid-template-rows:auto minmax(0,1fr);min-height:66px;max-height:120px;display:grid;overflow:hidden}.editor-object-context-dock.editor-ui-section .editor-ui-section__header{border-bottom:1px solid var(--border-soft);min-height:36px;padding:7px 12px}.editor-object-context-dock.editor-ui-section .editor-ui-section__body{min-height:0;padding:6px 12px 8px;overflow:hidden}.editor-object-context-dock__body,.editor-object-context-dock__empty{gap:6px;height:auto;min-height:0;padding:0}.editor-object-context-dock__body{grid-template-rows:1fr;align-items:center;display:grid}.editor-object-context-dock__empty{grid-template-rows:1fr;align-items:center}.editor-object-context-dock__summary{grid-template-columns:34px minmax(0,1fr) auto}.editor-object-context-actions--dock{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%}.editor-object-context-actions--dock .editor-ui-button{border-radius:8px;width:100%;min-width:0;height:28px;min-height:28px}.editor-object-context-actions button,.editor-object-context-tools button{border-radius:7px;width:24px;min-width:24px;height:24px;min-height:24px}.editor-object-context-tools{gap:4px}.editor-object-context-tools button:last-child{min-width:64px}.editor-focused-left-section.editor-ui-section{border-bottom:2px solid var(--border-mid)}.editor-focused-left-section--object.editor-ui-section{grid-template-rows:38px minmax(0,1fr);min-height:0;padding:0;display:grid;overflow:hidden}.editor-focused-left-section--object.editor-ui-section .editor-ui-section__body{min-height:0;padding:7px 10px}.editor-focused-object-body{align-items:flex-start;min-height:0}.editor-ui-resize-grip--vertical{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);height:10px}.editor-ui-slider{border-radius:0;outline:0;height:18px;box-shadow:none!important;border:0!important;padding:0!important}.editor-ui-slider:focus-visible{outline:0}.editor-ui-slider:focus-visible::-webkit-slider-runnable-track{box-shadow:0 0 0 2px var(--accent-sage-soft)}.editor-ui-slider:focus-visible::-moz-range-track{box-shadow:0 0 0 2px var(--accent-sage-soft)}.prototype-row-control .editor-ui-number-field{grid-template-columns:minmax(0,1fr) 42px;gap:6px}.prototype-row-control--opacity .editor-ui-number-field{grid-template-columns:minmax(0,1fr) 40px 10px;gap:2px}.prototype-row-control--opacity .editor-ui-number-field:after{content:"%";color:var(--text-secondary);font-family:var(--font-mono);font-size:10.5px;line-height:1}.prototype-row-control .editor-ui-number-field input[type=number]{width:42px;height:20px;box-shadow:none;color:var(--text-secondary);text-align:right;background:0 0;border:0;padding:0;font-size:10.5px}.prototype-row-control--opacity .editor-ui-number-field input[type=number]{appearance:textfield;width:40px}.prototype-row-control--opacity .editor-ui-number-field input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.prototype-row-control--opacity .editor-ui-number-field input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.editor-ui-color-field{grid-template-columns:34px minmax(0,1fr);gap:8px}.editor-ui-color-field__swatch{background:var(--surface-elevated);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:relative;overflow:hidden}.editor-ui-color-field__swatch:focus-within{outline:2px solid var(--border-focus);outline-offset:2px}.editor-ui-color-field__swatch.is-disabled{cursor:not-allowed;opacity:.55}.editor-ui-color-field__chip{background:var(--editor-color-value);border:1px solid #2a28253d;border-radius:4px;width:18px;height:18px;display:block}.editor-ui-color-field__native{opacity:0;pointer-events:auto;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.editor-ui-color-field__native:disabled{cursor:not-allowed}.editor-ui-number-field--range{grid-template-columns:minmax(0,1fr) auto;gap:12px}.editor-ui-number-field__value{min-width:42px;color:var(--text-secondary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:2px;font-size:10.5px;line-height:1;display:inline-flex}.editor-ui-number-field__value-input{appearance:textfield;width:32px!important;min-width:0!important;height:20px!important;box-shadow:none!important;color:inherit!important;font-family:inherit!important;font-size:inherit!important;text-align:right!important;background:0 0!important;border:0!important;border-radius:4px!important;padding:0!important;line-height:1!important}.editor-ui-number-field__value-input:focus-visible{outline:0;background:var(--accent-sage-tint)!important;box-shadow:inset 0 -1px 0 var(--border-focus)!important}.editor-ui-number-field__value-input::-webkit-outer-spin-button{appearance:none;margin:0}.editor-ui-number-field__value-input::-webkit-inner-spin-button{appearance:none;margin:0}.editor-ui-number-field__suffix{flex:none}.prototype-row-control .editor-ui-number-field--range,.prototype-row-control--opacity .editor-ui-number-field--range{grid-template-columns:minmax(0,1fr) auto;gap:12px}.prototype-row-control--opacity .editor-ui-number-field--range:after{content:none}.editor-focused-module__left,.editor-focused-module__body.is-simple .editor-focused-module__left{grid-template-rows:38px minmax(154px, var(--editor-focused-map-basis,22%)) 10px minmax(74px, var(--editor-focused-object-basis,92px)) 10px minmax(120px, 1fr) 32px}.editor-focused-left-section--map.editor-ui-section,.editor-focused-left-section--object.editor-ui-section,.editor-focused-left-section--layers.editor-ui-section{overflow:hidden}.editor-focused-left-section--map.editor-ui-section{min-height:154px}.editor-focused-left-section--map.editor-ui-section .editor-ui-section__header{align-items:flex-start;min-height:58px}.editor-focused-left-section--map.editor-ui-section .editor-ui-section__body,.editor-focused-left-section--layers.editor-ui-section .editor-ui-section__body{overflow:auto}.editor-focused-left-section--map .editor-submodule-grid,.editor-focused-left-section--layers .editor-module-layer-stack{margin-bottom:0}.editor-focused-left-section--map .editor-submodule-grid{padding-bottom:12px}
