:where(*,*::before,*::after){box-sizing:border-box}
:where(html,body,#app){min-block-size:100%}
:where(body){margin:0}
:where(button,input,textarea,select){font:inherit}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/generated/fonts/inter-latin-400-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/generated/fonts/inter-latin-500-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/generated/fonts/inter-latin-600-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Rajdhani";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/generated/fonts/rajdhani-latin-600-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Rajdhani";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/generated/fonts/rajdhani-latin-700-normal.woff2") format("woff2");
}

[data-velar-look~="base:vertical-align"]{vertical-align:var(--velar-look-base-vertical-align)}

[data-velar-look~="base:align-content"]{align-content:var(--velar-look-base-align-content)}

[data-velar-look~="base:grid-column"]{grid-column:var(--velar-look-base-grid-column)}

@media (width <= 900px){[data-velar-look~="viewport-width-lte-900px:right"][data-velar-look]{right:var(--velar-look-viewport-width-lte-900px-right)}}

@media (width <= 900px){[data-velar-look~="viewport-width-lte-900px:bottom"][data-velar-look]{bottom:var(--velar-look-viewport-width-lte-900px-bottom)}}

@media (width <= 900px){[data-velar-look~="viewport-width-lte-900px:max-width"][data-velar-look]{max-width:var(--velar-look-viewport-width-lte-900px-max-width)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:bottom"][data-velar-look]{bottom:var(--velar-look-viewport-width-lte-640px-bottom)}}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:font-size"][data-velar-look]{font-size:var(--velar-look-viewport-width-lte-720px-font-size)}}

[data-velar-look~="hover:filter"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:hover){filter:var(--velar-look-hover-filter)}

[data-velar-look~="focus-visible:border-color"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:focus-visible){border-color:var(--velar-look-focus-visible-border-color)}

[data-velar-look~="base:margin-top"]{margin-top:var(--velar-look-base-margin-top)}

[data-velar-look~="base:align-self"]{align-self:var(--velar-look-base-align-self)}

[data-velar-look~="base:grid-template-rows"]{grid-template-rows:var(--velar-look-base-grid-template-rows)}

[data-velar-look~="base:box-shadow"]{box-shadow:var(--velar-look-base-box-shadow)}

[data-velar-look~="base:backdrop-filter"]{backdrop-filter:var(--velar-look-base-backdrop-filter)}

[data-velar-look~="base:padding-inline"]{padding-inline:var(--velar-look-base-padding-inline)}

@media (width <= 980px){[data-velar-look~="viewport-width-lte-980px:grid-template-columns"][data-velar-look]{grid-template-columns:var(--velar-look-viewport-width-lte-980px-grid-template-columns)}}

@media (width <= 980px){[data-velar-look~="viewport-width-lte-980px:align-content"][data-velar-look]{align-content:var(--velar-look-viewport-width-lte-980px-align-content)}}

@media (width <= 980px){[data-velar-look~="viewport-width-lte-980px:gap"][data-velar-look]{gap:var(--velar-look-viewport-width-lte-980px-gap)}}

@media (width <= 980px){[data-velar-look~="viewport-width-lte-980px:padding"][data-velar-look]{padding:var(--velar-look-viewport-width-lte-980px-padding)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:gap"][data-velar-look]{gap:var(--velar-look-viewport-width-lte-640px-gap)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:grid-template-rows"][data-velar-look]{grid-template-rows:var(--velar-look-viewport-width-lte-640px-grid-template-rows)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:font-size"][data-velar-look]{font-size:var(--velar-look-viewport-width-lte-640px-font-size)}}

@media (width <= 980px){[data-velar-look~="viewport-width-lte-980px:border-radius"][data-velar-look]{border-radius:var(--velar-look-viewport-width-lte-980px-border-radius)}}

[data-velar-look~="base:flex-direction"]{flex-direction:var(--velar-look-base-flex-direction)}

[data-velar-look~="base:flex-shrink"]{flex-shrink:var(--velar-look-base-flex-shrink)}

[data-velar-look~="base:flex"]{flex:var(--velar-look-base-flex)}

[data-velar-look~="base:accent-color"]{accent-color:var(--velar-look-base-accent-color)}

[data-velar-look~="base:grid-template-columns"]{grid-template-columns:var(--velar-look-base-grid-template-columns)}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:max-width"][data-velar-look]{max-width:var(--velar-look-viewport-width-lte-600px-max-width)}}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:max-height"][data-velar-look]{max-height:var(--velar-look-viewport-width-lte-600px-max-height)}}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:border-radius"][data-velar-look]{border-radius:var(--velar-look-viewport-width-lte-600px-border-radius)}}

[data-velar-look~="base:border-top"]{border-top:var(--velar-look-base-border-top)}

[data-velar-look~="base:border-bottom"]{border-bottom:var(--velar-look-base-border-bottom)}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:width"][data-velar-look]{width:var(--velar-look-viewport-width-lte-640px-width)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:height"][data-velar-look]{height:var(--velar-look-viewport-width-lte-640px-height)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:border-radius"][data-velar-look]{border-radius:var(--velar-look-viewport-width-lte-640px-border-radius)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:left"][data-velar-look]{left:var(--velar-look-viewport-width-lte-640px-left)}}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:left"][data-velar-look]{left:var(--velar-look-viewport-width-lte-720px-left)}}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:right"][data-velar-look]{right:var(--velar-look-viewport-width-lte-720px-right)}}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:bottom"][data-velar-look]{bottom:var(--velar-look-viewport-width-lte-720px-bottom)}}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:gap"][data-velar-look]{gap:var(--velar-look-viewport-width-lte-720px-gap)}}

@media (width <= 520px){[data-velar-look~="viewport-width-lte-520px:align-items"][data-velar-look]{align-items:var(--velar-look-viewport-width-lte-520px-align-items)}}

@media (width <= 520px){[data-velar-look~="viewport-width-lte-520px:flex-direction"][data-velar-look]{flex-direction:var(--velar-look-viewport-width-lte-520px-flex-direction)}}

@media (width <= 520px){[data-velar-look~="viewport-width-lte-520px:max-width"][data-velar-look]{max-width:var(--velar-look-viewport-width-lte-520px-max-width)}}

[data-velar-look~="hover:opacity"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:hover){opacity:var(--velar-look-hover-opacity)}

[data-velar-look~="disabled:opacity"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:disabled),[data-velar-look~="disabled:opacity"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where([aria-disabled="true"]){opacity:var(--velar-look-disabled-opacity)}

[data-velar-look~="disabled:cursor"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:disabled),[data-velar-look~="disabled:cursor"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where([aria-disabled="true"]){cursor:var(--velar-look-disabled-cursor)}

[data-velar-look~="hover:color"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:hover){color:var(--velar-look-hover-color)}

[data-velar-look~="base:max-height"]{max-height:var(--velar-look-base-max-height)}

[data-velar-look~="base:overflow-y"]{overflow-y:var(--velar-look-base-overflow-y)}

[data-velar-look~="base:min-width"]{min-width:var(--velar-look-base-min-width)}

[data-velar-look~="base:min-height"]{min-height:var(--velar-look-base-min-height)}

[data-velar-look~="base:color-scheme"]{color-scheme:var(--velar-look-base-color-scheme)}

[data-velar-look~="base:object-fit"]{object-fit:var(--velar-look-base-object-fit)}

[data-velar-look~="base:object-position"]{object-position:var(--velar-look-base-object-position)}

[data-velar-look~="base:scale"]{scale:var(--velar-look-base-scale)}

[data-velar-look~="base:transition"]{transition:var(--velar-look-base-transition)}

[data-velar-look~="base:background-image"]{background-image:var(--velar-look-base-background-image)}

[data-velar-look~="base:text-decoration"]{text-decoration:var(--velar-look-base-text-decoration)}

[data-velar-look~="base:filter"]{filter:var(--velar-look-base-filter)}

[data-velar-look~="base:letter-spacing"]{letter-spacing:var(--velar-look-base-letter-spacing)}

@media (width <= 720px){[data-velar-look~="viewport-width-lte-720px:padding"][data-velar-look]{padding:var(--velar-look-viewport-width-lte-720px-padding)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:padding"][data-velar-look]{padding:var(--velar-look-viewport-width-lte-640px-padding)}}

@media (width <= 560px){[data-velar-look~="viewport-width-lte-560px:display"][data-velar-look]{display:var(--velar-look-viewport-width-lte-560px-display)}}

[data-velar-look~="hover:border-color"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:hover){border-color:var(--velar-look-hover-border-color)}

[data-velar-look~="base:text-align"]{text-align:var(--velar-look-base-text-align)}

[data-velar-look~="base:overflow-wrap"]{overflow-wrap:var(--velar-look-base-overflow-wrap)}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:width"][data-velar-look]{width:var(--velar-look-viewport-width-lte-600px-width)}}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:height"][data-velar-look]{height:var(--velar-look-viewport-width-lte-600px-height)}}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:left"][data-velar-look]{left:var(--velar-look-viewport-width-lte-600px-left)}}

@media (width <= 600px){[data-velar-look~="viewport-width-lte-600px:top"][data-velar-look]{top:var(--velar-look-viewport-width-lte-600px-top)}}

[data-velar-look~="base:position"]{position:var(--velar-look-base-position)}

[data-velar-look~="base:inset"]{inset:var(--velar-look-base-inset)}

[data-velar-look~="base:overflow"]{overflow:var(--velar-look-base-overflow)}

[data-velar-look~="base:color"]{color:var(--velar-look-base-color)}

[data-velar-look~="base:background-color"]{background-color:var(--velar-look-base-background-color)}

[data-velar-look~="base:font-family"]{font-family:var(--velar-look-base-font-family)}

[data-velar-look~="base:display"]{display:var(--velar-look-base-display)}

[data-velar-look~="base:width"]{width:var(--velar-look-base-width)}

[data-velar-look~="base:height"]{height:var(--velar-look-base-height)}

[data-velar-look~="base:cursor"]{cursor:var(--velar-look-base-cursor)}

[data-velar-look~="base:touch-action"]{touch-action:var(--velar-look-base-touch-action)}

[data-velar-look~="base:z-index"]{z-index:var(--velar-look-base-z-index)}

[data-velar-look~="base:top"]{top:var(--velar-look-base-top)}

[data-velar-look~="base:right"]{right:var(--velar-look-base-right)}

[data-velar-look~="base:place-items"]{place-items:var(--velar-look-base-place-items)}

[data-velar-look~="base:border"]{border:var(--velar-look-base-border)}

[data-velar-look~="base:border-radius"]{border-radius:var(--velar-look-base-border-radius)}

[data-velar-look~="base:pointer-events"]{pointer-events:var(--velar-look-base-pointer-events)}

[data-velar-look~="base:font-size"]{font-size:var(--velar-look-base-font-size)}

[data-velar-look~="base:font-weight"]{font-weight:var(--velar-look-base-font-weight)}

[data-velar-look~="base:text-shadow"]{text-shadow:var(--velar-look-base-text-shadow)}

[data-velar-look~="base:left"]{left:var(--velar-look-base-left)}

[data-velar-look~="base:bottom"]{bottom:var(--velar-look-base-bottom)}

[data-velar-look~="base:justify-items"]{justify-items:var(--velar-look-base-justify-items)}

[data-velar-look~="base:gap"]{gap:var(--velar-look-base-gap)}

[data-velar-look~="base:padding"]{padding:var(--velar-look-base-padding)}

[data-velar-look~="base:box-sizing"]{box-sizing:var(--velar-look-base-box-sizing)}

[data-velar-look~="base:border-color"]{border-color:var(--velar-look-base-border-color)}

[data-velar-look~="base:outline"]{outline:var(--velar-look-base-outline)}

[data-velar-look~="base:outline-offset"]{outline-offset:var(--velar-look-base-outline-offset)}

[data-velar-look~="base:margin"]{margin:var(--velar-look-base-margin)}

[data-velar-look~="base:padding-bottom"]{padding-bottom:var(--velar-look-base-padding-bottom)}

[data-velar-look~="base:max-width"]{max-width:var(--velar-look-base-max-width)}

[data-velar-look~="backdrop:base:background-color"]::backdrop{background-color:var(--velar-look-backdrop-base-background-color)}

[data-velar-look~="backdrop:base:backdrop-filter"]::backdrop{backdrop-filter:var(--velar-look-backdrop-base-backdrop-filter)}

[data-velar-look~="base:line-height"]{line-height:var(--velar-look-base-line-height)}

[data-velar-look~="base:align-items"]{align-items:var(--velar-look-base-align-items)}

[data-velar-look~="base:justify-content"]{justify-content:var(--velar-look-base-justify-content)}

[data-velar-look~="base:flex-wrap"]{flex-wrap:var(--velar-look-base-flex-wrap)}

[data-velar-look~="base:padding-top"]{padding-top:var(--velar-look-base-padding-top)}

[data-velar-look~="base:clip-path"]{clip-path:var(--velar-look-base-clip-path)}

[data-velar-look~="base:white-space"]{white-space:var(--velar-look-base-white-space)}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:top"][data-velar-look]{top:var(--velar-look-viewport-width-lte-640px-top)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:right"][data-velar-look]{right:var(--velar-look-viewport-width-lte-640px-right)}}

@media (width <= 560px){[data-velar-look~="viewport-width-lte-560px:width"][data-velar-look]{width:var(--velar-look-viewport-width-lte-560px-width)}}

@media (width <= 560px){[data-velar-look~="viewport-width-lte-560px:height"][data-velar-look]{height:var(--velar-look-viewport-width-lte-560px-height)}}

@media (width <= 360px){[data-velar-look~="viewport-width-lte-360px:width"][data-velar-look]{width:var(--velar-look-viewport-width-lte-360px-width)}}

@media (width <= 360px){[data-velar-look~="viewport-width-lte-360px:height"][data-velar-look]{height:var(--velar-look-viewport-width-lte-360px-height)}}

@media (width <= 520px){[data-velar-look~="viewport-width-lte-520px:display"][data-velar-look]{display:var(--velar-look-viewport-width-lte-520px-display)}}

@media (width <= 640px){[data-velar-look~="viewport-width-lte-640px:display"][data-velar-look]{display:var(--velar-look-viewport-width-lte-640px-display)}}

[data-velar-look~="active:cursor"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:active){cursor:var(--velar-look-active-cursor)}

[data-velar-look~="hover:background-color"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:hover){background-color:var(--velar-look-hover-background-color)}

[data-velar-look~="focus-visible:outline"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:focus-visible){outline:var(--velar-look-focus-visible-outline)}

[data-velar-look~="focus-visible:outline-offset"][data-velar-look][data-velar-look][data-velar-look][data-velar-look]:where(:focus-visible){outline-offset:var(--velar-look-focus-visible-outline-offset)}

/* Native starting styles and discrete display transitions for closing dialogs. */
[data-app] button, [data-app] a, [data-app] input, [data-app] select {
  -webkit-tap-highlight-color: transparent;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease,
    box-shadow 180ms ease, opacity 180ms ease, filter 180ms ease, transform 160ms ease;
}
[data-app] button:active:not(:disabled) { transform: scale(.975); }
[data-app] button:focus:not(:focus-visible) { outline: none; }
[data-app] input::placeholder { color: rgba(246,246,242,.46); }
[data-app] option { background: #252525; color: #f6f6f2; }
[data-preset]:hover { transform: translateY(-3px); }
[data-preset] img { transition: filter 240ms ease; }
[data-preset][aria-pressed="false"] img { filter: brightness(.85); }
[data-preset][aria-pressed="true"] img { filter: brightness(1); }

[data-advanced-wrap] {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 240ms ease, opacity 180ms ease;
}
[data-advanced-wrap][data-expanded="true"] { grid-template-rows: 1fr; opacity: 1; }
[data-advanced-wrap] > div { min-height: 0; overflow: hidden; }
[data-advanced-settings] > :last-child { transition: transform 220ms ease; }
[data-advanced-settings][aria-expanded="true"] > :last-child { transform: rotate(180deg); }

[data-app] dialog {
  opacity: 0;
  transform: translateY(10px) scale(.985);
  transition: opacity 180ms ease, transform 220ms ease, display 220ms allow-discrete, overlay 220ms allow-discrete;
}
[data-app] dialog[open] { opacity: 1; transform: translateY(0) scale(1); }
[data-app] dialog::backdrop {
  opacity: 0;
  transition: opacity 200ms ease, display 220ms allow-discrete, overlay 220ms allow-discrete;
}
[data-app] dialog[open]::backdrop { opacity: 1; }
[data-world-settings-panel] {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 180ms ease, transform 220ms ease, display 220ms allow-discrete;
}
[data-world-settings-panel][hidden] { display: none; opacity: 0; transform: translateY(8px); }
@starting-style {
  [data-app] dialog[open] { opacity: 0; transform: translateY(10px) scale(.985); }
  [data-app] dialog[open]::backdrop { opacity: 0; }
  [data-world-settings-panel]:not([hidden]) { opacity: 0; transform: translateY(8px); }
}
@media (prefers-reduced-motion: reduce) {
  [data-app] *, [data-app] *::backdrop { transition-duration: 0s !important; animation-duration: 0s !important; }
  [data-preset]:hover, [data-app] button:active:not(:disabled) { transform: none; }
}

[data-world-loading] {
  opacity: 1;
  transition: opacity 420ms ease, display 420ms allow-discrete;
}
[data-world-loading][hidden] { display: none; opacity: 0; pointer-events: none; }
[data-loading-flow] { animation: world-loading-flow 1.35s ease-in-out infinite; }
[data-world-loading][hidden] [data-loading-flow] { animation-play-state: paused; }
@keyframes world-loading-flow {
  0% { transform: translateX(-110%); }
  100% { transform: translateX(190%); }
}
@starting-style {
  [data-world-loading][data-animate-in="true"]:not([hidden]) { opacity: 0; }
}
[data-screen="world"] [data-voxel-canvas] { transition: opacity 500ms ease; }
[data-screen="world"][data-world-revealed="false"] [data-voxel-canvas] { opacity: 0; }
[data-screen="world"][data-world-revealed="true"] [data-voxel-canvas] { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  [data-world-loading], [data-voxel-canvas] { transition-duration: 0s !important; }
  [data-loading-flow] { animation: none; width: 100%; opacity: .7; }
}

[data-setting][type="range"] { appearance: none; height: 18px; background: transparent; }
[data-setting][type="range"]::-webkit-slider-runnable-track { height: 4px; border-radius: 2px; background: rgba(246,246,242,.2); }
[data-setting][type="range"]::-moz-range-track { height: 4px; border-radius: 2px; background: rgba(246,246,242,.2); }
[data-setting][type="range"]::-webkit-slider-thumb {
  appearance: none; width: 13px; height: 13px; margin-top: -4.5px;
  border-radius: 50%; border: 1px solid rgba(246,246,242,.5); background: #739264;
}
[data-setting][type="range"]::-moz-range-thumb {
  width: 13px; height: 13px; border-radius: 50%; border: 1px solid rgba(246,246,242,.5); background: #739264;
}
[data-setting][type="range"]:focus-visible { outline: 2px solid #739264; outline-offset: 3px; border-radius: 4px; }

[data-landscape-notice] { display: none; }
@media (pointer: coarse) and (orientation: portrait) {
  [data-landscape-notice] {
    position: absolute; inset: 0; z-index: 10; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 18px; padding: 24px;
    color: #f6f6f2; background: rgba(32,32,32,.96); text-align: center;
  }
  [data-landscape-notice] h2, [data-landscape-notice] p { margin: 0; }
  [data-landscape-notice] p { color: rgba(246,246,242,.7); font-size: .9rem; }
  [data-phone-glyph] { display: block; width: 54px; height: 30px; border: 2px solid currentColor; border-radius: 6px; margin-bottom: 10px; }
}
@media (max-height: 600px) and (orientation: landscape) {
  [data-app] { min-height: 0; }
  [data-app]:not([data-screen="world"]) > header { padding: 12px 24px; }
  [data-screen="create-world"] > main {
    grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr);
    align-content: start; align-items: start; padding: 76px 24px 24px; gap: 24px;
  }
  [data-screen="create-world"] h1 { font-size: 2.3rem; }
  [data-preset] { grid-template-rows: 70px auto; }
  [data-create-world-form] { gap: 12px; padding: 18px; }
  [data-settings-dialog] { max-height: 92dvh; max-width: 90vw; }
  [data-game-settings] > header { padding: 12px 20px; }
  [data-game-settings] > nav { padding: 0 16px 10px; }
  [data-game-settings] > footer { padding: 10px 20px; }
  [data-world-carousel], [data-empty-worlds] { bottom: 22px; gap: 10px; }
  [data-world-carousel] h1, [data-empty-worlds] h1 { font-size: 2.6rem; }
}

[data-touch-controls] { display: none; }
@media (pointer: coarse) {
  [data-world-chrome] { top: max(10px, env(safe-area-inset-top)); left: auto; right: max(12px, env(safe-area-inset-right)); }
  [data-creative-slot] { width: clamp(36px, 6vw, 48px); height: clamp(36px, 6vw, 48px); pointer-events: auto; touch-action: none; }
}
@media (pointer: coarse) and (orientation: landscape) {
  [data-minimap] { width: min(136px, 32dvh); height: min(136px, 32dvh); top: max(12px, env(safe-area-inset-top)); right: auto; left: max(14px, env(safe-area-inset-left)); }
  [data-world-ready="true"] [data-touch-controls] { display: block; }
  [data-touch-controls] {
    --pad-size: clamp(132px, 40dvh, 208px);
    position: absolute; inset: 0; z-index: 4; pointer-events: none;
    user-select: none; -webkit-user-select: none; -webkit-touch-callout: none;
  }
  [data-touch-move] {
    position: absolute; bottom: max(16px, env(safe-area-inset-bottom));
    left: max(18px, env(safe-area-inset-left)); width: var(--pad-size); height: var(--pad-size);
    pointer-events: auto; touch-action: none;
  }
  [data-touch-controls] img { display: block; width: 100%; height: 100%; pointer-events: none; }
  [data-touch-controls] button { appearance: none; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; touch-action: none; }
  [data-app] [data-touch-controls] button:active { transform: none; }
  [data-touch-direction] { position: absolute; inset: 0; width: 100%; height: 100%; }
  [data-touch-direction][data-pressed="true"] { background: url('/generated/controls/MoveRose_Pressed.png') center / contain no-repeat; }
  [data-touch-direction="KeyW"] { clip-path: polygon(0 0, 100% 0, 50% 50%); }
  [data-touch-direction="KeyA"] { clip-path: polygon(0 0, 50% 50%, 0 100%); }
  [data-touch-direction="KeyS"] { clip-path: polygon(0 100%, 50% 50%, 100% 100%); }
  [data-touch-direction="KeyD"] { clip-path: polygon(100% 0, 100% 100%, 50% 50%); }
  [data-touch-direction="Space"] { clip-path: circle(14.3% at 50% 50%); }
  [data-screen="world"]:has(dialog[open]) [data-touch-controls] { visibility: hidden; }
}

[data-touch-controls] [data-touch-inventory] {
  pointer-events: auto;
  position: absolute;
  right: 14px;
  top: 62px;
  width: 40px;
  height: 40px;
  border: 1px solid #ffffff55;
  border-radius: 6px;
  background: #15151566;
  color: white;
  display: grid;
  place-items: center;
  touch-action: manipulation;
}

