/* Mobile game views; tables remain available for overview and printing. */
.game-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:0 0 20px;background:var(--line);border-radius:14px}
.game-tabs a{display:flex;justify-content:center;border-radius:10px;font-weight:700;min-height:48px;color:var(--muted)}
.game-tabs a[aria-current=page]{background:var(--primary);color:white}
.batting-cards{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.batting-card{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:14px;padding:10px;min-height:80px}
.batting-spot{width:36px;height:40px;flex:0 0 36px;display:grid;place-items:center;border-radius:10px;background:var(--bg);color:var(--primary);font-size:23px;font-weight:750}
.card-identity{flex:1;min-width:0}.card-identity strong{display:block;overflow-wrap:anywhere}.card-identity span{font-size:13px;color:var(--muted)}
.card-moves{display:flex;flex-direction:column;gap:2px}.card-moves button,.drag-grip{width:44px;min-height:44px;border:0;border-radius:8px;color:var(--primary);background:var(--bg);font-size:22px}
.drag-grip{touch-action:none;cursor:grab;font-size:26px}.drag-grip[hidden],.inning-nav[hidden]{display:none}
.batting-card.dragging{opacity:.55}.batting-card.drop-target{outline:3px solid var(--primary);outline-offset:1px}
.absence-list{display:grid;gap:6px}.absence-card{display:flex;gap:10px;align-items:center;padding:6px;border:1px solid var(--line);border-radius:12px;margin:0;cursor:pointer;min-height:56px}.absence-card strong{overflow-wrap:anywhere;min-width:0}.absence-card:has(input:checked){border-color:var(--primary);background:var(--bg)}.absence-card .available{margin:4px}
.inning-nav{display:grid;grid-template-columns:48px 1fr 48px;gap:10px;align-items:center}.inning-nav button{padding:0;font-size:28px}.inning-nav select{text-align:center;font-weight:700}
.defense-view{margin-bottom:20px}.inning-view[hidden]{display:none} .diamond-field{position:relative;height:560px;background:#129101;border:1px solid #2b5e40;border-radius:24px;isolation:isolate;overflow:hidden}
.field-surface{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.infield-dirt,.pitching-circle{fill:#e0bd88}.infield-grass{fill:#129101}.base-path{fill:none;stroke:#f7e6c9;stroke-width:.35}.foul-line{fill:none;stroke:#fff6e6;stroke-width:.3}.pitching-circle{stroke:#f7e6c9;stroke-width:.25}

.field-base{position:absolute;width:12px;height:12px;background:#fff;border:1px solid #b9a580;transform:translate(-50%,-50%) rotate(45deg);pointer-events:none;z-index:1}
.base-second{left:50%;top:39%}.home-plate{left:50%;top:79%;width:17px;height:18px;transform:translate(-50%,-50%);clip-path:polygon(0 0,100% 0,100% 60%,50% 100%,0 60%)}

.field-player{min-height:56px;padding:3px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;box-shadow:0 2px 6px #15243b0c}
.field-player strong{font-size:17px;line-height:1.2;overflow-wrap:anywhere;max-width:100%;white-space:normal;flex-shrink:0;text-align:center}.field-role{font-size:12px;font-weight:800;color:var(--primary)}.field-jersey{font-size:11px;color:var(--muted)}
.diamond-field .field-player{position:absolute;width:max-content;max-width:30%;min-width:max(44px,calc((100% - 32px)/4));height:auto;transform:translate(-50%,-50%);z-index:2}
.diamond-field [data-position=CF]{left:50%;top:10%}.diamond-field [data-position=LF]{left:18%;top:22%}.diamond-field [data-position=RF]{left:82%;top:22%}.diamond-field [data-position=LCF]{left:34%;top:15%}.diamond-field [data-position=RCF]{left:66%;top:15%}
.diamond-field [data-position=SS]{left:29%;top:44%}.diamond-field [data-position="2B"]{left:71%;top:44%}.diamond-field [data-position="3B"]{left:18%;top:calc(59% + 16px);transform:translateX(-50%)}.diamond-field [data-position="1B"]{left:82%;top:calc(59% + 16px);transform:translateX(-50%)}.diamond-field [data-position=P]{left:50%;top:59%}.diamond-field [data-position=C]{left:50%;top:90%}

.field-strip{background:white;border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:10px}.field-strip h3{font-size:15px;margin:0 0 10px}.field-strip h3 span{color:var(--muted);font-weight:400}.bench-players{display:flex;flex-wrap:wrap;gap:8px}.bench-player{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;min-height:44px;padding:8px 12px;font-size:14px}.bench-player span{color:var(--muted);font-size:12px}.bench-players .field-player{flex:1 0 90px;max-width:140px}.bench-players p{margin:0}
.rotation-dialog{width:calc(100% - 24px);max-width:480px;max-height:80dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;background:white;color:var(--ink);padding:20px}.rotation-dialog::backdrop{background:#0a142b99}.rotation-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.rotation-heading h2{overflow-wrap:anywhere;margin:0}.rotation-heading button{flex:0 0 44px;padding:6px}.rotation-innings{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;margin:20px 0 0}.rotation-innings li{background:var(--bg);border-radius:10px;padding:10px;text-align:center}.rotation-innings span{display:block;font-size:12px;color:var(--muted)}.rotation-innings strong{font-size:18px}
html[data-theme=dark] .batting-card,html[data-theme=dark] .field-player,html[data-theme=dark] .field-strip,html[data-theme=dark] .rotation-dialog{background:#182438}
html[data-theme=dark] .diamond-field{background:#129101;border-color:#326b4a}html[data-theme=dark] .infield-dirt,html[data-theme=dark] .pitching-circle{fill:#9b784d}html[data-theme=dark] .infield-grass{fill:#129101}
@media(min-width:600px){.diamond-field{height:540px}.diamond-field .field-player{min-width:calc((100% - 96px)/4)}.field-player strong{font-size:18px}.card-moves{flex-direction:row}}
@media(max-width:360px){.batting-card{gap:6px;padding:8px}.batting-spot{width:28px;flex-basis:28px}.drag-grip{width:32px}}

.base-marker{fill:#fff;stroke:#b9a580;stroke-width:.12}

.continuous-options{border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:10px 12px;min-width:0}.continuous-options legend{font-size:15px;font-weight:700;padding:0 5px}.continuous-options .bench-choice{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;padding:8px 0;cursor:pointer}.continuous-options .help{margin:8px 0 0}

.game-team-summary{margin:0 0 16px}.game-team-summary h2{margin:0 0 4px}.game-team-summary p{margin:0}.opponent-inning-nav{margin-bottom:0}

.line-score{width:100%;border-collapse:collapse}.line-score th,.line-score td{padding:8px;text-align:left}.line-score input{width:100%;max-width:100px}.game-record-header{padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:16px}

.game-score-summary{margin:10px 0}.game-score-details summary{cursor:pointer;min-height:40px;align-content:center}.game-record-header>p:last-child{margin:6px 0}
