:root{--font-display: "Bebas Neue", sans-serif;--font-body: "Karla", sans-serif;--ink: #1f271f;--muted: #5c6b60;--panel: #fefaf3;--panel-alt: #f5efe4;--accent: #d2772f;--accent-2: #2a7c65;--accent-3: #1b4d8f;--danger: #b23b3b;--home-color: #2a7c65;--away-color: #c0562d;--field: #1d5b43;--field-dark: #144434;--field-line: rgba(255, 255, 255, .35);--shadow: 0 18px 40px rgba(31, 27, 21, .18);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--ink);min-height:100vh;background-color:#f3efe6;background-image:radial-gradient(circle at top left,rgba(210,119,47,.18),transparent 45%),radial-gradient(circle at 80% 15%,rgba(42,124,101,.18),transparent 50%),repeating-linear-gradient(135deg,rgba(31,39,31,.05),rgba(31,39,31,.05) 1px,transparent 1px,transparent 14px)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font-family:inherit}.page{max-width:1400px;margin:0 auto;padding:32px 24px 80px}.top-bar{display:flex;align-items:center;gap:24px;justify-content:space-between;flex-wrap:wrap}.brand{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffffb3;border-radius:999px;box-shadow:var(--shadow);font-weight:600}.brand img{width:34px;height:34px}.title-block{flex:1 1 320px;min-width:280px}.eyebrow{font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-3);margin:0 0 6px;font-weight:600}.title-block h1{font-family:var(--font-display);font-size:44px;margin:0;letter-spacing:.04em}.subtitle{margin:6px 0 0;color:var(--muted)}.bankroll-badge{background:var(--panel);padding:14px 18px;border-radius:var(--radius-md);box-shadow:var(--shadow);text-align:right;min-width:160px}.bankroll-badge .label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);display:block}.bankroll-badge .value{font-family:var(--font-display);font-size:28px;display:block}.bankroll-badge .sub{font-size:12px;color:var(--muted)}.dashboard{margin-top:28px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr);gap:22px}.panel{background:var(--panel);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow);border:1px solid rgba(31,39,31,.08);animation:floatIn .6s ease both}.panel:nth-child(2){animation-delay:.08s}.panel:nth-child(3){animation-delay:.16s}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-head h2{margin:0;font-family:var(--font-display);font-size:26px;letter-spacing:.04em}.panel-sub{margin:4px 0 0;color:var(--muted);font-size:13px}.broadcast-panel{display:flex;flex-direction:column;gap:18px}.scoreboard{display:grid;gap:8px}.team-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--radius-md);background:var(--panel-alt);border:1px solid rgba(31,39,31,.08)}.team-row.home{border-left:6px solid var(--home-color)}.team-row.away{border-left:6px solid var(--away-color)}.team-meta{display:flex;align-items:center;gap:12px}.possession-dot{width:12px;height:12px;border-radius:999px;background:transparent;border:2px solid transparent;box-shadow:0 0 0 2px #1f271f26}.team-row.is-possession .possession-dot{background:var(--accent);border-color:#fef3e3;box-shadow:0 0 0 3px #d2772f40}.team-abbr{font-family:var(--font-display);font-size:22px;letter-spacing:.08em}.team-name{font-weight:700}.team-tag{font-size:12px;color:var(--muted)}.team-score{font-family:var(--font-display);font-size:36px}.game-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.meta-block{background:#fff;border-radius:var(--radius-sm);padding:10px 12px;border:1px solid rgba(31,39,31,.08)}.meta-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.meta-value{font-family:var(--font-display);font-size:20px}.field-wrap{display:grid;gap:8px}.field{position:relative;border-radius:var(--radius-md);overflow:hidden;height:240px;background:linear-gradient(180deg,var(--field) 0%,var(--field-dark) 100%);box-shadow:inset 0 0 0 2px #ffffff14}.endzone{position:absolute;top:0;width:9%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);letter-spacing:.2em;color:#fff9;font-size:22px;background:#0003}.endzone-home{left:0}.endzone-away{right:0}.yard-lines{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.25) 0,rgba(255,255,255,.25) 1px,transparent 1px,transparent 9%);pointer-events:none}.marker{position:absolute;top:0;height:100%;width:2px;background:#fff9}.first-marker{background:#f6d86d;box-shadow:0 0 8px #f6d86db3}.ball-marker{position:absolute;top:50%;width:14px;height:14px;border-radius:999px;background:#fef1d6;border:2px solid #8b4a17;transform:translate(-50%,-50%);box-shadow:0 0 10px #fef1d699}.players{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.player{position:absolute;width:22px;height:22px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fef7e8;transform:translate(-50%,-50%);box-shadow:0 6px 10px #00000040}.player.home{background:var(--home-color)}.player.away{background:var(--away-color)}.field-legend{display:flex;gap:14px;font-size:12px;color:var(--muted)}.play-feed{background:#fff;border-radius:var(--radius-md);padding:16px;border:1px solid rgba(31,39,31,.08)}.feed-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.feed-head h2{margin:0;font-size:18px;font-family:var(--font-display);letter-spacing:.04em}.feed-sub{font-size:12px;color:var(--muted)}.feed-list{display:grid;gap:10px;max-height:280px;overflow:auto;padding-right:6px}.feed-item{padding:10px 12px;border-radius:var(--radius-sm);background:var(--panel-alt);border-left:4px solid rgba(31,39,31,.2);font-size:13px;line-height:1.4;animation:feedIn .4s ease}.feed-item.score{border-left-color:var(--accent)}.feed-item.turnover{border-left-color:var(--danger)}.feed-item.penalty{border-left-color:#997540}.feed-item.injury{border-left-color:#7f4d9d}.sim-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.sim-mode,.sim-options{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.speed-control{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid rgba(31,39,31,.12)}.speed-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.speed-buttons{display:inline-flex;gap:6px}.speed-buttons .chip-btn{padding:6px 10px;font-size:12px}.chip-btn,.ghost-btn,.primary-btn{border:none;border-radius:999px;padding:8px 14px;cursor:pointer;font-weight:600}.chip-btn{background:#fff;border:1px solid rgba(31,39,31,.12)}.chip-btn.is-active{background:var(--accent-2);color:#fef7e8}.primary-btn{background:var(--accent);color:#30170a;font-weight:700}.ghost-btn{background:transparent;border:1px solid rgba(31,39,31,.3)}.toggle{display:inline-flex;gap:8px;font-size:13px;color:var(--muted);align-items:center}.betting-panel{display:flex;flex-direction:column;gap:18px}.window-status{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.matchup-card{display:grid;gap:12px}.matchup-team{background:var(--panel-alt);padding:14px 16px;border-radius:var(--radius-md);border:1px solid rgba(31,39,31,.08)}.matchup-team h3{margin:0 0 6px;font-family:var(--font-display);font-size:24px}.matchup-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}.tag{padding:4px 8px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;background:#2a7c6526;color:var(--accent-2);font-weight:700}.tag.away{background:#c0562d26;color:var(--away-color)}.matchup-blurb{font-size:12px;color:var(--muted)}.line-board{background:#fff;border-radius:var(--radius-md);padding:12px;border:1px solid rgba(31,39,31,.08);display:grid;gap:12px}.line-row{display:grid;gap:8px}.line-row strong{font-size:14px}.line-values{display:grid;gap:6px;font-size:12px;color:var(--muted)}.line-team{display:flex;align-items:center;gap:6px}.line-pill{width:10px;height:10px;border-radius:999px;background:var(--accent)}.line-move{font-size:11px;color:#7a8a80;margin-left:6px}.market-list{display:grid;gap:12px}.market-card{border-radius:var(--radius-md);padding:12px;border:1px solid rgba(31,39,31,.08);background:#fff}.market-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.market-head h3{margin:0;font-size:15px}.market-sub{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.market-options{display:grid;gap:8px}.option-btn{width:100%;border:1px solid rgba(31,39,31,.15);border-radius:var(--radius-sm);padding:8px 10px;background:var(--panel-alt);display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:600}.option-btn.is-selected{background:#d2772f2e;border-color:#d2772f66}.option-btn:disabled{opacity:.6;cursor:not-allowed}.window-actions{display:flex;justify-content:flex-end}.slip-panel{display:flex;flex-direction:column;gap:16px}.limit-chip{background:#2a7c651f;color:var(--accent-2);padding:6px 10px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.slip-legs{display:grid;gap:8px;min-height:60px}.slip-leg{background:var(--panel-alt);padding:8px 10px;border-radius:var(--radius-sm);display:flex;justify-content:space-between;gap:8px;align-items:center}.leg-title{font-size:13px;font-weight:600}.leg-sub{font-size:11px;color:var(--muted)}.leg-odds{font-weight:700}.leg-remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.stake-box label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.stake-row{display:flex;gap:10px;margin-top:6px}.stake-row input{flex:1;border-radius:var(--radius-sm);border:1px solid rgba(31,39,31,.2);padding:10px 12px;font-size:15px}.stake-meta{margin-top:6px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.slip-summary{background:#fff;padding:12px;border-radius:var(--radius-md);border:1px solid rgba(31,39,31,.08);display:grid;gap:8px}.summary-row{display:flex;justify-content:space-between;font-size:13px}.tilt-card{background:var(--panel-alt);padding:12px;border-radius:var(--radius-md);border:1px solid rgba(31,39,31,.08);display:grid;gap:8px}.tilt-head{display:flex;justify-content:space-between;font-size:13px;font-weight:600}.tilt-bar{height:8px;background:#1f271f1a;border-radius:999px;overflow:hidden}.tilt-fill{height:100%;width:0;background:linear-gradient(90deg,#2a7c65,#d2772f,#b23b3b);transition:width .3s ease}.ticket-log{display:grid;gap:10px}.ticket-head{display:flex;justify-content:space-between;align-items:center}.ticket-head h3{margin:0;font-size:18px}.ticket-list{display:grid;gap:8px;max-height:240px;overflow:auto;padding-right:6px}.ticket-item{background:#fff;border-radius:var(--radius-sm);padding:10px;border-left:4px solid rgba(31,39,31,.2);display:grid;gap:6px;font-size:12px}.ticket-item.open{border-left-color:var(--accent-2)}.ticket-item.won{border-left-color:#2a7c65}.ticket-item.lost{border-left-color:var(--danger)}.ticket-item.push{border-left-color:#997540}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#151813b3;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .3s ease}.modal.is-visible{opacity:1;pointer-events:auto}.modal-card{background:var(--panel);border-radius:var(--radius-lg);padding:24px;max-width:560px;width:100%;box-shadow:var(--shadow)}.modal-head h2{margin:0;font-family:var(--font-display);font-size:32px}.modal-body{display:grid;gap:16px;margin-top:12px}.recap{background:var(--panel-alt);padding:12px;border-radius:var(--radius-md);font-size:13px;line-height:1.4}.result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.result-stats strong{font-size:18px;display:block}.modal-tickets{display:grid;gap:8px;max-height:220px;overflow:auto;padding-right:6px}.modal-actions{display:flex;justify-content:flex-end;margin-top:16px}@keyframes floatIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes feedIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media (max-width: 1200px){.dashboard{grid-template-columns:minmax(0,1fr)}}@media (max-width: 700px){.page{padding:24px 16px 60px}.title-block h1{font-size:36px}.scoreboard{gap:12px}.field{height:200px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
