/* Shonen Tomatoes — mobile-first redesign, 2026-09-22
   This layer intentionally replaces the legacy desktop-first presentation
   without changing game IDs, data hooks, or battle/build logic. */
:root{--m-ink:#111;--m-paper:#f5f0e6;--m-white:#fff;--m-grey:#dedbd3;--m-red:#d9362b;--m-shadow:4px 4px 0 var(--m-ink)}
*{box-sizing:border-box;min-width:0}
html{background:var(--m-paper);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;background-color:var(--m-paper);background-image:radial-gradient(circle at 1px 1px,rgba(17,17,17,.12) 1px,transparent 1.2px);background-size:12px 12px;color:var(--m-ink)}
button,a,select{touch-action:manipulation}.creator-shell{width:100%;max-width:1180px;margin:0 auto;padding:10px 10px 28px}
.creator-header,.progress-card,.stat-picker-card,.machine-card,.support-card,.sheet-card,.result-card,.gauntlet-card{position:static!important;width:100%;margin:0 0 12px!important;padding:14px!important;border:3px solid var(--m-ink)!important;border-radius:0!important;background:var(--m-white)!important;box-shadow:var(--m-shadow)!important;transform:none!important;overflow:visible!important}
.creator-header::after,.sheet-card::before,.slot-machine::before,.slot-machine::after{display:none!important}
.creator-header,.creator-header>div,.header-actions,.machine-topline,.stat-picker-heading,.support-heading,.sheet-heading,.gauntlet-heading,.progress-copy{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important}
.eyebrow,.machine-kicker{margin:0;font:900 .64rem/1.25 "Courier New",monospace;letter-spacing:.12em;text-transform:uppercase}
.creator-header h1{margin:2px 0 4px!important;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(2.35rem,13vw,4rem)!important;line-height:.86!important;overflow-wrap:anywhere}
.header-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
.site-nav-control,.power-button,.primary-button,.secondary-button,.danger-button,.sheet-reset-button{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:44px!important;padding:9px 8px!important;border:2px solid var(--m-ink)!important;border-radius:0!important;background:var(--m-white)!important;color:var(--m-ink)!important;box-shadow:2px 2px 0 var(--m-ink)!important;font:900 .72rem/1.1 "Courier New",monospace!important;text-align:center!important;text-transform:uppercase!important;text-decoration:none!important;white-space:normal!important;overflow-wrap:anywhere!important;transform:none!important}
.primary-button{background:var(--m-ink)!important;color:#fff!important}.danger-button{background:#eee!important}.site-nav-control:active,.power-button:active,.primary-button:active,.secondary-button:active{transform:translate(2px,2px)!important;box-shadow:none!important}
.progress-card{padding:10px 12px!important;background:var(--m-ink)!important;color:#fff!important}.progress-copy{flex-direction:row!important;justify-content:space-between!important;font:900 .66rem/1.2 "Courier New",monospace!important;text-transform:uppercase}.progress-track{height:10px!important;border:2px solid #fff!important;background:#333!important}.progress-fill{background:#fff!important}
.stat-picker-heading h2,.machine-topline h2,.support-heading h2,.sheet-heading h2,.result-heading h2,.gauntlet-heading h2{margin:2px 0!important;font-family:Impact,"Arial Black",sans-serif!important;font-size:clamp(2rem,10vw,3.4rem)!important;line-height:.9!important;text-transform:uppercase!important;overflow-wrap:anywhere}
.attribute-hint{margin:5px 0!important;font-size:.9rem!important;line-height:1.35!important}.power-bar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;width:100%!important}.power-button{gap:6px!important}.power-button strong{min-width:24px!important;height:24px!important;border:2px solid var(--m-ink)!important;font-size:.7rem!important}
.stat-picker-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:12px!important}.stat-choice{position:static!important;min-height:76px!important;padding:9px!important;border:2px solid var(--m-ink)!important;box-shadow:2px 2px 0 var(--m-ink)!important;transform:none!important;overflow:hidden!important}.stat-choice strong{font-size:1.05rem!important;overflow-wrap:anywhere}.stat-choice-group,.stat-choice-status{font-size:.55rem!important}.stat-choice.used{box-shadow:none!important}
.slot-machine{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;margin:12px 0!important;padding:0!important;overflow:visible!important}.slot{position:static!important;display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;width:100%!important;min-height:154px!important;height:auto!important;border:3px solid var(--m-ink)!important;box-shadow:3px 3px 0 var(--m-ink)!important;transform:none!important;overflow:hidden!important}.slot::before{display:none!important}.slot.selected::after{right:5px!important;top:5px!important;border-width:2px!important}.slot .portrait-wrap{width:112px!important;height:100%!important;min-height:154px!important;padding:0!important;border:0!important;border-right:3px solid var(--m-ink)!important}.slot .slot-full-body{display:none!important}.slot .slot-mobile-headshot{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}.slot-copy{display:flex!important;flex-direction:column!important;min-height:0!important;padding:10px!important}.slot-copy>strong{font-size:1.18rem!important;overflow-wrap:anywhere}.slot-current-rating{margin-top:auto!important;padding-top:8px!important}.slot-current-rating .candidate-grade{font-size:1.8rem!important}.slot-current-rating .candidate-special-copy{max-width:58%!important;font-size:.62rem!important;overflow-wrap:anywhere!important}
.machine-message{margin:10px 0!important;padding:9px!important;border:2px solid var(--m-ink)!important;background:#eee!important;font-size:.72rem!important;text-align:center!important}.candidate-panel{position:static!important;margin:10px 0 0!important;border:3px solid var(--m-ink)!important;box-shadow:none!important;overflow:hidden!important}.candidate-heading{display:flex!important;flex-direction:column!important;align-items:flex-start!important;padding:12px!important}.candidate-heading h3{font-size:1.55rem!important}.candidate-heading>p{text-align:left!important}.candidate-groups{padding:10px!important}.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.candidate-attribute{position:static!important;min-height:78px!important;padding:8px!important;border:2px solid var(--m-ink)!important;box-shadow:2px 2px 0 var(--m-ink)!important;overflow:hidden!important}.candidate-attribute.special-field{grid-column:1/-1!important}.candidate-attribute-label{font-size:.58rem!important;overflow-wrap:anywhere}.candidate-grade{font-size:1.65rem!important}.candidate-special-copy{font-size:.68rem!important;overflow-wrap:anywhere!important}
.support-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:12px!important}.support-option{position:static!important;display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;min-height:180px!important;border:3px solid var(--m-ink)!important;box-shadow:3px 3px 0 var(--m-ink)!important;overflow:hidden!important;transform:none!important}.support-image-wrap{width:104px!important;height:100%!important;min-height:180px!important;padding:5px!important;border:0!important;border-right:3px solid var(--m-ink)!important}.support-copy{padding:9px!important}.support-copy h3{font-size:1.2rem!important;overflow-wrap:anywhere}.support-profile{padding:5px!important}.support-metric{font-size:.56rem!important}.support-boost-row{padding:5px!important;font-size:.6rem!important}.support-reasoning{font-size:.63rem!important}.choose-support{margin-top:auto!important}
.sheet-heading-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important}.used-count{align-self:flex-start!important;white-space:normal!important}.build-sheet,.sheet-grid{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.sheet-group{margin-top:14px!important}.attribute-card{position:static!important;overflow:hidden!important;transform:none!important}.attribute-card-head{gap:7px!important}.attribute-card *{overflow-wrap:anywhere}.attribute-card-body.backstory-layout{display:block!important;height:auto!important}.attribute-card-body.backstory-layout>.attribute-source-image{display:none!important}.backstory-copy{max-height:none!important;overflow:visible!important}
.result-identity{display:block!important;padding:12px!important}.result-tier,.result-name{display:block!important;font-size:clamp(1.7rem,9vw,3rem)!important;overflow-wrap:anywhere}.shade-list,.final-support-list{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.result-actions,.share-preview-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.share-preview-frame img{max-width:100%!important;height:auto!important}
.gauntlet-heading .gauntlet-help-button{width:100%!important}.gauntlet-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;overflow:visible!important}.gauntlet-villain-card,.gauntlet-choice-card,.gauntlet-roll-card{position:static!important;display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;width:100%!important;height:auto!important;min-height:190px!important;max-height:none!important;border:3px solid var(--m-ink)!important;box-shadow:3px 3px 0 var(--m-ink)!important;transform:none!important;overflow:hidden!important}.gauntlet-villain-image-wrap{width:104px!important;height:100%!important;min-height:190px!important;padding:5px!important;border:0!important;border-right:3px solid var(--m-ink)!important}.gauntlet-villain-copy{height:auto!important;min-height:0!important;padding:9px!important;overflow:visible!important}.gauntlet-villain-copy strong{font-size:1.2rem!important;overflow-wrap:anywhere}.gauntlet-villain-quote{height:auto!important;min-height:0!important;max-height:7.5rem!important;overflow:auto!important;font-size:.68rem!important}.gauntlet-lineup{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.gauntlet-lineup-card{position:static!important;transform:none!important;overflow:hidden!important}.gauntlet-hud{position:static!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding:10px!important}.gauntlet-hp-block{grid-template-columns:1fr!important}.combat-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.combat-choice-grid button{min-height:70px!important;padding:8px!important;overflow-wrap:anywhere}.battle-breakdown{grid-template-columns:1fr!important}.battle-log-row{grid-template-columns:1fr!important;gap:3px!important}.gauntlet-combat-panel *{max-width:100%;overflow-wrap:anywhere}.battle-fighter,.combatant-card{position:static!important;transform:none!important}
dialog{width:calc(100% - 20px)!important;max-width:680px!important;max-height:88dvh!important;margin:auto!important;padding:0!important;border:3px solid var(--m-ink)!important}.info-dialog-panel,.confirm-dialog form{max-height:86dvh!important;overflow:auto!important;padding:12px!important}.dialog-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.site-footer{margin-top:18px!important;padding:18px 12px!important;font-size:.72rem!important;overflow-wrap:anywhere}
/* manga-page accents: panel gutters, ink bars, screentone; never overlap content */
.stat-picker-card,.machine-card,.support-card,.sheet-card,.result-card,.gauntlet-card{background-image:linear-gradient(135deg,transparent 0 96%,rgba(17,17,17,.08) 96% 100%)!important}.machine-kicker{display:inline-block;width:max-content;max-width:100%;padding:4px 6px;background:var(--m-ink);color:#fff;overflow-wrap:anywhere}.sheet-group h3,.candidate-group h4{transform:none!important;max-width:100%;overflow-wrap:anywhere}
@media(min-width:600px){.creator-shell{padding:18px}.header-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}.stat-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.support-option{display:flex!important;flex-direction:column!important}.support-image-wrap{width:100%!important;height:190px!important;min-height:190px!important;border-right:0!important;border-bottom:3px solid var(--m-ink)!important}.sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gauntlet-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gauntlet-villain-card,.gauntlet-choice-card,.gauntlet-roll-card{display:flex!important;flex-direction:column!important}.gauntlet-villain-image-wrap{width:100%!important;height:220px!important;border-right:0!important;border-bottom:3px solid var(--m-ink)!important}.gauntlet-lineup{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:900px){.creator-shell{padding:26px}.creator-header{display:grid!important;grid-template-columns:minmax(300px,.75fr) minmax(460px,1.25fr)!important;align-items:end!important}.header-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}.stat-picker-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}.slot-machine{grid-template-columns:repeat(3,minmax(0,1fr))!important}.slot{display:flex!important;flex-direction:column!important}.slot .portrait-wrap{width:100%!important;height:260px!important;min-height:260px!important;border-right:0!important;border-bottom:3px solid var(--m-ink)!important}.slot .slot-full-body{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}.slot .slot-mobile-headshot{display:none!important}.support-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sheet-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gauntlet-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.combat-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ===== Mobile-first correction pass: 2026-09-22 ===== */
/* Filled build cards must remain positioning contexts: the legacy series footer is absolute. */
.attribute-card,
.attribute-card.filled{position:relative!important;padding-bottom:34px!important;overflow:hidden!important}
.attribute-card-footer{position:absolute!important;left:12px!important;right:12px!important;bottom:9px!important;max-width:calc(100% - 24px)!important;width:auto!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:right!important;z-index:4!important}

/* Plot Armor: never allow stars to escape their panel. */
.star-row,.plot-stars{box-sizing:border-box!important;max-width:100%!important;min-width:0!important}
.star-shell{flex:0 1 24px!important;min-width:0!important}
.slot-current-rating .star-row.compact,
.focused-candidate-value .star-row{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:100%!important;max-width:260px!important;gap:2px!important;overflow:hidden!important}
.slot-current-rating .star-row.compact .star-shell,
.focused-candidate-value .star-row .star-shell{width:100%!important;max-width:34px!important;height:34px!important;font-size:32px!important;margin:0!important}
.group-world .attribute-card-body.plot-armor-layout{display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;grid-template-rows:96px!important;gap:10px!important;min-height:96px!important;height:auto!important}
.group-world .attribute-card-body.plot-armor-layout>.attribute-source-image{width:96px!important;height:96px!important;min-width:96px!important;min-height:96px!important;max-width:96px!important;max-height:96px!important}
.group-world .attribute-card-body.plot-armor-layout>.plot-stars{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:100%!important;height:96px!important;min-height:96px!important;padding:8px!important;gap:2px!important;overflow:hidden!important;align-items:center!important;justify-items:center!important}
.group-world .attribute-card-body.plot-armor-layout>.plot-stars .star-shell{width:100%!important;max-width:44px!important;height:44px!important;font-size:42px!important;margin:0!important}

/* Keep the build sheet comfortably readable on phone/tablet portrait. */
@media(max-width:899px){.sheet-grid{grid-template-columns:1fr!important}}

/* Gauntlet selection: cards are rows, not five skinny desktop columns. */
.gauntlet-grid>.gauntlet-choice-row,
.gauntlet-grid>.gauntlet-roll-machine{display:grid!important;grid-template-columns:1fr!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;width:100%!important;min-width:0!important;max-width:100%!important;gap:10px!important;margin:0!important;padding:10px 0!important;overflow:visible!important}
.gauntlet-grid .gauntlet-choice-card,
.gauntlet-grid .gauntlet-roll-card{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;width:100%!important;height:auto!important;min-height:150px!important;max-width:100%!important;overflow:hidden!important}
.gauntlet-grid .gauntlet-villain-image-wrap{width:112px!important;height:100%!important;min-height:150px!important;aspect-ratio:auto!important;padding:5px!important;border-right:3px solid var(--m-ink)!important;border-bottom:0!important}
.gauntlet-grid .gauntlet-villain-copy{width:auto!important;min-height:150px!important;padding:12px!important;overflow:hidden!important}
.gauntlet-grid .gauntlet-villain-copy strong{font-size:clamp(1.25rem,6vw,2rem)!important;line-height:.95!important;overflow-wrap:break-word!important;word-break:normal!important}
.gauntlet-grid .gauntlet-villain-copy>span{overflow-wrap:anywhere!important}
.gauntlet-grid .gauntlet-villain-quote{max-height:none!important;overflow:visible!important;font-size:.76rem!important;line-height:1.35!important}

/* During combat the lineup is a compact status strip and never becomes the page's scroll anchor. */
.gauntlet-lineup-wrap{overflow-anchor:none!important;margin-top:14px!important;padding-top:12px!important}
.gauntlet-lineup{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;overflow-anchor:none!important}
.gauntlet-lineup .gauntlet-villain-card{display:block!important;min-height:0!important;height:auto!important;box-shadow:2px 2px 0 var(--m-ink)!important;overflow:hidden!important}
.gauntlet-lineup .gauntlet-villain-image-wrap{width:100%!important;height:72px!important;min-height:72px!important;padding:2px!important;border:0!important;border-bottom:2px solid var(--m-ink)!important}
.gauntlet-lineup .gauntlet-villain-copy{min-height:64px!important;height:auto!important;padding:5px!important;overflow:hidden!important}
.gauntlet-lineup .gauntlet-villain-copy strong{font-size:.72rem!important;line-height:1!important;overflow-wrap:anywhere!important}
.gauntlet-lineup .gauntlet-villain-copy>span{font-size:.52rem!important;line-height:1.1!important}
.gauntlet-lineup .gauntlet-villain-quote{display:none!important}
.gauntlet-lineup .gauntlet-villain-card.current-fight{transform:none!important;box-shadow:inset 0 0 0 3px var(--m-ink),2px 2px 0 var(--m-ink)!important}
.gauntlet-lineup .gauntlet-villain-card.current-fight::after{display:none!important;animation:none!important}
.gauntlet-help-button{animation:none!important;will-change:auto!important}
.gauntlet-combat-panel,.gauntlet-battle-log{overflow-anchor:none!important}

@media(min-width:700px){
  .gauntlet-grid>.gauntlet-choice-row,.gauntlet-grid>.gauntlet-roll-machine{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(min-width:1000px){
  .gauntlet-grid>.gauntlet-choice-row,.gauntlet-grid>.gauntlet-roll-machine{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .gauntlet-grid .gauntlet-choice-card,.gauntlet-grid .gauntlet-roll-card{display:flex!important;flex-direction:column!important}
  .gauntlet-grid .gauntlet-villain-image-wrap{width:100%!important;height:190px!important;min-height:190px!important;border-right:0!important;border-bottom:3px solid var(--m-ink)!important}
}

/* ===== Mobile correction pass 2: 2026-09-22 ===== */
/* Selection badge belongs to the card that was actually inspected. */
.slot{position:relative!important}
.slot.selected::after{position:absolute!important;inset:auto 6px auto auto!important;top:6px!important;max-width:calc(100% - 12px)!important;white-space:nowrap!important;z-index:8!important}

/* Power confirmation modal: fit the visual viewport and wrap all copy. */
.confirm-dialog{width:min(560px,calc(100dvw - 20px))!important;max-width:calc(100dvw - 20px)!important;max-height:calc(100dvh - 20px)!important;margin:auto!important;overflow:hidden!important}
.confirm-dialog form{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 26px)!important;padding:16px!important;overflow-x:hidden!important;overflow-y:auto!important}
.confirm-dialog h2,.confirm-dialog p,.confirm-dialog #confirmExtra{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}
.confirm-dialog h2{font-size:clamp(1.8rem,9vw,3rem)!important;line-height:.95!important}
.confirm-dialog p{font-size:clamp(.9rem,4vw,1.05rem)!important;line-height:1.4!important}
.confirm-dialog .dialog-actions{position:static!important;width:100%!important;grid-template-columns:1fr 1fr!important}
.confirm-dialog .dialog-actions button{min-width:0!important;width:100%!important}

/* Chosen gauntlet: readable stacked cards on mobile instead of four narrow columns. */
.gauntlet-lineup{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.gauntlet-lineup .gauntlet-villain-card{display:grid!important;grid-template-columns:108px minmax(0,1fr)!important;width:100%!important;min-height:126px!important;height:auto!important}
.gauntlet-lineup .gauntlet-villain-image-wrap{width:108px!important;height:126px!important;min-height:126px!important;padding:3px!important;border:0!important;border-right:3px solid var(--m-ink)!important}
.gauntlet-lineup .gauntlet-villain-image{width:100%!important;height:100%!important;object-fit:cover!important}
.gauntlet-lineup .gauntlet-villain-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;width:auto!important;min-height:126px!important;height:auto!important;padding:10px!important;overflow:hidden!important}
.gauntlet-lineup .gauntlet-villain-copy strong{font-size:clamp(1.1rem,5vw,1.55rem)!important;line-height:1!important;overflow-wrap:break-word!important;word-break:normal!important}
.gauntlet-lineup .gauntlet-villain-copy>span{font-size:.68rem!important;line-height:1.2!important;overflow-wrap:break-word!important;word-break:normal!important}
.gauntlet-lineup .gauntlet-villain-tier{margin-bottom:5px!important}
.gauntlet-lineup .gauntlet-villain-quote{display:none!important}
@media(min-width:700px){.gauntlet-lineup{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(min-width:1000px){.gauntlet-lineup{grid-template-columns:repeat(4,minmax(0,1fr))!important}.gauntlet-lineup .gauntlet-villain-card{display:block!important;min-height:0!important}.gauntlet-lineup .gauntlet-villain-image-wrap{width:100%!important;height:120px!important;min-height:120px!important;border-right:0!important;border-bottom:3px solid var(--m-ink)!important}.gauntlet-lineup .gauntlet-villain-copy{min-height:100px!important;padding:8px!important}}

/* ===== Tablet correction pass: 2026-09-22 ===== */
/* The five-card chooser is one full-width component inside .gauntlet-grid.
   Do not let the outer tablet grid squeeze the whole chooser into one column. */
.gauntlet-grid > .gauntlet-choice-row,
.gauntlet-grid > .gauntlet-roll-machine,
.gauntlet-grid > .gauntlet-boss-reveal{
  grid-column:1 / -1!important;
}

/* Give villain choices useful card widths on tablets. */
@media (min-width:700px) and (max-width:999px){
  .gauntlet-grid{grid-template-columns:1fr!important}
  .gauntlet-grid > .gauntlet-choice-row,
  .gauntlet-grid > .gauntlet-roll-machine{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
  }
  .gauntlet-grid .gauntlet-choice-card,
  .gauntlet-grid .gauntlet-roll-card{
    display:grid!important;
    grid-template-columns:132px minmax(0,1fr)!important;
    min-height:190px!important;
  }
  .gauntlet-grid .gauntlet-villain-image-wrap{
    width:132px!important;
    height:190px!important;
    min-height:190px!important;
    border-right:3px solid var(--m-ink)!important;
    border-bottom:0!important;
  }
  .gauntlet-grid .gauntlet-villain-copy{min-height:190px!important}
  .gauntlet-grid .gauntlet-villain-copy strong{font-size:clamp(1.2rem,3.3vw,1.7rem)!important}
}

/* Resource gauges must size to the fighter card, not their old desktop minimums. */
.combat-resource-row{
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:10px!important;
}
.combat-resource,.energy-gauge,.team-gauge{width:100%!important;max-width:100%!important;min-width:0!important}
.team-gauge{box-sizing:border-box!important}

/* Two side-by-side fighters plus two resource gauges is too dense at iPad portrait widths. */
@media (max-width:899px){
  .battle-arena{grid-template-columns:1fr!important}
}
@media (max-width:520px){
  .combat-resource-row{grid-template-columns:1fr!important}
}

/* ===== Mobile villain quote expansion: 2026-09-22 =====
   Let the page itself scroll instead of creating/clipping a nested quote window. */
.gauntlet-grid .gauntlet-choice-card,
.gauntlet-grid .gauntlet-roll-card{
  align-items:stretch!important;
}
.gauntlet-grid .gauntlet-villain-copy{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.gauntlet-grid .gauntlet-villain-quote{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  scrollbar-gutter:auto!important;
  overscroll-behavior:auto!important;
  white-space:pre-line!important;
}
