@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;font-display:block;src:url(/assets/material-symbols-outlined-CCkmHs_K.woff2)format("woff2")}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{color:#374151;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f6f8;font-family:Roboto,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0}body{min-width:320px}button,input,select,textarea,canvas{font:inherit}.ui-icon{justify-content:center;align-items:center;line-height:1;display:inline-flex}.ui-showcase{color:#343434;background:#f5f5f2;height:100%;min-height:0;overflow:auto}.ui-showcase__scroll{min-height:100%}.ui-showcase__section{background:#f8f8f5;border-bottom:1px solid #e7e5e1;padding:28px 40px}.ui-showcase__header,.ui-showcase__two-column{gap:28px;display:grid}.ui-showcase__header{grid-template-columns:minmax(0,1fr) auto;align-items:end}.ui-showcase__header h1,.ui-showcase__stack h2{color:#444;margin:0 0 8px}.ui-showcase__header p{color:#707070;max-width:720px;margin:0}.ui-showcase__actions,.ui-showcase__inline{flex-wrap:wrap;gap:12px;display:flex}.ui-showcase__form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px;margin-top:28px;display:grid}.ui-showcase__form-span{grid-column:1/-1}.ui-showcase__two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-showcase__stack{gap:18px;display:grid}.ui-showcase__caption{color:#6f6f6b;margin:0;font-size:15px}.ui-field{gap:10px;display:grid}.ui-field__label{color:#4a4a48;font-size:18px;font-weight:600}.ui-field__helper{color:#8a8a85;font-size:13px}.ui-field__control{color:#2d2d2d;background:#fff;border:1px solid #d8d8d2;border-radius:30px;outline:none;width:100%;min-height:72px;padding:0 28px;font-size:22px}.ui-field__control::placeholder{color:#a0a09b}.ui-field__control:focus{border-color:#b8b8b2}.ui-field__control--textarea{resize:vertical;min-height:140px;padding:22px 28px}.ui-button{color:#2f2f2f;cursor:pointer;background:#fff;border:1px solid #d8d8d2;border-radius:28px;justify-content:center;align-items:center;gap:10px;min-height:56px;padding:0 22px;font-size:18px;font-weight:500;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s;display:inline-flex}.ui-button:hover{border-color:#cfcfc8;box-shadow:0 8px 18px #0f172a0f}.ui-button--primary{color:#f8f8f6;background:#2f2f2f;border-color:#2f2f2f}.ui-button--ghost{background:#ffffffb8;border-color:#0000}.ui-button--lg{min-height:62px;padding:0 26px;font-size:19px}.ui-select{gap:10px;display:grid;position:relative}.ui-select__trigger{color:#2d2d2d;text-align:left;cursor:pointer;background:#fff;border:1px solid #d8d8d2;border-radius:30px;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:0 20px 0 28px;font-size:22px;display:flex}.ui-select__trigger .is-placeholder{color:#9a9a96}.ui-select__menu{z-index:5;background:#fff;border:1px solid #e2e1dc;border-radius:30px;padding:16px;position:absolute;top:calc(100% + 12px);left:0;right:0;box-shadow:0 18px 36px #0f172a14}.ui-select__option{color:#2d2d2d;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:22px;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:72px;padding:0 18px 0 26px;font-size:22px;display:flex}.ui-select__option:hover,.ui-select__option.is-selected{background:#f2f2f0}.ui-select__check{color:#0000;border:1px solid #d0d0ca;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.ui-select__check.is-selected{color:#2d2d2d}.ui-trigger{color:#2d2d2d;cursor:pointer;background:#fff;border:1px solid #d8d8d2;border-radius:28px;align-items:center;gap:16px;min-height:88px;padding:0 30px;font-size:24px;display:inline-flex}.ui-trigger__dot{background:#c3c3c3;border-radius:999px;width:22px;height:22px}.ui-trigger.is-on .ui-trigger__dot{background:#6c9a4c}.ui-trigger__label{font-weight:500}.ui-trigger__state{color:#8a8a85;letter-spacing:0}.ui-toolbar{width:fit-content;box-shadow:none;background:0 0;border:none;border-radius:0;align-items:center;gap:4px;padding:0;display:inline-flex}.ui-toolbar__button{color:#6a6a66;cursor:pointer;background:0 0;border:none;border-radius:18px;justify-content:center;align-items:center;gap:8px;min-width:40px;height:40px;padding:0 12px;font-size:15px;display:inline-flex}.ui-toolbar__button:hover,.ui-toolbar__button.is-active{color:#242424;background:#f2f2ef}.ui-toolbar__divider{background:#e5e4de;width:1px;height:18px}.ui-menubar{display:inline-flex;position:relative}.ui-menubar__trigger{color:#2f2f2f;cursor:pointer;background:#fffffff0;border:1px solid #d8d8d2;border-radius:18px;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:15px;display:inline-flex;box-shadow:0 10px 24px #0f172a0f}.ui-menubar__trigger.is-open{border-color:#cfcfc8}.ui-menubar__panel{z-index:12;background:#fff;border:1px solid #dddcd6;border-radius:24px;min-width:280px;padding:12px;position:absolute;top:calc(100% + 12px);left:0;box-shadow:0 22px 48px #0f172a1f}.ui-menubar--end .ui-menubar__panel{left:auto;right:0}.ui-menubar__entry{position:relative}.ui-menubar__separator{background:#ecebe5;height:1px;margin:8px 6px}.ui-menubar__item{color:#202020;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:18px;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;min-height:58px;padding:0 14px;display:grid}.ui-menubar__item:hover,.ui-menubar__item.is-open{background:#f3f3f0}.ui-menubar__item:disabled{opacity:.45;cursor:default}.ui-menubar__icon,.ui-menubar__chevron{color:#262626;justify-content:center;align-items:center;display:inline-flex}.ui-menubar__copy{gap:2px;min-width:0;display:grid}.ui-menubar__label{color:#202020;font-size:16px}.ui-menubar__hint{color:#9a9a96;font-size:12px}.ui-menubar__submenu{position:absolute;top:0;left:calc(100% + 12px)}.ui-menubar__panel--submenu{position:relative;top:auto;left:auto}.ui-segmented{background:#efefec;border:1px solid #d8d8d2;border-radius:28px;width:fit-content;padding:8px;display:inline-flex}.ui-segmented__button{color:#666664;cursor:pointer;background:0 0;border:none;border-radius:22px;min-width:148px;min-height:72px;padding:0 24px;font-size:22px}.ui-segmented__button.is-active{color:#2f2f2f;background:#fff;box-shadow:0 10px 18px #0f172a14}.ui-chip{color:#4d4d4a;cursor:pointer;background:#fff;border:1px solid #d8d8d2;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:15px;display:inline-flex}.ui-chip.is-selected{color:#2f2f2f;background:#f0f1f4}.ui-tabs{background:#efefec;border:1px solid #d8d8d2;border-radius:28px;gap:6px;width:fit-content;padding:8px;display:inline-flex}.ui-tabs__tab{color:#72726f;cursor:pointer;background:0 0;border:none;border-radius:20px;min-height:54px;padding:0 18px;font-size:17px;font-weight:500}.ui-tabs__tab.is-active{color:#2f2f2f;background:#fff;box-shadow:0 8px 16px #0f172a14}.ui-card{background:#fff;border:1px solid #dfddd7;border-radius:30px;width:min(100%,420px);padding:24px}.ui-card__eyebrow{color:#888883;text-transform:uppercase;font-size:13px;font-weight:600}.ui-card__title{color:#323232;margin:10px 0 8px;font-size:28px}.ui-card__description{color:#6e6e69;margin:0;font-size:16px}.ui-card__body,.ui-card__footer{margin-top:18px}.ui-expand-panel{background:#fff;border:1px solid #dfddd7;border-radius:24px;overflow:hidden}.ui-expand-panel__header{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:76px;padding:18px 24px;display:flex}.ui-expand-panel__title{color:#323232;font-size:20px;font-weight:600;display:block}.ui-expand-panel__subtitle{color:#83837e;margin-top:4px;font-size:14px;display:block}.ui-expand-panel__body{padding:0 24px 20px}@media (width<=960px){.ui-showcase__section{padding:20px}.ui-showcase__header,.ui-showcase__form-grid,.ui-showcase__two-column{grid-template-columns:1fr}.ui-field__control,.ui-select__trigger,.ui-select__option{min-height:64px;font-size:18px}.ui-segmented__button{min-width:116px;min-height:62px;font-size:19px}.ui-trigger{min-height:76px;padding:0 22px;font-size:20px}.ui-menubar__panel,.ui-menubar__submenu{position:static}.ui-menubar__panel{min-width:min(100vw - 40px,280px)}}.terrain-game{color:#f8fafc;background:#dfe7ea;width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.terrain-game__canvas{cursor:default;touch-action:none;outline:none;width:100%;height:100%;display:block}.terrain-game__logo{z-index:2;pointer-events:none;justify-content:center;width:min(50vw,1024px);min-width:180px;display:flex;position:absolute;top:clamp(24px,10vh,92px);left:50%;transform:translate(-50%)}.terrain-game__logo img{object-fit:contain;filter:drop-shadow(0 18px 36px #0f172a2e)drop-shadow(0 6px 14px #0f172a24);width:100%;height:auto;display:block}.terrain-game__loading,.terrain-game__error{color:#334155;background:#dfe7ea;place-items:center;padding:24px;font-size:14px;display:grid;position:absolute;inset:0}.terrain-game__error{color:#991b1b}.app-shell{background:#f5f6f8;grid-template-columns:72px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.app-shell--game{background:#dfe7ea;grid-template-columns:minmax(0,1fr)}.activity-bar{background:#fff;border-right:1px solid #d9dee5;flex-direction:column;align-items:center;gap:20px;padding:16px 0;display:flex;box-shadow:6px 0 20px #0f172a0a}.activity-bar__brand{color:#f8fafc;letter-spacing:0;background:#111827;border-radius:8px;place-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:grid}.activity-bar__nav{flex-direction:column;gap:10px;display:flex}.activity-bar__button{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;width:48px;height:48px;transition:background-color .16s,border-color .16s,box-shadow .16s;display:grid}.activity-bar__button img{width:24px;height:24px}.activity-bar__icon-symbol{color:#475569;font-size:24px}.activity-bar__button:hover{background:#f3f4f6;border-color:#d9dee5}.activity-bar__button.is-active{background:#eff6ff;border-color:#bfdbfe;box-shadow:inset 3px 0 #2563eb}.activity-bar__button.is-active .activity-bar__icon-symbol{color:#2563eb}.workspace{min-width:0;height:100vh;min-height:0}.workspace--game{background:#dfe7ea}.workspace__content{height:100%;min-height:0;padding:0}.scene-editor{color:#1f2937;background:#f5f6f8;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.scene-editor__title{align-items:center;gap:10px;min-width:0;display:flex}.scene-editor__title>.ui-icon,.scene-editor__title>.material-symbols-outlined{color:#334155;font-size:24px}.scene-editor__title h2{color:#111827;margin:0;font-size:15px;line-height:1.2}.scene-editor__title span{color:#64748b;margin-top:2px;font-size:12px;line-height:1.2;display:block}.scene-editor__tabs.ui-tabs{background:#f3f4f6;border-color:#d9dee5;border-radius:8px;gap:2px;width:100%;padding:3px;overflow-x:auto}.scene-editor__tabs .ui-tabs__tab{color:#475569;white-space:nowrap;border-radius:6px;min-height:34px;padding:0 12px;font-size:13px;font-weight:600}.scene-editor__tabs .ui-tabs__tab.is-active{color:#111827;box-shadow:0 4px 10px #0f172a14}.scene-editor__body{min-height:0;overflow:hidden}.scene-editor__panel-header{border-bottom:1px solid #e2e8f0;gap:12px;margin-bottom:14px;padding-bottom:14px;display:grid}.scene-editor__header-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.scene-editor__resource-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.scene-editor__resource-status{color:#64748b;margin:0;font-size:12px;line-height:1.4}.scene-editor__hidden-input{display:none}.scene-editor__tab-panel{background:0 0;grid-template-columns:1fr;gap:14px;height:auto;min-height:0;display:grid}.scene-editor__panel-rail{background:0 0;border:0;align-content:start;gap:14px;min-height:0;padding:0;display:grid;overflow:visible}.scene-editor__panel-heading{align-items:center;gap:8px;display:flex}.scene-editor__panel-heading h3{color:#111827;margin:0;font-size:16px}.scene-editor__panel-heading .material-symbols-outlined{color:#475569;font-size:22px}.scene-editor__layer-list{gap:8px;display:grid}.scene-editor__layer-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.scene-editor__layer-row--button{text-align:left;cursor:pointer;width:100%}.scene-editor__layer-row--button:hover,.scene-editor__layer-row--button.is-selected{background:#eff6ff;border-color:#bfdbfe}.scene-editor__layer-icon{color:#334155;background:#f1f5f9;border-radius:8px;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.scene-editor__layer-copy{gap:2px;min-width:0;display:grid}.scene-editor__layer-copy strong{color:#111827;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.scene-editor__layer-copy span,.scene-editor__layer-state{color:#64748b;font-size:12px}.scene-editor__layer-state{background:#f8fafc;border-radius:999px;padding:4px 8px;font-weight:600}.scene-editor__settings-grid{grid-template-columns:1fr;align-content:start;gap:12px;min-height:0;padding:0;display:grid;overflow:visible}.scene-editor__add-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.scene-editor__button,.scene-editor__select,.scene-editor__field input[type=text],.scene-editor__field input[type=number],.scene-editor__field select{color:#111827;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;min-height:34px;font-size:13px}.scene-editor__button{cursor:pointer;background:#fff;padding:0 12px;font-weight:700}.scene-editor__button:hover{background:#eff6ff;border-color:#93c5fd}.scene-editor__select,.scene-editor__field input[type=text],.scene-editor__field input[type=number],.scene-editor__field select{width:100%;padding:0 10px}.scene-editor__field{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:10px;min-height:76px;padding:12px;display:grid}.scene-editor__field--inline{grid-template-columns:minmax(0,1fr) auto;align-items:center}.scene-editor__field span{color:#334155;font-size:13px;font-weight:600}.scene-editor__field input[type=range]{width:100%}.scene-editor__field input[type=color]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;width:44px;height:34px;padding:2px}.scene-editor__field--color{grid-template-columns:minmax(0,1fr) auto;align-items:center}.scene-editor__vector-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.scene-editor__tab-panel--lights{gap:10px}.scene-editor__light-card-list{align-content:start;gap:10px;min-height:0;display:grid}.scene-editor__light-card{background:#fff;border:1px solid #dce3ec;border-radius:8px;gap:10px;padding:10px;display:grid}.scene-editor__light-card.is-selected{border-color:#93c5fd;box-shadow:inset 0 0 0 1px #2563eb1f}.scene-editor__light-card-header{grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.scene-editor__light-card-icon{color:#334155;background:#f1f5f9;border-radius:8px;place-items:center;width:30px;height:30px;font-size:19px;display:grid}.scene-editor__light-card-title{gap:2px;min-width:0;display:grid}.scene-editor__light-card-title input{color:#111827;width:100%;min-width:0;height:24px;font:inherit;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.scene-editor__light-card-title span,.scene-editor__compact-field span,.scene-editor__switch span{color:#64748b;font-size:11px;font-weight:700}.scene-editor__switch{align-items:center;gap:6px;display:inline-flex}.scene-editor__light-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.scene-editor__compact-field{gap:4px;min-width:0;display:grid}.scene-editor__compact-field--span,.scene-editor__compact-field--vector{grid-column:1/-1}.scene-editor__compact-field--color{grid-template-columns:minmax(0,1fr) 34px;align-items:end}.scene-editor__compact-field input[type=number],.scene-editor__compact-field select{color:#111827;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;width:100%;min-height:30px;padding:0 8px;font-size:12px}.scene-editor__compact-field input[type=color]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;width:34px;height:30px;padding:2px}.scene-editor__compact-field input[type=range]{width:100%;min-width:0}.scene-editor__compact-vector{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.scene-editor__empty-stage{color:#64748b;background:#f5f6f8;align-content:center;place-items:center;gap:10px;min-height:0;display:grid}.scene-editor__empty-stage .material-symbols-outlined{color:#94a3b8;font-size:40px}.scene-editor__empty-stage strong{color:#334155;font-size:15px}.resources-viewer{color:#2f2f2c;background:#f8f8f5;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.resources-viewer__header{border-bottom:1px solid #e7e5e1;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.resources-viewer__eyebrow,.resources-viewer__detail-kind{color:#8a8a85;letter-spacing:0;margin:0 0 6px;font-size:12px;font-weight:600}.resources-viewer__header h2,.resources-viewer__detail-header h3,.resources-viewer__viewer-header h3,.resources-viewer__inspector-header h3{color:#262626;margin:0}.resources-viewer__header-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:flex-start;align-items:center;gap:8px;display:grid}.resources-viewer__resource-count{color:#6d6d68;background:#fff;border:1px solid #dfddd7;border-radius:999px;align-items:center;height:28px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.resources-viewer__layout{grid-template-columns:300px minmax(0,1fr) 340px;min-height:0;display:grid}.resources-viewer__tree,.resources-viewer__viewer,.resources-viewer__inspector{min-height:0;overflow:auto}.resources-viewer__tree{background:#f7f6f2;border-right:1px solid #eceae6;align-content:start;gap:14px;padding:14px;display:grid}.resources-viewer__group{gap:10px;display:grid}.resources-viewer__group-header{color:#6d6d68;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.resources-viewer__group-title{color:#343434;align-items:center;gap:8px;display:inline-flex}.resources-viewer__group-items{gap:8px;display:grid}.resources-viewer__group-empty{color:#95958f;margin:0;padding:6px 2px 0;font-size:12px}.resources-viewer__tree-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e1dc;border-radius:14px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.resources-viewer__tree-item.is-selected{border-color:#bfd0f7;box-shadow:inset 0 0 0 1px #2563eb24}.resources-viewer__viewer{background:#fff;grid-template-rows:auto minmax(0,1fr);align-content:start;gap:18px;padding:22px;display:grid}.resources-viewer__viewer-header,.resources-viewer__inspector-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.resources-viewer__viewer-media,.resources-viewer__mesh-view,.resources-viewer__shader-view{align-content:start;gap:16px;min-height:0;display:grid}.resources-viewer__viewer-media{grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr)}.resources-viewer__shader-view{grid-template-columns:repeat(2,minmax(0,1fr))}.resources-viewer__viewer-card,.resources-viewer__mesh-hero,.resources-viewer__mesh-stats>div{background:#fff;border:1px solid #e2e1dc;border-radius:8px;padding:12px}.resources-viewer__card-label{color:#7b7b76;margin-bottom:10px;font-size:12px;font-weight:600;display:block}.resources-viewer__inspector{background:#f7f6f2;border-left:1px solid #eceae6;align-content:start;gap:14px;padding:14px;display:grid}.resources-viewer__inspector-section{gap:12px;display:grid}.resources-viewer__inspector-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.resources-viewer__meta-list,.resources-viewer__mesh-stats{gap:8px;display:grid}.resources-viewer__meta-list{border-top:1px solid #e3e1dc;gap:0}.resources-viewer__mesh-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.resources-viewer__mesh-hero,.resources-viewer__mesh-stats>div{gap:3px;display:grid}.resources-viewer__meta-row{border-bottom:1px solid #e3e1dc;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:8px 0;display:flex}.resources-viewer__meta-row strong{text-align:right;word-break:break-word;min-width:0}.resources-viewer__mesh-hero{text-align:center;background:linear-gradient(#faf9f6 0%,#f3f1ea 100%);place-items:center;min-height:220px}.resources-viewer__mesh-hero strong{color:#202020;font-size:18px}.resources-viewer__material-swatch{border:1px solid #cbd5e1;border-radius:4px;width:36px;height:18px;display:block}.resources-viewer__toolbar-row{border-bottom:1px solid #eceae6;padding:12px 18px}.resources-viewer__tabs.ui-tabs{border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;padding:4px;display:grid}.resources-viewer__tabs .ui-tabs__tab{border-radius:10px;min-width:0;min-height:38px;font-size:13px}.resources-viewer__body{grid-template-rows:minmax(180px,.38fr) minmax(0,1fr);min-height:0;display:grid}.resources-viewer__list,.resources-viewer__detail{min-height:0;overflow:auto}.resources-viewer__list{border-bottom:1px solid #eceae6;align-content:start;gap:8px;padding:12px 18px;display:grid}.resources-viewer__item{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e1dc;border-radius:14px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.resources-viewer__item.is-selected{border-color:#bfd0f7;box-shadow:inset 0 0 0 1px #2563eb24}.resources-viewer__thumb{color:#6b6b67;background:#f3f3ef;border:1px solid #d8d8d2;border-radius:10px;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.resources-viewer__thumb img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;display:block}.resources-viewer__item-copy{gap:2px;min-width:0;display:grid}.resources-viewer__item-copy strong{color:#232323;font-size:14px}.resources-viewer__item-copy span,.resources-viewer__detail-summary{color:#7b7b76;font-size:12px;line-height:1.5}.resources-viewer__item-origin{color:#6d6d68;background:#f8f8f5;border:1px solid #e1e0db;border-radius:999px;align-items:center;height:24px;padding:0 10px;font-size:11px;font-weight:600;display:inline-flex}.resources-viewer__detail{align-content:start;gap:16px;padding:18px;display:grid}.resources-viewer__detail-header{gap:14px;display:grid}.resources-viewer__detail-summary{margin:6px 0 0}.resources-viewer .ui-toolbar{flex-wrap:wrap;max-width:100%}.resources-viewer__editor-stage,.resources-viewer__preview-panel{gap:12px;display:grid}.resources-viewer__preview-image{background:#f0efeb;border:1px solid #dfddd7;border-radius:18px;overflow:hidden}.resources-viewer__preview-image img{object-fit:contain;width:100%;min-height:280px;display:block}.resources-viewer__crop-stage{aspect-ratio:1;cursor:crosshair;background:#f0efeb;border:1px solid #e0dfda;border-radius:18px;position:relative;overflow:hidden}.resources-viewer__crop-stage img{object-fit:contain;width:100%;height:100%;display:block}.resources-viewer__crop-rect{pointer-events:none;background:#ffffff14;border:2px solid #2563eb;border-radius:12px;position:absolute;box-shadow:0 0 0 999px #0f172a4d}.resources-viewer__crop-rect span{color:#1f2937;background:#fffffff0;border-radius:999px;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;top:8px;left:8px}.resources-viewer__preview-strip{grid-template-columns:minmax(0,1fr) 128px;gap:12px;display:grid}.resources-viewer__preview-strip>div{gap:8px;display:grid}.resources-viewer__preview-strip span,.resources-viewer__stage-meta span{color:#7b7b76;font-size:12px}.resources-viewer__crop-preview{aspect-ratio:1;background-color:#fff;background-repeat:no-repeat;border:1px solid #dfddd7;border-radius:14px;width:100%}.resources-viewer__stage-meta{background:#fff;border:1px solid #e2e1dc;border-radius:14px;align-content:start;gap:6px;padding:12px;display:grid}.resources-viewer__stage-meta strong{color:#202020;font-size:14px}.resources-viewer__mesh-hero span,.resources-viewer__mesh-stats span,.resources-viewer__meta-list span,.resources-viewer__field span{color:#4c4c49;font-size:12px;font-weight:600}.resources-viewer__mesh-stats strong,.resources-viewer__meta-list strong{color:#202020;font-size:14px}.resources-viewer__inspector-grid{gap:14px;display:grid}.resources-viewer__field-group{gap:8px;display:grid}.resources-viewer__field-group label,.resources-viewer__field span{color:#4c4c49;font-size:13px;font-weight:600}.resources-viewer__textarea,.resources-viewer__field input{color:#2f2f2c;background:#fff;border:1px solid #d8d8d2;border-radius:12px}.resources-viewer__textarea{resize:vertical;min-height:96px;font:inherit;padding:12px 14px}.resources-viewer__button.ui-button{border-radius:12px;width:100%;min-height:40px;padding:0 14px;font-size:13px}.resources-viewer__button--compact.ui-button{width:100%;min-height:34px;padding:0 10px}.resources-viewer__crop-grid,.resources-viewer__meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.resources-viewer__meta-grid>div{background:#fff;border:1px solid #e2e1dc;border-radius:14px;gap:4px;padding:12px;display:grid}.resources-viewer__meta-grid span{color:#7b7b76;font-size:12px}.resources-viewer__meta-grid strong{color:#202020;font-size:14px}.resources-viewer__field{gap:6px;display:grid}.resources-viewer__field input{height:40px;padding:0 12px}.resources-viewer__mesh-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.resources-viewer__mesh-stats>div{background:#fff;border:1px solid #e2e1dc;border-radius:14px;gap:4px;padding:12px;display:grid}.resources-viewer__mesh-stats span{color:#7b7b76;font-size:12px}.resources-viewer__mesh-stats strong{color:#202020;font-size:18px}.resources-viewer__code{color:#3f3f3c;white-space:pre-wrap;word-break:break-word;margin:0;font-size:11px;line-height:1.5}.resources-viewer__code--shader{white-space:pre;word-break:normal;max-height:min(52vh,520px);overflow:auto}.resources-viewer__status{color:#6d6d68;border-top:1px solid #eceae6;margin:0;padding:12px 18px 16px;font-size:12px;line-height:1.5}.resources-viewer__empty{color:#8d8d88;text-align:center;place-items:center;gap:10px;min-height:240px;display:grid}.resources-viewer__hidden-input{display:none}.texture-editor-view{background:#f5f6f8;grid-template-columns:minmax(0,1fr) 360px;height:100%;min-height:0;display:grid}.texture-editor-view__surface,.texture-editor-view__panel{min-width:0;min-height:0}.texture-editor-view__surface{background:#fff;grid-template-rows:minmax(0,1fr);padding:22px;display:grid;overflow:hidden}.texture-editor-view__surface-header,.texture-editor-view__control-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.texture-editor-view__surface-header h2,.texture-editor-view__control-header h2,.texture-editor-view__panel-header h3{color:#202020;margin:0}.texture-editor-view__viewer-grid{grid-template-columns:minmax(0,1fr);gap:16px;height:100%;min-height:0;display:grid}.texture-editor-view__viewer-card{background:#fff;border:1px solid #e2e1dc;border-radius:8px;align-content:start;gap:12px;padding:14px;display:grid}.texture-editor-view__viewer-card--stage{grid-template-rows:auto minmax(0,1fr);min-height:0}.texture-editor-view__card-label{color:#7b7b76;font-size:12px;font-weight:600;display:block}.texture-editor-view__stage{cursor:crosshair;background:#ebe9e3;border:1px solid #dfddd7;border-radius:8px;place-items:center;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.texture-editor-view__stage-media{position:absolute;overflow:hidden}.texture-editor-view__stage img{object-fit:contain;width:100%;height:100%;display:block}.texture-editor-view__crop-rect{cursor:move;background:#ffffff14;border:2px solid #2563eb;border-radius:8px;position:absolute;box-shadow:0 0 0 999px #0f172a47}.texture-editor-view__crop-rect span{color:#1f2937;background:#fffffff0;border-radius:999px;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;top:8px;left:8px}.texture-editor-view__crop-handle{background:#2563eb;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 1px 4px #0f172a47}.texture-editor-view__crop-handle--nw{cursor:nwse-resize;top:-7px;left:-7px}.texture-editor-view__crop-handle--ne{cursor:nesw-resize;top:-7px;right:-7px}.texture-editor-view__crop-handle--sw{cursor:nesw-resize;bottom:-7px;left:-7px}.texture-editor-view__crop-handle--se{cursor:nwse-resize;bottom:-7px;right:-7px}.texture-editor-view__preview-row{grid-template-columns:minmax(0,1fr) 180px;gap:14px;display:grid}.texture-editor-view__preview-row>div{gap:8px;display:grid}.texture-editor-view__preview-row span,.texture-editor-view__surface-meta span{color:#7b7b76;font-size:12px}.texture-editor-view__crop-preview{aspect-ratio:1;background-color:#fff;border:1px solid #dfddd7;border-radius:8px;width:100%;position:relative;overflow:hidden}.texture-editor-view__crop-preview img{object-fit:fill;max-width:none;display:block;position:absolute}.texture-editor-view__panel-section--selected-space{background:#fff;border:1px solid #e2e1dc;border-radius:8px;padding:12px}.texture-editor-view__surface-meta{background:#fff;border:1px solid #dfddd7;border-radius:8px;align-content:start;gap:8px;padding:12px;display:grid}.texture-editor-view__surface-meta strong{color:#202020;font-size:14px}.texture-editor-view__panel{background:#f8f8f5;border-left:1px solid #d9dee5;align-content:start;gap:14px;padding:18px;display:grid;overflow:auto}.texture-editor-view__control-header{align-items:flex-start}.texture-editor-view__panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.texture-editor-view__panel-header .ui-menubar__trigger{min-height:40px;box-shadow:none;border-radius:12px;padding:0 12px;font-size:13px}.texture-editor-view__resource-list{align-content:start;gap:8px;min-height:0;display:grid;overflow:auto}.texture-editor-view__resource-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e1dc;border-radius:14px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.texture-editor-view__resource-item.is-selected{border-color:#bfd0f7;box-shadow:inset 0 0 0 1px #2563eb24}.texture-editor-view__resource-thumb{background:#f0efeb;border:1px solid #d8d8d2;border-radius:12px;width:48px;height:48px;overflow:hidden}.texture-editor-view__resource-thumb img{object-fit:cover;width:100%;height:100%;display:block}.texture-editor-view__resource-copy{gap:4px;min-width:0;display:grid}.texture-editor-view__resource-copy strong{color:#202020;font-size:14px}.texture-editor-view__resource-copy span{color:#7b7b76;font-size:12px}.texture-editor-view__panel-section{gap:10px;display:grid}.texture-editor-view__panel-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.texture-editor-view__field-label{justify-content:space-between;align-items:center;gap:12px;display:flex}.texture-editor-view__panel-section label,.texture-editor-view__field span{color:#4c4c49;font-size:13px;font-weight:600}.texture-editor-view__textarea,.texture-editor-view__field input{color:#2f2f2c;background:#fff;border:1px solid #d8d8d2;border-radius:12px}.texture-editor-view__textarea{resize:vertical;min-height:96px;font:inherit;padding:12px 14px}.texture-editor-view__button.ui-button{border-radius:12px;width:100%;min-height:42px;padding:0 14px;font-size:13px}.texture-editor-view__dropdown .ui-field__label{color:#4b5563;font-size:13px;font-weight:600}.texture-editor-view__dropdown .ui-select__trigger{min-height:40px;box-shadow:none;border-radius:12px;padding:0 12px;font-size:13px}.texture-editor-view__dropdown .ui-select__menu{border-radius:16px;padding:8px;top:calc(100% + 6px)}.texture-editor-view__dropdown .ui-select__option{border-radius:10px;min-height:40px;padding:0 12px;font-size:13px}.texture-editor-view__crop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.texture-editor-view__field{gap:6px;display:grid}.texture-editor-view__field input{height:36px;padding:0 10px}.texture-editor-view__empty{color:#8d8d88;text-align:center;place-items:center;gap:10px;min-height:100%;display:grid}.texture-editor-view__empty--panel{align-content:center;min-height:240px}.texture-editor-view__hidden-input{display:none}.terrain-editor{--terrain-panel-width:40vw;height:100%;min-height:0}.terrain-editor.is-resizing{cursor:col-resize}.terrain-editor__layout{grid-template-columns:minmax(0, 1fr) 12px minmax(280px, var(--terrain-panel-width));align-items:stretch;height:100%;min-height:0;display:grid}.terrain-editor__surface{background:#fff;border:none;border-radius:0;outline:none;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.terrain-editor__surface:focus-visible{box-shadow:inset 0 0 0 2px #3b82f638}.terrain-editor__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.terrain-editor__viewport-meta{z-index:2;align-items:center;display:flex;position:absolute;top:24px;left:24px}.terrain-editor__viewport-toolbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #d1d5dbeb;border-radius:8px;padding:4px;box-shadow:0 10px 24px #0f172a1f}.terrain-editor__viewport-toolbar .ui-toolbar__button{color:#4b5563;border-radius:8px;min-width:36px;height:36px;padding:0 10px;font-size:13px}.terrain-editor__viewport-toolbar .ui-toolbar__button:hover,.terrain-editor__viewport-toolbar .ui-toolbar__button.is-active{color:#111827;background:#eef2f7}.terrain-editor__panel-resizer{cursor:col-resize;touch-action:none;background:#eef2f7;border-left:1px solid #d9dee5;border-right:1px solid #d9dee5;min-height:0;position:relative}.terrain-editor__panel-resizer-grip{background:#cbd5e1;border-radius:4px;width:4px;height:64px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.terrain-editor__panel{background:#f8f8f5;border-left:1px solid #d9dee5;min-width:0;min-height:0;padding:18px;overflow:auto}.terrain-editor__panel-header{justify-content:flex-end;margin-bottom:18px;display:flex}.terrain-editor__panel h3{color:#111827;margin:0 0 12px;font-size:15px}.terrain-editor__section{border-top:1px solid #e5e7eb;padding:14px 0}.terrain-editor__section:first-of-type{border-top:none;padding-top:0}.terrain-editor__section--compact{padding-bottom:0}.terrain-editor__toggle-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.terrain-editor__toggle{color:#374151;align-items:center;gap:10px;font-size:13px;display:flex}.terrain-editor__toggle input{accent-color:#2563eb;margin:0}.terrain-editor__field-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.terrain-editor__field{color:#4b5563;flex-direction:column;gap:8px;font-size:13px;display:flex}.terrain-editor__field+.terrain-editor__field{margin-top:12px}.terrain-editor__field-grid .terrain-editor__field+.terrain-editor__field{margin-top:0}.terrain-editor__dropdown .ui-field__label{color:#4b5563;font-size:13px;font-weight:500}.terrain-editor__dropdown .ui-select__trigger{border-color:#d1d5db;border-radius:8px;min-height:36px;padding:0 10px 0 12px;font-size:13px;box-shadow:inset 0 1px #fff9}.terrain-editor__dropdown .ui-select__menu{border-radius:12px;padding:8px;top:calc(100% + 6px)}.terrain-editor__dropdown .ui-select__option{border-radius:8px;min-height:34px;padding:0 10px 0 12px;font-size:13px}.terrain-editor__field-label{justify-content:space-between;align-items:center;gap:12px;display:flex}.terrain-editor__field input[type=number],.terrain-editor__field select,.terrain-editor__field input[type=range],.terrain-editor__field input[type=color]{width:100%}.terrain-editor__field input[type=number],.terrain-editor__field select,.terrain-editor__field input[type=color]{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;height:36px;padding:0 10px}.terrain-editor__field input[type=color]{padding:4px}.terrain-editor__field input[type=range]{accent-color:#2563eb}.terrain-editor__field strong{color:#111827;font-size:12px;font-weight:600}.terrain-editor__button,.terrain-editor__ghost-button{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;height:34px;padding:0 12px}.terrain-editor__button:disabled,.terrain-editor__ghost-button:disabled{opacity:.45;cursor:default}.terrain-editor__ghost-button.is-active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.terrain-editor__subtle-button{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:8px;height:30px;padding:0 8px}.terrain-editor__subtle-button:hover{color:#0f172a;background:#94a3b824}.terrain-editor__subtle-button.is-active{color:#1d4ed8;background:#3b82f61f}.terrain-editor__subtle-button:disabled{opacity:.4;cursor:default}.terrain-editor__button{color:#f9fafb;background:#111827;border-color:#111827}.terrain-editor__button,.terrain-editor__ghost-button,.terrain-editor__field input[type=number],.terrain-editor__field select{box-shadow:inset 0 1px #fff9}.terrain-editor__ui-button{min-height:34px;box-shadow:none;border-radius:8px;gap:6px;padding:0 12px;font-size:13px;font-weight:500}.terrain-editor__ui-button:hover{box-shadow:none}.terrain-editor__ui-button.ui-button--ghost{background:0 0}.terrain-editor__import-row{grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:8px;display:grid}.terrain-editor__panel-subhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.terrain-editor__panel-subhead h3{margin-bottom:0}.terrain-editor__stack-actions,.terrain-editor__paint-toolbar,.terrain-editor__layer-actions{flex-wrap:wrap;gap:8px;display:flex}.terrain-editor__stack-actions .ui-menubar__trigger{min-height:34px;box-shadow:none;border-radius:8px;padding:0 12px;font-size:13px}.terrain-editor__stack-actions .ui-menubar__panel{border-radius:16px;min-width:220px}.terrain-editor__stack-actions .ui-menubar__item{border-radius:12px;min-height:46px}.terrain-editor__stack-type{color:#475569;background:#f8fafc;border:1px solid #d1d5db;border-radius:8px;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.terrain-editor__layer-list{gap:8px;display:grid}.terrain-editor__layer-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:10px;padding:10px;display:grid}.terrain-editor__layer-card.is-selected{border-color:#bfdbfe;box-shadow:inset 0 0 0 1px #3b82f61f}.terrain-editor__layer-card.is-drop-target,.terrain-editor__texture-canvas.is-drop-target{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb2e}.terrain-editor__layer-top{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;display:grid}.terrain-editor__layer-thumb,.terrain-editor__texture-canvas{background-color:#f8fafc;background-image:linear-gradient(45deg,#94a3b81f 25%,#0000 25%),linear-gradient(-45deg,#94a3b81f 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#94a3b81f 75%),linear-gradient(-45deg,#0000 75%,#94a3b81f 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px}.terrain-editor__layer-thumb{width:44px;height:44px;image-rendering:pixelated;border:1px solid #d1d5db;border-radius:6px;display:block}.terrain-editor__layer-copy{gap:8px;min-width:0;display:grid}.terrain-editor__layer-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.terrain-editor__layer-title-row strong{color:#111827;min-width:0;font-size:13px}.terrain-editor__layer-title-row span{color:#64748b;font-size:11px;font-weight:600}.terrain-editor__layer-compact-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.terrain-editor__layer-opacity{color:#64748b;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;min-width:0;font-size:12px;display:grid}.terrain-editor__layer-opacity input[type=range]{width:100%}.terrain-editor__layer-actions{justify-content:flex-end;gap:4px}.terrain-editor__layer-toolbar{flex-wrap:wrap;max-width:100%}.terrain-editor__layer-meta{padding-left:54px}.terrain-editor__icon-button{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.terrain-editor__icon-button:hover{color:#0f172a;background:#94a3b824}.terrain-editor__icon-button:disabled{opacity:.4;cursor:default}.terrain-editor__inline-summary{color:#64748b;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:12px;display:flex}.terrain-editor__texture-editor-shell{border:1px solid #d1d5db;border-radius:8px;min-height:0;margin-bottom:0;overflow:hidden}.terrain-editor__texture-canvas{aspect-ratio:1;width:100%;image-rendering:pixelated;touch-action:none;cursor:crosshair;display:block}.terrain-editor__paint-toolbar{align-items:center}.terrain-editor__field-grid--paint{margin-top:0}.terrain-editor__mode-toggle{background:#f8fafc;border-color:#d1d5db;border-radius:10px;padding:4px}.terrain-editor__mode-toggle .ui-segmented__button{border-radius:6px;min-width:84px;min-height:32px;padding:0 12px;font-size:13px}.terrain-editor__popup-layer{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a3d;position:fixed;inset:0}.terrain-editor__popup-grid{justify-content:center;align-items:flex-start;gap:20px;height:100%;padding:28px;display:flex;overflow:auto}.terrain-editor__popup{background:#fffffff5;border:1px solid #e2e8f0f2;border-radius:8px;width:min(680px,100vw - 56px);max-height:calc(100vh - 56px);padding:18px;overflow:auto;box-shadow:0 24px 56px #0f172a2e}.terrain-editor__popup--curve{width:min(760px,100vw - 56px)}.terrain-editor__popup--texture{width:min(980px,100vw - 56px)}.terrain-editor__popup-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.terrain-editor__popup-header h3{color:#111827;margin:0 0 4px}.terrain-editor__title-with-icon{align-items:center;gap:8px;display:inline-flex}.terrain-editor__popup-body{gap:14px;min-height:0;display:grid}.terrain-editor__texture-popup-layout{grid-template-columns:minmax(0,1fr) 320px;gap:16px;min-height:min(72vh,720px);display:grid}.terrain-editor__texture-popup-controls{align-content:start;gap:14px;min-width:0;display:grid}.terrain-editor__texture-popup-meta{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.terrain-editor__texture-popup-meta div{gap:3px;min-width:0;display:grid}.terrain-editor__texture-popup-meta strong{color:#111827;min-width:0;font-size:14px}.terrain-editor__texture-popup-meta span{color:#64748b;text-transform:capitalize;font-size:12px}.terrain-editor__popup .terrain-editor__curve-editor{max-width:420px}.terrain-editor__curve-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:16px;display:grid}.terrain-editor__curve-stage,.terrain-editor__curve-inspector{gap:12px;display:grid}.terrain-editor__slider-stack{gap:14px;display:grid}.terrain-editor__curve-editor{background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px 16px;padding:14px;display:grid}.terrain-editor__curve-axis{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.terrain-editor__curve-axis--y{writing-mode:vertical-rl;align-items:center;height:100%;display:flex;transform:rotate(180deg)}.terrain-editor__curve-axis--x{text-align:center;grid-column:2}.terrain-editor__curve-canvas{aspect-ratio:1;touch-action:none;cursor:crosshair;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;width:100%;overflow:visible}.terrain-editor__curve-grid{stroke:#f1f5f9;stroke-width:1px}.terrain-editor__curve-line{fill:none;stroke:#3b82f6;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.terrain-editor__curve-point{fill:#1e293b;stroke:#0000;stroke-width:12px;cursor:grab;transition:r .15s,fill .15s}.terrain-editor__curve-point:hover{fill:#3b82f6}.terrain-editor__curve-point.is-selected{fill:#2563eb;r:7px}.terrain-editor__curve-actions{margin-top:12px}.terrain-editor__curve-summary-card,.terrain-editor__curve-limits{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:6px;padding:12px;display:grid}.terrain-editor__curve-summary-card span,.terrain-editor__curve-limits span{color:#64748b;letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:700}.terrain-editor__curve-summary-card strong,.terrain-editor__curve-limits strong{color:#111827;font-size:16px}.terrain-editor__curve-fields{gap:10px;display:grid}.terrain-editor__curve-toolbar{flex-wrap:wrap;max-width:100%}.terrain-editor__meta{color:#6b7280;margin:0;font-size:12px;line-height:1.5}.terrain-editor__hidden-input{display:none}.shader-editor-view{--shader-panel-width:50%;grid-template-columns:minmax(0, 1fr) 12px minmax(360px, var(--shader-panel-width));color:#2f2f2c;background:#f5f6f8;height:100%;min-height:0;display:grid}.shader-editor-view.is-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.shader-editor-view__viewer,.shader-editor-view__panel{min-width:0;min-height:0}.shader-editor-view__viewer{background:#fff;position:relative;overflow:hidden}.shader-editor-view__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.shader-editor-view__viewer-overlay{color:#111827;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #d1d5dbe6;border-radius:8px;gap:3px;max-width:min(420px,100% - 44px);padding:10px 12px;display:grid;position:absolute;bottom:22px;left:22px}.shader-editor-view__viewer-overlay span{color:#64748b;font-size:12px}.shader-editor-view__panel-resizer{cursor:col-resize;touch-action:none;background:#eef2f7;border-left:1px solid #d9dee5;border-right:1px solid #d9dee5;min-height:0;position:relative}.shader-editor-view__panel-resizer-grip{background:#cbd5e1;border-radius:4px;width:4px;height:64px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.shader-editor-view__panel{background:#f8f8f5;grid-template-rows:auto auto auto minmax(0,1fr);align-content:stretch;gap:14px;padding:18px;display:grid;overflow:hidden}.shader-editor-view__control-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.shader-editor-view__control-header h2{color:#202020;margin:0}.shader-editor-view__panel-section{gap:10px;display:grid}.shader-editor-view__panel-section--selectors{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.shader-editor-view__panel-section--toolbar{justify-content:flex-end;align-items:center;display:flex}.shader-editor-view__actions{gap:8px;display:flex}.shader-editor-view__button.ui-button{border-radius:8px;min-height:38px;padding:0 14px;font-size:13px}.shader-editor-view__dropdown .ui-field__label{color:#4b5563;font-size:13px;font-weight:600}.shader-editor-view__dropdown .ui-select__trigger{min-height:38px;box-shadow:none;border-radius:8px;padding:0 12px;font-size:13px}.shader-editor-view__dropdown .ui-select__menu{border-radius:12px;padding:8px;top:calc(100% + 6px)}.shader-editor-view__dropdown .ui-select__option{border-radius:8px;min-height:36px;padding:0 12px;font-size:13px}.shader-editor-view__editor-grid{grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;min-height:0;display:grid}.shader-editor-view__code-pane{grid-template-rows:auto minmax(0,1fr);gap:8px;min-height:0;display:grid}.shader-editor-view__editor-heading{color:#374151;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:700;display:flex}.shader-editor-view__editor-heading code{color:#4b5563;text-transform:none;background:#e5e7eb;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:600}.shader-editor-view__editor-shell{background:#1e1e1e;border:1px solid #d1d5db;border-radius:8px;min-height:0;overflow:hidden}.shader-editor-view__empty{color:#8d8d88;text-align:center;align-content:center;place-items:center;gap:12px;min-height:100%;display:grid}@media (width<=900px){.app-shell{grid-template-columns:64px minmax(0,1fr)}.workspace__header{padding:18px 20px 16px}.workspace__content{padding:0}.scene-editor__topbar{flex-direction:column;align-items:stretch;gap:8px}.scene-editor__tabs.ui-tabs{width:100%;overflow-x:auto}.scene-editor__tabs .ui-tabs__tab{white-space:nowrap}.scene-editor__tab-panel,.scene-editor__settings-grid{grid-template-columns:1fr}.scene-editor__panel-rail{border-bottom:1px solid #d9dee5;border-right:none}.terrain-workspace{grid-template-rows:minmax(0,1fr) minmax(420px,48vh);grid-template-columns:minmax(0,1fr)}.terrain-workspace__resources{border-top:1px solid #d9dee5;border-left:none}.resources-viewer__body{grid-template-rows:minmax(180px,auto) minmax(0,1fr)}.resources-viewer__preview-strip,.resources-viewer__mesh-stats,.resources-viewer__shader-view,.resources-viewer__crop-grid,.resources-viewer__meta-grid,.terrain-editor__curve-layout,.terrain-editor__texture-popup-layout,.texture-editor-view,.texture-editor-view__preview-row,.texture-editor-view__crop-grid,.shader-editor-view,.shader-editor-view__panel-section--selectors,.shader-editor-view__panel-section--toolbar{grid-template-columns:1fr}.texture-editor-view{grid-template-rows:minmax(0,1fr) auto}.shader-editor-view{grid-template-rows:minmax(320px,1fr) minmax(520px,48vh)}.shader-editor-view__panel-resizer{display:none}.texture-editor-view__panel,.shader-editor-view__panel{border-top:1px solid #d9dee5;border-left:none}.terrain-editor{min-height:0}.terrain-editor__layout{grid-template-rows:minmax(320px,1fr) auto;grid-template-columns:minmax(0,1fr)}.terrain-editor__panel-resizer{display:none}.terrain-editor__panel{border-top:1px solid #d9dee5;border-left:none;padding:14px}.terrain-editor__layer-compact-row,.terrain-editor__inline-summary,.terrain-editor__popup-header{flex-wrap:wrap}.terrain-editor__toggle-stack{grid-template-columns:1fr}.terrain-editor__layer-meta{padding-left:0}.terrain-editor__popup-grid{padding:16px}.terrain-editor__popup,.terrain-editor__popup--curve{width:min(100%,100vw - 32px);max-height:calc(100vh - 32px)}.terrain-editor__popup--texture{width:min(100%,100vw - 32px)}.terrain-editor__viewport-meta{top:12px;left:12px}.terrain-editor__field-grid,.terrain-editor__import-row,.resources-viewer__layout,.resources-viewer__viewer-media,.resources-viewer__shader-view,.resources-viewer__meta-list,.texture-editor-view,.texture-editor-view__viewer-grid,.texture-editor-view__crop-grid,.shader-editor-view{grid-template-columns:1fr}.resources-viewer__layout,.texture-editor-view{grid-template-rows:auto auto minmax(0,1fr)}.resources-viewer__tree,.resources-viewer__viewer,.resources-viewer__inspector,.texture-editor-view__panel,.shader-editor-view__panel{border-left:none}.resources-viewer__viewer,.resources-viewer__inspector,.texture-editor-view__panel,.shader-editor-view__panel{border-top:1px solid #d9dee5}.texture-editor-view__panel-actions,.resources-viewer__inspector-actions,.resources-viewer__mesh-stats{grid-template-columns:1fr}}
