*,*::before,*::after{box-sizing:border-box}:root{--primary:#ffd700;--bg:#111;--card-bg:#1c1c1c;--text:#fff;--odds-bg:#464b4c;--hamburger:#000000}body{margin:0;font-family:'Segoe UI',sans-serif;background:var(--bg);color:var(--text)}h1{font-size:2.25rem;text-align:center;color:var(--primary);margin:1rem 0 0.5rem}#topSection{position:sticky;top:0;z-index:1000;background-color:var(--bg);padding-bottom:0.5rem;box-shadow:0 2px 6px rgba(0,0,0,0.3)}#topSection header img{width:100%;margin:0;padding:0;display:block;height:auto}.day-filter-container{display:flex;flex-wrap:wrap;justify-content:center;gap:0.5rem;padding:0 1rem;margin-bottom:1.5rem}.date-filter-btn{background-color:transparent;color:var(--primary);padding:0.45rem 0.6rem;border-radius:20px;border:1px solid;border-color:var(--primary);font-weight:bold;cursor:pointer;transition:all 0.2s ease}.date-filter-btn.active{background-color:var(--primary);color:var(--hamburger)}.search-container{position:relative;width:100%;max-width:400px;margin:0 auto 1.5rem;padding:0 16px;display:flex;align-items:center;box-sizing:border-box}#searchBar{flex:1;padding:0.5rem 2rem 0.5rem 0.75rem;font-size:1rem;border:1px solid #444;border-radius:20px;background:#222;color:var(--text);box-sizing:border-box}#clearSearch{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text);font-size:1.5rem;font-weight:bold;cursor:pointer;line-height:1;padding:0 16px;display:none}#headerBar{height:75px;width:100%;background:linear-gradient(to right,#ffe601,#ffc800);display:flex;align-items:center;padding:0 20px}.hamburger{display:none;font-size:1.5rem;background:transparent;border:none;color:var(--hamburger);position:fixed;top:1rem;right:1rem;z-index:1100;cursor:pointer}section{margin-bottom:2rem}section:first-of-type{padding-top:0}.group-heading,.market-heading{color:var(--primary);font-size:1.2rem;margin:2rem 1rem 0.5rem;border-bottom:1px solid #333;padding-bottom:0.25rem}.market-heading{padding-top:0.1rem}.ev-cd{padding-top:0.2rem}section.collapsed .grid{display:none}section .grid{transition:max-height 0.3s ease;overflow:hidden}#emptyMessage{text-align:center;color:var(--primary);font-size:1rem;padding:0 16px;display:none;width:100%}#expiredMessage,#noMatchMessage{display:none;text-align:center;color:var(--primary);padding-top:6.5rem;font-size:1.15rem}.flags{width:1em;height:1em;margin-bottom:-0.1em;border-radius:50%;overflow:hidden}.fi-international.fis{background-image:url(international.svg)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0.75rem;align-items:stretch;padding:0.5rem 1rem 1rem}.card{position:relative;background:var(--card-bg);padding:0.75rem;border-radius:6px;box-shadow:0 0 4px rgba(255,215,0,0.5);display:flex;flex-direction:column;font-size:0.95rem}.card h2{margin:0 0 0.25rem;font-size:1rem;color:var(--primary);padding-right:2rem}.card p{margin:0.15rem 0}.card > .ev-cd{margin-top:0;margin-bottom:0.15rem}.oc-g{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem;margin-top:0.5rem;text-align:center}.oc-p{display:flex;flex-direction:column;align-items:center;gap:0.25rem}.oc-h{font-weight:bold;color:var(--text);font-size:1rem}.oc-b{width:100%;box-sizing:border-box;padding:0.5rem 1rem;font-weight:bold;font-size:1rem;background-color:var(--odds-bg);color:var(--text);border-radius:8px;cursor:pointer;transition:all 0.2s ease}.oc-b.selected{background-color:var(--primary);color:#111;border-color:var(--primary)}.card-check{appearance:none;-webkit-appearance:none;width:24px;height:24px;border:2px solid var(--primary);border-radius:50%;background-color:var(--card-bg);position:absolute;top:8px;right:8px;cursor:pointer;transition:background-color 0.2s,border-color 0.2s}.card-check:checked{background-color:var(--primary);border-color:var(--primary)}.card-check:checked::before{content:'✔';display:block;text-align:center;font-size:16px;color:#111;line-height:24px}#myCardButton,#clearButton,#collapseAllButton{display:block;margin:0;padding:0.5rem 1rem;font-size:1rem;border-radius:8px;cursor:pointer}#myCardButton{background-color:var(--primary);color:#111;border:none}#clearButton{background-color:#f8d7da;color:#721c24;border:none}#collapseAllButton{background-color:var(--odds-bg);color:var(--text);border:none}.button-row{display:flex;justify-content:center;gap:2rem;margin:1rem 0;width:100%}.button-row button{padding:0.5rem 1rem;font-size:1rem;cursor:pointer}@media (max-width:600px){h1{font-size:1.75rem}.button-row{display:none;flex-direction:column;width:90vw;max-width:400px;align-items:center;background-color:var(--card-bg);padding:1rem;position:fixed;top:3.5rem;right:1rem;z-index:1000;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,0.3)}.button-row.active{display:flex}.hamburger{display:block}.search-container,#clearSearch{padding:0 24px}.card{font-size:0.85rem}.oc-g{grid-template-columns:1fr}.oc-h,.oc-b,.oc-p{width:100%}.button-row{flex-direction:column;align-items:center}.button-row button{width:80%;margin-bottom:0.5rem}}.hidden{display:none !important}.market-heading{cursor:pointer;display:flex;align-items:center}.market-toggle{color:var(--primary);font-weight:bold;font-size:1.25rem;margin-right:0.5rem;user-select:none}.market-heading.collapsed + .oc-g{display:none}body.betting-slip-active section:first-of-type{padding-top:1rem}body.betting-slip-active .group-heading{display:none}body.betting-slip-active .grid{display:block;padding:0}body.betting-slip-active .card{margin:0 1rem 0.75rem}body.betting-slip-active section{margin-bottom:0}body.betting-slip-active .grid{overflow:visible}#consentBanner{position:fixed;bottom:0;left:0;width:100%;background-color:var(--card-bg);color:var(--text);z-index:2000;padding:1rem;box-shadow:0 -2px 10px rgba(0,0,0,0.5);transition:transform 0.3s ease-in-out;transform:translateY(0)}#consentBanner.hidden{transform:translateY(100%);display:block !important}.consent-content{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:800px;margin:0 auto;text-align:center}.consent-content p{margin:0;font-size:0.9rem}.consent-buttons{display:flex;gap:1rem}.consent-btn{padding:0.5rem 1.5rem;border-radius:20px;border:1px solid var(--primary);background-color:transparent;color:var(--primary);font-weight:bold;cursor:pointer;transition:all 0.2s ease}.consent-btn.consent-accept{background-color:var(--primary);color:var(--hamburger)}@media (min-width:600px){.consent-content{flex-direction:row;justify-content:space-between;text-align:left}}#betCodeButton{background-color:var(--odds-bg);color:var(--text);border:none;display:block;margin:0;padding:0.5rem 1rem;font-size:1rem;border-radius:8px;cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.75);z-index:3000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content{background:var(--card-bg);border-radius:6px;padding:1.5rem;width:100%;max-width:800px;position:relative;max-height:85vh;display:flex;flex-direction:column}.modal-close{position:absolute;top:0.5rem;right:1rem;font-size:2.5rem;color:var(--text);cursor:pointer;line-height:1}#modalDataContainer{margin-top:1.5rem;flex-grow:1;overflow-y:auto;overscroll-behavior:contain}.bet-code-group{margin-bottom:1.5rem}.bet-code-group h3{color:var(--primary);border-bottom:1px solid #333;padding-bottom:0.25rem;margin-top:0}.bet-code-table{width:100%;border-collapse:collapse;font-size:0.9rem}.bet-code-table th,.bet-code-table td{border:1px solid #444;padding:0.5rem;text-align:left}.bet-code-table th{background-color:var(--odds-bg)}.group-heading{display:flex;align-items:center}.group-heading .section-toggle,.group-heading .flags{flex-shrink:0}.group-heading .flags{margin-right:0.5rem}