/* Forged fortress controls v16. Paint only; the existing DOM owns every action,
   hit target, layout, native scroll and input state. Load after all v15 skins. */
:root {
  --ui16-button-material:url('/resource/ui/title-lobby-v16/runtime/button-material-v16.webp');
  --ui16-control-material:url('/resource/ui/title-lobby-v16/runtime/control-material-v16.webp');
  --ui16-frame:url('/resource/ui/title-lobby-v16/runtime/frame-forged-v16.svg');
  --ui16-silver-frame:url('/resource/ui/title-lobby-v16/runtime/frame-silver-v16.svg');
  --ui16-ink:#fff4dc;
  --ui16-muted:#c7cec9;
  --ui16-gold:#efd59c;
  --ui16-ready:#b9eedb;
  --ui16-tint-top:rgba(23,43,53,.44);
  --ui16-tint-bottom:rgba(6,20,28,.64);
  --ui16-bevel:var(--ui16-silver-frame);
}
body .game-viewport[data-layout][data-title-lobby-v15] button:not(.hero-detail):not(.advice-copy):not(.lobby-nav button),
body #detail-dialog button,
body .game-viewport[data-layout][data-title-lobby-v15] button#target-choice,
body.game-interface[data-button-quality='v15'] :is(button,.lobby-link,.login-notice a):not(.thumb-skill):not(.thumb-auto):not(.virtual-joystick),
body :is(.locale-picker-option,.locale-load-retry button) {
  --ui16-face:linear-gradient(180deg,rgba(229,244,227,.12),transparent 43%,rgba(2,9,15,.34)),linear-gradient(135deg,var(--ui16-tint-top),var(--ui16-tint-bottom)),var(--ui16-button-material);
  min-height:48px;
  box-sizing:border-box;
  border:1px solid transparent!important;
  border-image:var(--ui16-bevel) 20 / 7px / 0 stretch!important;
  border-radius:0;
  background-color:#1b303b!important;
  background-image:var(--ui16-face)!important;
  background-size:100% 100%,100% 100%,100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  color:var(--ui16-ink)!important;
  opacity:1;
  text-shadow:0 1px 1px #030a0f,0 2px 3px #030a0f99;
  box-shadow:inset 0 1px 0 #e9f7ed25,inset 0 -3px 0 #030a125e,0 3px 0 #060d15,0 5px 9px #0006;
  font-weight:750;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:box-shadow 120ms ease,color 120ms ease;
}
body .game-viewport[data-layout][data-title-lobby-v15] :is(.start-cta,.solo-button),
body #detail-dialog .dialog-button:not(.secondary):not(.danger):not(.ui15-action-row),
body.game-interface[data-button-quality='v15'] :is(#battle-start,#battle-retry,#test-start,#test-quick-start,#result-restart) {
  --ui16-bevel:var(--ui16-frame);
  --ui16-tint-top:rgba(109,37,39,.38);
  --ui16-tint-bottom:rgba(60,12,21,.69);
  box-shadow:inset 0 1px 0 #fff0bd36,inset 0 -3px 0 #2507118c,0 3px 0 #210b15,0 5px 12px #0007;
}
body .game-viewport[data-layout][data-title-lobby-v15] :is(.coop-button,.title-sign-in),
body #detail-dialog .dialog-button.secondary,
body.game-interface[data-button-quality='v15'] :is(#battle-sync,#battle-return,.lobby-link,.login-notice a) {
  --ui16-bevel:var(--ui16-frame);
  --ui16-tint-top:rgba(26,87,88,.35);
  --ui16-tint-bottom:rgba(5,41,49,.63);
}
body #detail-dialog :is(.dialog-button.danger,.destructive,[data-action='logout'],[data-action='room-leave']),
body.game-interface[data-button-quality='v15'] #battle-confirm-accept-v15 {
  --ui16-tint-top:rgba(126,46,43,.49);
  --ui16-tint-bottom:rgba(56,20,28,.73);
  --ui16-bevel:var(--ui16-frame);
  color:#ffddd0!important;
}
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button:is([aria-pressed='true'],[aria-expanded='true'],.selected),
body.game-interface[data-button-quality='v15'] button:is([aria-pressed='true'],[aria-expanded='true'],.selected):not(.thumb-auto):not(.thumb-skill) {
  --ui16-bevel:var(--ui16-frame);
  --ui16-tint-top:rgba(70,79,63,.42);
  --ui16-tint-bottom:rgba(18,40,39,.62);
  color:#fff8e2!important;
  box-shadow:inset 0 -3px 0 #d5b575,0 3px 0 #060d15,0 5px 9px #0006!important;
}
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button:disabled,
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button[aria-disabled='true'],
body.game-interface[data-button-quality='v15'] button:disabled:not(.thumb-auto):not(.thumb-skill),
body.game-interface[data-button-quality='v15'] button[aria-disabled='true']:not(.thumb-auto):not(.thumb-skill) {
  --ui16-bevel:var(--ui16-silver-frame);
  --ui16-tint-top:rgba(27,37,42,.68);
  --ui16-tint-bottom:rgba(14,25,31,.8);
  color:var(--ui16-muted)!important;
  opacity:1!important;
  filter:none!important;
  box-shadow:inset 0 -2px 0 #030b124f,0 2px 0 #050c12!important;
}
body #detail-dialog[data-ui15-navigation] button.ui15-action-row:disabled {
  border-image-source:var(--ui16-silver-frame)!important;
  color:var(--ui16-muted)!important;
}
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button[aria-busy='true'],
body.game-interface[data-button-quality='v15'] button[aria-busy='true']:not(.thumb-auto):not(.thumb-skill) {
  --ui16-bevel:var(--ui16-frame);
  box-shadow:inset 0 -3px 0 #b9eedb,0 3px 0 #060d15,0 0 9px #b9eedb33!important;
}
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button:focus-visible,
body.game-interface[data-button-quality='v15'] :is(button,.lobby-link,.virtual-joystick):focus-visible {
  outline:3px solid #ffdfa1;
  outline-offset:3px;
}
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button:active:not(:disabled):not([aria-disabled='true']),
body.game-interface[data-button-quality='v15'] :is(button,.lobby-link):active:not(:disabled):not(.thumb-auto):not(.thumb-skill) {
  box-shadow:inset 0 3px 8px #0309108c,inset 0 -1px 0 #e1c18370,0 1px 0 #060d15!important;
  color:#fffbe9!important;
}
/* Navigation keeps its six existing slots. Illustrated crests occupy the same
   svg boxes; no extra DOM, focus target or intercepted touch is introduced. */
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav {
  background:linear-gradient(180deg,#31424a,#111e29 60%,#0a131d)!important;
  border-top-color:#d8bd83;
  box-shadow:inset 0 1px #f9e6b644,0 -3px 16px #02070c8c;
}
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav button {
  border-image:none!important;
  color:#eee3cd;
  background:linear-gradient(180deg,#6d818213,#020a1210)!important;
  box-shadow:inset -1px 0 #e7e7bd12;
  text-shadow:0 1px 2px #040b12;
}
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav button[aria-current] {
  background:linear-gradient(180deg,#7d755739,#b5965240)!important;
  color:#fff4d6;
  box-shadow:inset 0 2px #f0d7a2,inset 0 -3px #cfa968,0 0 14px #d9b8781c;
}
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav button > svg.icon {
  background:var(--ui16-nav-icon) center/contain no-repeat;
  filter:drop-shadow(0 2px 2px #000a);
}
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav button > svg.icon use { visibility:hidden; }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='characters'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-characters-v16.svg'); }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='equipment'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-equipment-v16.svg'); }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='base'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-base-v16.svg'); }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='codex'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-codex-v16.svg'); }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='shop'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-shop-v16.svg'); }
body .game-viewport[data-layout][data-title-lobby-v15] .lobby-nav [data-dialog='social'] { --ui16-nav-icon:url('/resource/ui/title-lobby-v16/runtime/nav-social-v16.svg'); }
body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) :is(button>.icon,button .ui15-row-icon) { filter:drop-shadow(0 1px 0 #f7edbc38) drop-shadow(0 2px 2px #02090fb8); }
@media(hover:hover) and (pointer:fine) {
  body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button:hover:not(:disabled):not([aria-disabled='true']),
  body.game-interface[data-button-quality='v15'] :is(button,.lobby-link):hover:not(:disabled):not(.thumb-auto):not(.thumb-skill) {
    box-shadow:inset 0 0 0 1px #e9e6ca4d,inset 0 -2px #dbc78b55,0 3px 0 #060d15,0 6px 12px #0007!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body :is(.game-viewport[data-layout][data-title-lobby-v15],#detail-dialog) button,
  body.game-interface[data-button-quality='v15'] :is(button,.lobby-link) { transition:none!important; }
}
