:root{--bg: #0e0f13;--bg-raised: #1b1d24;--bg-chip: #171921;--line: #191b22;--line-strong: #1e2028;--fg: #f2f3f5;--fg-mid: #9ea3ad;--fg-dim: #8b909a;--fg-faint: #6f747e;--fg-ghost: #5b606a;--accent: #2f6fed;--link: #4d90ff;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.3 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;overscroll-behavior:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.app{height:100%;display:flex;flex-direction:column;max-width:640px;margin:0 auto}.header{flex:none;display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 12px}.tabs{display:flex;gap:8px}.tab{padding:7px 14px;border-radius:999px;background:var(--bg-raised);color:var(--fg-mid);font-weight:600}.tab.active{background:var(--fg);color:var(--bg)}.zone{position:relative;display:inline-block}.zone-label{display:inline-block;padding:7px 12px;border-radius:999px;background:var(--bg-raised);color:var(--fg-mid);font-size:13px;font-weight:600;white-space:nowrap}.zone select{position:absolute;inset:0;width:100%;opacity:0;font-size:16px}.weeks{flex:none;display:flex;gap:8px;align-items:center;height:52px;padding:0 16px;overflow-x:auto;border-bottom:1px solid var(--line-strong);scrollbar-width:none;-webkit-overflow-scrolling:touch}.weeks::-webkit-scrollbar{display:none}.chip{flex:none;padding:6px 12px;border-radius:8px;background:var(--bg-chip);color:var(--fg-mid);font-size:13px;font-weight:600}.chip.active{background:var(--accent);color:#fff}.list{flex:1;overflow-y:auto;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 32px);-webkit-overflow-scrolling:touch}.day{position:sticky;top:0;z-index:1;margin:0;padding:18px 16px 8px;background:var(--bg);color:var(--fg-dim);font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.rows{list-style:none;margin:0;padding:0}.row{display:flex;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}.matchup{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.team{display:flex;align-items:center;gap:8px;min-width:0}.dot{flex:none;width:8px;height:8px;border-radius:50%}.abbr{min-width:44px;font-weight:700}.name{color:var(--fg-dim);font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sub{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.badge{padding:2px 6px;border-radius:4px;background:#22252e;color:var(--fg-mid);font-size:10px;font-weight:700;letter-spacing:.5px}.note{color:var(--fg-faint);font-size:12px;font-style:italic}.meta{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:12px;max-width:118px;text-align:right}.time{font-weight:600}.final .time,.final .abbr{color:var(--fg-faint)}.final .network{color:var(--fg-ghost)}.network{color:var(--link);font-size:12px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.network.tbd{color:var(--fg-faint);font-weight:400}.empty{padding-top:48px;text-align:center}.empty-title{margin:0 0 6px;color:#c7ccd4;font-size:16px;font-weight:600}.empty-hint{margin:0;color:var(--fg-faint);font-size:13px}.footer{margin:0;padding:24px 24px 0;color:var(--fg-ghost);font-size:11px;text-align:center;line-height:1.5}
