:root{color-scheme:dark;--bg: #102018;--panel: #173324;--ink: #e8f3e4;--muted: #9bb59a;--line: #2c5a3d;--accent: #d4c26a;--tone-batter: #e0c45a;--tone-pitcher: #6eb8d8;font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#1c3d2a,var(--bg) 55%);color:var(--ink)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:980px;margin:0 auto;padding:1.5rem 1.25rem 4rem}header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.75rem 1.25rem;border-bottom:1px solid var(--line);padding-bottom:.75rem;margin-bottom:1.5rem}.brand{font-size:1.6rem;letter-spacing:.04em;color:var(--ink)}.sub{color:var(--muted);font-size:.95rem}table{width:100%;border-collapse:collapse;background:color-mix(in srgb,var(--panel) 80%,black)}th,td{padding:.4rem .55rem;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}h1,h2{font-weight:600}h2{margin:1.75rem 0 .5rem;font-size:1.1rem;color:var(--accent)}.muted{color:var(--muted)}.plays{list-style:none;padding:0;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem}.plays li{padding:.2rem 0}.plays .half{margin-top:.85rem;color:var(--accent);font-family:inherit}.brand-block{display:flex;align-items:baseline;gap:1rem}.auth{display:flex;align-items:center;gap:.75rem}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.sub-toolbar{justify-content:flex-start}.sub-toolbar label{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.95rem}.live-actions{margin:.5rem 0 1rem}.live-actions .toolbar:last-child{margin-bottom:0}.playoffs{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.series-list{list-style:none;padding:0;margin:.5rem 0 0}.series-list>li{padding:.45rem 0;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.po-games{list-style:none;padding:.25rem 0 0 1rem;margin:0;font-size:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tabletop{margin:1.25rem 0 1.5rem;padding:1rem;background:color-mix(in srgb,var(--panel) 75%,black);border:1px solid var(--line)}.tabletop-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.legend-btn{width:1.7rem;height:1.7rem;padding:0;border-radius:999px;font-weight:700;line-height:1;color:var(--accent);border-color:var(--accent)}.dice-tray{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:.85rem}.die{--die-hi: #fffef8;--die-mid: #f0ebe0;--die-lo: #cfc6b4;--die-edge: #5c564c;--die-shadow: #8a8274;--die-label: var(--muted);position:relative;width:3.35rem;height:3.35rem;filter:drop-shadow(0 3px 2px rgb(0 0 0 / .32))}.die.tone-batter{--die-hi: #fff8d8;--die-mid: #f0d878;--die-lo: #c9a430;--die-edge: #8a7020;--die-shadow: #a88828;--die-label: var(--tone-batter)}.die.tone-pitcher{--die-hi: #e8f6ff;--die-mid: #8ecce8;--die-lo: #3a8ab0;--die-edge: #2a6a88;--die-shadow: #4a90b0;--die-label: var(--tone-pitcher)}.die svg{width:100%;height:100%;display:block;overflow:visible}.die-label{position:absolute;top:-.85rem;left:0;right:0;text-align:center;font-size:.65rem;letter-spacing:.04em;text-transform:uppercase;color:var(--die-label);font-weight:600}.die.pulse{animation:die-pop .45s ease}@keyframes die-pop{0%{transform:scale(.72) rotate(-8deg);opacity:.35}55%{transform:scale(1.08) rotate(3deg);opacity:1}to{transform:scale(1) rotate(0)}}.dice-readout{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.35}.dice-readout p{margin:.15rem 0}.tone-batter{color:var(--tone-batter)}.tone-pitcher{color:var(--tone-pitcher)}.tabletop-key{display:flex;align-items:center;gap:.85rem;margin-left:auto;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.tabletop-key .swatch{display:inline-block;width:.55rem;height:.55rem;margin-right:.28rem;border-radius:2px;vertical-align:-.05rem}.tabletop-key .swatch.batter{background:var(--tone-batter);box-shadow:0 0 0 1px color-mix(in srgb,var(--tone-batter) 40%,#000)}.tabletop-key .swatch.pitcher{background:var(--tone-pitcher);box-shadow:0 0 0 1px color-mix(in srgb,var(--tone-pitcher) 40%,#000)}.card-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.85rem;margin-top:1rem}.player-card{--card-tone: var(--line);background:color-mix(in srgb,var(--bg) 40%,var(--panel));border:1px solid var(--line);padding:.65rem .7rem .75rem}.player-card.role-batter{--card-tone: var(--tone-batter)}.player-card.role-pitcher{--card-tone: var(--tone-pitcher)}.player-card.active{border-color:var(--card-tone);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--card-tone) 55%,transparent),0 0 0 1px color-mix(in srgb,var(--card-tone) 35%,transparent)}.player-card header{margin-bottom:.45rem}.player-card .role{display:block;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--card-tone);font-weight:600}.player-card h3{margin:.15rem 0;font-size:1rem;font-weight:600}.player-card .chart{width:100%;font-size:.78rem;background:transparent}.player-card .chart th,.player-card .chart td{padding:.15rem .3rem;border-bottom-color:color-mix(in srgb,var(--line) 55%,transparent)}.player-card .chart tr.hit{background:color-mix(in srgb,var(--card-tone) 28%,transparent);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,#000 55%,transparent);overscroll-behavior:contain}.modal{width:min(36rem,100%);max-height:min(85vh,40rem);overflow:auto;overscroll-behavior:contain;padding:1rem 1.1rem 1.15rem;background:var(--panel);border:1px solid var(--line);color:var(--ink)}.modal-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.modal-head h2{margin:0;font-size:1.15rem;color:var(--accent)}.modal-intro{margin:0 0 .75rem;font-size:.9rem}.legend-subhead{margin:1.25rem 0 .5rem;font-size:1rem;font-weight:600;color:var(--accent)}.modal-tabs{display:flex;gap:.35rem;margin-bottom:.85rem;border-bottom:1px solid var(--line);padding-bottom:.5rem}.modal-tabs button{background:transparent;border:none;color:var(--muted);padding:.25rem .55rem;cursor:pointer;font:inherit}.modal-tabs button.active{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.rules-panel h3{margin:.85rem 0 .35rem;font-size:.95rem;color:var(--accent)}.rules-panel h3:first-child{margin-top:0}.rules-panel ol,.rules-panel ul{margin:0 0 .35rem;padding-left:1.2rem}.rules-panel li{margin:.3rem 0;font-size:.92rem;line-height:1.4}.legend-table{width:100%;background:color-mix(in srgb,var(--bg) 35%,var(--panel))}.legend-table .code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700;width:3.5rem;color:var(--accent)}button,select{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);padding:.35rem .7rem;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button.linkish{background:transparent;border:none;color:var(--accent);padding:0;text-decoration:underline}.edit-lineup{list-style:none;padding:0;margin:0 0 1rem}.edit-lineup li{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.25rem 0;border-bottom:1px solid var(--line)}.row-actions{display:flex;gap:.35rem}.diamond{position:relative;width:12rem;height:12rem;margin:1.25rem 0}.diamond .base{position:absolute;width:4.2rem;height:4.2rem;display:grid;place-items:center;text-align:center;font-size:.7rem;line-height:1.15;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 70%,black);transform:rotate(45deg)}.diamond .base span{transform:rotate(-45deg);max-width:3.4rem;overflow:hidden;text-overflow:ellipsis}.diamond .base.on{background:color-mix(in srgb,var(--accent) 35%,var(--panel));border-color:var(--accent);color:var(--ink)}.diamond .second{top:.2rem;left:3.9rem}.diamond .third{top:3.9rem;left:.2rem}.diamond .first{top:3.9rem;right:.2rem;left:auto}.diamond .plate{position:absolute;bottom:.4rem;left:0;right:0;text-align:center;color:var(--muted);font-size:.85rem}.last-play{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95rem;padding:.6rem .75rem;background:color-mix(in srgb,var(--panel) 80%,black);border-left:3px solid var(--accent)}
