:root{--bg:#090a0d;--panel:#16171b;--panel2:#1d1f24;--line:#30323a;--text:#f7f7f9;--muted:#a4a6ae;--red:#ef3340;--blue:#2e5f95}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
body{padding-bottom:76px}.topbar{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 14px;position:sticky;top:0;background:rgba(9,10,13,.96);z-index:20}
.brand{display:flex;align-items:center;gap:10px}.pcb{width:45px;height:45px;border-radius:14px;background:var(--red);display:grid;place-items:center;font-weight:950}.brand span{display:block;font-size:9px;letter-spacing:1.8px;color:#a8aab1;font-weight:900}.brand strong{display:block;font-size:18px}.programs{color:#fff;text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:8px 11px;font-size:11px;font-weight:900}
main{max-width:860px;margin:auto;padding:28px 14px}.view{display:none}.view.active{display:block}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:900;color:#9fa2aa}h1{font-size:30px;margin:4px 0 14px}h2{font-size:17px;margin:0}
.hero{background:linear-gradient(135deg,#22354e,#11151b 58%,#b5121b);border-radius:24px;padding:25px;display:flex;justify-content:space-between;gap:18px;align-items:center}.hero h1{font-size:34px;margin:7px 0}.hero p{margin:0;color:#e4e4e8}.date-badge{background:#0b0c0f;border-radius:20px;min-width:95px;height:95px;display:grid;place-items:center;align-content:center}.date-badge b{font-size:22px}.date-badge span{font-size:10px;color:#aaa}.status{margin:12px 0 18px;border:1px solid var(--line);border-left:4px solid var(--blue);background:var(--panel);border-radius:12px;padding:12px;font-size:12px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:14px 0 9px}.section-title button{background:none;border:0;color:#9dbde2;font-weight:900}
.cards{display:grid;gap:9px}.game{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px;display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center}.game .time{font-weight:950}.game strong{font-size:14px}.game small{display:block;color:var(--muted);margin-top:3px}.round{font-size:9px;color:#9fa2aa;letter-spacing:1px;font-weight:900;text-transform:uppercase}.final{border-left:4px solid var(--red)}.badge{display:inline-block;background:var(--red);border-radius:999px;padding:3px 7px;font-size:9px;font-weight:950;margin-left:6px}
.filters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:16px}select{width:100%;background:var(--panel);border:1px solid var(--line);color:#fff;padding:13px;border-radius:12px;font-size:14px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:15px;cursor:pointer;transition:border-color .15s ease,transform .1s ease}
.team-card:hover{border-color:var(--muted)}
.team-card:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.team-card:active{transform:scale(.99)}.team-card span,.muted{color:var(--muted);font-size:11px}.team-card strong{display:block;font-size:18px;margin:3px 0}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.quick button{background:var(--panel);border:1px solid var(--line);color:#fff;padding:16px;border-radius:14px;font-weight:900;transition:border-color .15s ease,transform .1s ease}
.quick button:hover{border-color:var(--muted)}
.quick button:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.quick button:active{transform:scale(.98)}
table{width:100%;border-collapse:collapse;background:var(--panel);border-radius:14px;overflow:hidden}th,td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:right;font-size:12px}th:first-child,td:first-child{text-align:left}
.bottomnav{position:fixed;bottom:0;left:0;right:0;height:66px;background:#111216;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,1fr);z-index:30}.bottomnav button{background:none;border:0;color:#a5a7ae;font-size:17px;transition:color .15s ease}
.bottomnav button:hover{color:#e4e5ea}
.bottomnav button:focus-visible{outline:2px solid var(--red);outline-offset:-2px}.bottomnav span{display:block;font-size:9px;margin-top:4px}.bottomnav button.active{color:#fff}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.78);display:grid;place-items:center;padding:18px;z-index:50}.modal.hidden{display:none}.modal-card{background:#131419;border:1px solid var(--line);border-radius:20px;padding:20px;max-width:650px;width:100%;max-height:86vh;overflow:auto;position:relative}.close{position:absolute;right:14px;top:10px;background:none;border:0;color:#fff;font-size:28px}.set-team{width:100%;background:var(--blue);color:#fff;border:0;border-radius:11px;padding:12px;font-weight:950;margin:12px 0;cursor:pointer;transition:filter .15s ease,transform .1s ease}
.set-team:hover{filter:brightness(1.12)}
.set-team:focus-visible{outline:2px solid #fff;outline-offset:2px}
.set-team:active{transform:scale(.98)}.roster-row{padding:9px 0;border-bottom:1px solid var(--line)}.roster-row strong{display:inline}.roster-row span{color:var(--muted);font-size:12px}.open{color:#8eb9e8!important;font-weight:900}.my-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px}
#announcementBanner .announcement{margin:-6px 0 16px;background:linear-gradient(135deg,#1b2430,#16171b);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:12px;padding:13px 14px;font-size:13px;font-weight:800;line-height:1.4}
#scheduleNote{color:#b5b7bf;font-size:12px;margin:-5px 0 12px}
@media(max-width:650px){main{padding-top:20px}.hero{padding:20px}.hero h1{font-size:28px}.game{grid-template-columns:75px 1fr}.game>div:last-child{grid-column:2}.team-grid{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}.brand strong{font-size:15px}}
/* Added: division colors, search boxes */
.game{position:relative}.game:not(.final):before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--dot,var(--muted))}.team-card{position:relative}.team-card:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--dot,var(--muted))}.game .g-div-tag,.team-card .g-div-tag{color:var(--dot,var(--muted));font-weight:900;text-transform:uppercase}.search-box{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--text);padding:10px 12px;border-radius:10px;font-size:14px;margin-bottom:10px;box-sizing:border-box;font-family:inherit}
