
:root {
  --bp-text: #16354b;
  --bp-header-end: 112px;
  --bp-controls-space: 142px;
  --bp-cream: #f4f8fc;
  --bp-blue: #01609A;
  --bp-ice: #d9efff;
  --gx-bg: #10263a;
  --gx-ink: #f4f8fc;
  --gx-sub: #d3e2ee;
  --gx-key: #d9efff;
  --gx-panel-rgb: 244, 248, 252;
}
html { scroll-behavior: smooth; }
body.bp-site { font-weight: 500; line-height: 1.65; }
button, a { -webkit-tap-highlight-color: transparent; }
button { touch-action: manipulation; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--bp-ice); outline-offset: 5px; }
[hidden] { display: none !important; }
.bp-site .gx-logo {
  top: 20px; left: 28px; padding: 10px 12px;
  background: var(--bp-cream); border-radius: 6px;
  min-height: 56px; gap: 12px; color: var(--bp-blue);
  filter: none; z-index: 35;
}
.bp-site .gx-logo__mark { width: 49px; height: 49px; }
.bp-site .gx-logo__name { display: block; font-size: 20px; font-weight: 900; line-height: 1; letter-spacing: .08em; }
.bp-site .gx-logo__wordmark { display: block; width: 153px; height: auto; overflow: visible; }
.bp-site .gx-logo__sub { display: block; color: var(--bp-blue); font-family: Arial, sans-serif; letter-spacing: .64em; font-size: 12px; font-weight: 700; margin-top: 6px; line-height: 1; padding-left: 1px; }
.bp-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.bp-gate-logo { display: block; width: min(286px, 66vw); height: auto; margin-bottom: 4px; }
.bp-nav {
  position: fixed; z-index: 35; top: 28px; right: 210px;
  display: flex; align-items: center; gap: 3px; padding: 5px;
  background: var(--bp-cream); border-radius: 5px;
  box-shadow: 0 5px 30px #07375212;
}
.bp-nav button {
  min-height: 48px; padding: 11px 14px; border: 0; border-radius: 3px;
  color: var(--bp-blue); background: transparent;
  font: inherit; font-size: 16px; font-weight: 700; white-space: nowrap; cursor: pointer;
  transition: background .2s, color .2s;
}
.bp-nav button span { display: none; }
.bp-nav button:hover { background: #e3eff8; }
.bp-nav button[aria-current="page"] { color: var(--bp-cream); background: var(--bp-blue); }
.bp-utilities { position: fixed; top: 28px; right: 28px; z-index: 35; }
.bp-guide, .bp-return {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 48px; border: 1px solid #8bbddd; padding: 10px 14px; background: var(--bp-blue); border-radius: 5px;
  font: inherit; font-size: 16px; font-weight: 700; color: #fff;
  text-decoration: none; cursor: pointer;
}
.bp-guide span, .bp-return span { font-size: 19px; }
.bp-return { display: none; }
.bp-vignette {
  position: fixed; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(180deg, #edf5fcbd 0, #eaf3fb51 84px, transparent 180px),
    linear-gradient(15deg, #071a2ae8 0, #0b253d99 20%, #0b253d00 48%);
}
.bp-scene-label {
  position: fixed; z-index: 2; top: 104px; right: 38px; margin: 0;
  display: flex; align-items: center; gap: 8px;
  color: #fff; background: #102b43e8; padding: 6px 10px; border-radius: 3px; font-size: 11px; font-weight: 700; letter-spacing: .12em;
}
.bp-scene-label span { width: 5px; height: 5px; background: currentColor; border-radius: 50%; }
.has-3d:not(.is-tour) body { overflow: hidden; }
.has-3d:not(.is-tour) .gx-shell { z-index: 4; }
.has-3d:not(.is-tour) .gx-station {
  position: fixed; inset: 0; width: 100%; min-height: 0;
  align-items: flex-end; padding: 140px 44px 144px;
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translateY(12px); filter: none;
  transition: opacity .55s, transform .55s;
}
.has-3d:not(.is-tour) .gx-station.bp-current {
  opacity: 1; visibility: visible; transform: none;
  filter: none; user-select: auto;
}
.has-3d:not(.is-tour) .gx-station__inner {
  width: min(680px, 100%); max-width: none; margin: 0;
  pointer-events: none;
}
.has-3d:not(.is-tour) .gx-station__inner::before { display: none; }
.has-3d:not(.is-tour) .gx-station__inner button { pointer-events: auto; }
.has-3d:not(.is-tour) .gx-station:not(.bp-current) button { pointer-events: none; }
.bp-site .gx-station .gx-meta {
  font-family: Arial, sans-serif; font-size: 12px; font-weight: 700;
  letter-spacing: .18em; color: var(--bp-ice); margin: 0 0 17px;
}
.bp-site .gx-station h2 {
  font-size: clamp(38px, 4.65vw, 68px); font-weight: 900;
  line-height: 1.25; letter-spacing: .025em; margin: 0 0 19px;
  text-shadow: 0 2px 24px #102b4320;
}
.bp-site .gx-sub { font-size: 17px; line-height: 1.8; color: var(--bp-cream); margin: 0 0 20px; max-width: 38em; }
.bp-site .gx-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.bp-site .gx-hotspot {
  min-height: 48px; padding: 11px 16px; border: 1px solid #e5f2ff75;
  border-radius: 3px; background: #014b79ef; backdrop-filter: blur(8px);
  color: var(--bp-cream); font-size: 16px; font-weight: 700; letter-spacing: .02em;
  transition: background .2s, color .2s, border .2s;
}
.bp-site .gx-hotspot span { margin-left: 5px; }
.bp-site .gx-hotspot:hover, .bp-site .gx-hotspot:focus-visible { color: var(--bp-blue); background: var(--bp-ice); border-color: var(--bp-ice); }
.bp-site .gx-hotspot.is-found, .bp-site .gx-hotspot.is-chosen {
  color: var(--bp-blue); background: var(--bp-ice); border-color: var(--bp-ice); opacity: 1;
}
.bp-site .gx-hotspot.is-hint { animation: none; }
.bp-site .gx-more { font-size: 14px; margin-top: 6px; padding: 8px 0; min-height: 44px; color: #fff; text-underline-offset: 4px; }
.bp-roof-console {
  width: min(360px, 100%); padding: 14px 16px; border: 1px solid #bfd8eb60;
  border-radius: 5px; background: #0b2d46d9; backdrop-filter: blur(10px);
}
.bp-roof-console__heading { display: flex; justify-content: space-between; align-items: center; color: #f4f8fc; font-size: 16px; }
.bp-roof-console output { font-size: 16px; font-weight: 800; font-variant-numeric: tabular-nums; }
.bp-roof-console input[type="range"] {
  display: block; width: 100%; height: 38px; margin: 4px 0 6px; padding: 0;
  appearance: none; background: transparent; cursor: ew-resize; touch-action: pan-y;
}
.bp-roof-console input::-webkit-slider-runnable-track {
  height: 5px; border-radius: 3px;
  background: linear-gradient(90deg, #d9efff var(--roof-position, 10%), #b7d3e84d var(--roof-position, 10%));
}
.bp-roof-console input::-webkit-slider-thumb {
  appearance: none; width: 22px; height: 22px; margin-top: -8.5px;
  border-radius: 50%; border: 3px solid #f4f8fc; background: #01609A;
}
.bp-roof-console input::-moz-range-track { height: 5px; border-radius: 3px; background: #b7d3e84d; }
.bp-roof-console input::-moz-range-progress { height: 5px; background: #d9efff; }
.bp-roof-console input::-moz-range-thumb { width: 17px; height: 17px; border-radius: 50%; border: 3px solid #f4f8fc; background: #01609A; }
.bp-roof-console input:focus-visible { outline: 2px solid #d9efff; outline-offset: 3px; border-radius: 4px; }
.bp-roof-console__buttons { display: flex; gap: 8px; }
.bp-roof-console__buttons button { flex: 1; }
.has-3d:not(.is-tour) .gx-station__inner input { pointer-events: auto; }
.has-3d:not(.is-tour) .gx-station:not(.bp-current) input,
html.gx-doc-open .gx-station input,
html.is-overview .gx-station input { pointer-events: none !important; }
html:not(.has-js) .bp-roof-console, html:not(.has-js) .bp-roof-toggle,
.no-3d .bp-roof-console, .is-tour .bp-roof-console,
.no-3d .bp-roof-toggle, .is-tour .bp-roof-toggle { display: none; }
.bp-site .gx-hud { display: none; }
.bp-tourbar {
  position: fixed; z-index: 32; left: 36px; right: 36px; bottom: 30px;
  display: flex; align-items: center; gap: 28px; min-height: 78px;
  padding: 10px 12px 10px 24px; color: var(--bp-blue);
  background: var(--bp-cream); border-radius: 5px; box-shadow: 0 12px 40px #102b4318;
}
.bp-tourbar__location { display: flex; align-items: center; gap: 18px; min-width: 178px; }
.bp-tourbar__number { font-family: Arial, sans-serif; font-size: 30px; font-weight: 400; letter-spacing: -.07em; line-height: 1; }
.bp-tourbar__divider { width: 1px; height: 28px; background: #01609A40; transform: rotate(20deg); }
.bp-tourbar__eyebrow { display: block; font-family: Arial, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .16em; }
.bp-tourbar__title { display: block; font-size: 16px; font-weight: 700; line-height: 1.8; white-space: nowrap; }
.bp-tourbar__track { display: flex; flex: 1; align-items: center; gap: 6px; max-width: 140px; }
.bp-tourbar__track span { flex: 1; height: 2px; background: #01609A2a; }
.bp-tourbar__track span.is-current { height: 3px; background: var(--bp-blue); }
.bp-tourbar__hint { margin: 0 0 0 auto; font-size: 14px; }
.bp-next {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  min-width: 216px; min-height: 56px; padding: 12px 19px; border: none; border-radius: 3px;
  background: var(--bp-blue); color: var(--bp-cream); font: inherit;
  font-size: 16px; font-weight: 700; cursor: pointer; transition: background .2s;
}
.bp-next:hover { background: #014b79; }
.bp-next__arrow { color: var(--bp-ice); font-family: Arial, sans-serif; font-size: 27px; line-height: 1; font-weight: 400; }
.bp-sample-note { position: fixed; z-index: 33; right: 37px; bottom: 7px; margin: 0; color: #fff; text-shadow: 0 1px 5px #071a2a; font-size: 12px; letter-spacing: .04em; }
.bp-focus-tools {
  position: fixed; z-index: 36; right: 37px; top: 144px;
  display: flex; gap: 8px;
}
.bp-focus-back, .bp-focus-detail {
  min-height: 48px; padding: 11px 17px; border: 1px solid #f4f8fc7a; border-radius: 3px;
  background: var(--bp-cream); color: var(--bp-blue); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer;
}
.bp-focus-back span { margin-left: 16px; }
.bp-focus-detail { background: var(--bp-blue); color: var(--bp-cream); }
.has-3d:not(.is-tour).bp-focused .gx-station { padding-bottom: 127px; }
.has-3d:not(.is-tour).bp-focused .gx-station h2 { font-size: 32px; line-height: 1.35; margin-bottom: 14px; }
.has-3d:not(.is-tour).bp-focused .gx-station h2 br { display: none; }
.has-3d:not(.is-tour).bp-focused .gx-station .gx-meta,
.has-3d:not(.is-tour).bp-focused .gx-station .gx-sub,
.has-3d:not(.is-tour).bp-focused .gx-station .gx-more { display: none; }
.bp-focused .bp-vignette { background: linear-gradient(180deg, #edf5fcbd 0, #eaf3fb51 84px, transparent 180px), linear-gradient(0deg, #071a2ae8 0, #0b253d71 17%, #0b253d00 33%); }
.has-3d:not(.is-tour).bp-night .bp-vignette { background: linear-gradient(180deg, #101c39b8 0, #101c3959 100px, transparent 220px), linear-gradient(15deg, #081222e8 0, #0c193599 20%, #0b253d00 48%); }
.has-3d:not(.is-tour).bp-night .gx-logo,
.has-3d:not(.is-tour).bp-night .gx-logo__sub,
.has-3d:not(.is-tour).bp-night .bp-guide,
.has-3d:not(.is-tour).bp-night .bp-scene-label { color: var(--bp-cream); }
.has-3d:not(.is-tour).bp-night .gx-logo { background: #0b2d46; }
.has-3d:not(.is-tour).bp-night .bp-nav,
.has-3d:not(.is-tour).bp-night .bp-tourbar {
  color: #e2ecff; background: #08162bea; box-shadow: inset 0 0 0 1px #73a6fb30;
}
.has-3d:not(.is-tour).bp-night .bp-nav button { color: #d6e5ff; }
.has-3d:not(.is-tour).bp-night .bp-nav button:hover { background: #163461; }
.has-3d:not(.is-tour).bp-night .bp-nav button[aria-current="page"],
.has-3d:not(.is-tour).bp-night .bp-next { color: #fff; background: #01609A; }
.has-3d:not(.is-tour).bp-night .bp-next:hover { background: #0878b6; }
.has-3d:not(.is-tour).bp-night .bp-next__arrow,
.has-3d:not(.is-tour).bp-night .gx-station .gx-meta { color: #89c9ff; }
.has-3d:not(.is-tour).bp-night .bp-tourbar__divider,
.has-3d:not(.is-tour).bp-night .bp-tourbar__track span { background: #8aaed740; }
.has-3d:not(.is-tour).bp-night .bp-tourbar__track span.is-current { background: #78bbff; }
.has-3d:not(.is-tour).bp-night .gx-hotspot { background: #10264bd9; border-color: #80acdb70; }
.has-3d:not(.is-tour).bp-night .gx-hotspot:hover,
.has-3d:not(.is-tour).bp-night .gx-hotspot:focus-visible { color: #fff; background: #01609A; border-color: #a8d6ff; }

.bp-site .gx-modal {
  inset: auto 28px 136px auto; width: min(520px, calc(100vw - 56px));
  border: 1px solid #b7d0e0; border-radius: 8px; padding: 0; max-height: min(70svh, calc(100svh - 220px)); overflow: hidden;
  color: var(--bp-text); background: var(--bp-cream); box-shadow: 0 18px 80px #0e253b2b;
}
.bp-site .gx-modal__title { color: var(--bp-blue); font-weight: 800; font-size: 21px; line-height: 1.5; letter-spacing: .02em; min-width: 0; }
.bp-site .gx-modal__close { color: var(--bp-blue); background: #e3eff8; width: auto; min-width: 88px; height: 48px; margin: 0; padding: 0 12px; border-radius: 4px; font-size: 16px; font-weight: 700; }
.bp-site .gx-modal__body p { font-size: 18px; line-height: 1.9; margin: 0 0 1em; }
.bp-site .gx-modal__body h2 { font-size: 23px; line-height: 1.5; color: var(--bp-blue); margin: 0 0 16px; }

.bp-site .gx-gate { display: grid; place-items: center; overflow: hidden; isolation: isolate; background: #01609A; color: #fff; gap: 0; transition: opacity .85s cubic-bezier(.2,.65,.3,1); }
.bp-site .gx-gate::before { display: none; }
.bp-site .gx-gate .bp-gate-logo { position: relative; z-index: 1; display: block; width: min(420px, 76vw); height: auto; margin: 0; filter: brightness(0) invert(1); opacity: 1; animation: bp-splash-arrive .9s cubic-bezier(.2,.7,.25,1) both; }
.bp-site .gx-gate::after { content: ""; display: block; position: absolute; z-index: 2; inset: -40% -35%; pointer-events: none; opacity: 0; transform: translate3d(-100%,0,0); background: linear-gradient(105deg, transparent 43%, #8cdfff00 46%, #9bdfff16 48%, #c5f2ff85 49.6%, #f3fcffad 50%, #acE8ff62 50.4%, #8cdfff0d 52%, transparent 56%); }
.bp-site .gx-gate.is-opening::after { animation: bp-splash-light .9s cubic-bezier(.3,.05,.35,1) both; }
.bp-site .gx-gate.is-opening .bp-gate-logo { animation: bp-splash-depart 1.05s ease both; }
@keyframes bp-splash-arrive { from { opacity: 0; transform: translate3d(0,10px,0) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes bp-splash-light { 0% { opacity: 0; transform: translate3d(-80%,0,0); } 15% { opacity: .8; } 70% { opacity: .65; } 100% { opacity: 0; transform: translate3d(80%,0,0); } }
@keyframes bp-splash-depart { 0%, 30% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translate3d(0,-5px,0) scale(1.015); } }
html:is(.no-3d,.is-tour,:not(.has-js)) .gx-gate { display: none !important; }
@media (prefers-reduced-motion: reduce) { .bp-site .gx-gate, .bp-site .gx-gate .bp-gate-logo, .bp-site .gx-gate::after { animation: none !important; transition: none !important; } .bp-site .gx-gate::after { display: none; } }
.has-3d:not(.is-tour) .gx-footer { display: none; }
html.is-overview .bp-tourbar, html.is-overview .bp-focus-tools { opacity: 0; pointer-events: none; }
html.is-overview .gx-logo::after { display: none; }
html.is-intro .bp-tourbar { opacity: 0; pointer-events: none; }


.no-3d body.bp-site, .is-tour body.bp-site, html:not(.has-js) body.bp-site { background: var(--bp-cream); color: var(--bp-blue); }
.no-3d .gx-shell, .is-tour .gx-shell, html:not(.has-js) .gx-shell { background: var(--bp-cream); padding-top: 140px; }
.no-3d .bp-vignette, .is-tour .bp-vignette, html:not(.has-js) .bp-vignette,
.no-3d .bp-scene-label, .is-tour .bp-scene-label, html:not(.has-js) .bp-scene-label,
.no-3d .bp-tourbar, .is-tour .bp-tourbar, html:not(.has-js) .bp-tourbar,
.no-3d .bp-sample-note, .is-tour .bp-sample-note, html:not(.has-js) .bp-sample-note,
.no-3d .bp-focus-tools, .is-tour .bp-focus-tools, html:not(.has-js) .bp-focus-tools { display: none !important; }
.no-3d .gx-stage, .is-tour .gx-stage { display: none; }
.no-3d .gx-station, .is-tour .gx-station, html:not(.has-js) .gx-station { min-height: 0; padding: 60px max(24px, 8vw); border-bottom: 1px solid #01609A26; }
.no-3d .gx-station__inner, .is-tour .gx-station__inner { max-width: 860px; }
.no-3d .gx-station .gx-meta, .is-tour .gx-station .gx-meta,
.no-3d .gx-sub, .is-tour .gx-sub, html:not(.has-js) .gx-sub { color: #456779; }
.no-3d .gx-station h2, .is-tour .gx-station h2 { font-size: clamp(30px, 5vw, 48px); }
.no-3d .gx-actions, .is-tour .gx-actions, html:not(.has-js) .gx-actions { display: none; }
.no-3d .gx-secret, .is-tour .gx-secret { max-width: 46em; font-size: 17px; line-height: 2; }
.no-3d .gx-docs, .is-tour .gx-docs { max-width: 980px; padding-top: 20px; }
.is-tour .bp-guide { display: none; }
.is-tour .bp-return { display: inline-flex; }
.is-tour .bp-utilities, .no-3d .bp-utilities { background: var(--bp-cream); }
.no-3d .gx-footer, .is-tour .gx-footer { padding: 40px 8vw; border-color: #01609A26; }
.no-3d .gx-footer .gx-meta, .is-tour .gx-footer .gx-meta { color: #456779; }
html:not(.has-js) .gx-gate { display: none; }
html:not(.has-js).is-locked { overflow: auto; }



.bp-site .gx-modal[open] { display: flex; flex-direction: column; }
.bp-site .gx-modal__head { flex: none; align-items: center; padding: 16px 20px; border-bottom: 1px solid #c9dce9; background: var(--bp-cream); }
.bp-site .gx-modal__body { overflow-y: auto; overscroll-behavior: contain; min-height: 0; padding: 22px 26px 26px; scrollbar-gutter: stable; font-size: 18px; line-height: 1.9; }
.bp-site .gx-modal__body > :last-child { margin-bottom: 0; }
.bp-site .gx-modal__close:hover { color: #fff; background: var(--bp-blue); }
.bp-guide:hover, .bp-return:hover { background: #014b79; }
.bp-site button:focus-visible, .bp-site a:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 6px var(--bp-blue); }
.bp-site .bp-roof-console input:focus-visible { outline: 3px solid #fff; }
.bp-roof-console { width: min(400px, 100%); background: #0b2d46f5; }
.bp-roof-console output { font-size: 20px; }
.bp-roof-console input[type="range"] { height: 44px; }
.bp-reveal-title, .bp-guide-intro { display: none; }
.bp-lineup { width: 100%; table-layout: fixed; border-collapse: collapse; font-size: 16px; line-height: 1.6; margin: 20px 0; }
.bp-lineup caption { text-align: left; font-size: 17px; font-weight: 700; padding-bottom: 12px; color: var(--bp-text); }
.bp-lineup th, .bp-lineup td { text-align: left; padding: 10px 4px; border-bottom: 1px solid #ccdfec; }
.bp-lineup thead { background: #e3eff8; color: #014b79; }
.gx-modal .bp-lineup thead { position: sticky; top: 0; z-index: 1; }
.bp-lineup .is-current { background: #d9efff; font-weight: 700; }
.has-3d:not(.is-tour) .gx-station__inner { max-height: calc(100svh - var(--bp-header-end) - var(--bp-controls-space)); overflow-y: auto; overscroll-behavior: contain; pointer-events: auto; scrollbar-width: thin; }
.has-3d:not(.is-tour) .gx-station:not(.bp-current) .gx-station__inner { pointer-events: none; }
html.gx-doc-open .bp-focus-tools { opacity: 0; pointer-events: none; }


html:is(.is-tour,.no-3d,:not(.has-js)) .gx-shell { opacity: 1; pointer-events: auto; color: var(--bp-text); padding-top: calc(var(--bp-header-end) + 24px); }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-station__inner::before { display: none; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-station { padding: 44px 28px; scroll-margin-top: calc(var(--bp-header-end) + 16px); }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-station__inner { max-width: 840px; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-station h2 { color: var(--bp-blue); text-shadow: none; font-size: clamp(30px,4vw,44px); }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-secret { max-width: none; margin: 30px 0 0; font-size: 18px; line-height: 1.9; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-secret p { max-width: none; font-size: inherit; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-reveal-title { display: block; font-size: 22px; font-weight: 800; line-height: 1.5; color: var(--bp-blue); margin: 0 0 10px; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-guide-intro { display: block; max-width: 896px; padding: 20px 28px 24px; margin: 0 auto; scroll-margin-top: calc(var(--bp-header-end) + 16px); }
.bp-guide-intro h1 { color: var(--bp-blue); font-size: clamp(32px,4vw,44px); margin: 0 0 12px; }
.bp-guide-intro p { font-size: 18px; margin: 0; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-docs { position: static; width: auto; height: auto; overflow: visible; clip-path: none; max-width: 896px; margin: 0 auto; padding: 24px 28px 48px; color: var(--bp-text); }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-docs h2 { color: var(--bp-blue); font-size: 26px; line-height: 1.5; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-docs p { font-size: 18px; line-height: 1.9; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-nav { position: fixed; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-logo { position: fixed; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-utilities { position: fixed; background: none; }
html:is(.is-tour,.no-3d,:not(.has-js)) .gx-footer { font-size: 14px; color: #456779; }

@media (max-width: 1240px) {
  :root { --bp-header-end: 174px; }
  .bp-nav { left: 24px; right: 24px; top: 98px; justify-content: space-between; }
  .bp-nav button { flex: 1; }
  .bp-scene-label { display: none; }
  .bp-focus-tools { top: 180px; }
  .bp-tourbar { left: 24px; right: 24px; gap: 20px; }
  .bp-tourbar__hint { display: none; }
  .bp-tourbar__track { max-width: none; }
  .bp-next { margin-left: auto; }
  .has-3d:not(.is-tour) .gx-station { padding-top: 188px; }
  .bp-site .gx-modal { max-height: calc(100svh - 310px); }
}
@media (max-width: 700px) {
  :root { --bp-header-end: 214px; --bp-controls-space: 120px; }
  .bp-site .gx-logo { top: 14px; left: 16px; padding: 8px; gap: 8px; min-height: 54px; }
  .bp-site .gx-logo__mark { width: 33px; height: 33px; }
  .bp-site .gx-logo__wordmark { width: 113px; }
  .bp-site .gx-logo__sub { font-size: 9px; letter-spacing: .44em; margin-top: 5px; }
  .bp-utilities { top: 17px; right: 16px; }
  .bp-guide, .bp-return { font-size: 15px; padding: 10px 12px; gap: 8px; }
  .bp-guide span, .bp-return span { font-size: 17px; }
  .bp-nav { top: 86px; left: 16px; right: 16px; display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 4px; padding: 5px; }
  .bp-nav button { grid-column: span 2; font-size: 15px; padding: 10px 5px; line-height: 1.4; min-height: 48px; }
  .bp-nav button:nth-child(n+4) { grid-column: span 3; }
  .bp-nav button span { display: none; }
  .bp-focus-tools { top: 214px; right: 16px; gap: 8px; }
  .bp-focus-back, .bp-focus-detail { font-size: 15px; padding: 10px 12px; }
  .has-3d:not(.is-tour) .gx-station { padding: 220px 20px 120px; }
  .has-3d:not(.is-tour).bp-focused .gx-station { padding-bottom: 116px; }
  .has-3d:not(.is-tour).bp-focused .gx-station__inner { max-height: max(96px, calc(100svh - 392px)); }
  .bp-site .gx-station .gx-meta { font-size: 11px; letter-spacing: .1em; margin-bottom: 10px; }
  .bp-site .gx-station h2 { font-size: 34px; line-height: 1.25; letter-spacing: .01em; margin-bottom: 14px; }
  .bp-site [data-station="night"] h2 { font-size: 32px; }
  .has-3d:not(.is-tour).bp-focused .gx-station h2 { font-size: 27px; line-height: 1.35; margin-bottom: 14px; }
  .bp-site .gx-sub { font-size: 16px; line-height: 1.7; margin-bottom: 16px; }
  .bp-site .gx-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .bp-site .gx-hotspot { font-size: 14px; padding: 10px 9px; line-height: 1.5; min-height: 48px; }
  .bp-site .gx-hotspot span { margin-left: 1px; }
  .bp-site .gx-more { font-size: 15px; margin: 6px 0 0; }
  .bp-roof-console { padding: 12px 14px; }
  .bp-roof-console__heading { font-size: 16px; }
  .bp-tourbar { left: 16px; right: 16px; bottom: 32px; padding: 8px 8px 8px 14px; min-height: 72px; gap: 8px; }
  .bp-tourbar__location { min-width: 0; gap: 8px; flex: 1; }
  .bp-tourbar__number { font-size: 24px; }
  .bp-tourbar__divider { height: 24px; }
  .bp-tourbar__eyebrow { display: none; }
  .bp-tourbar__title { font-size: 15px; line-height: 1.4; white-space: normal; }
  .bp-tourbar__track { display: none; }
  .bp-next { min-width: 132px; min-height: 54px; padding: 10px 12px; gap: 10px; font-size: 15px; }
  .bp-next__arrow { font-size: 23px; }
  .bp-sample-note { right: 16px; bottom: 8px; font-size: 11px; }
  .bp-site .gx-modal { inset: auto 12px 16px; width: auto; max-width: none; max-height: calc(100svh - 224px); }
  .bp-site .gx-modal__head { padding: 12px 16px; gap: 10px; }
  .bp-site .gx-modal__title { font-size: 20px; }
  .bp-site .gx-modal__body { padding: 18px 20px 22px; font-size: 17px; }
  .bp-site .gx-modal__body p { font-size: 17px; line-height: 1.9; }
  .bp-site .gx-modal__body h2 { font-size: 22px; }
  html.gx-doc-open .bp-tourbar, html.gx-doc-open .bp-sample-note { opacity: 0; pointer-events: none; }
  html.gx-doc-open .gx-station { visibility: hidden !important; pointer-events: none !important; }
  html.gx-doc-open .gx-station__inner, html.gx-doc-open .gx-station button { pointer-events: none !important; }
  html:is(.is-tour,.no-3d,:not(.has-js)) .gx-station { padding: 32px 24px; }
  html:is(.is-tour,.no-3d,:not(.has-js)) .bp-guide-intro { padding-inline: 24px; }
  html:is(.is-tour,.no-3d,:not(.has-js)) .gx-secret,
  html:is(.is-tour,.no-3d,:not(.has-js)) .gx-docs p { font-size: 17px; }
  html:is(.is-tour,.no-3d,:not(.has-js)) .gx-docs { padding-inline: 24px; }
  html:is(.is-tour,.no-3d,:not(.has-js)) .gx-footer { padding: 28px 24px; }
}
@media (max-width: 370px) {
  .bp-site .gx-logo__wordmark { width: 100px; }
  .bp-guide, .bp-return { font-size: 14px; padding-inline: 10px; gap: 5px; }
  .bp-tourbar__number, .bp-tourbar__divider { display: none; }
  .bp-tourbar__title { font-size: 14px; }
  .bp-next { font-size: 14px; min-width: 127px; }
  .bp-site .gx-station h2 { font-size: 30px; }
}
@media (max-height: 640px) and (min-width: 701px) {
  :root { --bp-controls-space: 116px; }
  .has-3d:not(.is-tour) .gx-station { padding-bottom: 112px; }
  .bp-site .gx-station h2 { font-size: 36px; line-height: 1.2; margin-bottom: 12px; }
  .bp-site .gx-sub { font-size: 16px; margin-bottom: 12px; }
  .bp-tourbar { bottom: 28px; min-height: 64px; }
  .bp-next { min-height: 48px; }
  .bp-site .gx-modal { inset: auto 20px 22px auto; max-height: calc(100svh - var(--bp-header-end) - 28px); }
  html.gx-doc-open .bp-tourbar { opacity: 0; pointer-events: none; }
}

html:is(.is-tour,.no-3d,:not(.has-js)) .gx-actions { display: none; }
@media (min-width: 501px) and (max-width: 700px) and (max-height: 500px) {
  :root { --bp-header-end: 134px; --bp-controls-space: 94px; }
  .bp-site .gx-logo { top: 8px; }
  .bp-utilities { top: 10px; }
  .bp-nav { top: 70px; display: flex; gap: 2px; }
  .bp-nav button { padding: 8px 6px; font-size: 14px; min-height: 44px; }
  .has-3d:not(.is-tour) .gx-station,
  .has-3d:not(.is-tour).bp-focused .gx-station { padding-top: 136px; padding-bottom: 94px; }
  .has-3d:not(.is-tour).bp-focused .gx-station__inner { max-width: calc(100% - 248px); max-height: calc(100svh - 234px); }
  .bp-focus-tools { top: 142px; }
  .bp-focus-back, .bp-focus-detail { font-size: 14px; padding-inline: 10px; }
  .bp-site .gx-station h2 { font-size: 30px; }
  .bp-tourbar { min-height: 62px; bottom: 24px; }
  .bp-next { min-height: 46px; }
  .bp-site .gx-modal { max-height: calc(100svh - 142px); }
  .bp-sample-note { bottom: 3px; }
}

.bp-site .gx-modal__body > h2:first-child { display: none; }
html:is(.is-tour,.no-3d,:not(.has-js)) body.bp-site::before { content: ""; position: fixed; inset: 0 0 auto; height: var(--bp-header-end); background: var(--bp-cream); border-bottom: 1px solid #d9e6ef; z-index: 34; pointer-events: none; }

.has-3d:not(.is-tour) .gx-station h2 { text-shadow: 0 2px 5px #061726b3, 0 0 24px #06172680; }
.has-3d:not(.is-tour) .gx-station .gx-sub,
.has-3d:not(.is-tour) .gx-station .gx-meta { text-shadow: 0 1px 4px #061726, 0 0 16px #061726c9; }
@media (max-width: 700px) and (max-height: 740px) {
  .bp-site [data-station="roof"] .gx-meta { display: none; }
  .bp-site [data-station="roof"] h2 { font-size: 28px; }
  .bp-site [data-station="roof"] h2 br { display: none; }
}

.bp-site .gx-modal__body:focus-visible { outline: 2px solid var(--bp-blue); outline-offset: -4px; }
@media (min-width: 501px) and (max-width: 700px) and (max-height: 500px) {
  .has-3d:not(.is-tour).bp-focused .gx-station h2 { font-size: 24px; line-height: 1.25; margin-bottom: 8px; }
  .has-3d:not(.is-tour).bp-focused .gx-actions { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
  .has-3d:not(.is-tour).bp-focused .gx-hotspot { min-height: 44px; padding: 8px 4px; }
}

@media (min-width: 701px) and (max-width: 1240px) {
  html.gx-doc-open .gx-station { visibility: hidden !important; pointer-events: none !important; }
  html.gx-doc-open .gx-station__inner, html.gx-doc-open .gx-station button { pointer-events: none !important; }
}


.bp-batting-surface { display: none; position: fixed; inset: 0; z-index: 3; touch-action: none; cursor: crosshair; outline: none; }
.has-3d:not(.is-tour):not(.is-overview):not(.gx-doc-open).bp-playing .bp-batting-surface { display: block; }
.bp-batting-surface:focus-visible { box-shadow: inset 0 0 0 3px #8dd1ff9c; }
.bp-batting-target, .bp-batting-cursor { position: absolute; left: 0; top: 0; pointer-events: none; }
.bp-batting-target { width: 120px; height: 160px; border: 2px solid #69c9ff; border-radius: 7px; box-shadow: 0 0 0 1px #013957b3, inset 0 0 22px #168ad314, 0 0 20px #168ad31a; }
.bp-batting-target::before { content: ""; position: absolute; inset: 0; border-radius: 5px; background: linear-gradient(90deg, transparent 32.7%, #a1ddff55 33%, transparent 33.7%, transparent 66%, #a1ddff55 66.3%, transparent 67%), linear-gradient(0deg, transparent 32.7%, #a1ddff55 33%, transparent 33.7%, transparent 66%, #a1ddff55 66.3%, transparent 67%); }
.bp-batting-cursor { width: 34px; height: 34px; border: 2px solid #fff; border-radius: 50%; translate: -50% -50%; box-shadow: 0 0 0 1px #09314bb3, 0 0 16px #9bdcff50; }
.bp-batting-cursor::before, .bp-batting-cursor::after { content: ""; position: absolute; background: #fff; box-shadow: 0 0 3px #09314b; }
.bp-batting-cursor::before { width: 48px; height: 1px; left: -9px; top: 15px; }
.bp-batting-cursor::after { width: 1px; height: 48px; left: 15px; top: -9px; }
.bp-batting-cursor[data-ready="true"] { border-color: #e8fff1; background: #92edb918; box-shadow: 0 0 0 2px #70edb290, 0 0 24px #83f3bcb3; }
html:not(.bp-batting-active) .bp-batting-target, html:not(.bp-batting-active) .bp-batting-cursor { display: none; }
.has-3d:not(.is-tour) #play { display: block; padding: 0; pointer-events: none; }
.has-3d:not(.is-tour) #play .gx-station__inner { position: static; width: auto; max-width: none; max-height: none; overflow: visible; pointer-events: none; }
.bp-batting { --batting-edge: 24px; --batting-score-width: 164px; pointer-events: none; }
.has-3d:not(.is-tour) .bp-batting-intro { position: absolute; left: 44px; bottom: 148px; width: min(680px, calc(100% - 240px)); }
.has-3d:not(.is-tour) .bp-batting:not([data-phase="idle"]) .bp-batting-intro { display: none; }
.bp-site .bp-batting-help { margin: 16px 0 0; max-width: none; color: #e4f1fc; font-size: 17px; line-height: 1.65; text-shadow: 0 1px 4px #061726, 0 0 16px #061726c9; }
.bp-batting-help__keys { display: block; }
.bp-batting-help__mobile { display: none; }


.bp-batting-scoreboard { position: absolute; top: calc(var(--bp-header-end) + 14px); right: var(--batting-edge); width: var(--batting-score-width); box-sizing: border-box; padding: 14px; color: #f1f8ff; background: #06141ff5; border: 1px solid #75a6c45c; border-top: 2px solid #73c7f5; border-radius: 4px; box-shadow: 0 5px 24px #02101945, inset 0 0 0 3px #f0f8ff05; font-variant-numeric: tabular-nums; }
.bp-site .bp-batting-inning { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin: 0 0 12px; padding: 0 0 10px; border-bottom: 1px solid #91b7d22e; color: #fff; font-size: 17px; font-weight: 800; line-height: 1.35; }
.bp-batting-live { color: #83d5ff; font: 700 11px/1 Arial, sans-serif; letter-spacing: .10em; }
.bp-batting-bso { display: grid; gap: 7px; margin-bottom: 13px; padding-bottom: 13px; border-bottom: 1px solid #91b7d22e; }
.bp-batting-bso__row { display: grid; grid-template-columns: 20px 1fr 12px; gap: 8px; align-items: center; min-height: 23px; }
.bp-batting-bso__row::after { content: attr(data-count); color: #d1dfe9; font: 600 16px/1 Arial, sans-serif; text-align: right; }
.bp-batting-bso__label { color: #f0f5fa; font: 700 21px/1 Arial, sans-serif; }
.bp-batting-bso__lamps { display: flex; align-items: center; gap: 7px; }
.bp-batting-bso [data-batting-lamp] { position: relative; display: block; width: 13px; height: 13px; flex: 0 0 13px; box-sizing: border-box; border-radius: 50%; border: 1px solid #8199ae35; background: #152530; box-shadow: inset 0 2px 3px #0009; }
.bp-batting-bso [data-batting-bso="balls"] { --lamp-color: #64f19d; --lamp-glow: #64f19d70; }
.bp-batting-bso [data-batting-bso="strikes"] { --lamp-color: #ffe278; --lamp-glow: #ffd96370; }
.bp-batting-bso [data-batting-bso="outs"] { --lamp-color: #ff716c; --lamp-glow: #ff645e80; }
.bp-batting-bso [data-batting-lamp].is-on { border-color: var(--lamp-color); background: var(--lamp-color); box-shadow: 0 0 8px var(--lamp-glow), inset 0 1px 2px #ffffff6b; }
.bp-batting-hud { display: grid; gap: 8px; margin: 0; }
.bp-batting-hud > div { display: flex; align-items: baseline; justify-content: space-between; gap: 7px; min-width: 0; }
.bp-batting-hud dt { margin: 0; color: #b8cedd; font-size: 14px; line-height: 1.4; white-space: nowrap; }
.bp-batting-hud dd { margin: 0; color: #f2f9ff; font: 700 19px/1.3 Arial, sans-serif; white-space: nowrap; }
.bp-batting-hud [data-batting-ball] { color: #8bd8ff; }
.bp-batting-hud [data-batting-speed] { font-size: 17px; }


.has-3d:not(.is-tour) .bp-batting-intro { left: auto; right: 40px; bottom: 190px; width: min(460px, 43vw); }
.has-3d:not(.is-tour) #play h2 { font-size: clamp(32px, 3.5vw, 48px); line-height: 1.3; margin-bottom: 18px; }


.bp-batting-status { position: absolute; left: 36px; right: 240px; bottom: max(38px, calc(env(safe-area-inset-bottom) + 22px)); max-width: 680px; pointer-events: none; }
.bp-site .bp-batting-message { margin: 0; color: #fff; font-size: clamp(21px, 2.3vw, 30px); font-weight: 900; line-height: 1.4; text-wrap: balance; text-shadow: 0 2px 4px #02111feb, 0 0 18px #02111fad; }
.bp-batting:is([data-phase="windup"],[data-phase="pitch"]) .bp-batting-message { font-size: 21px; font-weight: 700; }
.bp-batting-actions { position: absolute; right: var(--batting-edge); bottom: max(24px, calc(env(safe-area-inset-bottom) + 14px)); display: flex; flex-direction: column; align-items: stretch; gap: 9px; pointer-events: auto; }
.bp-batting-primary { display: inline-flex; justify-content: center; align-items: center; gap: 14px; min-height: 64px; min-width: 176px; padding: 14px 21px; border: 1px solid #a7d9f7; border-radius: 5px; background: #01609a; color: #fff; box-shadow: 0 4px 22px #03152340; font: inherit; font-size: 19px; font-weight: 800; line-height: 1.35; cursor: pointer; }
.bp-batting-primary span { font-size: 24px; font-weight: 500; }
.bp-batting-primary:hover { background: #087eb8; }
.bp-batting-primary:disabled { cursor: default; opacity: .58; }
.bp-batting-swing { min-width: 164px; background: #edf7ff; color: #014b79; border-color: #edf7ff; }
.bp-batting-swing:hover { background: #fff; }
.bp-batting-options { position: absolute; right: var(--batting-edge); bottom: max(106px, calc(env(safe-area-inset-bottom) + 96px)); display: flex; gap: 8px; pointer-events: auto; }
.bp-batting-options button, .bp-batting-pause { min-height: 44px; padding: 9px 13px; border: 1px solid #a6cce57a; border-radius: 4px; background: #071c2bea; color: #f3f8fc; font: inherit; font-size: 17px; font-weight: 700; line-height: 1.3; cursor: pointer; }
.bp-batting-options button:hover, .bp-batting-pause:hover { background: #104c70; }
.bp-batting-options button[aria-pressed="true"] { background: #d9efff; border-color: #d9efff; color: #014b79; }
.bp-batting-pause { position: absolute; right: var(--batting-edge); bottom: max(106px, calc(env(safe-area-inset-bottom) + 96px)); min-width: 86px; pointer-events: auto; }
.bp-batting-pause span { font: 800 18px/1 Arial, sans-serif; margin-right: 3px; }
.bp-batting:not([data-phase="idle"]):not([data-phase="finished"]):not([data-paused="true"]) .bp-batting-options { display: none; }
.bp-batting[data-paused="true"] [data-batting-easy] { display: none; }
.bp-batting-compat { display: none !important; }
.has-3d:not(.is-tour).bp-playing .bp-tourbar, .has-3d:not(.is-tour).bp-playing .bp-sample-note, .has-3d:not(.is-tour).bp-playing .bp-scene-label { display: none; }
.has-3d:not(.is-tour).bp-playing .bp-vignette { background: linear-gradient(180deg, #eaf3fb70, transparent 190px), linear-gradient(0deg, #061a293b, transparent 110px); }
.has-3d:not(.is-tour) .bp-batting[data-phase="idle"] .bp-batting-scoreboard,
.has-3d:not(.is-tour) .bp-batting[data-phase="idle"] .bp-batting-status { display: none; }
.has-3d:not(.is-tour) .bp-batting-guide { display: none; }
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-scoreboard,
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-options,
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-actions,
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-pause,
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-status,
html:is(.is-tour,.no-3d,:not(.has-js),.is-overview,.gx-doc-open) .bp-batting-surface { display: none !important; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-batting-intro { display: block !important; position: static; width: auto; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-batting { pointer-events: auto; }
html:is(.is-tour,.no-3d,:not(.has-js)) .bp-batting-help { color: #456779; text-shadow: none; }

@media (max-width: 1000px) and (min-width: 701px) {
  .bp-batting { --batting-score-width: 152px; }
  .bp-batting-scoreboard { padding: 12px; }
  .bp-batting-hud { gap: 7px; }
  .bp-batting-primary { min-width: 164px; }
}
@media (max-width: 700px) {
  .bp-nav { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .bp-nav button, .bp-nav button:nth-child(n+4) { grid-column: auto; white-space: normal; }
  .bp-batting { --batting-edge: 12px; --batting-score-width: 120px; }
  .has-3d:not(.is-tour) .bp-batting-intro { left: 20px; right: 20px; width: auto; top: calc(var(--bp-header-end) + 18px); bottom: auto; }
  .bp-site #play h2, .has-3d:not(.is-tour) #play h2 { font-size: 36px; line-height: 1.28; }
  .bp-site #play .gx-sub { font-size: 17px; line-height: 1.65; }
  .has-3d:not(.is-tour) #play .gx-sub { display: none; }
  .bp-site .bp-batting-help { margin-top: 15px; font-size: 17px; line-height: 1.6; }
  .bp-batting-help__desktop, .bp-batting-help__keys { display: none; }
  .bp-batting-help__mobile { display: inline; }
  .bp-batting-scoreboard { top: calc(var(--bp-header-end) + 6px); padding: 10px 9px; }
  .bp-site .bp-batting-inning { margin-bottom: 8px; padding-bottom: 8px; font-size: 16px; }
  .bp-batting-live { font-size: 10px; letter-spacing: .02em; }
  .bp-batting-bso { gap: 5px; margin-bottom: 9px; padding-bottom: 9px; }
  .bp-batting-bso__row { grid-template-columns: 17px 1fr 10px; gap: 6px; min-height: 23px; }
  .bp-batting-bso__row::after { font-size: 15px; }
  .bp-batting-bso__label { font-size: 19px; }
  .bp-batting-bso__lamps { gap: 5px; }
  .bp-batting-bso [data-batting-lamp] { width: 11px; height: 11px; flex-basis: 11px; }
  .bp-batting-hud { gap: 6px; }
  .bp-batting-hud > div { gap: 4px; }
  .bp-batting-hud dt { font-size: 13px; }
  .bp-batting-hud dd { font-size: 17px; }
  .bp-batting-hud [data-batting-speed] { font-size: 15px; }
  .bp-batting-status { left: 16px; right: 134px; bottom: max(105px, calc(env(safe-area-inset-bottom) + 95px)); }
  .bp-site .bp-batting-message, .bp-batting:is([data-phase="windup"],[data-phase="pitch"]) .bp-batting-message { font-size: 20px; line-height: 1.5; }
  .bp-batting-actions { bottom: max(20px, calc(env(safe-area-inset-bottom) + 12px)); }
  .bp-batting-primary, .bp-batting-swing { min-width: 138px; min-height: 62px; padding: 13px 16px; font-size: 18px; gap: 9px; }
  .bp-batting-primary span { display: none; }
  .bp-batting-pause { bottom: max(102px, calc(env(safe-area-inset-bottom) + 94px)); min-width: 80px; }
  .bp-batting-options { left: 20px; right: 20px; bottom: max(104px, calc(env(safe-area-inset-bottom) + 96px)); gap: 8px; justify-content: flex-end; }
  .bp-batting-options button { font-size: 17px; padding: 10px 13px; }
  .has-3d:not(.is-tour) .bp-batting[data-phase="idle"] .bp-batting-actions { left: 20px; right: 20px; bottom: 24px; }
  .has-3d:not(.is-tour) .bp-batting[data-phase="idle"] .bp-batting-primary { min-height: 64px; font-size: 20px; }
  .bp-batting[data-phase="finished"] .bp-batting-status { right: 20px; bottom: 170px; }
  .bp-batting[data-paused="true"] .bp-batting-status { right: 20px; bottom: 170px; }
}
@media (max-height: 740px) and (max-width: 700px) {
  .has-3d:not(.is-tour) .bp-batting-intro { top: calc(var(--bp-header-end) + 12px); bottom: auto; }
  .bp-site #play h2, .has-3d:not(.is-tour) #play h2 { font-size: 31px; margin-bottom: 12px; }
  .bp-site #play .gx-meta { display: none; }
  .bp-site .bp-batting-help { margin-top: 10px; }
}
@media (max-height: 540px) and (min-width: 501px) {
  .has-3d:not(.is-tour).bp-playing { --bp-header-end: 74px; }
  .has-3d:not(.is-tour).bp-playing .gx-logo { top: 8px; left: 12px; padding: 7px; min-height: 48px; gap: 0; }
  .has-3d:not(.is-tour).bp-playing .gx-logo__mark { width: 34px; height: 34px; }
  .has-3d:not(.is-tour).bp-playing .gx-logo__text { display: none; }
  .has-3d:not(.is-tour).bp-playing .bp-nav { top: 8px; left: 72px; right: 126px; display: flex; justify-content: flex-start; gap: 2px; padding: 4px; overflow-x: auto; scrollbar-width: thin; }
  .has-3d:not(.is-tour).bp-playing .bp-nav button { flex: 1 0 auto; min-height: 48px; padding: 8px 10px; font-size: 15px; white-space: nowrap; }
  .has-3d:not(.is-tour).bp-playing .bp-utilities { top: 8px; right: 12px; }
  .has-3d:not(.is-tour).bp-playing .bp-guide { min-height: 56px; padding: 8px 12px; font-size: 15px; }
  .has-3d:not(.is-tour).bp-playing .bp-guide span { display: none; }
  .bp-batting { --batting-edge: 12px; --batting-score-width: 136px; }
  .bp-batting-scoreboard { top: 80px; padding: 9px 10px; }
  .bp-site .bp-batting-inning { margin-bottom: 6px; padding-bottom: 6px; font-size: 16px; }
  .bp-batting-bso { gap: 3px; margin-bottom: 7px; padding-bottom: 7px; }
  .bp-batting-bso__row { min-height: 21px; gap: 6px; }
  .bp-batting-bso__label { font-size: 18px; }
  .bp-batting-bso [data-batting-lamp] { width: 11px; height: 11px; flex-basis: 11px; }
  .bp-batting-hud { gap: 3px; }
  .bp-batting-hud dt { font-size: 13px; }
  .bp-batting-hud dd { font-size: 17px; }
  .bp-batting-hud [data-batting-speed] { font-size: 15px; }
  .bp-batting-actions { right: calc(var(--batting-edge) + var(--batting-score-width) + 14px); bottom: max(12px, env(safe-area-inset-bottom)); }
  .bp-batting-primary, .bp-batting-swing { min-height: 52px; min-width: 148px; padding: 10px 16px; font-size: 18px; }
  .bp-batting-primary span { display: none; }
  .bp-batting-pause { right: calc(var(--batting-edge) + var(--batting-score-width) + 174px); bottom: max(16px, env(safe-area-inset-bottom)); min-width: 78px; }
  .bp-batting-status { left: 22px; right: 278px; bottom: 23px; max-width: 550px; }
  .bp-site .bp-batting-message, .bp-batting:is([data-phase="windup"],[data-phase="pitch"]) .bp-batting-message { font-size: 21px; }
  .bp-batting-options { top: auto; bottom: 17px; left: 12px; right: auto; max-width: calc(100% - 338px); flex-wrap: wrap; }
  .bp-batting-options button { font-size: 16px; }
  .has-3d:not(.is-tour) .bp-batting-intro { left: auto; right: 22px; top: auto; bottom: 100px; width: 44vw; }
  .bp-site #play h2, .has-3d:not(.is-tour) #play h2 { font-size: 31px; margin-bottom: 8px; }
  .bp-site #play .gx-meta { display: none; }
  .bp-site #play .gx-sub { font-size: 17px; margin-bottom: 0; }
  .bp-site .bp-batting-help { margin-top: 10px; font-size: 16px; }
  .bp-batting-help__keys { display: none; }
  .bp-batting[data-phase="finished"] .bp-batting-status { bottom: 87px; right: 182px; }
  .bp-batting[data-paused="true"] .bp-batting-status { bottom: 87px; right: 182px; }
}
