body { padding: 0; margin: 0 }
#unity-container { position: absolute }
#unity-container.unity-desktop { left: 50%; top: 50%; transform: translate(-50%, -50%) }
#unity-container.unity-mobile { position: fixed; width: 100%; height: 100% }
#unity-canvas { background: #231F20 }
.unity-mobile #unity-canvas { width: 100%; height: 100% }
#unity-loading-bar { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none }
#unity-logo { width: 154px; height: 130px; background: url('unity-logo-dark.png') no-repeat center }
#unity-progress-bar-empty { width: 141px; height: 18px; margin-top: 10px; margin-left: 6.5px; background: url('progress-bar-empty-dark.png') no-repeat center }
#unity-progress-bar-full { width: 0%; height: 18px; margin-top: 10px; background: url('progress-bar-full-dark.png') no-repeat center }
#unity-footer { position: relative }
.unity-mobile #unity-footer { display: none }
#unity-webgl-logo { float:left; width: 204px; height: 38px; background: url('webgl-logo.png') no-repeat center }
#unity-build-title { float: right; margin-right: 10px; line-height: 38px; font-family: arial; font-size: 18px }
#unity-fullscreen-button { cursor:pointer; float: right; width: 38px; height: 38px; background: url('fullscreen-button.png') no-repeat center }
#unity-warning { position: absolute; left: 50%; top: 5%; transform: translate(-50%); background: white; padding: 10px; display: none }

/* TOY_LANDSCAPE_LAYOUT */
html, body {
  width:100%; height:100%; margin:0; overflow:hidden; background:#111;
  overscroll-behavior:none; touch-action:none;
}
#unity-container, #unity-container.unity-desktop, #unity-container.unity-mobile {
  position:fixed!important; inset:0!important; width:100vw!important; height:100vh!important;
  height:100dvh!important; padding:var(--toy-safe-top,0px) var(--toy-safe-right,0px)
    var(--toy-safe-bottom,0px) var(--toy-safe-left,0px); box-sizing:border-box;
  transform:none!important; display:flex; align-items:center; justify-content:center;
}
#unity-canvas, .unity-mobile #unity-canvas {
  /* Keep Unity's 16:9 render area intact. Filling an arbitrary Toy viewport
     by stretching the canvas distorts all screen-space UI. */
  width:auto!important; height:auto!important; max-width:100%; max-height:100%;
  aspect-ratio:16 / 9; object-fit:contain; flex:0 0 auto;
}
#unity-footer { position:absolute; right:0; bottom:0; }
#unity-webgl-logo, #unity-build-title { display:none!important; }
#unity-loading-bar { width:min(78vw, 520px); text-align:center; color:#f7f8fb; }
#unity-logo { display:none!important; }
.toy-loading-title { margin-bottom:10px; color:#ffd34d; font:700 34px/1.2 "Microsoft YaHei","Noto Sans CJK SC",sans-serif; letter-spacing:0; white-space:nowrap; text-shadow:0 2px 3px rgba(0,0,0,.65); }
.toy-loading-status { margin-bottom:22px; color:#c9d0dd; font:400 18px/1.4 "Microsoft YaHei","Noto Sans CJK SC",sans-serif; letter-spacing:0; white-space:nowrap; text-shadow:0 1px 2px rgba(0,0,0,.7); }
.toy-loading-progress { display:flex; align-items:center; gap:12px; }
#unity-progress-bar-empty { width:100%; height:14px; margin:0; padding:3px; box-sizing:border-box;
  border:1px solid #657087; border-radius:2px; background:#202838; }
#unity-progress-bar-full { height:100%; margin:0; background:#ffd34d; box-shadow:0 0 10px rgba(255,211,77,.55); }
#toy-loading-percent { width:46px; color:#ffd34d; font:700 18px/1 "Microsoft YaHei","Noto Sans CJK SC",sans-serif; text-align:right; }
#toy-orientation-guard { display:none; position:fixed; inset:0; z-index:1000; padding:32px; box-sizing:border-box;
  align-items:center; justify-content:center; text-align:center; background:#111; color:#fff; font:700 20px/1.5 Arial,sans-serif; }
#toy-orientation-guard button { margin-top:18px; min-width:180px; min-height:52px; border:0; border-radius:4px;
  background:#ffcf22; color:#111; font:700 18px Arial,sans-serif; }
html.toy-orientation-fallback #toy-orientation-guard { display:flex; }
