:root{--ui-page:#eeeade;--ui-ink:#344c3b;--ui-muted:#72746f;--ui-surface:#f8f7ebf5;--ui-field:#fffdf5;--ui-soft:#e5ebda;--ui-line:#c5c6bf;--ui-accent:#426149;--ui-on-accent:#fff8e8;--ui-focus:#af5537;--ui-radius:12px;--ui-control-height:40px}[data-night=true]{--ui-page:#101b2c;--ui-ink:#e8edf0;--ui-muted:#b3bfc9;--ui-surface:#203140f5;--ui-field:#182735;--ui-soft:#354957;--ui-line:#647887;--ui-accent:#cad7df;--ui-on-accent:#203140;--ui-focus:#e4a980}.ui-button{font:inherit;font-size:13px;border:1px solid transparent;min-height:var(--ui-control-height);padding:9px 14px;border-radius:var(--ui-radius);display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--ui-ink);background:var(--ui-soft);cursor:pointer;touch-action:manipulation}.ui-button svg{width:22px;height:22px;flex-shrink:0}.ui-button--primary{background:var(--ui-accent);color:var(--ui-on-accent)}.ui-button--quiet{background:transparent;border-color:var(--ui-line)}.ui-button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ui-accent)}.ui-button:disabled,.ui-icon-button:disabled,.floating button:disabled{opacity:.42;cursor:default}.ui-button:not(:disabled):hover{filter:brightness(.96)}.ui-button:focus-visible,.floating button:focus-visible,.ui-input:focus-visible,.ui-check:focus-visible,.ui-range:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}.ui-input{font:inherit;font-size:13px;min-height:var(--ui-control-height);padding:7px 10px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-field);color:var(--ui-ink);max-width:100%;color-scheme:light}.ui-input:disabled{opacity:.5}[data-night=true] .ui-input{color-scheme:dark}.ui-range{accent-color:var(--ui-focus);touch-action:pan-y}.ui-check{appearance:none;-webkit-appearance:none;display:inline-block;width:18px;height:18px;min-width:18px;min-height:18px;flex-shrink:0;margin:0;border:1px solid var(--ui-line);border-radius:5px;background:var(--ui-field);vertical-align:middle;cursor:pointer;accent-color:var(--ui-accent);position:relative;background-repeat:no-repeat;background-position:center;background-size:contain}.ui-check:checked{background-color:var(--ui-accent);border-color:var(--ui-accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10 4 4 8-9' fill='none' stroke='%23fff8e8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}[data-night=true] .ui-check:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10 4 4 8-9' fill='none' stroke='%23203140' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.ui-check:disabled{opacity:.45;cursor:default}.ui-check:before,.ui-check:after{content:none!important}.ui-choice{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid transparent;border-radius:var(--ui-radius);background:var(--ui-soft);color:var(--ui-ink);font-size:12px;min-height:38px;cursor:pointer}.ui-choice:has(input:checked){border-color:var(--ui-line)}.ui-choice svg{width:23px;height:23px;flex-shrink:0}.ui-choices{display:flex;flex-wrap:wrap;gap:6px}.ui-section{border:0;padding:0;margin:0}.ui-section legend{font-size:12px;color:var(--ui-muted);margin-bottom:7px}.ui-field{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--ui-ink)}.ui-field>span:first-child{flex-shrink:0}.ui-field>input,.ui-field>select{max-width:70%}.ui-field--range{display:grid;grid-template-columns:1fr auto}.ui-field--range input{grid-column:1/-1;max-width:none;width:100%}.ui-panel-title{font-size:18px;margin:0}.ui-help{font-size:12px;line-height:1.5;color:var(--ui-muted)}.ui-range{appearance:none;-webkit-appearance:none;background:transparent;border:0;height:36px;--power:0%}.ui-range::-webkit-slider-runnable-track{height:7px;border-radius:8px;background:linear-gradient(to right,var(--ui-focus) var(--power),var(--ui-line) var(--power))}.ui-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:34px;height:34px;border:7px solid var(--ui-field);border-radius:50%;background:var(--ui-focus);box-shadow:0 0 0 1.5px var(--ui-focus),0 2px 5px #79694d18;margin-top:-13.5px}.ui-range::-moz-range-track{height:7px;border-radius:8px;background:var(--ui-line)}.ui-range::-moz-range-progress{height:7px;border-radius:8px;background:var(--ui-focus)}.ui-range::-moz-range-thumb{width:20px;height:20px;border:7px solid var(--ui-field);border-radius:50%;background:var(--ui-focus);box-shadow:0 0 0 1.5px var(--ui-focus)}.ui-icon-button{color:var(--ui-ink);border-radius:16px}.ui-icon-button[aria-pressed=true]{background:var(--ui-soft);box-shadow:inset 0 0 0 1px var(--ui-line)}.ui-library .ui-icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--ui-line);background:var(--ui-soft)}.ui-icon-button svg{width:24px;height:24px}.floating button[data-ui-auto-focus]:focus-visible,.ui-button[data-ui-auto-focus]:focus-visible,.ui-icon-button[data-ui-auto-focus]:focus-visible{outline:none}.ui-scene-hover-preview{width:100px;height:100px;color:var(--ui-accent)}.ui-check.setting-checkbox{display:block;flex:0 0 26px;width:26px;height:26px;min-height:26px;padding:0;border-radius:8px}.ui-dialog{width:min(460px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;padding:22px;border:1px solid var(--ui-line);border-radius:22px;background:var(--ui-surface);color:var(--ui-ink)}.ui-dialog::backdrop{background:#182c2766}.ui-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.ui-install-content{display:grid;gap:16px}.ui-install-content p{margin:0}.ui-install-identity{display:flex;align-items:center;gap:14px}.ui-install-identity img{flex:none;border-radius:14px}.ui-install-identity .ui-help{margin-top:5px}.ui-install-guide ul{margin:10px 0 0;padding-left:20px}.ui-install-guide li+li{margin-top:10px}.ui-tablet-preview{--ui-touch-target:60px;--ui-control-height:52px}.ui-tablet-preview :is(.ui-button,.ui-icon-button){min-width:var(--ui-touch-target);min-height:var(--ui-touch-target)}@media(pointer:coarse)and (min-width:768px)and (min-height:600px){:root{--ui-touch-target:60px;--ui-control-height:52px}:root .game :is(.round,.ui-icon-button,.spatial-tools button,.spatial-context>button,#spatial-train button,.paint-modes button,#editor-actions button,.spatial-handle,#prop-palette button,#photo-controls button){min-width:var(--ui-touch-target);min-height:var(--ui-touch-target)}:root :is(.ui-button,.ui-choice,.game #level-picker,.game .setting-toggle){min-height:var(--ui-touch-target)}:root .ui-range{min-height:var(--ui-touch-target)}:root .settings #editor-history{width:calc(var(--ui-touch-target) + 10px)}:root .settings #editor-history button{width:var(--ui-touch-target);height:var(--ui-touch-target)}}.ui-control-stack{display:grid;gap:12px}.ui-tablet-preview .ui-field:has(.ui-check){min-height:var(--ui-touch-target)}.ui-icon-shell{--ui-icon-shell-size: calc(max(40px,var(--ui-touch-target,40px)) + 10px) ;width:var(--ui-icon-shell-size);height:var(--ui-icon-shell-size);display:grid;place-items:center;padding:4px;border:1px solid var(--ui-line);border-radius:50%;background:var(--ui-surface)}.ui-icon-shell>.ui-icon-button{width:40px;height:40px;padding:0;border-radius:50%}.ui-tablet-preview .ui-history-controls{display:flex;gap:4px}html[data-night=true]{color-scheme:dark}.ui-field.ui-field--stack{display:flex;flex-direction:column;align-items:stretch;gap:8px}.ui-field--stack>select,.ui-field--stack>.custom-select{width:100%;max-width:100%}:root{--ui-danger:#ad5036;--ui-danger-hover:#703d2d;--ui-on-danger:#fff5dc}[data-night=true]{--ui-danger:#a75e43;--ui-danger-hover:#84432f}.ui-button--danger:not(:disabled){background:var(--ui-danger);color:var(--ui-on-danger)}@media(hover:hover){.ui-button--danger:hover:not(:disabled){background:var(--ui-danger-hover);color:var(--ui-on-danger)}}.ui-library .ui-button--danger[data-ui-preview=hover]:not(:disabled){background:var(--ui-danger-hover);color:var(--ui-on-danger)}.ui-detail-options{padding-top:12px}:root{--ui-restart-red:#bd3e2e;--ui-restart-glow:#d84e3c66;--ui-restart-edge:#f3a58a}[data-night=true]{--ui-restart-red:#d84c36;--ui-restart-glow:#ff725c88;--ui-restart-edge:#ffb49a}:is(.game #restart-run,.ui-library button).ui-restart-alert:not(:disabled){background:var(--ui-restart-red);color:#fff8ee;border-color:var(--ui-restart-edge);box-shadow:0 0 0 4px var(--ui-restart-glow),0 0 22px var(--ui-restart-glow);animation:ui-restart-pulse .7s ease-in-out 3}@keyframes ui-restart-pulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.12);filter:brightness(1.2)}}@media(prefers-reduced-motion:reduce){:is(.game #restart-run,.ui-library button).ui-restart-alert{animation:none}}.ui-dock-side{position:absolute;left:calc(100% + 14px);top:50%;transform:translateY(-50%);display:grid}.ui-dock-side:empty{display:none}.launch-dock{z-index:5}.ui-drive-split{display:flex;flex-wrap:nowrap;gap:var(--ui-drive-inset,12px);padding:var(--ui-drive-inset,12px)}.ui-drive-split>.ui-drive-forward{flex:2 1 0;width:0;min-width:0;border-radius:999px}.ui-drive-split>.ui-drive-brake{flex:1 1 0;width:0;min-width:0;height:max(56px,var(--ui-touch-target,0px));border-radius:999px}.ui-drive-preview{position:relative;width:min(430px,calc(100% - 144px));max-width:none;margin-inline:72px}.ui-drive-preview>.ui-drive-forward,.ui-drive-preview>.ui-drive-brake{height:max(56px,var(--ui-touch-target,0px));padding-inline:0}:root .ui-drive-split.floating{padding:6px;gap:6px;border-radius:999px}:root .ui-drive-split>.ui-drive-forward,:root .ui-drive-split>.ui-drive-brake{box-shadow:none;border:0}:root .game .ui-drive-split:not(.ui-drive-edges)>#throttle:not([aria-pressed=true]),:root .ui-library .ui-drive-split:not(.ui-drive-edges)>.ui-drive-forward:not([aria-pressed=true]){background:transparent;color:var(--ui-ink)}:root .game .ui-drive-split:not(.ui-drive-edges)>#throttle:not([aria-pressed=true]):hover,:root .ui-library .ui-drive-split:not(.ui-drive-edges)>.ui-drive-forward:not([aria-pressed=true]):hover{background:var(--ui-soft)}:root .ui-dock-side>button:not(.ui-restart-alert){box-shadow:none}:is(.game #restart-run,.ui-library .ui-restart-ready):not(:disabled):not(.ui-restart-alert){background:var(--ui-soft);color:var(--ui-ink);border:1px solid var(--ui-line)}.ui-drive-split{--ui-drive-side-size:max(48px,var(--ui-touch-target,0px));--ui-drive-side-span:0px}.game .launch-dock[data-restart-position=top]{--ui-drive-edge:max(16px,env(safe-area-inset-left),env(safe-area-inset-right));width:min(620px,calc(100% - var(--ui-drive-side-span) - 2 * var(--ui-drive-edge)));left:calc(50% + var(--ui-drive-side-span) / 2)}.ui-drive-preview[data-restart-position=top]{width:min(620px,calc(100% - var(--ui-drive-side-span) - 32px));margin-inline:auto;transform:translate(calc(var(--ui-drive-side-span) / 2))}:is(.game,.ui-library),:is(.game,.ui-library) *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none}:is(.game,.ui-library){touch-action:manipulation}:is(.game,.ui-library) :is(input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=file]),textarea,[contenteditable]:not([contenteditable=false])),:is(.game,.ui-library) [contenteditable]:not([contenteditable=false]) *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;-webkit-user-drag:auto}:root{--ui-dialog-surface:#f3f2ed;--ui-card-surface:#fffefa;--ui-preview-surface:#eae8df;--ui-picker-segment:#e7e6e1;--ui-picker-edge:#34414b1a}[data-night=true]{--ui-dialog-surface:#203140;--ui-card-surface:#354957;--ui-preview-surface:#dfe3e5;--ui-picker-segment:#ffffff12;--ui-picker-edge:#ffffff1a}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker){font-family:-apple-system,BlinkMacSystemFont,system-ui,sans-serif;width:min(800px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--ui-picker-edge);border-radius:30px;background:var(--glass-gloss),var(--glass-tint);color:var(--ui-ink);overflow:hidden;box-shadow:0 20px 70px #13241b26;backdrop-filter:blur(18px) saturate(0);-webkit-backdrop-filter:blur(18px) saturate(0)}.ui-map-picker[open],.ui-map-picker-preview{display:flex;flex-direction:column;gap:20px}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-picker-header{position:static;display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;margin:0;text-align:left}.ui-map-picker-header h2{font-size:28px;line-height:1.2;letter-spacing:-.65px;margin:0 0 6px;font-weight:700}.ui-map-picker-header p{font-size:12px;color:var(--ui-muted);margin:0;line-height:1.5}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-tabs{display:flex;gap:3px;flex:none;padding:3px;margin:0;border:0;border-radius:14px;background:var(--ui-picker-segment)}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:10px 16px;border:0;border-radius:12px;background:transparent;color:var(--ui-muted);font-size:15px;font-weight:600;box-shadow:none}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-tabs button[aria-selected=true]{background:var(--ui-card-surface);color:var(--ui-ink);border:0;box-shadow:0 2px 6px #14251b12,0 0 1px #14251b12}.ui-map-tabs button span{font-size:11px;opacity:.6;font-variant-numeric:tabular-nums}.ui-map-picker-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding:4px;padding:3px;margin:-3px;touch-action:pan-y}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ui-map-grid[hidden]{display:none!important}.ui-map-card{display:block;position:relative;min-width:0;padding:0;overflow:hidden;border:2px solid transparent;border-radius:20px;background:var(--ui-preview-surface);color:var(--ui-ink);font:inherit;cursor:pointer;touch-action:manipulation;box-shadow:0 1px 3px #14251b0d}.ui-map-card-preview{--ui-map-preview-inset:12px;position:relative;display:block;width:100%;aspect-ratio:1.25}.ui-map-card-preview svg{position:absolute;inset:var(--ui-map-preview-inset);display:block;width:calc(100% - 2 * var(--ui-map-preview-inset));height:calc(100% - 2 * var(--ui-map-preview-inset))}.ui-map-card[aria-current=true]{border-color:var(--ui-accent)}.ui-map-card-check{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ui-accent);color:var(--ui-on-accent);box-shadow:0 0 0 3px var(--ui-dialog-surface)}.ui-map-card-check svg{width:20px;height:20px}.ui-map-card:focus-visible,.ui-map-tabs button:focus-visible{outline:3px solid var(--ui-focus);outline-offset:2px}.ui-map-card[data-ui-auto-focus]:focus-visible{outline:none}@media(hover:hover){.ui-map-card:hover{border-color:var(--ui-accent)}}@media(max-width:540px){:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker){width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:20px;border-radius:28px;gap:18px}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ui-map-card-preview{--ui-map-preview-inset:10px}}:is(.game #level-dialog.ui-map-picker,.ui-library .ui-map-picker) .ui-map-close{display:grid;place-items:center;flex:none;width:44px;height:44px;min-width:44px;min-height:44px;border:0;border-radius:50%;background:var(--ui-picker-segment);color:var(--ui-muted)}.ui-library .ui-map-picker-preview{max-height:none}:root{--ui-complete-surface:#faf0cc;--ui-complete-ink:#796127}[data-night=true]{--ui-complete-surface:#594b29;--ui-complete-ink:#f2d98c}.ui-map-card-complete{position:absolute;right:7px;bottom:7px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ui-complete-surface);color:var(--ui-complete-ink);box-shadow:0 0 0 2px var(--ui-dialog-surface)}.ui-map-card-complete svg{width:21px;height:21px}.ui-control-separator{display:block;align-self:stretch;width:1px;flex:0 0 1px;margin:8px 5px;background:var(--ui-line)}.ui-tool-group{display:flex;align-items:center;gap:3px}.ui-tool-group>:is(.ui-button,.ui-tool-button){width:var(--ui-touch-target,46px);min-height:var(--ui-touch-target,46px);flex-shrink:0;padding:0}.ui-tool-group>.ui-button>span:empty{display:none}:root .ui-tool-button{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:0;border:1px solid transparent;color:var(--ui-muted);background:transparent;box-shadow:none;cursor:pointer;touch-action:manipulation}:root .ui-tool-button>span:empty{display:none}:root .ui-tool-button svg{display:block;width:24px;height:24px;flex-shrink:0}:root .ui-tool-button:not([aria-pressed=true]){background:transparent;box-shadow:none}:root .ui-tool-button[aria-pressed=true]{background:var(--ui-soft);color:var(--ui-ink);box-shadow:inset 0 0 0 1px var(--ui-line)}:root .ui-tool-button:not(:disabled):hover{background:var(--ui-soft)}:root .ui-tool-button:focus:not(:focus-visible){outline:none}:root .ui-tool-button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-4px}.free-track-tools{border-radius:calc(var(--ui-radius)*2);padding:10px;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(480px,calc(100vw - 32px));pointer-events:auto}.free-track-tools[hidden]{display:none}.free-track-tools .ui-choices{justify-content:center}.free-track-tools .ui-help{margin:0;max-width:100%}.free-track-tools .ui-tool-group{max-width:100%;flex-wrap:wrap;justify-content:center}.ui-icon-choice{position:relative;display:inline-grid;place-items:center;width:var(--ui-touch-target,46px);height:var(--ui-touch-target,46px);flex-shrink:0;border:1px solid transparent;border-radius:var(--ui-radius);color:var(--ui-ink);background:transparent;cursor:pointer;touch-action:manipulation}.ui-icon-choice>input.ui-check{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:inherit}.ui-icon-choice>svg{width:24px;height:24px;pointer-events:none}.ui-icon-choice:has(input:checked){background:var(--ui-soft);border-color:var(--ui-line)}.ui-icon-choice:has(input:focus-visible){outline:3px solid var(--ui-focus);outline-offset:3px}.ui-icon-choice:has(input:disabled){opacity:.45;cursor:default}@media(hover:hover){.ui-icon-choice:hover{background:var(--ui-soft)}}.ui-builder-tools{width:max-content;gap:6px;flex-wrap:nowrap}.ui-builder-tools>[hidden]{display:none!important}.ui-point-handles{display:grid;--ui-handle-count:3;grid-template-columns:repeat(var(--ui-handle-count),max(44px,var(--ui-touch-target,44px)));gap:6px;justify-content:center;pointer-events:auto;touch-action:none}.ui-point-handles .ui-tool-button.ui-icon-button{width:max(44px,var(--ui-touch-target,44px));height:max(44px,var(--ui-touch-target,44px));display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-ink);cursor:grab}.ui-point-handles .ui-tool-button.ui-icon-button[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-on-accent);cursor:grabbing}.ui-point-handles output{grid-column:1/-1;text-align:center;justify-self:center;border-radius:var(--ui-radius);padding:2px 6px;background:var(--ui-surface);margin:0;pointer-events:none}.ui-point-handles .ui-tool-button.ui-icon-button[data-point-finish]{background:var(--ui-accent);color:var(--ui-on-accent);cursor:pointer}:root{--ui-switch:#397494;--ui-switch-soft:#e0edf2;--ui-switch-edge:#8aafc1;--ui-switch-on:#f8fbfc}[data-night=true]{--ui-switch:#9ac5df;--ui-switch-soft:#344f66;--ui-switch-edge:#7195ae;--ui-switch-on:#18384d}.ui-point-handles:has([data-point-detach]:not([hidden])),.ui-point-handles:has([data-point-extend]:not([hidden])),.ui-point-handles:has([data-point-switch]:not([hidden])){--ui-handle-count:4}.ui-point-handles:has([data-segment-action]){--ui-handle-count:5}.ui-point-handles .ui-tool-button.ui-icon-button[hidden]{display:none}:root{--ui-guide:#b64381}[data-night=true]{--ui-guide:#ef91c8}.ui-track-guide-preview{display:block;width:min(100%,360px);height:auto;margin:auto}.ui-track-guide-rail{fill:none;stroke:var(--ui-ink);stroke-width:3}.ui-track-guide-line{fill:none;stroke:var(--ui-guide);stroke-width:1.5;stroke-dasharray:5 4}.ui-track-guide-point{fill:var(--ui-guide);stroke:var(--ui-surface);stroke-width:2}.ui-network-builder{position:absolute;inset:0;pointer-events:none;z-index:8}.ui-network-builder[hidden],.ui-network-objects[hidden]{display:none}.ui-network-panel{position:absolute;bottom:calc(100px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);padding:6px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-radius);pointer-events:auto}.ui-network-panel p{margin:6px 0 0}.ui-network-hint{position:absolute;left:16px;top:170px;width:min(290px,calc(100% - 32px));padding:12px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-radius)}.ui-network-hint p{margin:6px 0}.ui-network-builder .builder-point-tools{position:absolute;transform:translate(-50%,-100%);pointer-events:auto}.ui-network-builder .builder-point-tools[hidden]{display:none}:is(.ui-network-builder,.ui-network-switch-overlay) .builder-switch-layer{position:absolute;inset:0;pointer-events:none}:is(.ui-network-builder,.ui-network-switch-overlay) .ui-turnout-switch{position:absolute;transform:translate(-50%,-50%);pointer-events:auto}.ui-network-objects{position:absolute;top:170px;right:90px;z-index:9;width:min(300px,calc(100% - 32px));padding:10px;border-radius:var(--ui-radius);pointer-events:auto}.ui-network-objects .ui-input{width:100%}.ui-network-objects .ui-help{margin:6px 0}.ui-network-objects .row{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:700px){.ui-network-hint{display:none}.ui-network-objects{top:140px;right:80px;width:210px}.ui-network-panel{bottom:calc(96px + env(safe-area-inset-bottom));padding:8px}.ui-network-panel .ui-help{display:none}.ui-network-panel .ui-builder-options{gap:4px}.ui-network-panel details{display:none}}.ui-network-game-switches{position:absolute;inset:0;pointer-events:none;z-index:1}.ui-network-game-switches[hidden]{display:none}.ui-network-game-switches .ui-turnout-switch{position:absolute;transform:translate(-50%,-50%);pointer-events:auto}.ui-button[hidden],.ui-tool-button[hidden],.floating button[hidden],.spatial-tools button[hidden]{display:none}.ui-network-tool-dock{position:absolute;bottom:calc(100px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:9;display:flex;align-items:center;gap:6px;max-width:calc(100% - 24px);padding:6px;border-radius:var(--ui-radius);pointer-events:auto;overflow-x:auto}.ui-network-tool-dock[hidden]{display:none}.ui-network-tool-dock>.ui-tool-group{flex-shrink:0}.ui-network-panel.ui-network-panel--docked{position:static;transform:none;width:max-content;max-width:none;padding:0;border:0;background:transparent;flex-shrink:0}.ui-network-panel.ui-network-panel--docked[hidden],.ui-network-objects[data-mode=track],.ui-network-objects[data-mode=select],.ui-network-objects[data-mode=buffer]{display:none}@media(max-width:700px){.ui-network-tool-dock{bottom:calc(96px + env(safe-area-inset-bottom))}}.ui-network-toolbar-preview{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ui-network-object-menu{position:absolute;transform:translate(-50%,-100%);z-index:30;pointer-events:auto}.ui-network-object-menu[hidden]{display:none}.ui-network-object-menu [data-network-object-delete]{color:var(--ui-danger)}.ui-library canvas.scene-pickable{cursor:pointer}.ui-scene-hover-preview{cursor:pointer}.ui-network-switch-overlay{position:absolute;inset:0;pointer-events:none;z-index:1}.ui-network-switch-overlay[hidden]{display:none}.ui-point-handles .ui-tool-button[data-point-extend]{cursor:pointer}.ui-point-handles:has([data-point-detach]:not([hidden])):has([data-point-simplify]:not([hidden])){--ui-handle-count:5}.ui-point-handles .ui-tool-button[data-point-simplify]{cursor:pointer}.ui-editor-submenu{--editor-shell-radius:22px;--editor-shell-inset:6px;--editor-inner-radius:calc(var(--editor-shell-radius) - var(--editor-shell-inset) - 1px);border-radius:var(--editor-shell-radius);padding:var(--editor-shell-inset)}:root .ui-editor-submenu .ui-icon-button{border-radius:var(--editor-inner-radius)}:root .ui-tool-button.ui-button--primary,:root .ui-tool-button.ui-button--primary:hover{background:var(--ui-accent);color:var(--ui-on-accent);border-color:var(--ui-line)}.ui-icon-button[data-ui-theme-toggle][aria-pressed=true]{background:transparent;box-shadow:none}:is(.ui-theme-transition,.ui-theme-transition :is(.game,.floating,button,input,select,label,section,dialog,.ui-help,.ui-field,svg,svg *)){transition-property:background-color,color,border-color,box-shadow,fill,stroke!important;transition-duration:.35s!important;transition-timing-function:ease!important}@media(prefers-reduced-motion:reduce){:is(.ui-theme-transition,.ui-theme-transition *){transition-duration:0s!important}}.ui-button--menu{background:color-mix(in srgb,var(--ui-field) 45%,transparent);border:1px solid var(--ui-line);box-shadow:none;color:var(--ui-ink);font-size:19px;font-weight:500;letter-spacing:-.015em;min-height:66px;padding:18px 24px;gap:18px;transition:background-color .18s,border-color .18s,transform .18s,box-shadow .18s}.ui-button--menu[data-game-primary]{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent);font-size:22px;font-weight:650;min-height:76px;box-shadow:0 8px 24px color-mix(in srgb,var(--ui-ink) 10%,transparent)}.ui-button--menu>svg{width:25px;height:25px;flex-shrink:0}.ui-button--menu[data-game-primary]:hover{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent);box-shadow:0 10px 28px color-mix(in srgb,var(--ui-ink) 18%,transparent)}.ui-button--menu:hover{background:var(--ui-soft);border-color:var(--ui-ink);color:var(--ui-ink);transform:translateY(-2px)}.ui-button--menu:active{transform:translateY(0)}.ui-game-menu{container-type:inline-size;position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;padding:0;border:0;color:var(--ui-ink);background:transparent;overflow:auto;overscroll-behavior:contain;isolation:isolate}.ui-game-menu:not([open]){display:none}.ui-game-menu::backdrop{background:transparent}.ui-game-menu-scenery{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.ui-game-menu-scenery:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 5%,color-mix(in srgb,var(--ui-page) 25%,transparent) 35%,color-mix(in srgb,var(--ui-page) 93%,transparent) 73%,var(--ui-page)),linear-gradient(0deg,var(--ui-page),transparent 22%,transparent 80%,color-mix(in srgb,var(--ui-page) 30%,transparent))}.ui-game-menu-layout{position:relative;display:grid;grid-template-columns:1fr minmax(300px,400px);grid-template-rows:1fr;align-items:center;gap:32px;width:min(1180px,100%);min-height:100%;margin:auto;padding:max(72px,env(safe-area-inset-top)) max(60px,env(safe-area-inset-right)) max(30px,env(safe-area-inset-bottom)) max(40px,env(safe-area-inset-left))}.ui-game-menu-panel{grid-column:2;text-align:center;padding:12px 0}.ui-game-menu-logo{font-family:ui-rounded,system-ui,-apple-system,sans-serif;font-size:88px;line-height:.92;font-weight:780;letter-spacing:-.055em;margin:0 0 38px;color:var(--ui-ink)}.ui-game-menu-logo span{display:block;font-size:.77em;letter-spacing:.075em;line-height:1.35;font-weight:500}.ui-game-menu-actions{display:grid;gap:12px;justify-items:stretch}.ui-game-menu-actions>.ui-button{width:100%;justify-content:flex-start;border-radius:22px}.ui-game-menu-back{position:absolute;right:max(24px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top))}.ui-game-menu-preview{position:relative;isolation:isolate;container-type:inline-size;border-radius:24px;overflow:hidden;background:var(--ui-page)}.ui-game-menu-preview .ui-game-menu-layout{padding:46px 28px 24px;min-height:560px}.ui-game-menu-preview--mobile{width:390px;max-width:100%;margin:auto}@container (max-width:700px){.ui-game-menu-layout{grid-template-columns:1fr;grid-template-rows:1fr;padding:max(90px,env(safe-area-inset-top)) 32px max(28px,env(safe-area-inset-bottom));gap:40px;width:min(460px,100%)}.ui-game-menu-panel{grid-column:1;padding:40px 0 10px}.ui-game-menu-logo{font-size:72px;margin-bottom:30px}.ui-button--menu{font-size:17px;min-height:62px;padding:16px 20px}.ui-button--menu[data-game-primary]{font-size:20px;min-height:70px}.ui-game-menu-scenery:after{background:linear-gradient(0deg,var(--ui-page),color-mix(in srgb,var(--ui-page) 72%,transparent) 25%,color-mix(in srgb,var(--ui-page) 50%,transparent) 65%,transparent)}.ui-game-menu-preview .ui-game-menu-layout{padding:45px 24px 28px;min-height:640px}}@media(max-height:560px)and (min-width:701px){.ui-game-menu-layout{padding:35px 60px 22px}.ui-game-menu-panel{padding:10px 0}.ui-game-menu-logo{font-size:54px;margin-bottom:18px}.ui-button--menu{font-size:16px;min-height:50px;padding:12px 18px}.ui-button--menu[data-game-primary]{font-size:18px;min-height:56px}}.game-menu-open>:not(#scene):not(#game-menu):not(#level-dialog){visibility:hidden}.game-menu-open>#scene>:not(canvas){visibility:hidden}.ui-game-menu-preview .ui-game-menu-scenery{backdrop-filter:none;-webkit-backdrop-filter:none}@media(prefers-reduced-motion:reduce){.ui-button--menu{transition:none}.ui-button--menu:hover{transform:none}}[data-visual-style=woodland]:not([data-night=true]){--ui-page:#d8e4e6;--ui-ink:#2d4546;--ui-muted:#536c70;--ui-accent:#36584b;--ui-on-accent:#f4f5ed}:root{--ui-selection-target:48px;--ui-selection-gap:6px;--ui-danger-ink:var(--ui-danger)}[data-night=true]{--ui-danger-ink:var(--ui-focus)}.ui-selection-actions.ui-point-handles{display:grid;grid-template-columns:max-content;justify-content:center;gap:var(--ui-selection-gap);max-width:calc(100vw - 24px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;pointer-events:auto;touch-action:none}.ui-selection-buttons{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--ui-selection-gap);max-width:calc(100vw - 24px)}:root .ui-selection-actions .ui-tool-button.ui-icon-button{width:max(var(--ui-selection-target),var(--ui-touch-target,0px));height:max(var(--ui-selection-target),var(--ui-touch-target,0px));min-width:max(var(--ui-selection-target),var(--ui-touch-target,0px));min-height:max(var(--ui-selection-target),var(--ui-touch-target,0px));display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-ink);box-shadow:none;cursor:pointer}:root .ui-selection-actions .ui-tool-button.ui-icon-button[data-selection-drag]{cursor:grab}:root .ui-selection-actions .ui-tool-button.ui-icon-button:not(:disabled):hover{background:var(--ui-soft)}:root .ui-selection-actions .ui-tool-button.ui-icon-button[aria-pressed=true],:root .ui-selection-actions .ui-tool-button.ui-icon-button.ui-button--primary{background:var(--ui-accent);color:var(--ui-on-accent)}:root .ui-selection-actions .ui-tool-button.ui-icon-button[data-selection-drag][aria-pressed=true]{cursor:grabbing}:root .ui-selection-actions .ui-tool-button.ui-icon-button.ui-button--danger{color:var(--ui-danger-ink)}:root .ui-selection-actions .ui-tool-button.ui-icon-button:disabled{opacity:.42;cursor:default}:root .ui-selection-actions .ui-tool-button.ui-icon-button[hidden]{display:none}.ui-selection-actions>output{grid-column:1;text-align:center;justify-self:center;border-radius:var(--ui-radius);padding:2px 6px;background:var(--ui-surface);margin:0;pointer-events:none}.editing #object-actions.ui-selection-actions{position:absolute;left:0;top:0;display:grid;grid-template-columns:max-content;gap:var(--ui-selection-gap);width:max-content;max-width:calc(100% - 24px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transform:translate(-50%,-100%);z-index:30}.editing #object-actions.ui-selection-actions[hidden]{display:none}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button{position:static;width:max(var(--ui-selection-target),var(--ui-touch-target,0px));height:max(var(--ui-selection-target),var(--ui-touch-target,0px));min-width:max(var(--ui-selection-target),var(--ui-touch-target,0px));min-height:max(var(--ui-selection-target),var(--ui-touch-target,0px));padding:0;border:1px solid var(--ui-line);border-radius:50%;background:var(--ui-surface);color:var(--ui-ink);box-shadow:none;transform:none}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button:not(:disabled):hover{background:var(--ui-soft)}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button[aria-pressed=true],.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button.ui-button--primary{background:var(--ui-accent);color:var(--ui-on-accent)}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button.ui-button--danger{color:var(--ui-danger-ink)}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button:disabled{opacity:.42;cursor:default}.editing #object-actions.ui-selection-actions .ui-tool-button.ui-icon-button[hidden]{display:none}.ui-glass-preview{padding:30px;border-radius:24px;background:repeating-linear-gradient(125deg,#587989 0 55px,#b3c3bb 55px 110px,#b49467 110px 165px);min-height:210px;display:grid;place-items:center}.ui-glass-preview>.floating{padding:22px;border-radius:24px;width:min(100%,440px)}.ui-glass-preview .row{justify-content:center}.paint-tools>[data-road-surface-setting]{flex:1 0 100%;width:100%;padding:6px;order:4}.paint-tools>[data-road-surface-setting][hidden]{display:none}.ui-light-prop-settings{width:min(100%,360px)}.ui-light-prop-settings[hidden],.ui-light-prop-settings [data-prop-light-colorful-row][hidden]{display:none}.editor-tool-panels{pointer-events:none}.editor-tool-panels>:not([hidden]){pointer-events:auto}.ui-drive-forward{order:2}.ui-drive-switch{order:1}.ui-drive-brake{order:0}.ui-drive-split>.ui-drive-switch{flex:0 0 auto;width:max(56px,var(--ui-touch-target,0px));height:max(56px,var(--ui-touch-target,0px));padding:0;border-radius:999px}.ui-drive-switch>span{display:none}:root .ui-drive-split.ui-drive-edges{display:grid;grid-template-columns:minmax(76px,128px) 1fr minmax(76px,128px);align-items:center;gap:12px;padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}:root .game .launch-dock.ui-drive-edges[data-restart-position]{width:calc(100% - (2*max(20px,env(safe-area-inset-left),env(safe-area-inset-right))));left:50%}:root .ui-drive-edges>.ui-drive-forward,:root .ui-drive-edges>.ui-drive-brake{width:100%;height:max(72px,var(--ui-touch-target,0px));min-height:72px;pointer-events:auto;border:1px solid var(--ui-line);box-shadow:0 4px 16px color-mix(in srgb,var(--ui-ink) 8%,transparent)}:root .ui-drive-edges>.ui-drive-forward:not([aria-pressed=true]){background:var(--ui-surface);color:var(--ui-ink)}.ui-drive-edges>.ui-drive-forward{grid-column:3}.ui-drive-edges>.ui-drive-brake{grid-column:1}:root .ui-drive-edges>.ui-drive-switch{grid-column:3;grid-row:1;justify-self:center;pointer-events:auto;background:var(--ui-surface);border:1px solid var(--ui-line);box-shadow:0 4px 16px color-mix(in srgb,var(--ui-ink) 8%,transparent)}.ui-drive-edges>.ui-drive-forward,.ui-drive-edges>.ui-drive-brake{grid-row:2}:root .ui-drive-preview.ui-drive-edges{width:100%;margin:0;transform:none}.ui-drive-switch[hidden]{display:none!important}:root .game.editing .launch-dock.ui-drive-edges{display:none}.ui-consent-panel{box-sizing:border-box;padding:16px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-dialog-surface);color:var(--ui-ink);font:14px/1.5 ui-rounded,system-ui,sans-serif}.ui-consent-panel h2{margin:0}.ui-consent-panel p{margin:8px 0}.ui-consent-panel a{color:inherit}.ui-consent-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}#analytics-consent{position:fixed;z-index:100001;bottom:max(12px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));width:min(480px,100% - max(12px,env(safe-area-inset-left)) - max(12px,env(safe-area-inset-right)));max-height:calc(100dvh - 24px);overflow:auto}
