.editor-shell{min-height:100vh;min-height:100dvh}.editor-shell--windowed{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100vh;height:100dvh;gap:10px;padding:10px}.editor-workbench{display:grid;min-height:0;gap:10px}.editor-busy-banner{position:fixed;top:88px;right:18px;z-index:78;pointer-events:none}.editor-busy-banner .loading-emblem{box-shadow:0 16px 34px #0c162329}.dock-column,.dock-row,.workspace{min-height:0}.dock-column,.dock-row{display:flex;flex-direction:column;gap:10px}.dock-row--bottom{min-height:0}.preview-shell{display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;gap:12px;padding:12px}.loading-shell{display:grid;place-items:center;min-height:100vh;padding:24px}.loading-emblem{display:inline-flex;align-items:center;gap:14px;padding:14px 18px;border-radius:18px;background:#ffffffe6;border:1px solid rgba(39,51,68,.08);box-shadow:0 18px 40px #0f172424}.loading-emblem__mark{position:relative;width:36px;height:36px}.loading-emblem__mark span{position:absolute;inset:0;border-radius:12px;border:3px solid rgba(93,126,177,.22);animation:loadingPulse 1.8s ease-in-out infinite}.loading-emblem__mark span:nth-child(2){inset:5px;animation-delay:.18s}.loading-emblem__mark span:nth-child(3){inset:10px;animation-delay:.36s}.loading-emblem__text{display:grid;gap:4px}.loading-emblem__text strong{font-size:.92rem;color:#1e2835}.menu-bar,.status-bar,.viewport-header,.preview-header,.floating-window,.workspace,.json-tray{background:#ffffffe0;border:1px solid rgba(57,73,97,.08);border-radius:18px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 42px #0b182b1a}.menu-bar{position:relative;z-index:80;display:grid;gap:10px;padding:10px}.menu-bar__desktop{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}.menu-bar__titleblock--desktop{flex:none}.menu-bar__user-badge{display:flex;align-items:center;gap:7px;flex:none;padding:0 4px}.menu-bar__user-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(139,198,255,.3);flex:none}.menu-bar__user-name{font-size:.72rem;color:#7a9ab8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.menu-bar__logout{font-size:.7rem;padding:4px 8px;opacity:.75;text-decoration:none;color:inherit;white-space:nowrap}.menu-bar__logout:hover{opacity:1}.desktop-menu-strip{position:relative;display:flex;align-items:center;gap:2px;flex-wrap:wrap;min-width:0}.desktop-menu{position:relative}.desktop-menu__trigger{border:0;border-radius:10px;padding:8px 12px;background:transparent;color:#223042;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .1s,color .1s}.desktop-menu__trigger.is-open,.desktop-menu__trigger:hover{background:#e2e9f3e0}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.desktop-menu__panel{position:absolute;top:calc(100% + 10px);z-index:120;display:grid;gap:8px;min-width:240px;max-width:min(360px,calc(100vw - 40px));padding:12px;border-radius:18px;background:#fffffffa;border:1px solid rgba(57,73,97,.08);box-shadow:0 20px 40px #0c162329;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:dropdown-in .14s ease-out both;transform-origin:top left}.desktop-menu__panel--left{left:0}.desktop-menu__panel--right{right:0}.desktop-menu__group{display:grid;gap:6px}.desktop-menu__group--dense{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-menu__group--dense .menu-label{grid-column:1 / -1}.desktop-menu__item{width:100%;justify-content:flex-start;text-align:left}.desktop-menu__panel .desktop-menu__item{display:flex;align-items:center;width:100%;padding:7px 10px;border-radius:8px;background:transparent;font-size:.79rem;color:#223042;text-align:left;font-weight:400;gap:6px}.desktop-menu__panel .desktop-menu__item:hover:not(:disabled){background:#c8d7ea8c;color:#111e2d}.desktop-menu__panel .desktop-menu__item.active,.desktop-menu__panel .mode-button.desktop-menu__item.active{background:#89b03c1f;color:#3d5e12;font-weight:500}.desktop-menu__panel .primary-button.desktop-menu__item{background:linear-gradient(135deg,#f3f9de,#d4f176);color:#3a5512;font-weight:600;border-radius:8px}.desktop-menu__panel .primary-button.desktop-menu__item:hover:not(:disabled){background:linear-gradient(135deg,#e8f5b8,#bada6a);color:#2a3f0d}.desktop-menu__panel .desktop-menu__item:disabled{opacity:.38;cursor:default}.menu-shortcut{margin-left:auto;flex-shrink:0;padding:2px 6px;border-radius:4px;background:#39496112;border:1px solid rgba(57,73,97,.14);font-family:monospace;font-size:10px;color:#8a9ab5;pointer-events:none;letter-spacing:.02em}.desktop-menu__inline-field{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:11px;color:var(--color-text-muted, #8a9ab5);cursor:default}.desktop-menu__inline-field span{flex:0 0 auto;white-space:nowrap}.desktop-menu__inline-field input[type=number]{flex:1;min-width:0;padding:2px 5px;font-size:11px;border:1px solid rgba(57,73,97,.2);border-radius:3px;background:var(--field-bg, #f7f8fa);color:inherit}.mobile-poly-field{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-muted, #8a9ab5);cursor:default}.mobile-poly-field input[type=number]{width:52px;padding:2px 4px;font-size:11px;border:1px solid rgba(57,73,97,.2);border-radius:3px;background:var(--field-bg, #f7f8fa)}.desktop-menu__divider{height:1px;background:#39496114}.desktop-menu__embedded{max-height:min(56vh,420px);overflow:auto;padding-top:2px}.menu-bar__toprow,.menu-bar__titleblock{display:flex;align-items:center;gap:10px}.menu-bar__toprow{display:none;justify-content:space-between;width:100%}.menu-bar__titleblock{flex-direction:column;align-items:flex-start;gap:2px}.menu-bar__eyebrow{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:#6f8f33;font-weight:700}.menu-bar__drawer{display:none}.menu-mobile-panel{display:grid;gap:10px;padding:12px;border-radius:16px;background:#f4f7fceb}.menu-mobile-panel textarea{width:100%}.menu-mobile-panel__header{display:flex;align-items:center;justify-content:space-between}.menu-mobile-panel .inspector{padding:0}.menu-json-panel{width:100%}.menu-json-panel textarea{min-height:180px}.web-import-dialog__field{display:grid;gap:6px}.web-import-dialog__label{font-size:.78rem;font-weight:600;color:#3a4f64}.web-import-dialog__label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.web-import-dialog__value{font-size:.78rem;color:#2230428c;font-variant-numeric:tabular-nums}.web-import-dialog__range-labels{display:flex;justify-content:space-between;font-size:.68rem;color:#8a9ab0;margin-top:-2px}.web-import-dialog__toggle-group{display:flex;gap:6px;flex-wrap:wrap}.web-import-dialog__hint{font-size:.74rem;color:#2230428c;line-height:1.45}.web-import-dialog__hint--muted{color:#8a9ab0}.web-import-dialog__progress-bar{height:4px;background:#3949611f;border-radius:2px;overflow:hidden;margin:4px 0 8px}.web-import-dialog__progress-fill{height:100%;background:#3d7bc4;border-radius:2px;transition:width .25s ease;min-width:4px}.web-import-dialog__advanced-toggle{font-size:.76rem;color:#4c6880;padding:4px 8px}.web-import-dialog__field--checkbox{background:#f6f9fcd9;border:1px solid rgba(57,73,97,.08);border-radius:10px;padding:8px 10px;gap:4px}.web-import-dialog__checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.8rem;font-weight:600;color:#2a3f56}.web-import-dialog__checkbox-label input[type=checkbox]{width:15px;height:15px;flex-shrink:0;accent-color:#89b03c;cursor:pointer}.web-import-dialog__input{width:100%;border:1px solid rgba(57,73,97,.1);border-radius:10px;background:#f8fafcf5;color:#203042;padding:7px 9px;font-size:.78rem;transition:border-color .12s,box-shadow .12s;outline:none}.web-import-dialog__input:focus{border-color:#89b03c80;box-shadow:0 0 0 3px #89b03c1f}.web-import-dialog__status{display:flex;align-items:center;gap:8px;font-size:.76rem;padding:8px 12px;border-radius:10px;border-left:3px solid transparent;font-weight:500}.web-import-dialog__status--busy{background:#4c82aa14;color:#3a6a90;border-left-color:#4c82aa}.web-import-dialog__status--busy:before{content:"";display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid rgba(76,130,170,.3);border-top-color:#4c82aa;flex-shrink:0;animation:web-import-spin .8s linear infinite}@keyframes web-import-spin{to{transform:rotate(360deg)}}.web-import-dialog__status--ok{background:#89b03c1a;color:#4a7014;font-weight:600;border-left-color:#89b03c}.web-import-dialog__status--ok:before{content:"✓";font-size:.82rem;color:#6a9a28}.web-import-dialog__status--error{background:#c74f4f14;color:#8b2f2f;border-left-color:#c74f4f}.web-import-dialog__status--error:before{content:"!";font-size:.82rem;font-weight:700;color:#c74f4f}.menu-section{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 8px;border-radius:14px;background:#f4f7fce6}.menu-mobile-section{display:grid;gap:8px}.menu-mobile-section__toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;border-radius:14px;padding:12px 14px;background:#f4f7fceb;color:#223042;font-size:.82rem;font-weight:700;text-align:left}.menu-mobile-section__toggle.is-open{background:linear-gradient(135deg,#dceba2d9,#a8ca4fb8);color:#18210d}.menu-mobile-section__chevron{flex:none;width:22px;text-align:center;font-size:.82rem;transition:transform .18s ease}.menu-mobile-section__toggle.is-open .menu-mobile-section__chevron{transform:rotate(180deg)}.menu-mobile-section__toggle{cursor:pointer;transition:background .14s ease,color .14s ease}.menu-mobile-section__body{display:grid;gap:8px;padding-bottom:4px}.menu-section--recording{margin-left:auto}.menu-section--camera{display:grid;align-items:stretch}.menu-section__bookmark-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.menu-section__bookmark-card{display:grid;gap:8px;padding:10px;border-radius:14px;background:#ffffffad;border:1px solid rgba(164,182,204,.35)}.menu-section__bookmark-card strong{font-size:.74rem;color:#243244}.menu-section__bookmark-card strong.bookmark-label--empty{color:#9eaabb;font-style:italic}.menu-section__bookmark-actions{display:flex;gap:6px}.menu-section__bookmark-actions .ghost-button{min-width:0;flex:1 1 0}.desktop-menu__group--bookmarks{grid-template-columns:1fr}.desktop-menu__bookmark-row{display:grid;gap:8px;padding:10px;border-radius:14px;background:#f5f8fceb}.desktop-menu__bookmark-row strong{font-size:.74rem;color:#243244}.bookmark-label--empty{color:#9eaabb;font-style:italic}.desktop-menu__bookmark-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.menu-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:#6d7a8d;font-weight:700}.menu-recording{color:#586578;font-size:.78rem;text-decoration:none}.menu-recording--live{color:#bd3a3a;font-weight:700}.menu-recording--download{color:#305f18;font-weight:700}.menu-recording--error{color:#b14646}.workspace{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;min-width:0;padding:10px}.viewport-header,.preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}.viewport-header h1,.preview-header h1,.panel-header h1,.panel-header h2,.panel-header h3,.inspector-section h3,.floating-window__header h3{margin:0;color:#1e2936}.inspector-section h3{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#22304273;padding-bottom:7px;border-bottom:1px solid rgba(57,73,97,.1)}.viewport-header h1,.preview-header h1,.panel-header h1{font-size:1.1rem}.panel-header h2,.floating-window__header h3{font-size:.96rem}.eyebrow{margin:0;font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:#6f8f33;font-weight:700}.preview-subtitle,.toggle-row span,.material-graph__hint,.multi-select-dim{opacity:.65}.material-assignment-note,.material-node-card__header span,.material-output-row__info span,.material-graph__status,.material-link__label,.material-node__meta,.inspector-empty,.node-lab-help span{color:#2230428c;font-size:.8rem}.field span,.vector-field>span{color:#223042b3;font-size:.8rem;font-weight:500}.node-lab-empty{color:#2230428c;font-size:.8rem}.viewport-mode-tabs{display:flex;gap:6px}.mode-button,.ghost-button,.primary-button,.socket-button,.node-lab-channel,.window-close-button,.menu-toggle{border:0;border-radius:999px;padding:6px 12px;color:#223042;background:#e1e8f2c7;font-size:.76rem;line-height:1.1;touch-action:manipulation;cursor:pointer;transition:background .12s,color .12s,box-shadow .12s}.ghost-button:hover,.mode-button:hover,.menu-toggle:hover{background:#c8d7eaeb;color:#111e2d}.ghost-button.is-danger{color:#7e2a2a}.ghost-button.is-danger:hover{background:#facdcdfa;color:#5c1616}.primary-button:hover{background:linear-gradient(135deg,#e8f5b8,#bada6a);box-shadow:0 2px 8px #649b002e}.ghost-button:focus-visible,.mode-button:focus-visible,.primary-button:focus-visible,.socket-button:focus-visible,.window-close-button:focus-visible,.menu-toggle:focus-visible,.desktop-menu__trigger:focus-visible,.viewport-history__button:focus-visible,.viewport-history__dot:focus-visible,.viewport-history__entry:focus-visible,.outliner-collapse-toggle:focus-visible,.outliner-vis-btn:focus-visible,.outliner-item:focus-visible,.inspector-child-item:focus-visible,.inspector-subsection__summary:focus-visible,.outliner-hidden-chip button:focus-visible,.outliner-cluster-group__header:focus-visible,.outliner-search__clear:focus-visible,.settings-group__toggle:focus-visible,.material-graph__add-dropdown-item:focus-visible,.status-bar__snap:focus-visible,.context-menu__button:focus-visible,.editor-dialog__option:focus-visible,.asset-library__item:focus-visible,.asset-item__select:focus-visible{outline:2px solid rgba(137,176,60,.8);outline-offset:2px}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:2px solid rgba(137,176,60,.8);outline-offset:1px}.ghost-button:active,.mode-button:active,.primary-button:active{transform:scale(.97)}.outliner-collapse-toggle:active,.outliner-vis-btn:active{transform:scale(.92);opacity:.7}.vector-field__reset:active{transform:scale(.93);border-color:#3a6a8a;color:#3a6a8a}.ghost-button.is-active{background:#89b03c24;color:#3d5e12;font-weight:600;box-shadow:inset 0 0 0 1px #89b03c4d}.ghost-button:disabled,.mode-button:disabled,.primary-button:disabled,.socket-button:disabled,.window-close-button:disabled{opacity:.42;cursor:not-allowed;pointer-events:none}.window-close-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;padding:0;font-size:1.1rem;font-weight:400;line-height:1;color:#22304280;border-radius:5px}.window-close-button:hover{color:#c0392b;background:#c0392b14}.window-icon-button{display:flex;align-items:center;justify-content:center;min-width:24px;width:24px;height:24px;padding:0;border:0;border-radius:5px;background:transparent;color:#22304273;cursor:pointer;transition:background .12s,color .12s}.window-icon-button:hover{background:#c8d7ead9;color:#111e2d}.floating-window--maximized{position:fixed;z-index:50;width:auto;height:auto;resize:none;border-radius:14px;box-shadow:0 8px 40px #0b182b38,0 0 0 1px #3949611a}.floating-window--maximized .floating-window__header{cursor:default}.mode-button.active,.primary-button,.socket-button.active,.socket-button--in:hover,.node-lab-channel--ready{background:linear-gradient(135deg,#dceba2,#a8ca4f);color:#18210d;font-weight:700}.mode-button.active{box-shadow:0 0 0 1.5px #64940c8c,inset 0 1px #fff6}.canvas-frame,.preview-canvas-frame{position:relative;overflow:hidden;min-height:0;border-radius:20px;border:1px solid rgba(57,73,97,.08);box-shadow:inset 0 0 0 1px #ffffff59;background:#edf2f8}.canvas-frame--workspace{min-height:480px}.viewport-corner-controls{position:absolute;top:.6rem;right:.6rem;z-index:10;display:flex;align-items:center;gap:.35rem;pointer-events:all}.viewport-responsive3d-toggle{padding:.28rem .7rem;border-radius:.5rem;background:#141824b8;border:1px solid rgba(255,255,255,.13);color:#c8d2e6bf;font-size:.72rem;font-weight:500;letter-spacing:.01em;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.viewport-responsive3d-toggle:hover{background:#1e2434e0;color:#d8e4ff;border-color:#78a0ff4d}.viewport-responsive3d-toggle.is-active{background:#3c64c859;color:#a8c4ff;border-color:#6496ff73}.viewport-settings-gear{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:.5rem;background:#141824b8;border:1px solid rgba(255,255,255,.13);color:#c8d2e6bf;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .15s,color .15s,border-color .15s}.viewport-settings-gear:hover{background:#1e2434e0;color:#d8e4ff;border-color:#78a0ff4d}.viewport-settings-gear.is-active{background:#3c64c859;color:#a8c4ff;border-color:#6496ff73}.canvas-frame canvas,.preview-canvas-frame canvas{display:block}.viewport-badge{position:absolute;top:10px;right:10px;z-index:5;padding:6px 10px;border-radius:999px;background:#ffffffeb;color:#516074;font-size:.7rem;box-shadow:0 10px 24px #101c281f}.viewport-loading-overlay{position:absolute;inset:0;z-index:8;display:grid;place-items:center;background:#f4f8fc80;pointer-events:none}.viewport-mobile-tools{position:absolute;right:12px;bottom:14px;z-index:11;display:grid;justify-items:end;gap:8px}.viewport-mobile-actions,.viewport-bookmark-chip__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.viewport-camera-toggle.active{background:linear-gradient(135deg,#dceba2,#a8ca4f);color:#18210d;font-weight:700}.viewport-bookmark-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(320px,calc(100vw - 28px))}.viewport-bookmark-chip{display:grid;gap:8px;padding:10px 12px;border-radius:14px;background:#fffffff0;box-shadow:0 12px 26px #0c162324;color:#223042;border:1px solid rgba(160,178,201,.18)}.viewport-bookmark-chip.is-saved{border-color:#a8ca4f61}.viewport-bookmark-chip.is-empty{background:#ffffffdb}.viewport-bookmark-chip__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.viewport-bookmark-chip strong{font-size:.76rem}.viewport-bookmark-chip__header span{font-size:.68rem;color:#6f8095}.viewport-bookmark-chip.is-saved .viewport-bookmark-chip__header span{color:#5f7d1d;font-weight:700}.viewport-touch-hint{display:grid;gap:4px;max-width:min(240px,calc(100vw - 28px));padding:10px 12px;border-radius:14px;background:#fffffff0;box-shadow:0 12px 26px #0c162324;color:#223042}.viewport-touch-hint strong{font-size:.74rem}.viewport-touch-hint span{color:#617186;font-size:.74rem;line-height:1.4}.viewport-bookmark-chip:last-child:nth-child(odd){grid-column:1 / -1}.viewport-bookmark-chip__actions .ghost-button{min-width:0;flex:1 1 72px}.viewport-focus-button{position:relative;border:0;border-radius:999px;padding:10px 14px;background:#fffffff0;box-shadow:0 12px 26px #0c162329;color:#223042;font-size:.78rem;font-weight:700;cursor:pointer;transition:background .12s,box-shadow .12s}.viewport-focus-button:hover{background:#f0f8fffa;box-shadow:0 14px 30px #0c162333}.viewport-history{position:absolute;top:12px;left:12px;z-index:12;display:grid;gap:8px;pointer-events:none}.viewport-history__controls,.viewport-history__panel{pointer-events:auto}.viewport-history__controls{display:inline-flex;align-items:center;gap:6px;padding:6px;border-radius:999px;background:#ffffffeb;box-shadow:0 12px 28px #101c2829}.viewport-history__button,.viewport-history__dot{border:0;width:34px;height:34px;transition:background .1s,color .1s;border-radius:999px;display:grid;place-items:center;background:#e8eef6f5;color:#223042;font-size:1rem;touch-action:manipulation;cursor:pointer}.viewport-history__button:disabled{opacity:.42}.viewport-history__dot{font-size:.7rem}.viewport-history__dot.is-active,.viewport-history__button:not(:disabled):hover,.viewport-history__dot:hover{background:linear-gradient(135deg,#dceba2,#a8ca4f);color:#18210d}.viewport-history__panel{width:min(280px,calc(100vw - 40px));max-height:320px;overflow:auto;padding:12px;border-radius:16px;background:#fffffff5;box-shadow:0 18px 36px #0c16232e}.viewport-history__panel header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.viewport-history__panel header strong{color:#1f2b39;font-size:.84rem}.viewport-history__panel header span,.viewport-history__entry small{color:#2230428c;font-size:.7rem}.viewport-history__list{display:grid;gap:6px}.viewport-history__entry{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;padding:8px 10px;border-radius:12px;background:#eff4faf2;color:#223042;font-size:.76rem;text-align:left;cursor:pointer;transition:background .1s,color .1s}.viewport-history__entry:not(:disabled):hover{background:#dceaf8fa;color:#111e2d}.viewport-history__entry:disabled{opacity:.82;cursor:default}.viewport-history__entry--current{background:linear-gradient(135deg,#dceba2,#a8ca4f);color:#18210d;font-weight:700}.status-bar{display:flex;align-items:center;gap:10px;padding:6px 12px;color:#2230428c;font-size:.74rem}.status-bar__message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-bar__selection{color:#4e6378;font-weight:500;white-space:nowrap;flex-shrink:0}.status-bar__node-icon{margin-right:4px;opacity:.6}.status-bar__snap{background:#64748b1a;border:1px solid rgba(100,116,139,.2);border-radius:4px;color:#64748b;cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:500;letter-spacing:.02em;padding:1px 7px;white-space:nowrap;flex-shrink:0;transition:background .12s,color .12s,border-color .12s}.status-bar__snap:hover{background:#4caf5014;border-color:#4caf504d;color:#5aa85e}.status-bar__snap--on{background:#4caf501f;border-color:#4caf5047;color:#4caf50;font-weight:600}.status-bar__snap--on:hover{background:#e573731a;border-color:#e5737347;color:#e57373}.status-bar__date{color:#22304273;white-space:nowrap;flex-shrink:0;margin-left:auto;padding-left:10px;border-left:1px solid rgba(57,73,97,.12)}.status-bar__hw{color:#22304261;white-space:nowrap;flex-shrink:0;padding-left:10px;border-left:1px solid rgba(57,73,97,.12)}.json-tray{display:grid;gap:8px;padding:12px 14px 14px}.panel-header,.floating-window__header{padding:12px 12px 10px}.panel-header--compact{padding-bottom:0}.floating-window{display:flex;flex-direction:column;min-height:0;overflow:hidden}.floating-window--floating{position:absolute;z-index:20;resize:both;min-width:260px;min-height:220px}.floating-window--floating::-webkit-resizer{display:none}.floating-window__header{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(57,73,97,.08);background:linear-gradient(180deg,#f4f7fcf2,#e7edf5eb);cursor:move;-webkit-user-select:none;user-select:none;transition:background .12s}.floating-window--floating .floating-window__header:hover{background:linear-gradient(180deg,#eef3fcfa,#e0e8f4f5)}.floating-window--dock-left .floating-window__header,.floating-window--dock-right .floating-window__header,.floating-window--dock-bottom .floating-window__header{cursor:grab}.floating-window__titleblock{display:flex;align-items:center;gap:8px}.floating-window__dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(180deg,#dceba2,#a8ca4f);box-shadow:0 0 0 1px #3548112e}.floating-window__actions,.asset-item__actions,.toolbar__group,.json-tools__actions,.outliner-row__actions{display:flex;gap:6px;flex-wrap:wrap}.floating-window__body{min-height:0;overflow:auto;overflow-x:hidden}.floating-window__body:has(.material-graph-panel){flex:1;display:flex;flex-direction:column;overflow:hidden}.outliner,.inspector,.settings-panel,.asset-panel{padding:0 12px 12px}.outliner-wrap,.asset-list,.inspector,.asset-panel{display:grid;gap:8px;min-width:0}.asset-list-search{padding:0 10px 2px}.asset-list-search input{width:100%;background:var(--color-bg-2, #1a1a1a);border:1px solid var(--color-border, #333);border-radius:4px;color:inherit;font-size:12px;padding:4px 8px}.outliner,.asset-list,.material-graph-canvas{overflow:auto}.inspector{overflow-x:hidden;overflow-y:auto}.outliner-item,.asset-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border-radius:12px;border:1px solid rgba(57,73,97,.08);background:#f6f9fcf2;color:inherit;text-align:left;font-size:.8rem;transition:background .12s,border-color .12s}.asset-item{align-items:flex-start;flex-direction:column}.asset-item:hover:not(.active):not(.asset-item--assigned){background:#ecf1f8fa;border-color:#39496124}.outliner-item small,.asset-item small,.asset-item__actions small,.vector-field__inputs small{color:#2230428c;font-size:.72rem}.outliner-item:hover:not(.active){background:#ecf1f8fa;border-color:#39496124}.outliner-item.active,.asset-item.active{border-color:#89b03c73;background:#dceba257}.asset-chip{font-size:.64rem;color:#305f18;background:#dceba299;padding:4px 8px;border-radius:999px}.asset-chip--muted{color:var(--color-text-muted, #8a9ab5);background:transparent}.asset-library{display:grid;gap:10px;padding:10px;border-radius:14px;border:1px solid rgba(57,73,97,.08);background:#f6f9fce0}.asset-library__header{display:grid;gap:3px}.asset-library__header span,.asset-library__item span{color:#2230428c;font-size:.72rem}.asset-library__search{gap:6px}.asset-library__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.asset-library__item,.asset-library__empty{display:grid;gap:4px;border-radius:12px;padding:10px;text-align:left}.asset-library__item{border:0;background:#eff4faf5;color:#223042;cursor:pointer;transition:background .12s}.asset-library__item:hover{background:#dceafaf5}.asset-library__item small,.asset-library__empty{color:#2230428c;font-size:.72rem}.asset-library__empty{border:1px dashed rgba(91,109,135,.22);background:#fafcffc7}.asset-library__category{display:inline-block;background:#4c82aa1a;border-radius:4px;color:#4c8096;font-size:.62rem;font-weight:600;letter-spacing:.03em;padding:2px 5px;text-transform:uppercase}.asset-assign-hint{font-size:.74rem;color:#607387;background:#ffbe4614;border:1px solid rgba(255,190,70,.2);border-radius:8px;padding:8px 12px}.asset-assign-hint strong{color:#3e5470}.asset-item--assigned{border-color:#89b03c8c!important}.asset-item__rename-input{display:block;width:100%;font-size:.8rem;font-weight:600;background:#ffffff1f;border:1px solid rgba(137,176,60,.6);border-radius:3px;padding:1px 4px;color:inherit;outline:none;min-width:0}.asset-item__info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.asset-swatch{display:flex;gap:2px;flex-shrink:0}.asset-swatch__dot{display:block;width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}.inspector-type-icon{display:inline-block;margin-right:5px;opacity:.7}.inspector-material-preview{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#89b03c0f;border:1px solid rgba(137,176,60,.18);border-radius:6px}.inspector-material-preview__info{display:flex;flex-direction:column;gap:2px;min-width:0}.inspector-material-preview__info strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inspector-material-preview__info small{color:#2230428c;font-size:.7rem}.asset-empty-state{font-size:.76rem;color:#8a9ab0;text-align:center;padding:16px;border:1px dashed rgba(91,109,135,.2);border-radius:10px}.settings-panel,.asset-panel,.inspector-section{display:grid;gap:10px;min-width:0}.inspector .inspector-section+.inspector-section{padding-top:10px;border-top:1px solid rgba(57,73,97,.07)}.inspector-poly-row{display:flex;align-items:flex-start;gap:8px}.inspector-poly-label{font-size:.62rem;color:#2230428c;text-transform:uppercase;letter-spacing:.12em;font-weight:700;width:48px;flex-shrink:0;padding-top:5px}.inspector-poly-buttons{display:flex;flex-wrap:wrap;gap:4px;flex:1}.inspector-poly-buttons .ghost-button,.inspector-poly-buttons .mode-button{font-size:.7rem;padding:4px 9px;height:auto;min-height:26px}.inspector-poly-row--amounts{gap:10px}.inspector-poly-amount{display:flex;flex-direction:column;gap:2px;flex:1}.inspector-poly-amount span{font-size:.6rem;color:#2230428c;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.inspector-poly-amount input{width:100%;font-size:.76rem;padding:4px 7px;border:1px solid rgba(57,73,97,.1);border-radius:8px;background:#f8fafcf5;color:#203042;outline:none;transition:border-color .12s,box-shadow .12s}.inspector-poly-amount input:focus{border-color:#89b03c80;box-shadow:0 0 0 3px #89b03c1f}.inspector-poly-status{font-size:.74rem;color:#2230428c;margin:0;padding:4px 8px;background:#f3f7fce0;border-radius:6px;border-left:2px solid rgba(76,130,170,.4)}.inspector-poly-status--drag{color:#3d5e12;border-left-color:#89b03c99;background:#89b03c14}.inspector-hint{font-size:.74rem;color:#2230428c;line-height:1.45;margin-top:6px;margin-bottom:2px}.inspector-hint--warn{color:#7e4a00;background:#ffb4001a;border-left:2px solid rgba(255,180,0,.5);padding:4px 6px;border-radius:3px}.graph-node-inspector__channel{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;color:#2230429e;margin-top:5px;padding:4px 8px 4px 6px;border-radius:99px;background:#3949610f;border:1px solid rgba(57,73,97,.09)}.graph-node-inspector__channel-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.graph-node-inspector__channel-dot--color{background:#e57373}.graph-node-inspector__channel-dot--roughness{background:#ffb74d}.graph-node-inspector__channel-dot--metalness{background:#90caf9}.graph-node-inspector__channel-dot--bump{background:#a5d6a7}.graph-node-inspector__channel-dot--normal{background:#80cbc4}.graph-node-inspector__channel-dot--opacity{background:#ce93d8}.graph-node-inspector__channel-dot--emissive{background:#fff176}.graph-node-inspector__channel-dot--reflectivity{background:#f48fb1}.graph-node-inspector__channel-dot--displacement{background:#bcaaa4}.scalar-slider-row{display:flex;align-items:center;gap:8px;flex:1}.scalar-slider{flex:1;min-width:0;accent-color:#5b8aff;cursor:pointer;height:4px}.scalar-number{width:58px;flex-shrink:0}.settings-panel--full{padding-top:6px}.settings-panel__header,.asset-panel__header,.json-tools__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.material-graph__header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px 4px}.settings-grid{display:grid;gap:8px}.settings-grid--double{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-snap-presets{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:6px}.settings-snap-presets__label{font-size:.72rem;color:#2230428c;min-width:80px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:12px;background:#f6f9fcf2;border:1px solid rgba(57,73,97,.08);cursor:pointer;transition:background .12s,border-color .12s}.toggle-row:hover{background:#ecf1f8fa;border-color:#39496124}.toggle-row:has(input[type=checkbox]:checked){background:#dceba238;border-color:#89b03c47}.toggle-row:has(input[type=checkbox]:checked):hover{background:#dceba252;border-color:#89b03c61}.field,.vector-field,.material-node-fields{display:grid;gap:6px;padding:8px 12px;width:100%;min-width:0;overflow:hidden}.material-node-fields .vector-field__inputs{flex-wrap:wrap}.field-hint{font-size:10px;color:#7a8ea4;padding:0 2px;margin-top:-2px;margin-bottom:2px}.field-hint code{font-family:Fira Mono,Cascadia Code,monospace;background:#1e3c6412;padding:1px 4px;border-radius:4px;color:#4c7bbf}.field input,.field textarea,.field select,.vector-field input,.json-tray textarea,.material-json{width:100%;border:1px solid rgba(57,73,97,.1);border-radius:10px;background:#f8fafcf5;color:#203042;padding:7px 9px;resize:vertical;font-size:.78rem;transition:border-color .12s,box-shadow .12s;outline:none}.field select,.field input[type=color]{cursor:pointer}.field input:focus,.field textarea:focus,.field select:focus,.vector-field input:focus{border-color:#89b03c80;box-shadow:0 0 0 3px #89b03c1f}.field input[type=color]{min-height:34px;padding:3px}.vector-field__inputs{display:flex;flex-wrap:nowrap;gap:6px;min-width:0}.vector-field__inputs label{flex:1 1 0;min-width:0;display:grid;gap:4px}.vector-field__inputs input{width:100%;min-width:0}.vector-field__reset{background:none;border:1px solid rgba(57,73,97,.18);color:#2230428c;border-radius:6px;font-size:13px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;align-self:flex-end;transition:color .12s,border-color .12s;padding:0}.vector-field__reset:hover{color:#1f2b39;border-color:#39496161;background:#e1e8f299}.rotation-unit-toggle{display:inline-block;margin-left:5px;padding:1px 5px;font-size:10px;font-weight:600;border-radius:4px;border:1px solid rgba(57,73,97,.22);background:#f0f4fae6;color:#5b8dee;cursor:pointer;vertical-align:middle;line-height:1.4}.rotation-unit-toggle:hover{background:#e3eaf6;border-color:#5b8dee}.selection-pill,.lod-pill{padding:4px 8px;border-radius:999px;background:#fffffff2;border:1px solid rgba(137,176,60,.35);font-size:.66rem;color:#2c4e16;white-space:nowrap}.selection-pill{animation:selectionPillPulse 2.4s ease-in-out infinite}@keyframes selectionPillPulse{0%,to{transform:translateY(0);box-shadow:0 8px 22px #a6cb4f2e}50%{transform:translateY(-1px);box-shadow:0 10px 26px #a6cb4f4d}}.material-asset-name{min-width:160px}.material-graph-canvas{position:relative;flex:1;min-height:200px;border-radius:16px;border:1px solid rgba(57,73,97,.08);overflow:hidden;background:linear-gradient(rgba(107,125,147,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(107,125,147,.08) 1px,transparent 1px),#f2f6fafa;background-size:28px 28px,28px 28px,auto}.material-graph-canvas__lines{position:absolute;inset:0;width:1280px;height:880px;pointer-events:none}.material-graph-canvas__connect-hint{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:10;background:#fffffff2;border:1px solid rgba(76,175,80,.4);border-radius:8px;padding:5px 14px;font-size:12px;color:#2e7d32;pointer-events:none;white-space:nowrap;box-shadow:0 2px 8px #0000001a}.material-link{fill:none;stroke:#93c247;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.material-link--color{stroke:#e57373}.material-link--roughness{stroke:#ffb74d}.material-link--metalness{stroke:#90caf9}.material-link--bump{stroke:#80cbc4}.material-link--normal{stroke:#a5d6a7}.material-link--opacity{stroke:#ce93d8}.material-link--emissive{stroke:#fff176}.material-link--reflectivity{stroke:#80deea}.material-link--displacement{stroke:#ffcc80}.material-graph__add-node{display:flex;align-items:center;justify-content:space-between;gap:6px}.material-graph__node-type{font-size:.65rem;padding:1px 5px;border-radius:3px;font-weight:600;letter-spacing:.02em;flex-shrink:0}.material-graph__node-type--color{background:#e573732e;color:#e57373}.material-graph__node-type--scalar{background:#90caf92e;color:#90caf9}.material-link__label{fill:#5c7c23;font-size:10px;text-anchor:middle}.material-node-card[data-node-type=solidColor]{border-left:3px solid #e57373}.material-node-card[data-node-type=scalarValue]{border-left:3px solid #ffb74d}.material-node-card[data-node-type=ramp]{border-left:3px solid #ce93d8}.material-node-card[data-node-type=fractalNoise]{border-left:3px solid #80cbc4}.material-node-card[data-node-type=checkerboard]{border-left:3px solid #f48fb1}.material-node-card[data-node-type=rasterMap]{border-left:3px solid #fff176}.material-node-card[data-node-type=channelSplit]{border-left:3px solid #4dd0e1}.material-node-card__header[data-node-type=solidColor]{background:#e573731a}.material-node-card__header[data-node-type=scalarValue]{background:#ffb74d1a}.material-node-card__header[data-node-type=ramp]{background:#ce93d81a}.material-node-card__header[data-node-type=fractalNoise]{background:#80cbc41a}.material-node-card__header[data-node-type=checkerboard]{background:#f48fb11a}.material-node-card__header[data-node-type=channelSplit]{background:#4dd0e11a}.channel-split-badge{font-weight:600;color:#0097a7}.texture-file-picker{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:100%}.texture-file-picker__url{flex:1 1 0;min-width:0;font-size:11px;padding:3px 6px;border:1px solid rgba(57,73,97,.18);border-radius:5px;background:#f0f4fab3;color:#2c3a4a;outline:none}.texture-file-picker__url:focus{border-color:#5b8dee;background:#fff}.texture-file-picker__browse{flex:0 0 auto;font-size:11px;padding:3px 8px;border-radius:5px;border:1px solid rgba(57,73,97,.22);background:#f0f4fae6;color:#2c3a4a;cursor:pointer;white-space:nowrap}.texture-file-picker__browse:hover{background:#e3eaf6;border-color:#5b8dee}.texture-file-picker__hidden{display:none}.texture-file-picker__name{font-size:10px;color:#607080;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-node-card__header[data-node-type=rasterMap]{background:#fff1761a}.material-node-card__header--output{background:#89b03c1f}.material-node-card,.material-output-card{position:absolute;width:240px;min-width:240px;box-sizing:border-box;overflow:visible;border-radius:14px;background:#fffffff7;border:1px solid rgba(57,73,97,.08);box-shadow:0 16px 36px #101c281f;transition:box-shadow .15s ease,transform .15s ease}.material-node-card *,.material-output-card *{box-sizing:border-box;max-width:100%}.material-node-card:hover,.material-output-card:hover{box-shadow:0 20px 44px #101c282e;transform:translateY(-1px)}.material-output-card{width:260px;min-width:260px;border-color:#89b03c4d}.material-node-card__header,.material-node-card__header--output{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(57,73,97,.08);cursor:grab}.material-node-card__header:active,.material-node-card__header--output:active{cursor:grabbing}.material-node-card__header strong,.material-output-row__info strong,.asset-item strong{display:block;font-size:.8rem}.material-node-fields,.material-output-card__body{padding:10px}.material-output-card__body{display:grid;gap:6px}.material-output-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 0}.material-output-row__clear,.material-node-card__remove{padding:6px 10px}.material-output-row.is-connected{background:#89b03c14;border-radius:6px}.material-output-row.is-pending{background:#4caf501a;border-radius:6px;outline:1px solid rgba(76,175,80,.3)}.material-node-card.is-source{outline:2px solid #4caf50;box-shadow:0 0 0 4px #4caf502e}.material-node-card.is-selected{outline:2px solid #5b8aff;background:#5b8aff0a;box-shadow:0 0 0 4px #5b8aff24,0 16px 36px #101c2824}.material-node-card__type-label{display:block;font-size:.7rem;color:#22304273;text-transform:uppercase;letter-spacing:.06em;font-weight:500;margin-top:1px}.material-node-card__connected-badge{display:flex;align-items:center;gap:5px;padding:3px 10px 4px;font-size:.68rem;color:#22304299;font-weight:500;border-bottom:1px solid rgba(57,73,97,.06);background:#89b03c0f;letter-spacing:.02em}.material-node-card__channel-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.material-node-card__channel-dot--color{background:#e57373}.material-node-card__channel-dot--roughness{background:#ffb74d}.material-node-card__channel-dot--metalness{background:#90caf9}.material-node-card__channel-dot--bump{background:#a5d6a7}.material-node-card__channel-dot--normal{background:#80cbc4}.material-node-card__channel-dot--opacity{background:#ce93d8}.material-node-card__channel-dot--emissive{background:#fff176}.material-node-card__channel-dot--reflectivity{background:#f48fb1}.material-node-card__channel-dot--displacement{background:#bcaaa4}@keyframes socket-pulse{0%,to{box-shadow:0 0 #4caf5080}50%{box-shadow:0 0 0 5px #4caf5000}}.socket-button.pulse{animation:socket-pulse 1.2s ease-in-out infinite;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.material-graph__controls-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 12px 8px}.material-graph__preset-field{flex:1;min-width:100px}.material-graph__add-menu{position:relative}.material-graph__add-trigger{white-space:nowrap}.material-graph__add-trigger.is-open{background:#c8d7eaeb}.material-graph__add-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:120;min-width:180px;background:#fffffffa;border:1px solid rgba(57,73,97,.12);border-radius:10px;box-shadow:0 12px 32px #0c162329;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:4px;display:flex;flex-direction:column;gap:2px}.material-graph__add-dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 10px;background:transparent;border:none;border-radius:7px;color:#1f2b39;font-size:.8rem;text-align:left;cursor:pointer;transition:background .1s}.material-graph__add-dropdown-item:hover{background:#dceba266;color:#1e3010}.material-graph__add-dropdown-section{padding:4px 10px 2px;font-size:.69rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7a8fa8;pointer-events:none}.material-graph__add-dropdown-divider{height:1px;background:#3949611a;margin:4px 6px}.material-graph__add-dropdown-item--output{color:#2e5c18;font-weight:500}.material-graph__add-dropdown-item--output:hover{background:#b4e66459}.material-graph__node-type{font-size:.67rem;padding:1px 6px;border-radius:4px;background:#39496114;color:#4a6580;font-weight:500}.material-graph__node-type--color{background:#ffb45026;color:#8a4b00}.material-graph__node-type--scalar{background:#508cff1f;color:#1a4b8a}.material-graph__node-type--output{background:#32b45a1f;color:#1a6030}.node-context-menu{position:absolute;z-index:200;min-width:170px;background:#fffffffa;border:1px solid rgba(57,73,97,.14);border-radius:10px;box-shadow:0 12px 32px #0c16232e,0 2px 8px #0c162314;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:4px;display:flex;flex-direction:column;gap:1px;pointer-events:all}.node-context-menu__title{padding:6px 10px 4px;font-size:.72rem;font-weight:600;color:#7a8fa8;border-bottom:1px solid rgba(57,73,97,.1);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-context-menu__item{display:flex;align-items:center;width:100%;padding:7px 10px;background:transparent;border:none;border-radius:7px;color:#1f2b39;font-size:.8rem;text-align:left;cursor:pointer;transition:background .1s}.node-context-menu__item:hover{background:#c8d7ea80;color:#111e2d}.node-context-menu__item--danger{color:#8a2020}.node-context-menu__item--danger:hover{background:#fac8c880;color:#5c1010}.material-graph__view-controls{display:flex;align-items:center;gap:10px;padding:4px 12px;flex-wrap:wrap}.material-node-card__actions{display:flex;gap:6px;padding:4px 0 2px}.material-node-card__actions .ghost-button{flex:1}.material-node__texture-preview{border-radius:4px;overflow:hidden;margin:2px 0 4px}.uv-editor-panel{display:flex;flex-direction:column;gap:0;overflow-y:auto}.uv-editor-panel--empty{align-items:center;justify-content:center;min-height:200px}.uv-editor__empty{text-align:center;color:#7a8fa8;font-size:.82rem;padding:20px}.uv-editor__header{display:flex;align-items:center;gap:10px;padding:10px 14px 8px;border-bottom:1px solid rgba(57,73,97,.08);flex-wrap:wrap}.uv-editor__header-info{display:flex;align-items:center;gap:8px;flex:1}.uv-editor__header-info strong{font-size:.85rem;color:#1f2b39}.uv-editor__header-node{font-size:.75rem;color:#5a7092;background:#3949610f;padding:2px 7px;border-radius:99px}.uv-editor__header-stats{font-size:.72rem;color:#8a9ab0}.uv-editor__header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.uv-editor__toggle{display:flex;align-items:center;gap:4px;font-size:.77rem;color:#4a6080;cursor:pointer;-webkit-user-select:none;user-select:none}.uv-editor__canvas-wrap{position:relative;background:#e8edf5;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:300px;max-height:460px;border-bottom:1px solid rgba(57,73,97,.08)}.uv-editor__canvas{display:block;cursor:crosshair;image-rendering:pixelated;max-width:100%;max-height:100%;width:auto;height:auto}.uv-editor__no-geo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;font-size:.82rem;color:#7a8fa8;background:#f4f7fcd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.uv-editor__zoom-badge{position:absolute;bottom:8px;right:10px;font-size:.7rem;color:#39496199;background:#f4f7fccc;padding:1px 6px;border-radius:6px;pointer-events:none}.uv-editor__controls{padding:10px 14px;border-bottom:1px solid rgba(57,73,97,.06)}.uv-editor__controls--texture-list{border-bottom:none}.uv-editor__section-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7a8fa8;margin-bottom:8px}.uv-editor__notice{font-size:.78rem;color:#8a9ab0;margin:0}.uv-editor__node-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px}.uv-editor__node-tab{padding:3px 10px;border:1px solid rgba(57,73,97,.15);border-radius:6px;background:transparent;font-size:.75rem;color:#4a6080;cursor:pointer;transition:background .1s,color .1s}.uv-editor__node-tab:hover{background:#c8d7ea80}.uv-editor__node-tab.is-active{background:#89b03c1f;border-color:#89b03c66;color:#3a5512}.uv-editor__transform-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-bottom:8px}.uv-editor__field{display:flex;flex-direction:column;gap:3px}.uv-editor__field-label{font-size:.7rem;color:#7a8fa8;font-weight:500}.uv-editor__field-input{width:100%;padding:4px 7px;border:1px solid rgba(57,73,97,.18);border-radius:6px;background:#f4f7fce6;font-size:.8rem;color:#1f2b39}.uv-editor__field-input:focus{outline:2px solid rgba(137,176,60,.7);outline-offset:1px}.uv-editor__row-actions{display:flex;gap:8px;flex-wrap:wrap}.uv-editor__slot-list{display:flex;flex-direction:column;gap:5px}.uv-editor__slot{display:flex;align-items:center;gap:7px;padding:5px 8px;border-radius:8px;background:transparent;font-size:.78rem;transition:background .1s}.uv-editor__slot.is-connected{background:#89b03c0f}.uv-editor__slot-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:#c0c8d4}.uv-editor__slot-dot--color{background:#e57373}.uv-editor__slot-dot--roughness{background:#ffb74d}.uv-editor__slot-dot--metalness{background:#90caf9}.uv-editor__slot-dot--bump{background:#80cbc4}.uv-editor__slot-dot--normal{background:#a5d6a7}.uv-editor__slot-dot--opacity{background:#ce93d8}.uv-editor__slot-dot--emissive{background:#fff176;border:1px solid #e0d050}.uv-editor__slot-dot--reflectivity{background:#80deea}.uv-editor__slot-dot--displacement{background:#ffcc80}.uv-editor__slot-label{font-size:.75rem;color:#4a6080;min-width:90px}.uv-editor__slot-node{flex:1;font-size:.75rem;color:#8a9ab0}.uv-editor__slot-select{font-size:.72rem;padding:2px 8px}.lib-panel{display:flex;flex-direction:column;gap:0;overflow-y:auto}.lib-panel__save-row{padding:12px 14px;border-bottom:1px solid rgba(57,73,97,.08)}.lib-panel__save-row-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7a8fa8;margin-bottom:8px}.lib-panel__save-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lib-panel__name-input{flex:1;min-width:100px;padding:5px 9px;border:1px solid rgba(57,73,97,.18);border-radius:8px;background:#f4f7fce6;font-size:.8rem;color:#1f2b39}.lib-panel__name-input:focus{outline:2px solid rgba(137,176,60,.7);outline-offset:1px}.lib-panel__save-btn{white-space:nowrap;flex-shrink:0}.lib-panel__hint{font-size:.78rem;color:#8a9ab0;margin:0}.lib-panel__library{padding:10px 14px;display:flex;flex-direction:column;gap:8px}.lib-panel__library-header{display:flex;align-items:center;justify-content:space-between}.lib-panel__library-header strong{font-size:.82rem;color:#1f2b39}.lib-panel__count{font-size:.72rem;color:#8a9ab0}.lib-panel__search input{width:100%;padding:5px 9px;border:1px solid rgba(57,73,97,.14);border-radius:8px;background:#f4f7fce6;font-size:.8rem;color:#1f2b39}.lib-panel__empty{font-size:.78rem;color:#8a9ab0;text-align:center;padding:16px 0}.lib-panel__items{display:flex;flex-direction:column;gap:4px}.lib-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#f4f7fcb3;border:1px solid rgba(57,73,97,.07);transition:background .1s}.lib-item:hover{background:#c8d7ea73}.lib-item__icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0;background:#89b03c1f;color:#3a5512}.lib-item__info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.lib-item__name{font-size:.82rem;color:#1f2b39;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lib-item__meta{font-size:.7rem;color:#8a9ab0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lib-item__actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.lib-item__place{font-size:.75rem;padding:3px 10px}.lib-item__delete{width:26px;height:26px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1}.node-lab-help,.node-lab-empty{display:grid;gap:4px;padding:12px 14px;border-radius:14px;background:#fffffff0;box-shadow:0 8px 24px #101c281f,0 0 0 1px #39496112;font-size:.78rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.node-lab-help{width:230px}.node-lab-empty{width:248px;padding:20px 16px 16px;text-align:center}.node-lab-empty__icon{display:block;margin:0 auto 8px;opacity:.6}.node-lab-empty__title{display:block;font-size:.9rem;font-weight:700;color:#1f2d3d;margin-bottom:2px}.node-lab-empty__body{display:block;color:#223042b3;font-size:.78rem;line-height:1.45}.node-lab-empty__hint{display:block;color:#22304273;font-size:.7rem;line-height:1.4;margin-top:4px;border-top:1px solid rgba(57,73,97,.08);padding-top:6px}.node-lab-help{text-align:left}.node-lab-help strong{display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#22304261;margin-bottom:3px}.node-lab-help__status{display:block;color:#223042a6;font-size:.76rem;line-height:1.45}.node-lab-help__status em{font-style:normal;font-weight:600;color:#2a4a6a}.node-lab-help__status--pending{color:#3d5e12}.node-lab-help__status--pending em{color:#4a7a16}.node-lab-help__actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;padding-top:6px;border-top:1px solid rgba(57,73,97,.1)}.node-lab-mobile-hud{display:grid;gap:8px;width:min(280px,calc(100vw - 32px));padding:10px;border-radius:16px;background:#fffffff0;box-shadow:0 18px 38px #101c282e}.node-lab-mobile-hud__toggle,.node-lab-mobile-hud__actions button{width:100%}.node-lab-mobile-hud__toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:12px;padding:10px 12px;background:#eff4faf5;color:#223042;text-align:left}.node-lab-mobile-hud__body,.node-lab-mobile-hud__summary,.node-lab-mobile-hud__channels{display:grid;gap:8px}.node-lab-mobile-hud__summary span{color:#617186;font-size:.76rem}.node-lab-mobile-hud__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.node-lab-mobile-hud__channels{grid-template-columns:1fr 1fr}.node-lab-channel{white-space:nowrap}.outliner-wrap{display:grid;gap:8px;padding:0 12px 12px}.outliner-summary{display:flex;gap:10px;padding:5px 2px 0;font-size:.71rem;color:var(--color-text-muted, #7d8fa3);letter-spacing:.02em}.outliner-actions-group{display:grid;gap:4px}.outliner-actions-group__label{font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#2230426b;padding:0 2px}.outliner-actions{display:flex;flex-wrap:wrap;gap:5px}.outliner-search{position:relative}.outliner-search input{width:100%;box-sizing:border-box;background:#f8fafcf5;border:1px solid rgba(57,73,97,.1);border-radius:8px;color:#203042;font-size:.8rem;padding:5px 28px 5px 10px;outline:none;transition:border-color .12s,box-shadow .12s}.outliner-search input::placeholder{color:#2230428c}.outliner-search input:focus{border-color:#89b03c80;box-shadow:0 0 0 2px #89b03c1f}.outliner-search__clear{background:none;border:none;color:#2230428c;cursor:pointer;font-size:14px;line-height:1;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.outliner-search__clear:hover{color:#3f5670}.outliner-empty{color:#2230428c;font-size:.8rem;padding:8px 4px;text-align:center}.outliner-empty--scene{display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px 12px 20px}.outliner-empty__icon{font-size:1.6rem;opacity:.22;line-height:1;margin-bottom:4px;display:block}.outliner-empty__hint{font-size:.72rem;color:#22304261;margin-top:2px}.outliner-item--search-result{padding-left:8px}.outliner-item__path{color:#2230426b;font-size:.63rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outliner-rename-input{flex:1;min-width:0;font-size:.8rem;background:#ffffff1a;border:1px solid rgba(137,176,60,.65);border-radius:3px;padding:1px 4px;color:inherit;outline:none}.outliner-row,.outliner-row__tools{display:grid;gap:6px}.outliner-row--hidden>.outliner-item-wrap{opacity:.42}.outliner-row--hidden>.outliner-item-wrap>.outliner-vis-btn{opacity:1}.outliner-hidden-chip{display:flex;align-items:center;gap:6px;padding:2px 8px 2px 10px;margin:0 6px 4px;border-radius:20px;background:#39496112;font-size:.65rem;color:#6a7e96;font-weight:600;letter-spacing:.04em}.outliner-hidden-chip button{background:none;border:none;cursor:pointer;color:#3d7bc4;font-size:.65rem;font-weight:700;padding:0;line-height:1;text-decoration:underline;text-underline-offset:2px}.outliner-hidden-chip button:hover{color:#1a56a0}.outliner-item-wrap{display:flex;align-items:center;gap:2px}.outliner-collapse-toggle{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;font-size:.58rem;color:#8a9ab0;background:none;border:none;border-radius:4px;cursor:pointer;padding:0;transition:color .15s}.outliner-collapse-toggle:hover{color:#4a6278}.outliner-item{flex:1;min-width:0}.outliner-item__icon{flex-shrink:0;font-size:.68rem;color:#2230428c;margin-right:6px;display:inline-block;width:14px;text-align:center}.outliner-item__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outliner-item__meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.outliner-item__count{background:#4c82aa1f;border-radius:4px;padding:1px 5px;font-size:.65rem;color:#5a7896}.outliner-item__type{color:#8a9ab2;font-size:.68rem}.outliner-vis-btn{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#6eb5ff;background:none;border:none;border-radius:6px;cursor:pointer;padding:0;opacity:0;transition:opacity .15s,color .15s}.outliner-item-wrap:hover .outliner-vis-btn,.outliner-row.active .outliner-vis-btn,.outliner-row--selected .outliner-vis-btn,.outliner-vis-btn.is-hidden{opacity:1}.outliner-vis-btn .vis-icon--visible{color:#6eb5ff}.outliner-vis-btn.is-hidden,.outliner-vis-btn.is-hidden .vis-icon--hidden{color:#8a7a6a}.outliner-vis-btn:hover{color:#a0cfff;background:#6eb5ff14}.outliner-vis-btn.is-hidden:hover{color:#b09a88;background:#8a7a6a1a}.outliner-parent-field{padding:0 4px}@keyframes loadingPulse{0%,to{transform:scale(.88);opacity:.42}50%{transform:scale(1);opacity:1}}@media(max-width:1320px){.editor-workbench{grid-template-columns:clamp(200px,18vw,300px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(300px,35vh)}.dock-column--right{grid-column:1 / -1;overflow-y:auto}}@media(max-width:920px){.editor-shell--windowed,.preview-shell{height:100dvh;min-height:100dvh}.preview-shell{padding:8px;gap:6px}.editor-workbench{grid-template-columns:1fr!important}.menu-bar__desktop{display:none}.menu-bar{display:grid;gap:0;padding:10px;overflow:visible}.menu-bar__toprow{display:flex}.menu-bar__drawer{display:none;margin-top:10px;max-height:min(60dvh,520px);overflow:auto;gap:10px;padding-bottom:6px}.menu-section{padding:10px}.menu-bar--mobile-open .menu-bar__drawer{display:grid}.menu-toggle.is-active,.menu-bar--mobile-open .menu-toggle{background:linear-gradient(135deg,#dceba2,#a8ca4f);color:#18210d;font-weight:700}.menu-section--recording{margin-left:0}.viewport-header,.preview-page-menu__panel{left:0;right:auto;width:min(100%,calc(100vw - 32px))}.status-bar,.toggle-row,.settings-panel__header,.asset-panel__header,.material-graph__header{flex-direction:column;align-items:stretch}.settings-grid--double,.asset-library__grid{grid-template-columns:1fr}.floating-window--floating{position:static;width:auto!important;height:auto!important;resize:none}.canvas-frame--workspace{min-height:min(58dvh,420px)}.viewport-focus-button{right:10px;bottom:10px;padding:11px 14px}}@media(max-width:920px)and (orientation:landscape){.canvas-frame--workspace{min-height:min(48dvh,340px)}}@media(max-width:920px)and (orientation:portrait){.canvas-frame--workspace{min-height:min(62dvh,520px)}}.floating-window--dock-left,.floating-window--dock-right,.floating-window--dock-bottom{position:relative;width:100%;height:100%}.dock-column .floating-window--dock-left,.dock-column .floating-window--dock-right{flex:1 1 0;min-height:220px}.dock-row .floating-window--dock-bottom{min-height:300px}.asset-item__select{all:unset;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;cursor:pointer}.editor-shell--windowed[data-density=comfy]{font-size:14px}.editor-shell--windowed[data-density=compact]{font-size:13px}.editor-shell--windowed[data-density=ultra]{font-size:12px}.editor-shell--windowed[data-density=comfy] .mode-button,.editor-shell--windowed[data-density=comfy] .ghost-button,.editor-shell--windowed[data-density=comfy] .primary-button,.editor-shell--windowed[data-density=comfy] .socket-button,.editor-shell--windowed[data-density=comfy] .node-lab-channel{padding:8px 12px;font-size:.82rem}.editor-shell--windowed[data-density=ultra] .mode-button,.editor-shell--windowed[data-density=ultra] .ghost-button,.editor-shell--windowed[data-density=ultra] .primary-button,.editor-shell--windowed[data-density=ultra] .socket-button,.editor-shell--windowed[data-density=ultra] .node-lab-channel{padding:5px 9px;font-size:.7rem}.editor-shell--windowed[data-density=comfy] .field input,.editor-shell--windowed[data-density=comfy] .field textarea,.editor-shell--windowed[data-density=comfy] .field select,.editor-shell--windowed[data-density=comfy] .vector-field input,.editor-shell--windowed[data-density=comfy] .json-tray textarea,.editor-shell--windowed[data-density=comfy] .material-json{padding:8px 10px;font-size:.82rem}.editor-shell--windowed[data-density=ultra] .field input,.editor-shell--windowed[data-density=ultra] .field textarea,.editor-shell--windowed[data-density=ultra] .field select,.editor-shell--windowed[data-density=ultra] .vector-field input,.editor-shell--windowed[data-density=ultra] .json-tray textarea,.editor-shell--windowed[data-density=ultra] .material-json{padding:5px 8px;font-size:.72rem}.editor-shell--windowed[data-density=ultra] .outliner-item,.editor-shell--windowed[data-density=ultra] .asset-item,.editor-shell--windowed[data-density=ultra] .toggle-row{padding:7px 8px}.editor-shell--windowed[data-density=comfy] .outliner-item,.editor-shell--windowed[data-density=comfy] .asset-item,.editor-shell--windowed[data-density=comfy] .toggle-row{padding:10px 11px}.editor-shell--windowed[data-reduce-motion=true] .loading-emblem__mark span,.editor-shell--windowed[data-reduce-motion=true] .viewport-recorder-hud.is-live .viewport-recorder-hud__body strong:before{animation:none}.inspector-inline-buttons{display:flex;gap:6px;flex-wrap:wrap}.inspector-subsection{margin-top:8px;border-top:1px solid rgba(57,73,97,.1);padding-top:6px}.inspector-subsection__summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#5a7a9a;padding:2px 0 4px}.inspector-subsection__summary::-webkit-details-marker{display:none}.inspector-subsection__summary:before{content:"▶";font-size:.5rem;transition:transform .15s ease;display:inline-block;margin-right:2px}details.inspector-subsection[open]>.inspector-subsection__summary:before{transform:rotate(90deg)}.inspector-subsection__body{display:grid;gap:8px;margin-top:4px;padding-bottom:4px}.inspector-subsection__toggle-row{display:flex;flex-wrap:wrap;gap:4px}.inspector-size-presets{display:flex;gap:3px;flex-wrap:wrap;margin-bottom:6px}.inspector-size-presets .ghost-button{min-width:32px;padding:4px 9px;font-size:.7rem}.material-preview-card{position:relative;overflow:hidden;border-radius:14px;border:1px solid rgba(57,73,97,.08);background:linear-gradient(180deg,#f8fbff,#e6edf5);box-shadow:inset 0 1px #ffffffb3}.material-preview-card canvas{display:block}.material-preview-card--hero{height:132px}.material-preview-card--inline{height:88px;margin:10px 10px 0}.material-preview-card--output{aspect-ratio:1 / 1;width:auto;margin:10px}.material-graph-canvas__stage{position:relative;width:4000px;height:3000px}.viewport-stats{position:absolute;left:12px;bottom:12px;z-index:9;display:grid;gap:4px;min-width:132px;padding:10px 12px;border-radius:14px;background:#ffffffeb;color:#445266;box-shadow:0 12px 28px #101c2829;font-size:.75rem}.viewport-stats strong{color:#1e2936;font-size:.78rem}.material-preview-card--square{border-radius:10px}.material-preview-card--square .material-preview-card--inline,.material-preview-card--square canvas{border-radius:10px}@keyframes context-menu-in{0%{opacity:0;transform:scale(.96) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes poly-wheel-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.82)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes poly-wheel-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.88)}}.poly-wheel__backdrop{position:fixed;inset:0;z-index:600;pointer-events:none}.poly-wheel{position:absolute;transform:translate(-50%,-50%);animation:poly-wheel-in .14s cubic-bezier(.22,1,.36,1) both;pointer-events:none}.poly-wheel[data-closing]{animation:poly-wheel-out .1s cubic-bezier(.4,0,1,1) both}.poly-wheel__ring-svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:310px;height:310px;overflow:visible}.poly-wheel__item{position:absolute;top:50%;left:50%;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty)));font-size:11px;font-weight:600;white-space:nowrap;padding:3px 8px;border-radius:5px;border:1px solid transparent;transition:color .07s ease,background .07s ease,border-color .07s ease;pointer-events:none}.poly-wheel__item--type{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.poly-wheel__sector{transition:fill .1s ease}.poly-wheel__center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8.5px;font-weight:700;letter-spacing:.04em;text-transform:capitalize;text-align:center;line-height:1.2;pointer-events:none;transition:color .1s ease,opacity .1s ease}.poly-wheel[data-theme=light] .poly-wheel__track{fill:none;stroke:#e1e8f2e0;stroke-width:48}.poly-wheel[data-theme=light] .poly-wheel__inner{fill:#f4f7fcf5;stroke:#3949611f;stroke-width:1.5}.poly-wheel[data-theme=light] .poly-wheel__sector{fill:#39496112}.poly-wheel[data-theme=light] .poly-wheel__sector.is-primary{fill:#89b03c24}.poly-wheel[data-theme=light] .poly-wheel__sector.is-danger{fill:#c74f4f1a}.poly-wheel[data-theme=light] .poly-wheel__item{color:#3a4758;background:#f4f7fcf5;border-color:#39496121}.poly-wheel[data-theme=light] .poly-wheel__item--type{color:#6a7888;background:#ecf0f7eb;border-color:#3949611a}.poly-wheel[data-theme=light] .poly-wheel__item.is-active{color:#4a6e18;background:#dceba299;border-color:#89b03c59}.poly-wheel[data-theme=light] .poly-wheel__item.is-hovered{color:#1e2b38;background:#e1e8f2fa;border-color:#39496138}.poly-wheel[data-theme=light] .poly-wheel__item.is-hovered.is-danger{color:#7a1a1a;background:#fad7d7fa;border-color:#c74f4f47}.poly-wheel[data-theme=light] .poly-wheel__item.is-hovered.is-primary,.poly-wheel[data-theme=light] .poly-wheel__item.is-hovered.is-active{color:#3a5c10;background:#dceba2d1;border-color:#89b03c6b}.poly-wheel[data-theme=light] .poly-wheel__center-label{color:#39496166}.poly-wheel[data-theme=light][data-hovered] .poly-wheel__center-label{color:#1e2b38c7}.poly-wheel[data-theme=dark] .poly-wheel__track{fill:none;stroke:#0f1114d1;stroke-width:48}.poly-wheel[data-theme=dark] .poly-wheel__inner{fill:#0f1114e0;stroke:#ffffff24;stroke-width:1.5}.poly-wheel[data-theme=dark] .poly-wheel__sector{fill:#ffffff17}.poly-wheel[data-theme=dark] .poly-wheel__sector.is-primary{fill:#50a0f02e}.poly-wheel[data-theme=dark] .poly-wheel__sector.is-danger{fill:#c8505029}.poly-wheel[data-theme=dark] .poly-wheel__item{color:#c8ccd2;background:#0f1114c7;border-color:#ffffff12}.poly-wheel[data-theme=dark] .poly-wheel__item--type{color:#bcc2ca;background:#0f1114c7;border-color:#ffffff14}.poly-wheel[data-theme=dark] .poly-wheel__item.is-active{color:#ded;background:#26442ae0;border-color:#78b47840}.poly-wheel[data-theme=dark] .poly-wheel__item.is-hovered{color:#f0f2f5;background:#373c44f5;border-color:#ffffff29}.poly-wheel[data-theme=dark] .poly-wheel__item.is-hovered.is-danger{color:#eaa;background:#461e1eeb;border-color:#b4505038}.poly-wheel[data-theme=dark] .poly-wheel__item.is-hovered.is-primary,.poly-wheel[data-theme=dark] .poly-wheel__item.is-hovered.is-active{color:#c0ddff;background:#1e3c64eb;border-color:#50a0f038}.poly-wheel[data-theme=dark] .poly-wheel__center-label{color:#ffffff47}.poly-wheel[data-theme=dark][data-hovered] .poly-wheel__center-label{color:#ffffffb8}.context-menu{position:fixed;z-index:60;width:min(280px,calc(100vw - 24px));max-height:min(70vh,620px);overflow:auto;padding:10px;border-radius:16px;background:#fffffff5;border:1px solid rgba(57,73,97,.12);box-shadow:0 24px 44px #0c16232e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:context-menu-in .12s ease-out both;transform-origin:top left}.context-menu__title{padding:4px 6px 10px;color:#1f2b39;font-size:.84rem;font-weight:700}.context-menu__section{display:grid;gap:8px;padding-top:8px;margin-top:8px;border-top:1px solid rgba(57,73,97,.08)}.context-menu__section:first-of-type{margin-top:0;padding-top:0;border-top:0}.context-menu__section header{padding-inline:6px;padding-bottom:2px;color:#22304285;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid rgba(57,73,97,.06);margin-bottom:2px}.context-menu__section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.context-menu__button{display:flex;justify-content:space-between;align-items:center;gap:6px;border:0;border-radius:12px;min-height:40px;padding:8px 10px;background:#eff4faf2;color:#243142;font-size:.75rem;text-align:left;cursor:pointer;transition:background .13s,color .13s,transform .08s,box-shadow .13s}.context-menu__button:hover{background:#d5e2f3fa;color:#0e1b2a;box-shadow:0 1px 4px #1e375a14}.context-menu__button:active{transform:scale(.97);box-shadow:none}.context-menu__button.is-active{background:linear-gradient(135deg,#ddeea0,#a5c84b);color:#16200c;font-weight:700;box-shadow:0 1px 4px #50780024}.context-menu__button.is-active:hover{background:linear-gradient(135deg,#e6f5b5,#bad96a)}.context-menu__button.is-danger{background:#f5dfdff2;color:#7e2a2a}.context-menu__button.is-danger:hover{background:#facdcdfa;color:#5c1616;box-shadow:0 1px 4px #961e1e1a}.context-menu__button.is-disabled,.context-menu__button:disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.context-menu__hint{display:inline-block;padding:2px 5px;border-radius:5px;background:#64788c1a;border:1px solid rgba(100,120,140,.22);font-size:.6rem;font-family:monospace;color:#2230429e;line-height:1.4;white-space:nowrap;flex-shrink:0;letter-spacing:.02em}.context-menu__button.is-active .context-menu__hint{background:#3c5a001f;border-color:#3c5a0038;color:#16200cb3}.context-menu__button.is-danger .context-menu__hint{background:#8c28281a;border-color:#8c282833;color:#7e2a2abf}@media(max-width:920px){.context-menu{width:min(320px,calc(100vw - 16px));max-height:min(74vh,560px)}}@keyframes notice-in{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.editor-notice{position:absolute;right:12px;top:12px;z-index:16;display:flex;align-items:flex-start;gap:10px;width:min(380px,calc(100% - 24px));padding:12px 14px;border-radius:16px;background:#fffffff5;box-shadow:0 18px 36px #0c16232e;border:1px solid rgba(57,73,97,.08);border-left-width:3px;animation:notice-in .22s cubic-bezier(.22,1,.36,1) both}.editor-notice--info{border-color:#3b82f638;border-left-color:#3b82f6b3;background:#eff6fffa}.editor-notice--success{border-color:#229b5538;border-left-color:#229b55bf;background:#f0fdf6fa}.editor-notice--error{border-color:#c74f4f47;border-left-color:#c74f4fbf;background:#fff7f7fa}.editor-notice--warning{border-color:#be983047;border-left-color:#be9830bf;background:#fffbeffa}.editor-notice__body{display:grid;gap:4px;flex:1;min-width:0}.editor-notice__body strong{color:#1f2b39;font-size:.84rem}.editor-notice--info .editor-notice__body strong{color:#1a3a6e}.editor-notice--success .editor-notice__body strong{color:#14562e}.editor-notice--error .editor-notice__body strong{color:#6b1f1f}.editor-notice--warning .editor-notice__body strong{color:#5a3d08}.editor-notice__body span{color:#627387;font-size:.75rem;line-height:1.45}.editor-notice--info .editor-notice__body span{color:#3b5a8a}.editor-notice--success .editor-notice__body span{color:#2a6644}.editor-notice--error .editor-notice__body span{color:#8a3a3a}.editor-notice--warning .editor-notice__body span{color:#7a5514}.editor-notice__dismiss{flex:none;opacity:.65;transition:opacity .12s}.editor-notice__dismiss:hover{opacity:1}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.editor-dialog-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:16px;background:#eef4fb99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:backdrop-in .15s ease-out both}.editor-dialog{width:min(520px,100%);display:grid;gap:14px;padding:18px;border-radius:22px;background:#fffffff7;box-shadow:0 28px 56px #0c162333;border:1px solid rgba(57,73,97,.1);animation:dialog-in .18s ease-out both}.editor-dialog__header,.editor-dialog__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.editor-dialog__header h2{margin:4px 0 0;font-size:1.15rem;color:#1f2b39}.editor-dialog__body{display:grid;gap:12px}.editor-dialog__list{display:grid;gap:8px;max-height:min(52vh,420px);overflow:auto}.editor-dialog__option{width:100%;padding:11px 12px;border:1px solid rgba(57,73,97,.08);border-radius:14px;background:#f4f8fcf2;color:#223042;text-align:left;cursor:pointer;transition:background .12s,border-color .12s}.editor-dialog__option:hover:not(.is-active){background:#dceafaf5;border-color:#3949612e}.editor-dialog__option.is-active{border-color:#89b03c73;background:#dceba257}.editor-dialog__empty{margin:0;padding:18px 12px;text-align:center;color:#2230428c;font-size:.8rem;line-height:1.5}.panel-fallback{display:grid;gap:12px;place-items:center;padding:18px;text-align:center}.panel-fallback__detail{margin:0;color:#627387;font-size:.78rem;line-height:1.45}.material-graph-panel{display:flex;flex-direction:column;flex:1;min-height:0;gap:0}.material-graph-panel--mobile{gap:12px}.material-graph-canvas--mobile{order:-1;height:min(58dvh,460px)}.material-graph-mobile__summary{padding:10px 12px;border-radius:14px;background:#f4f7fceb;color:#627387;font-size:.78rem;line-height:1.45}.material-graph-mobile__section{display:grid;gap:8px}.material-graph-mobile__toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;border-radius:14px;padding:12px 14px;background:#f4f7fceb;color:#223042;font-size:.82rem;font-weight:700;text-align:left;cursor:pointer;transition:background .12s,color .12s}.material-graph-mobile__toggle:hover:not(.is-open){background:#e6eefaf5}.material-graph-mobile__toggle.is-open{background:linear-gradient(135deg,#dceba2d9,#a8ca4fb8);color:#18210d}.material-graph-mobile__body{display:grid;gap:10px}@media(max-width:920px){.editor-busy-banner{top:74px;right:10px;left:10px}.editor-busy-banner .loading-emblem{width:100%;justify-content:center}.node-lab-mobile-hud{width:min(300px,calc(100vw - 28px))}.node-lab-mobile-hud__channels,.node-lab-mobile-hud__actions{grid-template-columns:1fr}.material-graph__controls-row{flex-wrap:wrap}.material-graph__preset-field{flex:1 1 100%}.material-graph-canvas--mobile .material-node-card,.material-graph-canvas--mobile .material-output-card{transform:scale(.92);transform-origin:top left}.material-graph-canvas--mobile .material-node-card__header,.material-graph-canvas--mobile .material-node-card__header--output{padding:8px 10px}}.panel-fallback__actions{display:flex;justify-content:center}.panel-fallback--error .ghost-button{min-width:116px}.preview-header__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.loading-emblem__detail{color:#647487;font-size:.78rem;line-height:1.45}.loading-emblem--compact{gap:10px;padding:10px 12px;border-radius:14px}.loading-emblem--compact .loading-emblem__mark{width:28px;height:28px}.loading-emblem--compact .loading-emblem__mark span{border-width:2px;border-radius:10px}.loading-emblem--compact .loading-emblem__mark span:nth-child(2){inset:4px}.loading-emblem--compact .loading-emblem__mark span:nth-child(3){inset:8px}.loading-emblem--compact .loading-emblem__text strong{font-size:.84rem}.loading-emblem--compact .loading-emblem__detail{font-size:.74rem}.panel-fallback--loading{min-height:120px;background:linear-gradient(180deg,#f8fbffe0,#f1f6fcf5);border:1px solid rgba(75,96,125,.1);border-radius:16px;animation:panel-loading-fade-in .28s ease-out both}@keyframes panel-loading-fade-in{0%{opacity:0}to{opacity:1}}.viewport-loading-overlay--blocking{background:#f4f8fcd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.menu-mobile-panel .panel-fallback{padding:14px}.webpage-surface__wrap{pointer-events:auto}.webpage-surface__wrap--sidebar{margin-left:8px}.webpage-surface{display:grid;gap:10px;padding:14px;border-radius:18px;background:#fffffff0;border:1px solid rgba(49,68,92,.08);box-shadow:0 20px 42px #09152429;color:#223244}.webpage-surface--selected{box-shadow:0 24px 48px #09152433}.webpage-surface__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(82,102,126,.08)}.webpage-surface__header strong{display:block;font-size:1rem}.webpage-surface__header small,.webpage-surface__meta,.webpage-surface__caption,.media-viewer__caption span,.page-cluster-card span,.page-cluster-card small{color:#617489}.webpage-surface__eyebrow{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#6f8f33;font-weight:700;margin-bottom:4px}.webpage-surface__badge{padding:6px 10px;border-radius:999px;background:#dfefbedb;color:#4f6325;font-size:.72rem;font-weight:700}.webpage-surface__hero-note{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:linear-gradient(180deg,#f4f8fcf5,#ecf3faeb);border:1px solid rgba(71,92,120,.1)}.webpage-surface__hero-note strong{color:#223244;font-size:.8rem}.webpage-surface__hero-note span{color:#64778b;font-size:.76rem;line-height:1.45}.webpage-surface__overview-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.webpage-surface__overview-row--four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.webpage-surface__overview-chip{display:grid;gap:2px;justify-items:center;padding:8px 6px;border-radius:12px;background:#f1f6fbeb;border:1px solid rgba(71,92,120,.1)}.webpage-surface__overview-chip strong{color:#233345;font-size:.88rem}.webpage-surface__overview-chip span{color:#6d8095;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.webpage-surface__html{max-height:220px;overflow:auto;padding-right:4px;font-size:.86rem;line-height:1.5}.webpage-surface__meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px}.webpage-surface__meta-card{display:grid;gap:4px;padding:9px 10px;border-radius:12px;background:#f4f8fceb;border:1px solid rgba(71,92,120,.1)}.webpage-surface__meta-card strong{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#6b7f95}.webpage-surface__meta-card span{color:#243447;font-size:.78rem;line-height:1.45}.webpage-surface__meta-card--double{background:#eef5fcf5}.webpage-surface__html h1,.webpage-surface__html h2,.webpage-surface__html h3{margin:0 0 8px;color:#182332}.webpage-surface__html p,.webpage-surface__html ul{margin:0 0 10px}.webpage-surface__section-title{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#6d8195;font-weight:700}.webpage-surface__surface-map{display:grid;gap:6px;padding:10px 12px;border-radius:14px;background:#f1f6fbeb;border:1px solid rgba(71,92,120,.1);box-shadow:inset 0 1px #ffffffb3}.webpage-surface__surface-map-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 0}.webpage-surface__surface-map-row strong{color:#223244;font-size:.76rem}.webpage-surface__surface-map-row span{color:#6b7f95;font-size:.74rem;text-align:right}.webpage-surface__featured-list{display:grid;gap:8px}.webpage-surface__featured-item{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px;border-radius:12px;background:#f4f8fceb;border:1px solid rgba(71,92,120,.1)}.webpage-surface__featured-item strong{color:#6e8398;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.webpage-surface__featured-item span{color:#213246;font-size:.8rem;line-height:1.35}.webpage-surface__gallery,.webpage-surface__links{display:grid;gap:8px}.webpage-surface__gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.webpage-surface__image,.webpage-surface__link{display:grid;gap:6px;width:100%;padding:8px;border-radius:12px;border:1px solid rgba(71,92,120,.12);background:#f5f9ffe6;text-align:left;color:inherit}.webpage-surface__image img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:10px;border:1px solid rgba(71,92,120,.08)}.webpage-surface__image span,.webpage-surface__link strong{font-size:.8rem;font-weight:700}.webpage-surface__link span{font-size:.74rem;color:#66798e}@keyframes webpage-hydration-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.page-cluster-card{display:grid;gap:4px;min-width:160px;padding:12px 14px;border-radius:16px;background:#ffffffeb;border:1px solid rgba(57,73,97,.08);box-shadow:0 18px 34px #0c162329}.media-viewer{display:grid;gap:12px;width:min(94vw,1100px);max-height:min(90vh,920px);padding:16px;border-radius:24px;background:#fffffffa;border:1px solid rgba(57,73,97,.08);box-shadow:0 28px 60px #09152442;animation:dialog-in .2s ease-out both}.media-viewer__header,.media-viewer__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.media-viewer__body{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;min-height:0}.media-viewer__image-wrap{display:grid;place-items:center;min-height:0;max-height:min(68vh,680px);overflow:auto;border-radius:18px;background:linear-gradient(180deg,#eef4fb,#dce7f3);padding:14px;touch-action:pan-x pan-y pinch-zoom}.media-viewer__image-wrap img{max-width:100%;max-height:100%;object-fit:contain;border-radius:14px;box-shadow:0 18px 34px #0915242e}.media-viewer__caption{display:grid;gap:4px}.media-viewer__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.media-viewer__counter{padding:6px 10px;border-radius:999px;background:#ebf2faf0;color:#4f6478;font-size:.78rem;font-weight:700}.media-viewer__nav{min-width:48px;font-size:1.5rem;line-height:1;padding:8px 14px;display:inline-grid;place-items:center}@media(max-width:920px){.webpage-surface{padding:10px;gap:8px}.webpage-surface__gallery-grid{grid-template-columns:1fr}.media-viewer{width:calc(100vw - 18px);padding:12px}.media-viewer__body{grid-template-columns:1fr}.media-viewer__nav{width:100%}.media-viewer__footer,.media-viewer__header{align-items:flex-start;flex-direction:column}.media-viewer__actions{width:100%;justify-content:space-between}}.preview-page-menu{position:relative}.preview-page-menu__toggle{min-width:84px}.preview-page-menu__panel{position:absolute;top:calc(100% + 10px);right:0;z-index:82;display:grid;gap:10px;width:min(360px,calc(100vw - 36px));max-height:min(70vh,620px);overflow:auto;padding:12px;border-radius:18px;background:#fffffff7;border:1px solid rgba(57,73,97,.08);box-shadow:0 24px 44px #0c16232e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.preview-page-menu__header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.preview-page-menu__header strong{display:block;color:#1f2b39;font-size:.96rem}.preview-page-menu__header span{color:#6b7b8f;font-size:.74rem}.preview-page-menu__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preview-page-menu__summary-card{display:grid;gap:4px;padding:10px;border-radius:14px;background:#f3f7fcf0;border:1px solid rgba(154,172,194,.18)}.preview-page-menu__summary-card small{color:#2230428c;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.preview-page-menu__summary-card strong{color:#1f2b39;font-size:.8rem}.preview-page-menu__summary-card span{color:#667487;font-size:.72rem;line-height:1.35}.preview-page-menu__summary-meta{color:#7e8d9f;font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.preview-page-menu__summary-route{display:inline-flex;align-items:center;gap:4px;margin-top:2px}.preview-page-menu__groups{display:grid;gap:10px}.preview-page-menu__group{display:grid;gap:8px}.preview-page-menu__group-title{padding-inline:4px;color:#2230428c;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.preview-page-menu__list{display:grid;gap:6px}.preview-page-menu__list--cluster{position:relative;padding-left:12px}.preview-page-menu__list--cluster:before{content:"";position:absolute;top:8px;bottom:8px;left:8px;width:2px;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 16%,transparent),color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 42%,rgba(168,202,79,.3)),color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 16%,transparent))}.preview-page-menu__item{display:grid;gap:3px;width:100%;padding:10px 12px;border:0;border-radius:14px;background:#eff4faf2;color:#223042;text-align:left}.preview-page-menu__item strong{font-size:.8rem}.preview-page-menu__item span{color:#6b7b8f;font-size:.72rem}.preview-page-menu__item.is-active{background:linear-gradient(135deg,#dceba2eb,#a8ca4fc2);color:#18210d}.preview-page-menu__item.is-active span{color:#18210dc2}.preview-page-menu__item.is-active .preview-page-menu__item-step{background:#ffffff85;color:#18210db8}@media(max-width:920px){.preview-page-menu__summary{grid-template-columns:1fr}}.preview-page-menu__item-line{display:flex;align-items:center;gap:8px}.preview-page-menu__item-step{position:relative;flex:0 0 auto;margin-left:auto;padding:2px 7px 2px 17px;border-radius:999px;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 14%,rgba(255,255,255,.86));color:#5c6d7d;font-size:.58rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.preview-page-menu__item-step:before{content:"";position:absolute;top:50%;left:7px;width:6px;height:6px;border-top:2px solid currentColor;border-right:2px solid currentColor}.preview-page-menu__item-step--ahead{background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 18%,rgba(255,255,255,.88));color:#607d1d}.preview-page-menu__item-step--ahead:before{transform:translateY(-50%) rotate(45deg)}.preview-page-menu__item-step--back{background:color-mix(in srgb,#c6d8eb 24%,rgba(255,255,255,.88));color:#516b86}.preview-page-menu__item-step--back:before{transform:translateY(-50%) rotate(-135deg)}.preview-page-menu__item-step--current{background:#ffffff85;color:#18210db8}.preview-page-menu__item-step--current:before{width:6px;height:6px;border:0;border-radius:999px;background:currentColor;transform:translateY(-50%)}.preview-page-menu__active-pin{position:relative;flex:none;width:14px;height:18px;border-radius:14px 14px 14px 2px;transform:rotate(-45deg);background:linear-gradient(180deg,#dceba2,#a8ca4f);box-shadow:0 6px 14px #6f8f3347}.preview-page-menu__active-pin-dot{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:999px;background:#18210dc2;transform:translate(-50%,-50%) rotate(45deg)}.runtime-hints{position:absolute;inset:0;z-index:9;pointer-events:none}.runtime-hint{position:absolute;display:grid;place-items:center;opacity:.2;filter:saturate(.85)}.runtime-hint--move{left:18px;bottom:18px;width:76px;height:76px;animation:runtimeHintGlide 4.8s ease-in-out infinite}.runtime-hint--menu{top:18px;right:18px;width:40px;height:40px;animation:runtimeHintPulse 3.4s ease-in-out infinite}.runtime-hint__hand{position:relative;width:34px;height:42px;border-radius:18px 18px 14px 14px;background:#49617c3d;transform:translate(0)}.runtime-hint__hand:after{content:"";position:absolute;right:-10px;bottom:4px;width:14px;height:12px;border-radius:12px 10px 10px;background:#49617c3d;transform-origin:left center;animation:runtimeThumbTap 2s ease-in-out infinite}.runtime-hint__finger{position:absolute;top:-9px;width:6px;height:16px;border-radius:999px;background:#49617c3d}.runtime-hint__finger--index{left:4px;height:18px}.runtime-hint__finger--middle{left:12px;height:20px}.runtime-hint__finger--ring{left:20px;height:18px}.runtime-hint__finger--thumb{display:none}.runtime-hint__pin{position:relative;width:18px;height:24px;border-radius:18px 18px 18px 3px;transform:rotate(-45deg);background:#6f8f336b;box-shadow:0 8px 18px #5b74282e}.runtime-hint__pin-dot{position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:999px;background:#ffffffd1;transform:translate(-50%,-50%) rotate(45deg)}@keyframes runtimeHintGlide{0%,to{transform:translate(0);opacity:.12}18%{transform:translate(10px,-6px);opacity:.24}36%{transform:translate(18px,-10px);opacity:.18}54%{transform:translate(8px,-4px);opacity:.24}72%{transform:translate(16px,-8px);opacity:.16}}@keyframes runtimeThumbTap{0%,to{transform:rotate(0) scale(1)}32%{transform:rotate(-14deg) scale(.96)}48%{transform:rotate(8deg) scale(1.02)}}@keyframes runtimeHintPulse{0%,to{transform:scale(1);opacity:.12}40%{transform:scale(1.08);opacity:.26}60%{transform:scale(.98);opacity:.18}}@media(max-width:920px){.runtime-hint--move{left:12px;bottom:12px;width:62px;height:62px}.runtime-hint--menu{top:12px;right:12px}}.preview-page-menu__toggle{display:inline-flex;align-items:center;gap:8px}.preview-page-menu__toggle-icon{display:inline-grid;place-items:center;width:18px;height:18px;font-size:.92rem;line-height:1}.preview-page-menu__summary-card--section:before,.preview-page-menu__summary-card--neighborhood:before{content:"";width:12px;height:12px;border-radius:999px;margin-bottom:2px}.preview-page-menu__summary-card--section:before{background:linear-gradient(180deg,#6f8f33e6,#a8ca4fc7)}.preview-page-menu__summary-card--neighborhood:before{background:linear-gradient(180deg,#6383a5d1,#abc5e1d1)}.preview-page-menu__group{border-radius:16px;background:#f7fafeb8;border:1px solid rgba(154,172,194,.16);padding:6px}.preview-page-menu__group.is-active{background:#f5faecc2;border-color:#a8ca4f3d}.preview-page-menu__group-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;border:0;border-radius:12px;padding:8px 10px;background:transparent;color:#223042;text-align:left}.preview-page-menu__group-toggle.is-open{background:#ffffff8f}.preview-page-menu__group-title-wrap{display:flex;align-items:center;gap:8px;min-width:0}.preview-page-menu__group-position{display:inline-grid;place-items:center;min-width:34px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 18%,rgba(255,255,255,.88));color:#556770;font-size:.62rem;font-weight:700}.preview-page-menu__group-route{display:inline-flex;align-items:center;gap:4px}.preview-page-menu__group-route-chip{position:relative;display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px 0 14px;border-radius:999px;font-size:.58rem;font-weight:700}.preview-page-menu__group-route-chip:before{content:"";position:absolute;top:50%;left:6px;width:6px;height:6px;border-top:2px solid currentColor;border-right:2px solid currentColor}.preview-page-menu__group-route-chip--ahead{background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 18%,rgba(255,255,255,.88));color:#607d1d}.preview-page-menu__group-route-chip--ahead:before{transform:translateY(-50%) rotate(45deg)}.preview-page-menu__group-route-chip--back{background:color-mix(in srgb,#c6d8eb 24%,rgba(255,255,255,.88));color:#516b86}.preview-page-menu__group-route-chip--back:before{transform:translateY(-50%) rotate(-135deg)}.preview-page-menu__group-meta,.preview-page-menu__group-chevron{color:#6b7b8f;font-size:.74rem;font-weight:700}.preview-page-menu__active-pin--inline{width:12px;height:16px}.preview-page-menu__list{padding-top:6px}.preview-header__actions>.ghost-button[title="Refresh preview"],.preview-header__actions>.ghost-button[title="Open editor"]{min-width:38px;padding-inline:0;font-size:.95rem;font-weight:700}.preview-header__icon-button{min-width:38px;padding-inline:0}.preview-header__tour{display:inline-flex;align-items:center;gap:6px;font-weight:600;letter-spacing:.01em}.preview-header__tour>span:first-child{font-size:.7rem;line-height:1}.preview-header__tour.is-active{background:linear-gradient(135deg,#3a8c50,#2c6f3f);color:#fff;border-color:#ffffff2e;box-shadow:0 0 0 2px #3a8c502e}.preview-header__tour.is-active:hover{background:linear-gradient(135deg,#449f5b,#34804a)}.preview-header__icon{position:relative;display:inline-block;width:16px;height:16px}.preview-header__icon--refresh:before,.preview-header__icon--refresh:after,.preview-header__icon--edit:before,.preview-header__icon--edit:after{content:"";position:absolute}.preview-header__icon--refresh:before{inset:1px;border:2px solid #4f6478;border-right-color:transparent;border-radius:999px}.preview-header__icon--refresh:after{top:0;right:0;width:0;height:0;border-top:5px solid #4f6478;border-left:4px solid transparent;transform:rotate(16deg)}.preview-header__icon--edit:before{left:2px;top:9px;width:11px;height:3px;border-radius:999px;background:#4f6478;transform:rotate(-38deg)}.preview-header__icon--edit:after{right:0;top:2px;width:0;height:0;border-left:5px solid #4f6478;border-top:4px solid transparent;border-bottom:4px solid transparent;transform:rotate(-38deg)}.preview-header__icon--search{background:#4f6478;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='6.5' fill='none' stroke='black' stroke-width='2'/%3E%3Cline x1='14.8' y1='14.8' x2='21' y2='21' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='6.5' fill='none' stroke='black' stroke-width='2'/%3E%3Cline x1='14.8' y1='14.8' x2='21' y2='21' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat}.preview-header__icon--sound{background:#4f6478;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='11,5 6,9 2,9 2,15 6,15 11,19' fill='black'/%3E%3Cpath d='M15.54 8.46a5 5 0 0 1 0 7.07' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M19.07 4.93a10 10 0 0 1 0 14.14' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='11,5 6,9 2,9 2,15 6,15 11,19' fill='black'/%3E%3Cpath d='M15.54 8.46a5 5 0 0 1 0 7.07' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M19.07 4.93a10 10 0 0 1 0 14.14' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat}.preview-header__icon--muted{background:#9fa8bb;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='11,5 6,9 2,9 2,15 6,15 11,19' fill='black'/%3E%3Cline x1='23' y1='9' x2='17' y2='15' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='17' y1='9' x2='23' y2='15' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='11,5 6,9 2,9 2,15 6,15 11,19' fill='black'/%3E%3Cline x1='23' y1='9' x2='17' y2='15' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='17' y1='9' x2='23' y2='15' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat}.preview-header__icon-button.is-muted{opacity:.45}.runtime-page-status{position:absolute;top:14px;left:14px;z-index:10;display:flex;align-items:center;gap:10px;max-width:min(320px,calc(100% - 28px));padding:10px 12px;border-radius:16px;background:#fffffff0;border:1px solid rgba(57,73,97,.08);box-shadow:0 16px 34px #0c162329;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.runtime-page-status__pin{position:relative;flex:none;width:15px;height:20px;border-radius:15px 15px 15px 3px;transform:rotate(-45deg);background:linear-gradient(180deg,#dceba2,#a8ca4f);box-shadow:0 8px 18px #6f8f333d}.runtime-page-status__pin-dot{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:999px;background:#18210dc7;transform:translate(-50%,-50%) rotate(45deg)}.runtime-page-status__body{display:grid;gap:2px;min-width:0}.runtime-page-status__body strong{color:#1f2b39;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.runtime-page-status__body span{color:#6b7b8f;font-size:.72rem}.runtime-page-status__meta{display:flex;align-items:center;gap:8px;min-width:0}.runtime-page-status__role{display:inline-grid;place-items:center;max-width:120px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 16%,rgba(239,244,250,.96));color:#52636f;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-page-menu__toggle-icon{position:relative;width:18px;height:18px;border-radius:999px;border:2px solid currentColor;opacity:.72}.preview-page-menu__toggle-icon:before,.preview-page-menu__toggle-icon:after{content:"";position:absolute;inset:3px;border-radius:999px;border:1px solid currentColor;opacity:.5}.preview-page-menu__toggle-icon:after{inset:6px;opacity:.32}@media(max-width:920px){.runtime-page-status{top:12px;left:12px;max-width:min(260px,calc(100% - 24px));padding:9px 10px}}.media-viewer__nav-icon{position:relative;display:inline-block;width:14px;height:14px}.media-viewer__nav-icon:before{content:"";position:absolute;top:50%;left:50%;width:9px;height:9px;border-top:2px solid #4f6478;border-right:2px solid #4f6478}.media-viewer__nav-icon--prev:before{transform:translate(-35%,-50%) rotate(-135deg)}.media-viewer__nav-icon--next:before{transform:translate(-65%,-50%) rotate(45deg)}.media-viewer__hint{position:absolute;inset:0;z-index:1;pointer-events:none}.media-viewer__hint-gesture{position:absolute;opacity:.18}.media-viewer__hint-gesture--swipe{left:18px;bottom:18px;width:70px;height:48px;animation:mediaViewerSwipeHint 4.4s ease-in-out infinite}.media-viewer__hint-gesture--pinch{right:18px;bottom:18px;width:66px;height:42px}.media-viewer__hint-hand{position:absolute;left:16px;bottom:0;width:22px;height:28px;border-radius:14px 14px 10px 10px;background:#49617c38}.media-viewer__hint-hand:before,.media-viewer__hint-hand:after{content:"";position:absolute;top:8px;width:16px;height:2px;border-radius:999px;background:#49617c47}.media-viewer__hint-hand:before{left:-10px}.media-viewer__hint-hand:after{right:-10px}.media-viewer__hint-touch{position:absolute;top:12px;width:12px;height:18px;border-radius:999px;background:#49617c38}.media-viewer__hint-touch--left{left:18px;animation:mediaViewerPinchLeft 3.4s ease-in-out infinite}.media-viewer__hint-touch--right{right:18px;animation:mediaViewerPinchRight 3.4s ease-in-out infinite}@keyframes mediaViewerSwipeHint{0%,to{transform:translate(0);opacity:.12}30%{transform:translate(12px);opacity:.22}55%{transform:translate(-8px);opacity:.18}}@keyframes mediaViewerPinchLeft{0%,to{transform:translate(0) scale(1);opacity:.12}40%{transform:translate(6px) scale(.92);opacity:.22}}@keyframes mediaViewerPinchRight{0%,to{transform:translate(0) scale(1);opacity:.12}40%{transform:translate(-6px) scale(.92);opacity:.22}}@media(max-width:920px){.media-viewer__hint-gesture--swipe{left:12px;bottom:12px}.media-viewer__hint-gesture--pinch{right:12px;bottom:12px}}.runtime-page-status{display:grid;gap:8px}.runtime-page-status__header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.runtime-page-status__trigger{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:16px;padding:0;background:transparent;color:inherit;text-align:left}.runtime-page-status__quick-jump{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;border:0;border-radius:999px;background:#ffffffb8;box-shadow:inset 0 0 0 1px #9aacc224;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.runtime-page-status__quick-jump:hover{transform:translateY(-1px)}.runtime-page-status__quick-jump:focus-visible{outline:2px solid color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 55%,#6f88a4 45%);outline-offset:2px;box-shadow:inset 0 0 0 1px #9aacc22e,0 0 0 4px #ffffff8c}.runtime-page-status__quick-jump:after{content:attr(data-route-label) "  " attr(data-route-detail);position:absolute;top:calc(100% + 8px);right:0;z-index:2;min-width:max-content;max-width:180px;padding:7px 10px;border-radius:10px;background:#19222ee0;color:#f7fafcf5;font-size:.63rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;box-shadow:0 14px 28px #111a2433;opacity:0;transform:translateY(-3px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.runtime-page-status__quick-jump:before{content:"";position:absolute;inset:-4px;border-radius:999px;opacity:0;transition:opacity .18s ease,transform .18s ease}@media(hover:hover)and (pointer:fine){.runtime-page-status__quick-jump:hover:after,.runtime-page-status__quick-jump:focus-visible:after{opacity:1;transform:translateY(0)}}.runtime-page-status__quick-jump-icon{position:relative;width:12px;height:12px}.runtime-page-status__quick-jump--outbound{color:#5f7d1d;background:color-mix(in srgb,rgba(255,255,255,.76) 82%,rgba(220,235,162,.78) 18%)}.runtime-page-status__quick-jump--outbound:before{background:radial-gradient(circle,#dceba247,#dceba200)}.runtime-page-status__quick-jump--inbound{color:#516b86;background:color-mix(in srgb,rgba(255,255,255,.76) 80%,rgba(214,227,241,.88) 20%)}.runtime-page-status__quick-jump--inbound:before{background:radial-gradient(circle,#c1d6ec4d,#c1d6ec00)}.runtime-page-status__quick-jump--nearby,.runtime-page-status__quick-jump--idle{color:#607186;background:color-mix(in srgb,rgba(255,255,255,.78) 84%,rgba(232,238,246,.92) 16%)}.runtime-page-status__quick-jump--nearby:before,.runtime-page-status__quick-jump--idle:before{background:radial-gradient(circle,#c4d2e252,#c4d2e200)}.runtime-page-status__quick-jump:hover:before,.runtime-page-status__quick-jump:focus-visible:before{opacity:1;transform:scale(1.04)}.runtime-page-status__quick-jump--outbound .runtime-page-status__quick-jump-icon:before,.runtime-page-status__quick-jump--inbound .runtime-page-status__quick-jump-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-top:2px solid currentColor;border-right:2px solid currentColor}.runtime-page-status__quick-jump--outbound .runtime-page-status__quick-jump-icon:before{transform:translate(-60%,-50%) rotate(45deg)}.runtime-page-status__quick-jump--inbound .runtime-page-status__quick-jump-icon:before{transform:translate(-38%,-50%) rotate(-135deg)}.runtime-page-status__quick-jump--nearby .runtime-page-status__quick-jump-icon:before,.runtime-page-status__quick-jump--idle .runtime-page-status__quick-jump-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.runtime-page-status__chevron{margin-left:auto;color:#6b7b8f;font-size:.82rem;font-weight:700}.runtime-page-status__panel{display:grid;gap:6px}.runtime-page-status__summary{display:grid;gap:3px;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 8%,rgba(255,255,255,.8));box-shadow:inset 0 0 0 1px #9aacc21f}.runtime-page-status__summary-label{color:#738297;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.runtime-page-status__summary strong{color:#223042;font-size:.75rem}.runtime-page-status__summary-detail{color:#6f7f93;font-size:.68rem;letter-spacing:.02em}.runtime-page-status__summary-meta{color:#8090a2;font-size:.63rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.runtime-page-status__summary-jump{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;margin-top:3px;padding:7px 9px;border:0;border-radius:10px;background:#ffffffb8;color:#3f5368;text-align:left;box-shadow:inset 0 0 0 1px #9aacc21f}.runtime-page-status__summary-jump-body{display:grid;gap:2px;min-width:0}.runtime-page-status__summary-jump-label{color:#74859a;font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.runtime-page-status__summary-jump-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.68rem;font-weight:700}.runtime-page-status__summary-jump-detail{justify-self:end;color:#6d7d92;font-size:.63rem;font-weight:700}.runtime-page-status__summary-jump-icon{position:relative;flex:0 0 auto;width:12px;height:12px}.runtime-page-status__summary-jump--outbound{color:#5f7d1d}.runtime-page-status__summary-jump--inbound{color:#516b86}.runtime-page-status__summary-jump--nearby,.runtime-page-status__summary-jump--idle{color:#607186}.runtime-page-status__summary-jump--outbound .runtime-page-status__summary-jump-icon:before,.runtime-page-status__summary-jump--inbound .runtime-page-status__summary-jump-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-top:2px solid currentColor;border-right:2px solid currentColor}.runtime-page-status__summary-jump--outbound .runtime-page-status__summary-jump-icon:before{transform:translate(-60%,-50%) rotate(45deg)}.runtime-page-status__summary-jump--inbound .runtime-page-status__summary-jump-icon:before{transform:translate(-38%,-50%) rotate(-135deg)}.runtime-page-status__summary-jump--nearby .runtime-page-status__summary-jump-icon:before,.runtime-page-status__summary-jump--idle .runtime-page-status__summary-jump-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.runtime-page-status__jump{display:grid;gap:3px;width:100%;padding:9px 10px;border:0;border-radius:12px;background:#eff4faf5;color:#223042;text-align:left}.runtime-page-status__jump strong{font-size:.76rem}.runtime-page-status__jump span{color:#6b7b8f;font-size:.7rem}.runtime-page-status__jump{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.runtime-page-status__jump-icon{position:relative;width:12px;height:16px;border-radius:12px 12px 12px 3px;transform:rotate(-45deg);background:linear-gradient(180deg,color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 88%,white 12%),color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 76%,black 12%));box-shadow:0 6px 14px color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 28%,transparent)}.runtime-page-status__jump-icon-dot{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:999px;background:#18210dc2;transform:translate(-50%,-50%) rotate(45deg)}.runtime-page-status__jump-body{display:grid;gap:3px;min-width:0}.runtime-page-status__jump-arrow{position:relative;width:12px;height:12px}.runtime-page-status__jump-arrow:before{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-top:2px solid color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 58%,#4f6478 42%);border-right:2px solid color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 58%,#4f6478 42%);transform:translate(-70%,-50%) rotate(45deg)}.runtime-page-status__count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ebf2faf5;color:#4f6478;font-size:.68rem;font-weight:700}.runtime-page-status__group{display:grid;gap:6px}.runtime-page-status__group+.runtime-page-status__group{padding-top:4px}.runtime-page-status__group-label{padding-inline:2px;color:#2230428c;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.runtime-page-status__group-list{display:grid;gap:6px}.preview-page-menu__panel{border-color:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 16%,rgba(57,73,97,.08))}.preview-page-menu__summary-card--section{background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 12%,rgba(243,247,252,.94))}.preview-page-menu__group.is-active{background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 12%,rgba(247,250,254,.72));border-color:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 24%,rgba(168,202,79,.24))}.preview-page-menu__item.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 24%,white 76%),color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 54%,rgba(168,202,79,.76)))}.preview-page-menu__item--cluster{position:relative;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 8%,rgba(243,247,252,.96));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 14%,rgba(154,172,194,.14))}.preview-page-menu__item--cluster:before,.preview-page-menu__item.is-active:before{content:"";position:absolute;top:50%;left:-8px;width:10px;height:2px;border-radius:999px;background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 28%,rgba(168,202,79,.28));transform:translateY(-50%)}.preview-page-menu__active-pin,.runtime-page-status__pin{background:linear-gradient(180deg,color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 88%,white 12%),color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 76%,black 12%));box-shadow:0 8px 18px color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 24%,transparent)}.runtime-page-status{border-color:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 16%,rgba(57,73,97,.08))}.runtime-page-status__count{background:color-mix(in srgb,var(--runtime-active-accent, #a8ca4f) 14%,rgba(235,242,250,.96))}.runtime-hints,.runtime-page-status,.media-viewer__hint{transition:opacity .26s ease,transform .26s ease}.runtime-hints.is-hidden,.media-viewer__hint.is-hidden{opacity:0;transform:translateY(6px)}.runtime-page-status.is-hidden{opacity:0;transform:translateY(-6px);pointer-events:none}.runtime-page-status__group-label{position:relative;padding-left:20px}.runtime-page-status__group-label:before,.runtime-page-status__group-label:after{content:"";position:absolute}.runtime-page-status__group--outbound .runtime-page-status__group-label:before,.runtime-page-status__group--inbound .runtime-page-status__group-label:before,.runtime-page-status__group--nearby .runtime-page-status__group-label:before{top:50%;left:0;width:10px;height:10px;transform:translateY(-50%)}.runtime-page-status__group--outbound .runtime-page-status__group-label:before{border-top:2px solid #5f7d1d;border-right:2px solid #5f7d1d;transform:translateY(-50%) rotate(45deg)}.runtime-page-status__group--inbound .runtime-page-status__group-label:before{border-top:2px solid #516b86;border-right:2px solid #516b86;transform:translateY(-50%) rotate(-135deg)}.runtime-page-status__group--nearby .runtime-page-status__group-label:before{width:10px;height:10px;border-radius:999px;background:#6383a538;box-shadow:inset 0 0 0 2px #6383a580}.runtime-page-status__jump-distance{display:inline-grid;place-items:center;min-width:44px;padding:4px 8px;border-radius:999px;background:#ebf2faeb;color:#607186;font-size:.66rem;font-weight:700}.runtime-page-status__legend{display:flex;align-items:center;gap:6px;margin-top:4px}.runtime-page-status__hintline{display:flex;align-items:center;gap:6px;color:#5e7084;font-size:.67rem;line-height:1.3;min-width:0}.runtime-page-status__hintline-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.runtime-page-status__hintline-icon{position:relative;flex:0 0 auto;width:12px;height:12px;opacity:.72}.runtime-page-status__hintline--outbound{color:#5f7d1d}.runtime-page-status__hintline--inbound{color:#516b86}.runtime-page-status__hintline--nearby{color:#607186}.runtime-page-status__hintline--outbound .runtime-page-status__hintline-icon:before,.runtime-page-status__hintline--inbound .runtime-page-status__hintline-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-top:2px solid currentColor;border-right:2px solid currentColor}.runtime-page-status__hintline--outbound .runtime-page-status__hintline-icon:before{transform:translate(-60%,-50%) rotate(45deg)}.runtime-page-status__hintline--inbound .runtime-page-status__hintline-icon:before{transform:translate(-38%,-50%) rotate(-135deg)}.runtime-page-status__hintline--nearby .runtime-page-status__hintline-icon:before,.runtime-page-status__hintline--idle .runtime-page-status__hintline-icon:before{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.runtime-page-status__hintline--outbound:not(.is-static) .runtime-page-status__hintline-icon,.runtime-page-status__hintline--inbound:not(.is-static) .runtime-page-status__hintline-icon,.runtime-page-status__hintline--nearby:not(.is-static) .runtime-page-status__hintline-icon{animation:runtimeRoutePulse 2.8s ease-in-out infinite}@keyframes runtimeRoutePulse{0%,to{transform:translate(0);opacity:.52}45%{transform:translate(1px);opacity:.95}}.runtime-page-status__legend-chip{position:relative;display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ebf2faeb;color:#546578;font-size:.64rem;font-weight:700}.runtime-page-status__legend-chip--outbound{background:#dceba285;color:#5f7d1d}.runtime-page-status__legend-chip--inbound{background:#d6e3f1d1;color:#516b86}.runtime-page-status__legend-chip--nearby{background:#e8eef6f5;color:#607186}.runtime-page-status__legend-chip{padding-left:18px}.runtime-page-status__legend-chip:before{content:"";position:absolute;top:50%;left:6px;width:8px;height:8px;transform:translateY(-50%)}.runtime-page-status__legend-chip--outbound:before{border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateY(-50%) rotate(45deg)}.runtime-page-status__legend-chip--inbound:before{border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateY(-50%) rotate(-135deg)}.runtime-page-status__legend-chip--nearby:before{width:8px;height:8px;border-radius:999px;background:currentColor}.runtime-page-status__jump{border:1px solid rgba(154,172,194,.14)}.runtime-page-status__jump--outbound{background:color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 10%,rgba(239,244,250,.96))}.runtime-page-status__jump--inbound{background:color-mix(in srgb,#c8d8eb 18%,rgba(239,244,250,.96))}.runtime-page-status__jump--nearby{background:color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 6%,rgba(239,244,250,.96))}.runtime-page-status__jump-icon--inbound{transform:rotate(180deg)}.runtime-page-status__jump-icon--nearby{border-radius:999px}.runtime-page-status__jump-icon--nearby .runtime-page-status__jump-icon-dot{width:5px;height:5px}.runtime-page-status__jump-arrow--inbound:before{transform:translate(-30%,-50%) rotate(-135deg)}.runtime-page-status__jump--nearby .runtime-page-status__jump-arrow:before{border-top:0;border-right:0;width:6px;height:6px;border-radius:999px;background:color-mix(in srgb,var(--runtime-jump-accent, #a8ca4f) 58%,#4f6478 42%);transform:translate(-50%,-50%)}.runtime-page-status__trigger{transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.runtime-page-status__trigger:hover{background:#ffffff47}.runtime-page-status__trigger.is-passive{cursor:default}.runtime-page-status__trigger.is-passive:hover{background:transparent}.runtime-page-status__chevron--muted{opacity:.42;font-size:1rem}.runtime-page-status:not(.is-open) .runtime-page-status__count{box-shadow:0 0 #a8ca4f3d}.runtime-page-status:not(.is-open) .runtime-page-status__trigger:not(.is-passive) .runtime-page-status__count{animation:runtimeCountPulse 2.8s ease-in-out infinite}@keyframes runtimeCountPulse{0%,to{box-shadow:0 0 #a8ca4f29;transform:translateY(0)}45%{box-shadow:0 0 0 6px #a8ca4f00;transform:translateY(-1px)}}@media(prefers-reduced-motion:reduce){.editor-notice,.editor-dialog-backdrop,.editor-dialog,.media-viewer,.context-menu,.runtime-hint--move,.media-viewer__hint-gesture--swipe,.media-viewer__hint-touch--left,.media-viewer__hint-touch--right,.runtime-page-status__hintline--outbound .runtime-page-status__hintline-icon,.runtime-page-status__hintline--inbound .runtime-page-status__hintline-icon,.runtime-page-status__hintline--nearby .runtime-page-status__hintline-icon,.viewport-recorder-hud.is-live .viewport-recorder-hud__body strong:before,.runtime-page-status:not(.is-open) .runtime-page-status__trigger:not(.is-passive) .runtime-page-status__count{animation:none!important}.runtime-hints,.runtime-page-status,.media-viewer__hint,.runtime-page-status__quick-jump,.runtime-page-status__quick-jump:after,.runtime-page-status__quick-jump:before,.runtime-page-status__trigger{transition:none!important}.runtime-page-status__quick-jump:hover,.runtime-page-status__quick-jump:focus-visible{transform:none}.ghost-button,.mode-button,.primary-button,.socket-button,.window-close-button,.menu-toggle,.field input,.field select,.field textarea,.toggle-row,.outliner-item,.asset-item,.settings-group__toggle,.inspector-child-item{transition:none!important}}.editor-onboarding-card{position:absolute;left:12px;top:56px;z-index:16;display:grid;gap:10px;width:min(340px,calc(100% - 24px));padding:14px;border-radius:18px;background:#fffffff5;border:1px solid rgba(150,179,87,.28);box-shadow:0 18px 40px #1f2b391f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.editor-onboarding-card__body{display:grid;gap:4px}.editor-onboarding-card__body strong{color:#1f2b39;font-size:.9rem}.editor-onboarding-card__body span{color:#627387;font-size:.78rem;line-height:1.45}.editor-onboarding-card__actions{display:flex;gap:8px;justify-content:flex-end}.settings-panel__header--focusable{scroll-margin-top:18px}@media(max-width:920px){.editor-onboarding-card{left:10px;top:10px;width:min(320px,calc(100% - 20px))}.editor-onboarding-card__actions{display:grid;grid-template-columns:1fr}}.editor-onboarding-card{transition:transform .22s ease,opacity .22s ease,box-shadow .22s ease,width .22s ease,padding .22s ease;animation:onboarding-enter .28s ease both}@keyframes onboarding-enter{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}.editor-onboarding-card--compact{top:12px;width:min(250px,calc(100% - 24px));padding:10px 12px;gap:8px;box-shadow:0 12px 28px #1f2b391a}.editor-onboarding-card--compact .editor-onboarding-card__body strong{font-size:.82rem}.editor-onboarding-card--compact .editor-onboarding-card__body span{font-size:.74rem}.editor-onboarding-card--compact .editor-onboarding-card__actions{justify-content:flex-start}.editor-onboarding-card:hover{box-shadow:0 20px 44px #1f2b3924}.editor-shell--windowed[data-reduce-motion=true] .editor-onboarding-card{transition:none;animation:none}@media(max-width:920px){.editor-onboarding-card--compact{top:auto;bottom:12px;width:min(240px,calc(100% - 20px))}}.menu-recording--actions{display:inline-flex;gap:.45rem;flex-wrap:wrap}.viewport-recorder-hud{position:absolute;right:1rem;bottom:1rem;z-index:8;display:flex;gap:.9rem;align-items:flex-end;max-width:min(28rem,calc(100% - 2rem));padding:.9rem 1rem;border-radius:1rem;background:#f8fbffeb;border:1px solid rgba(147,163,184,.22);box-shadow:0 18px 42px #3d4a662e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.viewport-recorder-hud.is-live{border-color:#b1d43b8c;box-shadow:0 18px 42px #78941a2e}@keyframes rec-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.72)}}.viewport-recorder-hud.is-live .viewport-recorder-hud__body strong:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#d94040;margin-right:7px;vertical-align:middle;position:relative;top:-1px;animation:rec-pulse 1.2s ease-in-out infinite}.viewport-recorder-hud__body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.viewport-recorder-hud__body strong{font-size:.95rem}.viewport-recorder-hud__body span{color:#5b6c84;font-size:.82rem;line-height:1.35}.viewport-recorder-hud__actions{display:inline-flex;gap:.55rem;flex-wrap:wrap}@media(max-width:920px){.viewport-recorder-hud{left:.75rem;right:.75rem;bottom:.75rem;max-width:none;flex-direction:column;align-items:stretch}.viewport-recorder-hud__actions{width:100%}.viewport-recorder-hud__actions>button{flex:1 1 0}}.drag-extrude-hud{position:fixed;bottom:68px;left:50%;transform:translate(-50%);pointer-events:auto;z-index:9999}.drag-extrude-hud__inner{display:flex;align-items:center;gap:10px;padding:8px 18px;background:#12161ee0;border:1px solid rgba(160,200,80,.55);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 18px #00000073;color:#e8f0c8;font-size:13px;font-family:monospace;white-space:nowrap}.drag-extrude-hud__op{color:#a8c84a;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.drag-extrude-hud__dist{font-size:16px;font-weight:600;color:#d8f26e;min-width:70px;text-align:center}.drag-extrude-hud__hint{color:#8a9ab0;font-size:11px;font-family:inherit}.drag-extrude-hud__input{font-size:16px;font-weight:600;font-family:monospace;color:#d8f26e;background:#ffffff12;border:1px solid rgba(168,200,74,.45);border-radius:4px;padding:2px 8px;width:80px;text-align:center;outline:none;pointer-events:auto}.drag-extrude-hud__input:focus{border-color:#a8c84ad9;background:#ffffff1a}.drag-extrude-hud__input::-webkit-inner-spin-button,.drag-extrude-hud__input::-webkit-outer-spin-button{-webkit-appearance:none}.viewport-marquee{position:fixed;pointer-events:none;border:1px solid rgba(137,176,60,.88);background:linear-gradient(180deg,#dceba233,#dceba21a);box-shadow:0 0 0 1px #ffffff4d inset;border-radius:10px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.inspector-empty{padding:16px}.settings-group{display:grid;gap:10px;padding:6px 0;border-top:1px solid rgba(57,73,97,.08)}.settings-group:first-child{border-top:0;padding-top:0}.settings-group__header{display:flex;align-items:center;gap:6px;border-radius:14px;background:#f5f9ffe0;transition:background .12s}.settings-group__header:hover{background:#dceafaf5}.settings-group__header.is-open{background:#c8dcf4e0}.settings-group__toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1;min-width:0;border:0;border-radius:14px;padding:10px 12px;background:transparent;color:#223042;text-align:left;font-weight:700;cursor:pointer}.settings-group__header:hover .settings-group__toggle{color:#111e2d}.settings-group__action-slot{flex-shrink:0;padding-right:8px}.settings-group__meta{display:inline-flex;align-items:center;gap:8px}.settings-group__action{color:#6a7c92;font-size:.74rem;font-weight:600}.settings-group__chevron{display:inline-flex;min-width:20px;justify-content:center;color:#6a7c92;font-size:.8rem;transition:transform .18s ease}.settings-group__toggle.is-open .settings-group__chevron{transform:rotate(180deg)}.settings-group__body{display:grid;gap:10px}.webpage-surface--sidebar{width:344px;max-height:520px;overflow:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,#fffffff5,#f5f9fdf0);border:1px solid rgba(64,82,104,.1);box-shadow:0 22px 46px #0f1b2a33}.webpage-surface__neighborhood-badge{padding:6px 10px;border-radius:999px;background:#dfefbeb8;color:#4f6325;font-size:.72rem;font-weight:700;width:fit-content}.webpage-surface__meta-grid .webpage-surface__meta-card--double{grid-column:1 / -1}.webpage-surface__meta{line-height:1.5}.webpage-surface__section-title{margin-top:2px}.webpage-surface__link-list{display:grid;gap:8px}.webpage-surface__stack{display:grid;gap:10px}.webpage-surface__companion-note{padding:10px 12px;border-radius:12px;background:#f6f9fdf0;border:1px solid rgba(71,92,120,.08);color:#63758a;font-size:.76rem;line-height:1.45}.webpage-surface__surface-divider{height:1px;background:linear-gradient(90deg,#64789200,#6478922e 18% 82%,#64789200)}.webpage-surface__companion-kicker{color:#7f92a6;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.webpage-surface__overview-row--four-up .webpage-surface__overview-chip{min-height:58px}.webpage-surface__surface-map+.webpage-surface__surface-divider{margin-top:2px}.webpage-surface__stack .webpage-surface__section-title+.webpage-surface__html,.webpage-surface__stack .webpage-surface__section-title+.webpage-surface__surface-map{margin-top:-2px}.webpage-surface__hero-note-label{color:#7d90a5;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.webpage-surface__overview-row+.webpage-surface__companion-kicker{margin-top:-2px}.webpage-surface__companion-kicker+.webpage-surface__section-title{margin-top:2px}.inspector-child-list{display:flex;flex-direction:column;gap:2px;margin-top:6px}.inspector-child-item{display:flex;align-items:center;gap:6px;width:100%;padding:4px 8px;background:#f6f9fcf2;border:1px solid rgba(57,73,97,.08);border-radius:8px;color:#223042;font-size:.76rem;text-align:left;cursor:pointer;transition:background .12s,border-color .12s}.inspector-child-item:hover{background:#ecf1f8fa;border-color:#39496124}.inspector-child-item__icon{opacity:.55;font-size:.7rem;min-width:12px}.inspector-child-item__name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-child-item__type{opacity:.45;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.ksc-panel{display:flex;flex-direction:column;gap:0;padding:8px 0 4px;height:100%;overflow:hidden}.ksc-panel__hint{margin:0 14px 8px;font-size:.72rem;color:#22304273;letter-spacing:.01em}.ksc-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:0 6px 8px}.ksc-group{border-radius:10px;overflow:hidden;background:#f4f8fc99;border:1px solid rgba(57,73,97,.07);transition:background .12s}.ksc-group--open{background:#ffffffd9;border-color:#3949611f}.ksc-group__header{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;background:none;border:none;cursor:pointer;text-align:left;border-radius:9px;transition:background .1s;color:#1f2b39}.ksc-group__header:hover{background:#3964d20f}.ksc-group__icon{font-size:.82rem;width:18px;text-align:center;opacity:.75;flex-shrink:0}.ksc-group__label{flex:1;font-size:.82rem;font-weight:600;letter-spacing:.01em}.ksc-group__count{font-size:.68rem;color:#22304266;background:#39496114;padding:1px 6px;border-radius:20px;font-weight:500}.ksc-group__chevron{flex-shrink:0;color:#22304259;transition:transform .18s ease}.ksc-group--open .ksc-group__chevron{transform:rotate(180deg)}.ksc-group__body{padding:2px 6px 8px;display:flex;flex-direction:column;gap:1px;animation:ksc-expand .18s ease-out both}@keyframes ksc-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ksc-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 6px;border-radius:6px;transition:background .1s}.ksc-row:hover{background:#3964d20a}.ksc-row__label{flex:1;font-size:.78rem;color:#2e3f52;line-height:1.35}.ksc-row__keys{display:flex;gap:3px;flex-shrink:0;align-items:center}.ksc-key{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;background:#ffffffe6;border:1px solid rgba(57,73,97,.18);border-bottom-width:2px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;font-style:normal;font-weight:600;color:#2a3a4f;white-space:nowrap;box-shadow:0 1px #3949611a;letter-spacing:.02em}.runtime-page-nav{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:#0a121cb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #00000047,inset 0 0 0 1px #ffffff1a}.runtime-page-nav__btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:50%;background:#ffffff1a;color:#fff;cursor:pointer;transition:background .15s,transform .12s}.runtime-page-nav__btn:hover{background:var(--runtime-nav-accent, #a8ca4f);transform:scale(1.08)}.runtime-page-nav__btn:active{transform:scale(.94)}.runtime-page-nav__btn:disabled{opacity:.3;cursor:default}.runtime-page-nav__icon{display:block;width:10px;height:10px;border-top:2px solid currentColor;border-right:2px solid currentColor;border-radius:1px}.runtime-page-nav__btn--prev .runtime-page-nav__icon{transform:rotate(-135deg) translate(1px)}.runtime-page-nav__btn--next .runtime-page-nav__icon{transform:rotate(45deg) translate(-1px)}.runtime-page-nav__position{min-width:44px;text-align:center;font-size:.72rem;font-weight:600;color:#ffffffbf;letter-spacing:.04em}.runtime-zoom-close{position:absolute;top:14px;right:14px;z-index:30;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#0a121c9e;color:#ffffffe6;font-size:1rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 12px #00000052;transition:background .15s,transform .12s,opacity .18s;animation:runtimeZoomCloseFadeIn .22s ease}.runtime-zoom-close:hover{background:#0a121cd9;transform:scale(1.1)}.runtime-zoom-close:active{transform:scale(.93)}@keyframes runtimeZoomCloseFadeIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.settings-hint{font-size:.75rem;color:#7a8a9e;line-height:1.5;margin:0}.settings-hint code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;padding:1px 4px;background:#3949611a;border-radius:3px}.settings-publish-status{font-size:.75rem;padding:6px 10px;border-radius:6px;margin:0}.settings-publish-status--ok{background:#64c8641f;color:#3a8a3a}.settings-publish-status--error{background:#dc50501f;color:#c03030}.settings-divider{border:none;border-top:1px solid var(--border, #dde4ef);margin:4px 0}@media(max-width:768px){.preview-shell{padding:0;gap:0;grid-template-rows:minmax(0,1fr);position:relative;height:100dvh;overflow:hidden}.preview-header{position:absolute;top:0;left:0;right:0;z-index:60;border-radius:0;box-shadow:0 4px 16px #0b182b1a;flex-direction:row;align-items:center;justify-content:space-between;padding:max(env(safe-area-inset-top,8px),8px) 12px 8px;min-height:0;gap:8px}.preview-header h1{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}.preview-header .eyebrow,.preview-header .preview-subtitle{display:none}.preview-canvas-frame{border-radius:0!important;border:none!important;box-shadow:none!important;margin:0!important}.preview-page-menu.is-open:before{content:"";position:fixed;inset:0;background:#00000061;z-index:190;pointer-events:none}.preview-page-menu__panel{position:fixed;inset:auto 0 0;max-height:78dvh;border-radius:22px 22px 0 0;overflow-y:auto;overscroll-behavior:contain;z-index:200;padding-bottom:max(env(safe-area-inset-bottom,0px),16px);box-shadow:0 -6px 40px #0a121c3d;animation:sheet-up .24s cubic-bezier(.32,.72,0,1) both}.preview-page-menu__panel:before{content:"";display:block;width:36px;height:4px;background:#3949612e;border-radius:2px;margin:8px auto 4px}@keyframes sheet-up{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}.runtime-page-status{top:calc(max(env(safe-area-inset-top,0px),0px) + 58px);left:10px;max-width:calc(100% - 20px);padding:6px 8px;gap:4px}.runtime-page-status__panel,.runtime-page-status__legend,.runtime-page-status__hintline,.runtime-page-status__cluster-progress{display:none}.runtime-page-status__body strong{font-size:.72rem}.runtime-page-status__body span{font-size:.65rem}.runtime-page-status__quick-jump{width:36px;height:36px}.runtime-page-status__meta{gap:4px}.runtime-page-nav{bottom:max(env(safe-area-inset-bottom,0px) + 14px,22px);padding:7px 12px;gap:10px}.runtime-page-nav__btn{width:52px;height:52px}.runtime-page-nav__icon{width:13px;height:13px}.runtime-hint-mobile-text{position:absolute;bottom:max(env(safe-area-inset-bottom,0px) + 88px,96px);left:50%;transform:translate(-50%);white-space:nowrap;color:#ffffffd1;font-size:.74rem;font-weight:500;text-shadow:0 1px 4px rgba(0,0,0,.5);background:#0a121c85;padding:5px 14px;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;animation:runtimeHintPulse 3.4s ease-in-out infinite}.runtime-hint--move,.runtime-hint--menu{display:none}.preview-page-menu__toggle{font-size:.76rem;padding:6px 10px;gap:6px}.preview-header__icon-button{min-width:44px;min-height:44px}}.scene-seo-scaffold{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;pointer-events:none;-webkit-user-select:none;user-select:none}.preview-page-menu__item-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.72rem;color:var(--color-text-muted, #8a9bb5)}.preview-page-menu__item-reading{padding:1px 5px;background:#a8ca4f24;border:1px solid rgba(168,202,79,.28);border-radius:10px;color:#a8ca4f;font-size:.68rem;font-variant-numeric:tabular-nums;white-space:nowrap}.preview-page-menu__item-badge{padding:1px 5px;border-radius:10px;font-size:.64rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.preview-page-menu__item-badge--faq{background:#8ab4f824;border:1px solid rgba(138,180,248,.28);color:#8ab4f8}.scene-search-overlay{position:fixed;inset:0;z-index:9000;display:flex;align-items:flex-start;justify-content:center;padding-top:clamp(60px,12vh,140px);background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.scene-search-box{width:min(540px,calc(100vw - 32px));background:#15202e;border:1px solid rgba(168,202,79,.22);border-radius:12px;box-shadow:0 24px 64px #000000b3;overflow:hidden;display:flex;flex-direction:column}.scene-search-box__input-row{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.scene-search-box__icon{flex-shrink:0;width:18px;height:18px;opacity:.45;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='7' fill='none' stroke='black' stroke-width='2'/%3E%3Cline x1='15' y1='15' x2='22' y2='22' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='7' fill='none' stroke='black' stroke-width='2'/%3E%3Cline x1='15' y1='15' x2='22' y2='22' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;color:#9fa8bb}.scene-search-box__input{flex:1;background:none;border:none;outline:none;color:#e8edf5;font-size:1rem;line-height:1.4;caret-color:#a8ca4f}.scene-search-box__input::placeholder{color:#4a5568}.scene-search-box__kbd{flex-shrink:0;padding:2px 6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:4px;font-size:.72rem;color:#6b7a8d}.scene-search-box__results{max-height:340px;overflow-y:auto;overscroll-behavior:contain}.scene-search-box__empty{padding:24px 16px;text-align:center;color:#4a5568;font-size:.875rem}.scene-search-result{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;background:none;border:none;border-top:1px solid rgba(255,255,255,.05);cursor:pointer;text-align:left;color:#c8d4e4;transition:background .1s}.scene-search-result:first-child{border-top:none}.scene-search-result:hover,.scene-search-result.is-focused{background:#a8ca4f14;color:#e8edf5}.scene-search-result__dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--search-accent, #a8ca4f)}.scene-search-result__body{flex:1;min-width:0}.scene-search-result__title{display:block;font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-search-result__meta{display:flex;gap:6px;margin-top:2px;font-size:.72rem;color:#4a5568;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-search-result__snippet{overflow:hidden;text-overflow:ellipsis}.scene-search-box__footer{display:flex;gap:14px;padding:8px 16px;border-top:1px solid rgba(255,255,255,.07);font-size:.7rem;color:#3d4a5c}.scene-search-box__footer kbd{padding:1px 4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:3px;margin-right:3px}@media(max-width:480px){.preview-page-menu__summary{grid-template-columns:1fr}.preview-header h1{max-width:38vw}}@media(max-width:480px){.scene-search-overlay{align-items:flex-start;padding-top:max(env(safe-area-inset-top,0px) + 12px,12px)}.scene-search-box__results{max-height:42dvh}}.outliner-cluster-group{border-top:1px solid rgba(255,255,255,.04)}.outliner-cluster-group__header{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px 5px 6px;background:#a8ca4f0d;border:none;cursor:pointer;text-align:left;color:#8a9bb5;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:background .12s,color .12s}.outliner-cluster-group__header:hover,.outliner-cluster-group__header.is-open{background:#a8ca4f1a;color:#c8d9f0}.outliner-cluster-group__icon{opacity:.5;font-size:.8rem}.outliner-cluster-group__label{flex:1}.outliner-cluster-group__count{padding:1px 5px;background:#ffffff0f;border-radius:8px;font-size:.68rem}.outliner-cluster-group__chevron{font-size:.8rem;opacity:.6}.outliner-cluster-group__items{border-left:2px solid rgba(168,202,79,.2);margin-left:10px}.nurbs-cp-list{display:flex;flex-direction:column;gap:3px;margin-bottom:8px;max-height:220px;overflow-y:auto}.nurbs-cp-row{display:grid;grid-template-columns:18px 1fr 1fr 1fr 20px;gap:3px;align-items:center}.nurbs-cp-index{font-size:.68rem;color:var(--text-dim, rgba(255,255,255,.4));text-align:right;padding-right:2px}.nurbs-cp-remove{background:none;border:none;color:#ff5050b3;font-size:.75rem;cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;justify-content:center}.nurbs-cp-remove:hover{color:#ff5050}.inspector-dim{opacity:.5;font-weight:400;margin-left:4px}.nurbs-draw-hud{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:8px 16px;background:#141c28e0;border:1px solid rgba(200,240,64,.35);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#e8f5c0;font-size:.82rem;white-space:nowrap;pointer-events:none;z-index:100}.nurbs-draw-hud__label{font-weight:600;color:#c8f040}.nurbs-draw-hud__count{font-variant-numeric:tabular-nums;opacity:.75}.nurbs-draw-hud__hint{opacity:.65}.nurbs-draw-hud__hint kbd{background:#ffffff1a;border-radius:3px;padding:1px 5px;font-size:.78rem}.auth-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a1520,#0f2035,#0a1520);font-family:system-ui,-apple-system,sans-serif;color:#c8ddf0}.auth-screen__logo{margin-bottom:40px;text-align:center;-webkit-user-select:none;user-select:none}.auth-screen__wordmark{font-size:48px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#8bc6ff,#d6f36e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px}.auth-screen__tagline{font-size:14px;color:#6e8aaa;letter-spacing:.12em;text-transform:uppercase}.auth-card{background:#ffffff0a;border:1px solid rgba(139,198,255,.15);border-radius:16px;padding:36px 40px;width:100%;max-width:380px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 40px #00000080;text-align:center}.auth-card__heading{margin:0 0 8px;font-size:22px;font-weight:600;color:#deeeff}.auth-card__subtitle{margin:0 0 28px;font-size:14px;color:#6e8aaa;line-height:1.5}.auth-card__error{background:#ff50501f;border:1px solid rgba(255,100,100,.3);border-radius:8px;padding:10px 14px;margin-bottom:20px;font-size:13px;color:#ff9898;text-align:left}.auth-card__google-btn{display:flex;align-items:center;justify-content:center;gap:12px;padding:13px 24px;background:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-size:15px;font-weight:600;color:#1a1a1a;text-decoration:none;cursor:pointer;transition:background .15s,box-shadow .15s;box-shadow:0 2px 8px #00000040}.auth-card__google-btn:hover,.auth-card__google-btn:focus-visible{background:#f5f5f5;outline:none}.auth-card__google-btn:focus-visible{box-shadow:0 2px 8px #00000040,0 0 0 3px #8bc6ff80}.auth-card__fineprint{margin:20px 0 0;font-size:12px;color:#455a6a;line-height:1.6}.auth-screen__footer{margin-top:32px;font-size:12px;color:#374a5e}.auth-loading{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#0a1520;color:#6e8aaa;font-family:system-ui,sans-serif;font-size:15px;gap:12px}.auth-loading__spinner{width:18px;height:18px;border:2px solid #8bc6ff;border-top-color:transparent;border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}:root{font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:#1e2936;background:radial-gradient(circle at top left,rgba(214,233,170,.45),transparent 28%),radial-gradient(circle at bottom right,rgba(177,211,247,.45),transparent 26%),linear-gradient(135deg,#eef4fb,#f7fafc 44%,#edf1f7);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{overflow:hidden;overscroll-behavior:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.loading-shell{min-height:100dvh;display:grid;place-items:center;gap:1rem;padding:1.5rem}.loading-shell--error{text-align:center}.loading-shell__error{max-width:34rem;margin:0;color:#425068;text-align:center;font-size:.95rem;line-height:1.5}
