/* V15: Logan is the single title hero. Atmosphere decorates the existing world art.
 * Every effect is inert. Full-body illustration keeps its shape and floor anchor. */
#game-viewport[data-title-lobby-v15] #start-screen { isolation:isolate; }
#game-viewport[data-title-lobby-v15] #start-screen .start-backdrop { overflow:hidden; }
#game-viewport[data-title-lobby-v15] #start-screen .start-backdrop::before {
  inset:-16px -20px; pointer-events:none;
  background-image:linear-gradient(0deg,rgba(9,14,20,.91),rgba(11,18,24,.08) 48%,rgba(11,18,24,.17)),var(--oa-title-background);
  transform:scale(1.015); transform-origin:50% 58%;
}
#game-viewport[data-title-lobby-v15] #start-screen .start-backdrop::after {
  background:radial-gradient(ellipse at 51% 44%,transparent 14%,rgba(4,8,13,.18) 58%,rgba(4,8,13,.54) 100%);
}
#game-viewport[data-title-lobby-v15] #start-screen .start-brand {
  position:relative; text-shadow:0 2px 0 #41301b,0 5px 16px rgba(0,0,0,.8);
}
#game-viewport[data-title-lobby-v15] #start-screen .start-brand h1 {
  color:#fff0cc; text-wrap:balance;
  text-shadow:0 1px 0 #a17a43,0 3px 0 #463523,0 5px 16px rgba(0,0,0,.92);
}
#game-viewport[data-title-lobby-v15] #start-screen .start-brand p {
  color:#f0d6a5; letter-spacing:.06em;
}
#game-viewport[data-title-lobby-v15] #start-screen .brand-crest {
  filter:drop-shadow(0 0 12px rgba(239,192,107,.28));
}
#game-viewport[data-title-lobby-v15] #start-screen .start-brand::after {
  content:""; display:block; width:min(170px,60%); height:1px; margin:10px auto 0;
  background:linear-gradient(90deg,transparent,#ac8047 24%,#fff1be 50%,#ac8047 76%,transparent);
  box-shadow:0 1px 7px rgba(232,182,96,.22); pointer-events:none;
}
#game-viewport[data-title-lobby-v15] #start-screen .title-cast { isolation:isolate; }
#game-viewport[data-title-lobby-v15] #start-screen .title-cast>picture {
  z-index:2; transform-origin:50% 100%;
}
#game-viewport[data-title-lobby-v15] #start-screen .title-cast>picture>img {
  box-sizing:border-box; padding:7px 5px 0; transform-origin:50% 100%;
  filter:drop-shadow(0 6px 8px rgba(3,7,12,.72));
}
#game-viewport[data-title-lobby-v15] #start-screen :is(.start-brand,.title-cast,.start-actions) {
  /* Replaces the V12 delayed action reveal; actions remain visible from first paint. */
  animation:none!important;
}
#game-viewport[data-title-lobby-v15] #start-screen .start-actions { opacity:1; transform:none!important; }
#game-viewport[data-title-lobby-v15] #start-screen .title-atmosphere-v15 {
  position:absolute; inset:0; z-index:0; overflow:hidden; contain:layout paint;
  pointer-events:none!important; user-select:none;
}
.title-atmosphere-v15 *,.title-hero-light-v15 * { pointer-events:none!important; }
.title-atmosphere-v15 .title-light-v15 {
  position:absolute; width:72%; height:100%; left:15%; top:-25%;
  transform:rotate(-15deg); transform-origin:50% 0;
  background:linear-gradient(112deg,transparent 22%,rgba(255,220,155,.025) 31%,rgba(255,230,170,.18) 37%,rgba(255,237,189,.035) 45%,transparent 53%);
  opacity:.76;
}
.title-atmosphere-v15 .title-light-v15:nth-child(2) {
  left:33%; width:55%; transform:rotate(15deg); opacity:.48;
}
.title-atmosphere-v15 .title-horizon-v15 {
  position:absolute; left:0; right:0; top:26%; height:40%;
  background:radial-gradient(ellipse at 50% 50%,rgba(250,195,101,.22),rgba(232,175,95,.045) 40%,transparent 68%);
}
.title-atmosphere-v15 .title-mist-v15 {
  position:absolute; left:-30%; bottom:12%; width:160%; height:26%;
  background:radial-gradient(ellipse at 25% 68%,rgba(147,177,187,.13),transparent 38%),radial-gradient(ellipse at 75% 58%,rgba(205,207,186,.1),transparent 43%);
  opacity:.8; transform:translateX(-2%);
}
.title-atmosphere-v15 .title-mist-v15.title-mist-near-v15 {
  bottom:4%; height:18%; opacity:.6;
  background:radial-gradient(ellipse at 32% 50%,rgba(155,174,180,.13),transparent 44%),radial-gradient(ellipse at 70% 70%,rgba(205,186,149,.13),transparent 38%);
}
.title-atmosphere-v15 .title-ember-v15 {
  position:absolute; left:var(--x); bottom:var(--y); width:var(--s); height:var(--s);
  border-radius:50%; background:#f3d297; opacity:0;
  box-shadow:0 0 5px rgba(255,220,162,.65); transform:translate3d(0,0,0);
}
.title-atmosphere-v15 .title-ember-v15:nth-child(3n) { background:#b9d5e7; box-shadow:0 0 5px rgba(173,212,239,.45); }
#game-viewport[data-title-lobby-v15] #start-screen .title-hero-light-v15 {
  position:absolute; inset:0; z-index:0; pointer-events:none; overflow:visible;
}
.title-hero-light-v15 .title-hero-aura-v15 {
  position:absolute; left:7%; right:7%; top:7%; bottom:0;
  background:radial-gradient(ellipse at 50% 48%,rgba(250,221,156,.23),rgba(150,185,211,.055) 41%,transparent 66%);
}
.title-hero-light-v15 .title-floor-v15 {
  position:absolute; left:13%; width:74%; height:13%; bottom:-1px;
  background:radial-gradient(ellipse at 50% 62%,rgba(4,7,11,.7) 0%,rgba(5,8,12,.65) 18%,rgba(191,158,94,.19) 32%,transparent 69%);
}
.title-hero-light-v15 .title-floor-rune-v15 {
  position:absolute; width:72%; left:14%; bottom:0; height:11%; overflow:visible;
  color:#d8b778; opacity:.42;
}
.title-hero-light-v15 .title-hero-rim-v15 {
  position:absolute; width:42%; left:29%; height:84%; top:5%;
  background:radial-gradient(ellipse at 43% 42%,rgba(255,231,172,.105),transparent 69%);
}
.title-atmosphere-v15 .title-arrival-light-v15 {
  position:absolute; left:-15%; top:-20%; width:130%; height:100%; opacity:0;
  background:linear-gradient(115deg,transparent 34%,rgba(255,232,175,.11) 44%,rgba(255,236,188,.19) 48%,transparent 59%);
  transform:translateX(-9%); pointer-events:none;
}
/* No animation frame loop, canvas, animated blur/filter, video or network effect assets. */
@media (prefers-reduced-motion:no-preference) {
  #game-viewport[data-title-lobby-v15][data-title-motion-ready] #start-screen .start-backdrop::before {
    animation:ui15-title-world 24s ease-in-out infinite alternate;
  }
  #game-viewport[data-title-lobby-v15][data-title-motion-ready] #start-screen .title-cast>picture>img {
    animation:ui15-title-idle 5.6s ease-in-out infinite;
  }
  [data-title-motion-ready] .title-light-v15 { animation:ui15-title-light 13s ease-in-out infinite alternate; }
  [data-title-motion-ready] .title-light-v15:nth-child(2) { animation-duration:17s; animation-delay:-6s; }
  [data-title-motion-ready] .title-horizon-v15 { animation:ui15-title-horizon 9s ease-in-out infinite alternate; }
  [data-title-motion-ready] .title-mist-v15 { animation:ui15-title-mist 18s ease-in-out infinite alternate; }
  [data-title-motion-ready] .title-mist-near-v15 { animation-duration:14s; animation-direction:alternate-reverse; }
  [data-title-motion-ready] .title-ember-v15 { animation:ui15-title-ember var(--duration) var(--delay) linear infinite; }
  [data-title-motion-ready] .title-floor-rune-v15 { animation:ui15-title-rune 7s ease-in-out infinite alternate; }
  #game-viewport[data-title-motion-ready] #start-screen[data-title-reveal="active"] .start-brand { animation:ui15-title-brand 850ms ease-out both!important; }
  #game-viewport[data-title-motion-ready] #start-screen[data-title-reveal="active"] .title-cast>picture { animation:ui15-title-hero 1100ms ease-out both; }
  [data-title-motion-ready] #start-screen[data-title-reveal="active"] .title-arrival-light-v15 { animation:ui15-title-arrival 1350ms ease-out both; }
}
#game-viewport[data-title-lobby-v15] #start-screen[data-title-effects="paused"] :is(.title-atmosphere-v15 *,.title-hero-light-v15 *,.title-cast>picture,.title-cast>picture>img,.start-brand),
#game-viewport[data-title-lobby-v15] #start-screen[data-title-effects="paused"] .start-backdrop::before { animation-play-state:paused!important; }
#game-viewport[data-title-lobby-v15] #start-screen[data-title-motion="off"] :is(.title-atmosphere-v15 *,.title-hero-light-v15 *,.title-cast>picture,.title-cast>picture>img,.start-brand),
#game-viewport[data-title-lobby-v15] #start-screen[data-title-motion="off"] .start-backdrop::before {
  animation:none!important;
}
#game-viewport[data-title-lobby-v15] #start-screen[data-title-motion="off"] .title-ember-v15 { display:none; }
#game-viewport[data-title-lobby-v15] #start-screen[data-title-reveal="settled"] .title-cast>picture { opacity:1; transform:none; }
#game-viewport[data-title-lobby-v15] #start-screen[data-title-reveal="settled"] .start-brand { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) {
  #game-viewport[data-title-lobby-v15] #start-screen :is(.title-atmosphere-v15 *,.title-hero-light-v15 *,.title-cast>picture,.title-cast>picture>img,.start-brand),
  #game-viewport[data-title-lobby-v15] #start-screen .start-backdrop::before { animation:none!important; }
  .title-atmosphere-v15 .title-ember-v15 { display:none; }
}
@media (orientation:landscape) {
  #game-viewport[data-title-lobby-v15] #start-screen .start-brand::after { margin-inline:0; width:72%; }
  .title-atmosphere-v15 .title-light-v15 { top:-10%; height:125%; left:30%; width:40%; }
  .title-atmosphere-v15 .title-light-v15:nth-child(2) { left:43%; width:28%; }
  .title-atmosphere-v15 .title-horizon-v15 { left:20%; right:20%; top:10%; height:65%; }
  .title-atmosphere-v15 .title-mist-v15 { bottom:8%; height:32%; }
}
@media (orientation:landscape) and (max-height:429px) {
  #game-viewport[data-title-lobby-v15] #start-screen .start-brand::after { margin-top:6px; }
  #game-viewport[data-title-lobby-v15] #start-screen .title-cast>picture>img { padding-top:5px; }
  .title-atmosphere-v15 .title-ember-v15:nth-child(n+14) { display:none; }
}
@keyframes ui15-title-world { from { transform:scale(1.015) translate3d(-4px,1px,0); } to { transform:scale(1.023) translate3d(4px,-2px,0); } }
/* Uniform 0.3% breath and 0.16 degree posture shift: no body deformation or foot translation. */
@keyframes ui15-title-idle { 0%,100% { transform:scale(.997) rotate(-.08deg); } 50% { transform:scale(1) rotate(.08deg); } }
@keyframes ui15-title-light { from { opacity:.42; } to { opacity:.8; } }
@keyframes ui15-title-horizon { from { opacity:.65; transform:scale(.98); } to { opacity:1; transform:scale(1.02); } }
@keyframes ui15-title-mist { from { transform:translate3d(-2%,0,0); } to { transform:translate3d(2%,1%,0); } }
@keyframes ui15-title-ember { 0% { opacity:0; transform:translate3d(0,8px,0); } 18% { opacity:.5; } 68% { opacity:.3; } 100% { opacity:0; transform:translate3d(var(--drift),-95px,0); } }
@keyframes ui15-title-rune { from { opacity:.32; } to { opacity:.54; } }
@keyframes ui15-title-brand { from { opacity:.72; transform:translate3d(0,3px,0); } to { opacity:1; transform:none; } }
@keyframes ui15-title-hero { from { opacity:.6; transform:scale(.991); } to { opacity:1; transform:none; } }
@keyframes ui15-title-arrival { 0% { opacity:0; transform:translateX(-9%); } 24% { opacity:1; } 100% { opacity:0; transform:translateX(9%); } }
