/* bc107 pro game-feel. dark-first, sharp angled panels, subtle glow */
:root.b7{--b7cut:14px;--b7glow:0 0 18px rgba(61,139,255,.18);--b7f:"Barlow Condensed","Oswald",system-ui,sans-serif}
:root.b7[data-theme=dark]{--bg:#07090d;--panel:#11141a;--panel2:#181c24;--line:#262c38}
:root.b7 body{background:var(--bg)}
:root.b7 #view h2,:root.b7 #modalBody h2,:root.b7 .b7sh h2{font-family:var(--b7f);font-style:italic;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
:root.b7 #view h3,:root.b7 #modalBody h3{font-family:var(--b7f);font-style:italic;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
:root.b7 #view .card{border-radius:0;clip-path:polygon(0 0,calc(100% - var(--b7cut)) 0,100% var(--b7cut),100% 100%,var(--b7cut) 100%,0 calc(100% - var(--b7cut)))}
:root.b7[data-theme=dark] #view .card{box-shadow:inset 0 1px 0 #ffffff0d}
:root.b7 .btn{border-radius:0;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);font-family:var(--b7f);font-style:italic;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
:root.b7 .btn.pri{box-shadow:none;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--brand) 40%,transparent))}
:root.b7 #tabs{border-top:1px solid var(--line)}
:root.b7 #tabs button{font-family:var(--b7f);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
:root.b7 #tabs button.on{color:var(--ink);text-shadow:0 0 10px color-mix(in srgb,var(--brand) 50%,transparent)}
.b7i{vertical-align:-.15em;flex:none}
h2 .b7i,h3 .b7i{color:var(--brand-ink,var(--brand))}
/* hub */
.b7hub{display:grid;gap:12px;margin:4px 0 16px}
.b7hero{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;padding:18px 18px 14px;color:#fff;background:linear-gradient(135deg,#0d2a6e,#123c9c 55%,#0b1a40);clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));box-shadow:var(--b7glow);width:100%}
.b7ovr{display:flex;flex-direction:column;align-items:center;padding-right:14px;border-right:1px solid #ffffff26;font-family:var(--b7f)}
.b7ovr small{font-size:11px;letter-spacing:.2em;color:#7cc4ff;font-weight:700}.b7ovr b{font-size:46px;font-style:italic;font-weight:800;line-height:1}
.b7who{min-width:0}.b7who h3{margin:0;font:italic 800 30px/1 var(--b7f);text-transform:uppercase;color:#fff}.b7who em{color:#7cc4ff;font-size:.7em}
.b7sub{display:block;font:700 12px var(--b7f);letter-spacing:.12em;color:#c7d6f5;margin:4px 0 8px}
.b7xp{display:flex;justify-content:space-between;font:700 11px var(--b7f);letter-spacing:.08em;color:#c7d6f5}
.b7bar{height:6px;background:#ffffff26;margin-top:4px;clip-path:polygon(0 0,100% 0,calc(100% - 4px) 100%,0 100%)}.b7bar i{display:block;height:100%;background:linear-gradient(90deg,#2f80ff,#6fd3ff);box-shadow:0 0 10px #4aa8ff}
.b7bar.big{height:10px;background:var(--line)}
.b7att{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,1fr);text-align:center;margin-top:10px;font-family:var(--b7f)}
.b7att b{display:block;font-size:22px;font-weight:800}.b7att small{font-size:10px;letter-spacing:.14em;color:#b4c4e6;font-weight:700}
.b7selp{font-size:13px;color:var(--mut)}.b7selp select{margin-left:6px;min-height:36px}
.b7priv{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--mut);margin:0}
.b7gd{all:unset;box-sizing:border-box;cursor:pointer;position:relative;padding:18px;min-height:112px;color:#fff;background:linear-gradient(120deg,#c8102e,#8e0b22 60%,#2a0a12);clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));width:100%}
.b7gd small{font:700 11px var(--b7f);letter-spacing:.16em;color:#ffb3bd}.b7gd b{display:block;font:italic 800 36px/1.05 var(--b7f)}.b7gd span{font:700 15px var(--b7f);letter-spacing:.03em}
.b7gd .b7i{position:absolute;right:18px;bottom:16px;opacity:.9}
.b7tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.b7tile{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;min-height:110px;padding:14px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--c);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);color:var(--ink)}
.b7tile .b7i{color:var(--c);margin-bottom:auto}.b7tile b{font:italic 800 22px/1 var(--b7f);text-transform:uppercase}.b7tile small{font:700 11px var(--b7f);letter-spacing:.12em;color:var(--mut)}
.b7pb{--c:#38bdf8}.b7oj{--c:#eab308}.b7ac{--c:#a78bfa}.b7ca{--c:#34d399}
:root[data-theme=light] .b7tile{box-shadow:0 1px 3px #0f172a14}
.b7tile:focus-visible,.b7hero:focus-visible,.b7gd:focus-visible,.b7card:focus-visible{outline:2px solid #6fd3ff;outline-offset:2px}
.b7row2{display:flex;gap:8px;flex-wrap:wrap}
.b7chip{all:unset;cursor:pointer;display:inline-flex;gap:6px;align-items:center;padding:8px 12px;min-height:28px;border:1px solid var(--line);background:var(--panel2);font:700 13px var(--b7f);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}
/* sheets */
.b7sh h3{margin:14px 0 6px}
.b7ob{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;align-items:center;width:100%;padding:12px;margin:6px 0;border:1px solid var(--line);border-left:3px solid #eab308;background:var(--panel2)}
.b7ob span{flex:1}.b7ob em{font:italic 700 14px var(--b7f);color:#eab308}.b7ob.on{opacity:.65}.b7ob.on .b7i{color:#34d399}
.b7free{display:flex;gap:6px;align-items:center;color:#34d399;font-weight:600}
.b7trk{display:grid;gap:4px;margin-top:10px;max-height:46vh;overflow:auto}
.b7tier{display:flex;gap:10px;align-items:center;padding:8px 10px;background:var(--panel2);border-left:3px solid var(--line)}.b7tier b{font:italic 800 18px var(--b7f);width:28px}.b7tier span{flex:1;font-size:14px}.b7tier.got{border-color:#34d399}.b7tier.got .b7i{color:#34d399}
.b7med{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}
.b7med span{text-align:center;padding:10px;font:italic 800 28px var(--b7f);background:var(--panel2)}.b7med small{display:block;font:700 11px var(--b7f);letter-spacing:.14em;font-style:normal}
.g{color:#d4a017}.s{color:#94a3b8}.b{color:#b45309}
.b7ach{display:flex;gap:12px;align-items:center;padding:10px;margin:6px 0;background:var(--panel2);border-left:3px solid var(--line);color:var(--mut)}.b7ach b{color:var(--ink)}.b7ach small{display:block}
.b7ach.gold{border-color:#d4a017}.b7ach.gold .b7i{color:#d4a017}.b7ach.silver{border-color:#94a3b8}.b7ach.silver .b7i{color:#94a3b8}.b7ach.bronze{border-color:#b45309}.b7ach.bronze .b7i{color:#b45309}
.b7sug{font-size:12px;color:var(--mut);border-left:3px solid #eab308;padding-left:8px}
.b7sc{background:var(--panel2);margin:6px 0;padding:10px 12px;border-left:3px solid var(--line)}.b7sc.gold{border-color:#d4a017}.b7sc.silver{border-color:#94a3b8}.b7sc.bronze{border-color:#b45309}
.b7sc summary{cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:2px 8px}.b7sc summary span{grid-column:1;font-size:12px;color:var(--mut)}.b7sc summary em{grid-row:1/3;grid-column:2;align-self:center;font:italic 800 13px var(--b7f);letter-spacing:.08em}
.b7safe{font-size:13px;border-left:3px solid #f97316;padding-left:8px}
.b7in{display:flex;gap:8px;margin:8px 0}.b7in input{flex:1;min-height:44px}
.b7tg{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.b7tg small{display:block;color:var(--mut);font-size:12px}.b7tg input[type=checkbox]{width:24px;height:24px}
.b7rk{text-align:center}.b7rk>small{font:italic 800 16px var(--b7f);letter-spacing:.3em;color:#6fd3ff}
.b7rkn{display:flex;justify-content:center;align-items:center;gap:16px;font:italic 800 64px/1 var(--b7f);margin:6px 0 10px}.b7rkn span{opacity:.4;font-size:40px}.b7rkn b{text-shadow:0 0 20px #4aa8ff}.b7rkn .b7i{color:#6fd3ff}
.b7stat{display:grid;gap:6px;text-align:left;margin:12px 0}.b7stat>div{display:grid;grid-template-columns:40px 1fr 34px;gap:8px;align-items:center;font-family:var(--b7f)}.b7stat small{font-weight:700;letter-spacing:.12em}.b7stat b{font-size:18px;text-align:right}.b7stat .b7bar{margin:0;background:var(--line)}
.b7rk .b7priv{justify-content:center}
/* VS */
#b7vs{position:fixed;inset:0;z-index:9999;background:#07090d;color:#fff;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto 1fr auto;padding:24px 20px calc(20px + env(safe-area-inset-bottom))}
.b7vh,.b7va{position:absolute;inset:0;pointer-events:none}.b7vh{background:linear-gradient(160deg,#d01836,#7d0a1c);clip-path:polygon(0 0,80% 0,0 80%)}.b7va{background:linear-gradient(160deg,#0b2a7a,#1d5fe0);clip-path:polygon(100% 20%,100% 100%,20% 100%)}
#b7vs>*:not(.b7vh):not(.b7va){position:relative}
.b7vt{text-align:right;font-family:var(--b7f)}.b7vt small{display:block;font-weight:700;letter-spacing:.2em;font-size:12px}.b7vt b{font-size:16px;letter-spacing:.08em}
.b7vtm{display:flex;flex-direction:column;font-family:var(--b7f)}.b7vtm.h{align-items:flex-start;align-self:center}.b7vtm.a{align-items:flex-end;align-self:center;text-align:right}
.b7vtm b{font:italic 800 clamp(34px,10vw,64px)/1 var(--b7f);text-transform:uppercase;max-width:90%;overflow-wrap:anywhere}.b7vtm small{letter-spacing:.2em;font-weight:700;font-size:12px;opacity:.85}.b7vtm svg{filter:drop-shadow(0 0 12px #ffffff40);margin-bottom:8px}
.b7vx{justify-self:center;font:italic 800 clamp(80px,24vw,140px)/1 var(--b7f);text-shadow:0 0 30px #ffffffaa;animation:b7pulse 2.4s ease-in-out infinite}
@keyframes b7pulse{50%{text-shadow:0 0 50px #fff}}
.b7vf p{font-size:13px;color:#c7d6f5}.b7vb{display:flex;gap:10px}.b7vb .btn{flex:1;min-height:48px}
#b7vs .btn:not(.pri){background:#ffffff1a;color:#fff;border-color:#ffffff40}
/* play calls */
.b7pc h3{display:flex;gap:6px;align-items:center;margin:8px 0}
.b7pcr{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}
.b7card{all:unset;box-sizing:border-box;cursor:pointer;flex:0 0 150px;min-height:120px;padding:12px;display:flex;flex-direction:column;gap:4px;scroll-snap-align:start;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);border-top:3px solid var(--brand);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));color:var(--ink)}
.b7card small{font:700 11px var(--b7f);letter-spacing:.1em;color:var(--mut)}.b7card b{font:italic 800 20px/1.05 var(--b7f);text-transform:uppercase;flex:1}.b7card span{font:italic 800 12px var(--b7f);letter-spacing:.14em;color:var(--brand-ink,var(--brand))}
@media(min-width:900px){.b7hub{grid-template-columns:1.2fr 1fr}.b7hero,.b7priv,.b7selp{grid-column:1}.b7gd{grid-column:2;grid-row:1}.b7tiles{grid-column:2;grid-row:2/5;grid-template-columns:1fr 1fr}.b7row2{grid-column:1}}
:root.b7rm *,:root.b7rm *::before,:root.b7rm *::after{animation:none!important;transition:none!important}
@media (prefers-reduced-motion:reduce){.b7vx{animation:none}}
