/* B97: authored loading and compact practice tools. Resource progress and
   failure controls remain owned by their original lifecycle controllers. */
/* The arena picture belongs to this actual match; a CSS fallback remains if
   the owner's metadata has not arrived yet. */
html body #skR25FightPreload{background:linear-gradient(180deg,#14171644,#14171626 40%,#141716a8 78%,#141716f5),var(--b97-arena-art,var(--r71-opening-art)) center/cover!important;color:#f1ede3;font-family:var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);overflow:auto;}
html body #skR25FightPreload .r70-loading-scene{min-height:100dvh;height:100dvh;max-width:1920px;margin:0 auto;grid-template-rows:minmax(38px,10vh) minmax(0,1fr) auto;padding:max(16px,3vh,env(safe-area-inset-top)) max(24px,5.5vw,env(safe-area-inset-right)) max(20px,4vh,env(safe-area-inset-bottom)) max(24px,5.5vw,env(safe-area-inset-left));gap:10px;}
html body #skR25FightPreload .r70-loading-heading{align-items:flex-start;padding:0;border:0;font:600 clamp(14px,1.8vw,23px)/1 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);letter-spacing:.18em;color:#c9be9f;z-index:2;}
html body #skR25FightPreload .r70-loading-heading>span:last-child{padding-top:8px;border-bottom:1px solid #bfa367;padding-bottom:14px;}
html body #skR25FightPreload .b97-loading-logo{display:block;width:clamp(90px,14vw,210px);height:clamp(48px,12vh,125px);object-fit:contain;object-position:left top;}
html body #skR25FightPreload .r70-loading-duel{grid-template-columns:minmax(0,1fr) minmax(64px,14%) minmax(0,1fr);gap:0;align-items:stretch;min-height:0;}
html body #skR25FightPreload .r70-loading-duel::before{display:none;}
html body #skR25FightPreload .r70-loading-duel figure{position:relative;overflow:hidden;display:block;min-width:0;min-height:0;height:100%;}
html body #skR25FightPreload .r70-loading-duel img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center bottom;filter:none;mask-image:linear-gradient(#000 78%,#000e 95%,transparent);}
html body #skR25FightPreload .r70-loading-duel figure[data-b97-dummy=true] img{object-fit:contain;mask-image:linear-gradient(#000 80%,transparent);}
html body #skR25FightPreload .r70-loading-duel figcaption{position:absolute;bottom:3%;left:0;right:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:70px;margin:0;padding:10px 18px;border:0;border-left:4px solid #bfa367;background:linear-gradient(90deg,#141716ed,#14171680 80%,transparent);text-align:left;text-shadow:none;color:#f1ede3;font-family:var(--b97-font-display,'Arial Narrow',Arial,sans-serif);}
html body #skR25FightPreload .r70-loading-duel figcaption span{font-size:clamp(15px,2vw,28px);line-height:1.1;letter-spacing:.08em;text-transform:uppercase;}
html body #skR25FightPreload .r70-loading-duel figcaption span:empty{display:none;}
html body #skR25FightPreload .r70-loading-duel figcaption strong{font:700 clamp(25px,3.7vw,58px)/1.06 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);letter-spacing:.005em;text-transform:uppercase;overflow-wrap:normal;word-break:normal;}
html body #skR25FightPreload .r70-loading-vs{align-self:center;display:block;text-align:center;width:auto;height:auto;margin:0;border:0;transform:none;background:none;box-shadow:none;color:#bfa367;font:700 clamp(52px,8.5vw,132px)/1 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);letter-spacing:-.025em;}
html body #skR25FightPreload .r70-loading-vs::after{display:none;}
html body #skR25FightPreload .r70-loading-rail{padding-top:16px;margin-top:0;border-top:1px solid #bfa36755;}
html body #skR25FightPreload .r70-loading-titles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 70px;align-items:center;gap:16px;margin-bottom:12px;}
html body #skR25FightPreload .b97-loading-arena{font:600 clamp(13px,1.7vw,21px)/1.2 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);text-transform:uppercase;letter-spacing:.10em;color:#b8b6ac;}
html body #skR25FightPreload #skR25FightPreloadTitle{font:600 clamp(15px,1.7vw,23px)/1.2 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);letter-spacing:.1em;text-transform:uppercase;color:#f1ede3;text-align:center;margin:0;}
html body #skR25FightPreload #skR25FightPreloadText{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
html body #skR25FightPreload[data-r71-preload-state=error] #skR25FightPreloadText{position:static;width:auto;height:auto;clip-path:none;white-space:normal;font-size:14px;margin:8px 0;color:#f1ede3;}
html body #skR25FightPreload[data-r71-preload-state=error] .r70-loading-titles{grid-template-columns:minmax(0,1fr) 70px;}
html body #skR25FightPreload[data-r71-preload-state=error] .b97-loading-arena{display:none;}
html body #skR25FightPreload[data-r71-preload-state=error] #skR25FightPreloadTitle{text-align:left;}
html body #skR25FightPreload #skR25FightPreloadStats{font:600 clamp(18px,2vw,27px)/1 var(--b97-font-display,'Arial Narrow',Arial,sans-serif);color:#f1ede3;margin:0;}
html body #skR25FightPreload .r70-loading-track{height:4px;border:0;border-radius:0;background:#f1ede328;overflow:hidden;box-shadow:none;}
html body #skR25FightPreload #skR25FightPreloadBar{background:#bfa367;box-shadow:none;border:0;border-radius:0;}
html body #skR25FightPreload .r70-loading-tip{font:400 clamp(12px,1.3vw,17px)/1.25 var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);color:#b8b6ac;margin:12px 0 0;}
html body #skR25FightPreload #skR25FightPreloadActions{margin-top:12px;gap:10px;}
html body #skR25FightPreload #skR25FightPreloadActions button{min-height:44px;border:1px solid #f1ede340;border-radius:0;background:#191c1b;color:#f1ede3;font:600 16px/1.2 var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);box-shadow:none;}
html body #skR25FightPreload #skR25FightPreloadActions button:first-child{background:#bfa367;color:#141716;border-color:#bfa367;}
html body #skR25FightPreload #skR25FightPreloadActions button:focus-visible{outline:2px solid #f1ede3;outline-offset:3px;}
/* Keep optional loading particle canvas behind the portraits but remove its
   atmospheric glow in this deliberate matte treatment. */
#skR25FightPreload #r71-loading-atmosphere{opacity:.12;}
html body #r71-training-tools,html body .r54-training-dock,html body .r54-training-dock[data-r69-guided=true]{position:fixed;left:var(--b97-training-left,24px)!important;top:var(--b97-training-top,140px)!important;right:auto;bottom:auto;transform:none!important;width:var(--b97-training-width,310px)!important;max-width:calc(100vw - 80px);max-height:48vh;min-height:0;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;border:0;border-left:2px solid #bfa367;border-radius:0;background:#141716e8;box-shadow:none;color:#f1ede3;font:500 14px/1.25 var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);overflow:auto;overscroll-behavior:contain;pointer-events:auto;}
html body #r71-training-tools .r71-training-task{grid-column:1/-1;font-size:14px;color:#f1ede3;}
html body #r71-training-tools .r71-training-metrics{grid-column:1/-1;font-size:13px;color:#b8b6ac;}
html body #r71-training-tools .r71-training-detail{grid-column:1/-1;font-size:12px;color:#b8b6ac;}
html body #r71-training-tools:not([data-b97-expanded=true]) :is(.r71-training-metrics,.r71-training-detail){display:none;}
html body #r71-training-tools #r54-school-button{grid-column:1;grid-row:auto;justify-self:start;width:auto;min-width:88px;min-height:36px;padding:6px 10px;border:1px solid #f1ede32b;border-radius:0;background:transparent;color:#f1ede3;font:600 13px/1 var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);box-shadow:none;}
html body .b97-training-toggle,html body .r54-training-dock .b97-training-toggle{position:relative;grid-row:auto;grid-column:2;min-width:52px;min-height:36px;padding:6px 10px;border:1px solid #f1ede32b;border-radius:0;background:transparent;color:#bfa367;font:600 13px/1 var(--b97-font-ui,'Atkinson Hyperlegible Next',Arial,sans-serif);pointer-events:auto;cursor:pointer;}
html body .r54-training-dock :is(.r54-training-current,.r54-training-status,.r69-training-hint){grid-column:1/-1;color:#f1ede3;font-size:14px;}
html body .r54-training-dock .r54-training-current{color:#b8b6ac;font-size:12px;}
html body .r54-training-dock .r69-training-hint{font-size:13px;color:#b8b6ac;}
html body .r54-training-dock button{grid-column:auto;grid-row:auto;min-height:36px;background:transparent;border:1px solid #f1ede32b;border-radius:0;color:#f1ede3;}
html body .r54-training-dock:not([data-b97-expanded=true])>:is(.r69-training-skip,.r70-training-return,.b95-lesson-controls,.b95-guide-return,.r70-training-daily){display:none;}
html body .r54-training-dock[data-r69-progress=complete]>.r69-training-skip,html body .r54-training-dock[data-r69-progress=complete]>.r70-training-return{display:block;}
html body .r54-training-dock:not([data-b97-expanded=true]) .b97-training-toggle{grid-column:2;justify-self:end;}
html body :is(#r71-training-tools,.r54-training-dock) button:focus-visible{outline:2px solid #bfa367;outline-offset:2px;}
@media(max-height:560px) and (orientation:landscape){
 html body #skR25FightPreload .r70-loading-scene{grid-template-rows:32px minmax(0,1fr) auto;padding:max(10px,env(safe-area-inset-top)) max(22px,4vw,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(22px,4vw,env(safe-area-inset-left));gap:4px;}
 html body #skR25FightPreload .b97-loading-logo{width:95px;height:55px;}
 html body #skR25FightPreload .r70-loading-heading{font-size:14px;}
 html body #skR25FightPreload .r70-loading-heading>span:last-child{padding-top:3px;padding-bottom:8px;}
 html body #skR25FightPreload .r70-loading-duel{grid-template-columns:minmax(0,1fr) 13% minmax(0,1fr);}
 html body #skR25FightPreload .r70-loading-vs{font-size:clamp(48px,9vw,85px);}
 html body #skR25FightPreload .r70-loading-duel figcaption{padding:5px 12px;min-height:0;border-left-width:3px;bottom:0;}
 html body #skR25FightPreload .r70-loading-duel figcaption span{font-size:15px;}
 html body #skR25FightPreload .r70-loading-duel figcaption strong{font-size:clamp(22px,3.8vw,34px);}
 html body #skR25FightPreload .r70-loading-rail{padding-top:8px;}
 html body #skR25FightPreload .r70-loading-titles{gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 45px;margin-bottom:7px;}
 html body #skR25FightPreload .b97-loading-arena{font-size:13px;letter-spacing:.06em;}
 html body #skR25FightPreload #skR25FightPreloadTitle{font-size:14px;letter-spacing:.04em;}
 html body #skR25FightPreload #skR25FightPreloadStats{font-size:20px;}
 html body #skR25FightPreload .r70-loading-tip{display:none;}
 html body #skR25FightPreload[data-r71-preload-state=error] .r70-loading-duel{min-height:70px;}
 html body #skR25FightPreload[data-r71-preload-state=error] #skR25FightPreloadActions button{padding:7px 14px;min-height:44px;font-size:14px;}
 html body #r71-training-tools,html body .r54-training-dock,html body .r54-training-dock[data-r69-guided=true]{padding:6px 8px;gap:4px 6px;max-height:40vh;}
 html body #r71-training-tools .r71-training-task,html body .r54-training-dock .r54-training-status{font-size:12px;}
 html body .r54-training-dock .r69-training-hint{font-size:12px;}
 html body #r71-training-tools #r54-school-button,html body :is(#r71-training-tools,.r54-training-dock) .b97-training-toggle{min-height:44px;}
 html body #r71-training-tools[data-b97-expanded=true],html body .r54-training-dock[data-b97-expanded=true]{max-height:calc(100dvh - var(--b97-training-top,90px) - 20px);}
}
