/* bc-v108 tappable vs view-only */
:root{--b8a:var(--brand,var(--team,#e11d48))}
.b8i{width:1.05em;height:1.05em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em;margin-right:.4em}
.b8t:not(.b8k){position:relative}
.b8t{overflow:hidden;isolation:isolate;transition:transform .12s ease,box-shadow .18s ease,filter .18s ease;-webkit-tap-highlight-color:transparent}
.btn.b8t,.fx-btn.b8t,.f6btn.b8t,a.btn.b8t{background-image:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.06));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--b8a) 35%,transparent),0 0 10px -4px color-mix(in srgb,var(--b8a) 60%,transparent)}
.b8t:not(#tabs *)::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);background-size:300% 100%;background-repeat:no-repeat;background-position:130% 0;animation:b8sw .9s ease-out .2s 1 both}
.b8t:hover::after,.b8t:focus-visible::after{animation:b8sw .7s ease-out 1}
.b8p::after{animation:b8sw .9s ease-out .2s 1 both,b8sh 7s ease-in-out 3s infinite!important}
.b8t:hover{filter:brightness(1.06)}
.b8t:active{transform:scale(.97);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--b8a) 55%,transparent),0 1px 3px rgba(0,0,0,.35)!important}
.b8t:focus-visible{outline:3px solid color-mix(in srgb,var(--b8a) 80%,#fff);outline-offset:2px}
@keyframes b8sw{from{background-position:130% 0}to{background-position:-30% 0}}
@keyframes b8sh{0%,82%{background-position:130% 0}100%{background-position:-30% 0}}
:root[data-theme=light] .b8t::after{background-size:300% 100%;background-repeat:no-repeat;background-image:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%)}
:root[data-theme=light] .btn.b8t,:root[data-theme=light] .fx-btn.b8t{background-image:linear-gradient(180deg,rgba(255,255,255,.35),rgba(0,0,0,.03))}
.b8vp{position:relative}
.b8v{background-image:none!important;box-shadow:none!important;filter:none!important}
.b8v:not(.b8vp):not(.b8vk)::before{display:none}
.b8v::before{content:"";position:absolute;top:9px;right:9px;width:12px;height:12px;opacity:.45;pointer-events:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
#toast{top:calc(72px + env(safe-area-inset-top))!important;bottom:auto!important;max-width:min(90vw,420px);text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.35)}
@media (prefers-reduced-motion:reduce){.b8t::after{display:none!important;animation:none!important}.b8t{transition:none}}
.b8n::after,.b7rm .b8t::after{display:none!important}
.b8vs{margin:10px auto 12px;max-width:560px;text-align:center;padding:0 12px}
.b8vh{display:block;font:italic 800 13px "Barlow Condensed",sans-serif;letter-spacing:.14em;color:var(--b8a);margin-bottom:4px}
.b8vt{margin:0;font-size:15px;line-height:1.45;overflow-wrap:anywhere;white-space:normal;max-height:9.5em;overflow:auto}
.b8vr{margin:6px 0 4px;font-weight:700;font-size:13px;opacity:.85}
.b8vn{background:none;border:1px solid currentColor;border-radius:999px;color:inherit;opacity:.8;font:600 12px inherit;padding:4px 12px;min-height:32px;cursor:pointer}
.b8vn:focus-visible{outline:3px solid var(--b8a);outline-offset:2px}
/* bc-v108b shimmer */
.b8t:not(.b8n)::after{animation:b8sw .9s ease-out .2s 1 both,b8sh 6.5s ease-in-out calc(2.5s + var(--b8d,0s)) infinite}
.b8t:hover::after,.b8t:focus-visible::after{animation:b8sw .7s ease-out 1}
.b8p::after{animation:b8sw .9s ease-out .2s 1 both,b8sh 5.5s ease-in-out calc(2s + var(--b8d,0s)) infinite!important}
.b8vs{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(255,215,120,.28);border-radius:12px;padding:10px 12px;background:rgba(0,0,0,.28)}
.b8vs::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(110deg,transparent 38%,rgba(255,214,120,.16) 47%,rgba(255,255,255,.14) 50%,rgba(255,214,120,.16) 53%,transparent 62%) no-repeat;background-size:300% 100%;background-position:130% 0;animation:b8sh 5.5s ease-in-out 1.5s infinite}
.b8vr small{color:#fff;opacity:1;font-weight:600}
.b8vt{color:#fff}.b8vr{color:#f3f4f6;opacity:1}
@media (prefers-reduced-motion:reduce){.b8t::after,.b8vs::before{display:none!important;animation:none!important}}
.b7rm .b8vs::before{display:none!important}
#b8vs .b8vr small,:root[data-theme=light] #b8vs .b8vr small{color:#fff!important;opacity:1!important}
#b8vs .b8vt,#b8vs .b8vr{color:#fff!important}
/* bc-v108c clean tab bar (day + night) */
#tabs{background:var(--panel)!important;background-image:none!important;border-top:1px solid var(--line)!important;box-shadow:none!important}
#tabs button,#tabs button.on{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;outline-offset:-3px;clip-path:none!important;text-shadow:none!important;color:var(--mut)!important;font-size:11px!important;letter-spacing:.05em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis}
#tabs button *{box-shadow:none!important;border-color:transparent!important;text-shadow:none!important}
#tabs button::before{display:none!important}
#tabs button::after{content:none!important}
#tabs button.on,#tabs button[aria-current],#tabs button.active{color:var(--brand,#e11d48)!important}
#tabs button.on::after,#tabs button[aria-current]::after{content:""!important;display:block!important;position:absolute;left:30%;right:30%;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--brand,#e11d48)!important;animation:none!important;transform:none!important}
#tabs button svg{stroke:currentColor;color:inherit}
#tabs button:focus-visible{outline:2px solid var(--brand,#e11d48)}
:root[data-theme=light] #tabs{background:#fff!important}
:root[data-theme=light] #tabs button.on,:root[data-theme=light] #tabs button[aria-current]{color:#C8102E!important}:root[data-theme=light] #tabs button.on::after{background:#C8102E!important}
/* bc-v108c Play Book utility controls */
.fieldcard{margin-bottom:16px!important}
.ghostbar{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center}
.ghostbar select{flex:1 1 100%!important;width:100%!important;max-width:100%!important;min-width:0;white-space:normal;text-overflow:ellipsis}
.transport{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center}
.transport input[type=range]{flex:1 1 140px;min-width:0}
.ghostbar .btn,.transport .btn,.pbh .btn,.lnrow .btn,.lnctl .btn{clip-path:none!important;border-radius:10px!important;transform:none;font-style:normal!important;font-family:inherit!important;letter-spacing:.02em!important;text-transform:none!important;box-shadow:none!important;background-image:none!important}
.ghostbar .btn:active,.transport .btn:active,.pbh .btn:active,.lnrow .btn:active{transform:scale(.97)}
.ghostbar .b8t::after,.transport .b8t::after,.pbh .b8t::after,.lnrow .b8t::after{display:none!important}
#view input[type=search],#view input[placeholder^="Search"]{outline:none;box-shadow:none!important}
#view input[type=search]:focus,#view input[placeholder^="Search"]:focus,#view input[type=search]:focus-visible,#view input[placeholder^="Search"]:focus-visible{outline:2px solid var(--brand,#EE334E)!important;outline-offset:1px;border-color:var(--brand,#EE334E)!important;box-shadow:none!important}
:root[data-theme=light] #view input[placeholder^="Search"]:focus{outline-color:#C8102E!important;border-color:#C8102E!important}
.seg button,.fx-seg button,.chips button,.chip{box-shadow:none!important;text-shadow:none!important;background-image:none!important}
.seg button::after,.seg button::before{animation:none!important}
.ghostbar .btn.pri,.transport .btn.pri,.pbh .btn.pri,.lnctl .btn.pri{background:var(--brand,#EE334E)!important;color:#fff!important;border-color:transparent!important}
:root[data-theme=light] .ghostbar .btn.pri,:root[data-theme=light] .transport .btn.pri,:root[data-theme=light] .pbh .btn.pri,:root[data-theme=light] .lnctl .btn.pri{background:#C8102E!important}
.b7vs .b7vtm small,.b7vs small{color:#fff!important;opacity:.92!important;font-weight:700;letter-spacing:.06em}
/* bc-v108c portrait play thumbnails matching the full view */
.playcard .pc-art{aspect-ratio:2/3!important;height:auto!important;container-type:normal!important;overflow:hidden;border-radius:8px}
.playcard .pc-art svg.thumb,.playcard svg.thumb{position:static!important;transform:none!important;width:100%!important;height:100%!important;left:auto;top:auto;display:block}
.playcard .thumb{aspect-ratio:2/3;height:auto!important}
/* ===== bc-v108c eye-comfort ===== */
:root,:root[data-theme=dark]{--bg:#0E1116;--panel:#161B22;--panel2:#1C2129;--ink:#E6EDF3;--mut:#9DA7B3;--line:#2A313A;--nav-bg:#161B22;--hdr2:#161B22;--brand-ink:#FF6B7D;--acc-t:#FF6B7D;--glow:rgba(45,212,191,.25)}
:root[data-theme=light]{--bg:#F4F6F8;--panel:#FFFFFF;--panel2:#EBEEF1;--ink:#1F2933;--mut:#52606D;--line:#D5DBE1;--nav-bg:#FFFFFF;--brand-ink:#B3132B;--acc-t:#B3132B;--glow:rgba(45,212,191,.25)}
body{background:var(--bg)!important;color:var(--ink)}
/* kill all old shimmer/holo/pulse */
.b8t::after,.b8p::after,.b8t:hover::after,.b8t:focus-visible::after,.b8vs::before,.b6g.holo::after,.toolbtn.isnew::after,.tgrph.isnew::after,.hcoll.isnew::after,.fitem.isnew::after{animation:none!important;background:none!important}
.b6g.holo{animation:none!important;background:linear-gradient(var(--panel),var(--panel)) padding-box,linear-gradient(var(--line),var(--line)) border-box!important}
.b7vx{animation:none!important;text-shadow:0 0 14px var(--glow)!important}
.cd-dot{animation:none!important}
/* static soft teal glow only, no pink/red */
.b8p,.b6g,.b7card,.playcard.sel,.playcard.on,.glow,[class*=glow]{box-shadow:0 0 14px var(--glow)!important}
.b8t:not(.b8p){box-shadow:none!important}
[class*=glow],[class*=holo]{animation:none!important}
.b8live{display:inline-flex;align-items:center;gap:6px;font:800 11px/1 inherit;letter-spacing:.08em;color:var(--ink)}
.b8live::before{content:"";width:8px;height:8px;border-radius:50%;background:#2DD4BF}
/* one hero shimmer */
.b8hero{position:relative;overflow:hidden}
.b8hero::after{content:""!important;display:block!important;position:absolute;inset:0;pointer-events:none;z-index:2;transform:translateX(-130%);background:linear-gradient(105deg,transparent 0,rgba(255,255,255,var(--sha,.18)) 50%,transparent 100%)!important;width:30%;animation:none!important}
:root[data-theme=light] .b8hero{--sha:.35}
.b8hero.b8run::after{animation:b8sweep 1200ms cubic-bezier(.4,0,.2,1) 1 both!important}
@keyframes b8sweep{from{transform:translateX(-130%)}to{transform:translateX(430%)}}
#tabs .b8hero::after,.score .b8hero::after{display:none!important}
:root[data-motion=off] *,:root[data-motion=off] *::before,:root[data-motion=off] *::after{animation:none!important;transition:none!important}
/* roster: no white glow, solid text */
#view .roster *,#view [class*=roster] *,#view .rlsec *{text-shadow:none!important;opacity:1}
#view [class*=roster],#view .rlsec{box-shadow:none!important}
.b8mo{display:flex;gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:8px 0}
.b8mo button{all:unset;flex:1;text-align:center;padding:10px 4px;font-weight:700;color:var(--mut);cursor:pointer}
.b8mo button.on{background:#C8102E;color:#fff}
/* Display: sizes, targets, Okabe-Ito, sunlight, dim */
body{font-size:var(--b8fs,16px)}
#view p,#view li,#view label,.sheet p,#modal p{font-size:max(1em,16px)}
.btn,select,input:not([type=range]):not([type=checkbox]):not([type=radio]),#tabs button,.seg button,.b8mo button{min-height:48px}
input[type=checkbox]{min-width:24px;min-height:24px}
input[type=range]{min-height:48px}
:root,:root[data-theme=dark]{--acc:#009E73;--acc2:#E69F00;--red:#D55E00;--blue:#56B4E9;--ok:#009E73;--warn:#E69F00;--bad:#D55E00;--info:#56B4E9}
:root[data-theme=light]{--acc:#007A5A;--acc2:#A86F00;--red:#B34A00;--blue:#0072B2;--ok:#007A5A;--warn:#A86F00;--bad:#B34A00;--info:#0072B2}
.b7pc small,.b7hero small,.b7hero [class*=lbl],.b7gd small,.b7hero .b7st small{color:rgba(255,255,255,.85)!important;opacity:1!important}
.b8disp{margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}
.b8row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;min-height:48px}
.b8row span{display:flex;flex-direction:column}.b8row small{color:var(--mut)}
.b8row input[type=range]{flex:0 1 50%}
#b8dim{position:fixed;inset:0;pointer-events:none;z-index:2147483646;display:none}
:root[data-sun="1"]{--bg:#FFFFFF;--panel:#FFFFFF;--panel2:#F2F2F2;--ink:#000000;--mut:#1A1A1A;--line:#000000;--nav-bg:#FFFFFF;--brand-ink:#7A0010;--acc:#005A40;--acc2:#6B4700;--red:#7A2E00;--blue:#003F66;color-scheme:light}
:root[data-sun="1"] body{background:#fff!important;color:#000}
:root[data-sun="1"] .card,:root[data-sun="1"] .b8row,:root[data-sun="1"] .btn:not(.pri){border-color:#000!important;color:#000}
:root[data-sun="1"] .btn.pri,:root[data-sun="1"] .b8mo button.on{background:#7A0010!important;color:#fff!important}
:root[data-sun="1"] #tabs button{color:#1A1A1A!important}:root[data-sun="1"] #tabs button.on{color:#7A0010!important}
:root[data-sun="1"] .b7gd{background:#5A0010!important}:root[data-sun="1"] .b7hero{background:#0A1F55!important}
:root[data-sun="1"] *{text-shadow:none!important;box-shadow:none!important}
:root[data-theme] #b7vs small,:root[data-theme] .b7vs small,:root[data-theme] .b7vs .b7vtm small{color:#fff!important;opacity:1!important;-webkit-text-fill-color:#fff}
/* bc-v108c: NO moving shimmer anywhere (Jorge) */
.b8hero::after,.b8hero.b8run::after,.b8t::after,.b8vs::before,.b6g.holo::after{animation:none!important;display:none!important;content:none!important}
.b8hero,.b8vs,.b8p{background-image:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 55%)}
.b8t:active,.btn:active{transform:translateY(1px) scale(.98);transition:transform 120ms ease-out}
:root[data-motion=off] .b8t:active,:root[data-motion=off] .btn:active{transform:none}
/* bc-v108c AA fixes from audit */
:root:not([data-sun="1"]) .btn.pri{background-color:#C8102E!important}
:root[data-theme=light] .b7card small{color:#4A5560!important;opacity:1!important}
:root[data-theme=light] .b7free{color:#047857!important}
:root[data-theme=light] .g{color:#7A5A00!important}:root[data-theme=light] .s{color:#4B5563!important}
.b8vh{color:#FF6B7D!important}:root[data-theme=light] .b8vh{color:#B3132B!important}
:root[data-theme=light] #b7sheet small,:root[data-theme=light] .b7sh small{opacity:1!important}
