:root{--bg-app:#030303;--bg-card:#0a0a0c;--bg-sidebar:#060608;--bg-elevated:#111114;--bg-base:#0a0a0c;--bg-hover:#ffffff0a;--border:#ffffff12;--border-hover:#ffffff24;--border-subtle:#ffffff0a;--transition-normal:.2s ease;--accent:#0070f3;--accent-rgb:0, 112, 243;--accent-soft:rgba(var(--accent-rgb), .12);--text:#f5f5f5;--text-muted:#e2e8f0;--text-dim:#cbd5e1;--success:#00e69d;--success-soft:#00e69d1a;--danger:#f36;--danger-soft:#ff33661a;--warning:#fa0;--warning-soft:#ffaa001a;--sidebar-w:240px;--radius:16px;--radius-sm:10px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Outfit", var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.875rem;--fs-md:.9375rem;--fs-lg:1rem;--fs-xl:1.125rem;--fs-xl2:1.25rem;--fs-2xl:1.375rem;--fs-3xl:1.75rem;--fs-4xl:2.25rem;--fs-5xl:3rem;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.5;--lh-relaxed:1.6;--lh-loose:1.75;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);font-weight:var(--fw-regular);background:var(--bg-app);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";font-variant-numeric:tabular-nums;max-width:100vw;overflow-x:hidden}img,svg,video,canvas,audio,iframe,embed,object{max-width:100%;height:auto}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1,h2,h3,h4,.brand-name,.kpi-value,.team-name,.pred-winner,.modal-title,.history-day-title{font-family:var(--font-display);letter-spacing:-.02em}h1{font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);text-wrap:balance}h2{font-size:var(--fs-2xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);text-wrap:balance}h3{font-size:var(--fs-xl);font-weight:var(--fw-semibold);line-height:var(--lh-snug);text-wrap:balance}h4{font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-snug);text-wrap:balance}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.app-layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid var(--border);z-index:100;flex-direction:column;height:100vh;display:flex;position:fixed}.sidebar-header{border-bottom:1px solid var(--border);margin-bottom:.5rem;padding:1.75rem 1.5rem 1.25rem;position:relative}.brand-name{font-size:var(--fs-2xl);font-weight:var(--fw-black);letter-spacing:-.04em;cursor:pointer;background:0 0;align-items:center;gap:.65rem;text-decoration:none;display:flex}.brand-title-text{font-size:var(--fs-2xl);font-weight:var(--fw-black);letter-spacing:-.03em;background:linear-gradient(135deg,#0070f3,#a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;line-height:1;display:inline-block}.nav-container{flex:1;padding:0 .6rem;overflow-y:auto}.nav-section{margin-bottom:1rem}.nav-label{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.4rem;padding:0 .75rem}.nav-item{color:var(--text-muted);font-size:var(--fs-base);font-weight:var(--fw-semibold);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:.75rem;width:100%;min-height:44px;margin-bottom:1px;padding:.75rem .85rem;font-family:inherit;transition:background .15s,color .15s;display:flex;position:relative}.nav-item:hover{color:var(--text);background:#ffffff0d}.nav-item.active{background:var(--accent-soft);color:var(--accent);border:none;box-shadow:inset 0 0 0 1px #0070f326}.nav-item.active:before{content:"";background:linear-gradient(180deg, var(--accent), #a855f7);border-radius:0 3px 3px 0;width:3px;height:22px;position:absolute;top:50%;left:-.6rem;transform:translateY(-50%)}.sidebar-footer{border-top:1px solid var(--border);text-align:center;padding:.85rem 1.5rem}.sidebar-footer-text{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-dim);letter-spacing:.06em}.main-viewport{min-width:0;margin-left:var(--sidebar-w);flex-direction:column;flex:1;display:flex}.top-bar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;background:#030303d9;justify-content:space-between;align-items:center;gap:1rem;height:64px;padding:0 2.5rem;display:flex;position:sticky;top:0}.page-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:var(--lh-snug);text-wrap:balance;align-items:center;gap:.75rem;min-width:0;display:flex}.page-title-icon{font-size:var(--fs-xl2);flex-shrink:0;align-items:center;line-height:1;display:inline-flex}.page-title-text{font-weight:var(--fw-bold);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mobile-only-brand{display:none}.desktop-only-icon{display:inline-flex}.top-mode-switch{border:1px solid var(--border);background:var(--bg-elevated);border-radius:8px;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;display:inline-grid}.top-mode-btn{min-width:92px;min-height:44px;color:var(--text-muted);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-extrabold);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.65rem .85rem;transition:background .15s,color .15s}.top-mode-btn.active{background:var(--accent);color:#fff}.top-mode-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.top-bar-status{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--success);align-items:center;gap:.5rem;display:flex}.status-dot{background:var(--success);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.content-body{width:100%;max-width:1440px;margin:0 auto;padding:2.5rem}.page-animate{animation:.4s ease-out forwards pageEnter}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:3rem;display:grid}.kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:border-color .2s}.kpi-card:hover{border-color:var(--border-hover)}.kpi-label{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.kpi-value{font-family:var(--font-display);font-size:var(--fs-4xl);font-weight:var(--fw-extrabold);letter-spacing:-.035em;line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.kpi-total{font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--text-muted);line-height:var(--lh-snug);font-variant-numeric:tabular-nums}.kpi-sub{font-size:var(--fs-xs);color:var(--text-dim);font-weight:var(--fw-medium);line-height:var(--lh-snug);margin-top:.5rem}.section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.section-title{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:-.025em;line-height:var(--lh-snug);text-wrap:balance;align-items:center;gap:.6rem;display:flex}.export-buttons{align-items:center;gap:.5rem;display:flex}.loading-state,.empty-state{text-align:center;color:var(--text-muted);padding:5rem 2rem}.empty-icon{font-size:var(--fs-5xl);margin-bottom:1rem;display:block}.empty-state h3{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-snug);text-wrap:balance;margin-bottom:.5rem}.empty-state p{font-size:var(--fs-base);max-width:400px;line-height:var(--lh-relaxed);color:var(--text-dim);text-wrap:pretty;margin:0 auto}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;margin:0 auto 1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.branded-loader{flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner-wrapper{justify-content:center;align-items:center;width:60px;height:60px;display:flex;position:relative}.spinner-wrapper .spinner{border-width:3.5px;width:100%;height:100%;margin:0;position:absolute;inset:0}.loader-logo{object-fit:contain;z-index:1;width:32px;height:32px;animation:2s ease-in-out infinite logo-pulsate}@keyframes logo-pulsate{0%,to{opacity:.8;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.nav-logo{object-fit:contain;width:auto;height:28px}.match-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;display:grid}.match-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;transition:all .25s;display:flex}.match-card:hover{border-color:var(--border-hover);transform:translateY(-3px)}.match-card.live{background:linear-gradient(180deg, var(--bg-card) 0%, #0070f30a 100%);border-color:#0070f359;box-shadow:0 4px 20px #0070f314}.match-card.live .prediction-section{background:#0070f30d;border-top-color:#0070f32e}.match-card.live-pinned{background:linear-gradient(180deg, var(--bg-card) 0%, #00e69d0a 100%);border-color:#00e69d73;box-shadow:0 4px 20px #00e69d14}.match-card.live-pinned .prediction-section{background:#00e69d0a;border-top-color:#00e69d2e}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.market-disclaimer{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:var(--fs-base);line-height:var(--lh-normal);border-radius:8px;margin-bottom:1.25rem;padding:.85rem 1rem}.market-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.market-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:1.25rem;padding:1.5rem;transition:all .25s;display:flex}.market-card:hover{border-color:var(--border-hover);transform:translateY(-3px)}.market-header{justify-content:space-between;align-items:flex-start;display:flex}.market-info{flex-direction:column;gap:.25rem;display:flex}.market-symbol{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--accent);letter-spacing:-.02em;line-height:var(--lh-tight)}.market-name{font-size:var(--fs-sm);color:var(--text-dim);line-height:var(--lh-snug)}.market-price{text-align:right}.current-price{font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.price-change{font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;margin-top:.25rem}.price-change.up{color:var(--success)}.price-change.down{color:var(--danger)}.prediction-signal{font-size:var(--fs-lg);font-weight:var(--fw-black);text-align:center;border-radius:8px;margin:.5rem 0;padding:.5rem}.prediction-signal.buy{background:var(--success-soft);color:var(--success);border:1px solid #00e69d33}.prediction-signal.sell{background:var(--danger-soft);color:var(--danger);border:1px solid #f363}.prediction-signal.hold{background:var(--warning-soft);color:var(--warning);border:1px solid #fa03}.prediction-signal.compact{width:74px;font-size:var(--fs-sm);margin:0;padding:.35rem .5rem}.prediction-sublabel{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-align:center;margin-top:-.25rem;margin-bottom:.25rem}.market-trade-meta{color:var(--text-dim);font-size:var(--fs-sm);font-weight:var(--fw-bold);flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.market-pick-time{color:var(--text-muted)}.market-history-timeline{color:var(--text-dim);font-size:var(--fs-xs);font-weight:var(--fw-medium);flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.25rem;display:flex}.market-rationale{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text-muted);-webkit-line-clamp:3;text-wrap:pretty;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.market-history-list{flex-direction:column;gap:1rem;display:flex}.market-history-row{border:1px solid var(--border);border-radius:var(--radius-lg,14px);background:var(--bg-card);transition:border-color var(--transition-normal), box-shadow var(--transition-normal);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex;box-shadow:0 4px 12px #00000026}.market-history-row:hover{border-color:var(--border-hover);box-shadow:0 6px 18px #00000038}.market-history-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.market-info{align-items:center;gap:.65rem;display:flex}.market-symbol{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-black);color:var(--text-bright,#fff);letter-spacing:.02em}.market-name{font-size:var(--fs-sm);color:var(--text-dim);font-weight:var(--fw-medium)}.market-timeline{background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:12px;grid-template-columns:minmax(130px,1fr) auto minmax(130px,1fr) minmax(180px,1.2fr);align-items:center;gap:1.25rem;padding:1rem 1.25rem;display:grid}.timeline-node{flex-direction:column;gap:.25rem;min-width:0;display:flex}.timeline-node-label{font-size:10px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim)}.timeline-node-value{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-black);color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere}.timeline-node-time{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.timeline-connector{color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;display:flex}.timeline-arrow{color:var(--accent);opacity:.7}.timeline-duration{letter-spacing:.03em;background:#ffffff0f;border-radius:4px;padding:.15rem .4rem;font-size:10px}.timeline-node.timeline-return{border-left:1px solid var(--border-subtle);flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;padding-left:1.25rem;display:flex}.result-pill{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:.02em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.25rem .65rem;display:inline-flex}.result-pill.correct{color:var(--success);background:var(--success-soft);border:1px solid #00e69d4d}.result-pill.wrong{color:var(--danger);background:var(--danger-soft);border:1px solid #ff33664d}.market-filter-chips{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.market-filter-chips .btn{min-width:44px;min-height:44px;font-size:var(--fs-sm);font-weight:var(--fw-bold);border-radius:999px;padding:.5rem 1.15rem}.market-confidence-legend{font-size:var(--fs-sm);color:var(--text-dim);text-align:center;border-top:1px solid var(--border);margin-top:1.5rem;padding:.75rem}.market-strategy-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:1.5rem;transition:border-color .2s;overflow:hidden}.market-strategy-card[open]{border-color:var(--border-hover)}.market-strategy-summary{background:var(--bg-elevated);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:var(--fw-bold);font-size:var(--fs-md);color:var(--text);justify-content:space-between;align-items:center;padding:.85rem 1.25rem;list-style:none;display:flex}.market-strategy-summary::-webkit-details-marker{display:none}.market-strategy-title{align-items:center;gap:.5rem;display:flex}.market-strategy-toggle-text{font-size:var(--fs-sm);color:var(--text-dim);font-weight:var(--fw-medium)}.market-strategy-content{flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.strategy-pills-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.strategy-pill-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.4rem;padding:.85rem 1rem;display:flex}.signal-accuracy-badge{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:var(--text-dim);background:var(--bg-elevated);border:1px solid var(--border);white-space:nowrap;border-radius:4px;margin-left:auto;padding:.15rem .4rem}.strategy-pill-header{align-items:center;gap:.5rem;display:flex}.strategy-pill-header strong{font-size:var(--fs-base);font-weight:var(--fw-bold)}.strategy-pill-item p{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text-muted);margin:0}.strategy-rules-row{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:1rem;display:grid}.strategy-rule{align-items:flex-start;gap:.75rem;display:flex}.strategy-rule-icon{font-size:var(--fs-2xl);flex-shrink:0;line-height:1}.strategy-rule strong{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text);margin-bottom:.2rem;display:block}.strategy-rule p{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text-muted);text-wrap:pretty;margin:0}@media (width<=768px){.strategy-pills-grid,.strategy-rules-row{grid-template-columns:1fr;gap:.75rem}}.pagination-controls{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.page-indicator{color:var(--text-muted);font-size:var(--fs-base);font-weight:var(--fw-bold)}.live-badge{background:var(--accent);color:#fff;font-size:var(--fs-xs);font-weight:var(--fw-black);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-items:center;gap:.35rem;padding:.25rem .5rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-live;display:flex}.live-dot{background:#fff;border-radius:50%;width:6px;height:6px}@keyframes pulse-live{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.95)}}.live-dot-pulse{background:#00e699;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block;position:relative;box-shadow:0 0 10px #00e699}.live-dot-pulse:after{content:"";border:2px solid #00e699;border-radius:50%;animation:1.8s cubic-bezier(0,.2,.8,1) infinite radar-ripple;position:absolute;inset:-4px}@keyframes radar-ripple{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.match-card-top{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.league-info{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text);align-items:center;gap:.6rem;display:flex}.flag-icon{object-fit:cover;border-radius:3px;width:22px;height:15px}.country-flag{object-fit:cover;border-radius:3px;flex-shrink:0;width:20px;height:14px}.flag-icon-sm{object-fit:cover;border-radius:2px;width:18px;height:12px}.match-time{font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);font-variant-numeric:tabular-nums;letter-spacing:.02em;border-radius:100px;padding:.35rem .65rem}.match-time-badge{font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-dim);background:var(--bg-elevated);border:1px solid var(--border);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap;border-radius:100px;padding:.35rem .65rem}.match-card-body{padding:1.5rem}.teams-display{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.team{text-align:center;flex:1}.team-name{font-size:var(--fs-md);font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:var(--lh-snug);margin-bottom:.25rem;display:block}.team-label{font-size:var(--fs-sm);font-weight:var(--fw-extrabold);color:var(--text-dim);letter-spacing:.08em}.vs-badge{font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-black);color:var(--text-dim);background:var(--bg-elevated);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.prediction-section{border-top:1px solid var(--border);background:#ffffff04;padding:1.25rem}.prediction-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.pred-label{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:.1em;color:var(--text-dim)}.prediction-label{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:.08em;color:var(--text-dim);text-transform:uppercase}.confidence-badge{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:var(--accent);background:var(--accent-soft);border:1px solid #0070f340;border-radius:100px;padding:.2rem .5rem}.confidence-badge.high{color:var(--success);background:var(--success-soft);border-color:#00e69d40}.confidence-badge.mid{color:var(--warning);background:var(--warning-soft);border-color:#ffaa0040}.confidence-badge.low{color:var(--danger);background:var(--danger-soft);border-color:#ff336640}.pred-winner{font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);text-wrap:balance;margin-bottom:.4rem}.pred-rationale{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text-muted);text-wrap:pretty;font-style:italic}.odds-row{border-top:1px solid var(--border);font-size:var(--fs-sm);overflow-wrap:break-word;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex}.odds-label{color:var(--text-muted);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;margin-right:.25rem}.odds-value{border-radius:var(--radius-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;background:#ffffff0f;padding:.25rem .6rem}.odds-highlight{background:rgba(var(--accent-rgb), .25);outline:1px solid var(--accent)}.match-card-actions{border-top:1px solid var(--border);gap:.75rem;padding:1rem 1.25rem;display:flex}.btn{font-size:var(--fs-sm);font-weight:var(--fw-bold);border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);min-height:44px;color:var(--text);text-align:center;background:0 0;flex:1;padding:.75rem .85rem;text-decoration:none;transition:all .15s}.btn:hover{border-color:var(--border-hover);background:#ffffff0f}.btn-primary{background:var(--text);color:var(--bg-app);border-color:var(--text)}.btn-primary:hover{background:#ffffffe0}.btn-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.btn-ghost{background:0 0}.btn-sm{font-size:var(--fs-sm);flex:none;padding:.4rem .7rem}.btn:focus-visible,.filter-input:focus-visible,.modal-close:focus-visible,.clear-search-btn:focus-visible,.copy-btn:focus-visible,.scroll-top-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--border-hover)}.filter-input{background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);font-size:var(--fs-base);font-weight:var(--fw-medium);outline:none;width:100%;max-width:320px;padding:.6rem 1rem;transition:border-color .2s}.filter-input::placeholder{color:var(--text-dim)}.filter-input:hover{border-color:var(--border-hover)}.filter-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-container{flex:1;align-items:center;max-width:320px;display:flex;position:relative}.search-container .filter-input{max-width:100%;padding-left:2.5rem;padding-right:3rem}.search-field-label{font-size:var(--fs-sm);color:var(--text-dim);white-space:nowrap;flex-shrink:0}.search-container .search-icon{left:.85rem}.search-icon{font-size:var(--fs-base);color:var(--text-dim);pointer-events:none;position:absolute}.search-shortcut{pointer-events:none;align-items:center;display:flex;position:absolute;right:.75rem}.search-shortcut kbd{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-dim);font-size:var(--fs-xs);font-family:var(--font-mono);border-radius:4px;padding:.1rem .4rem;box-shadow:0 1px #0003}.clear-search-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-dim);width:20px;height:20px;font-size:var(--fs-xs);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex;position:absolute;right:.6rem}.clear-search-btn:hover{background:var(--border-hover);color:var(--text)}.clear-search-btn:before{content:"";min-width:44px;min-height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.copy-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:.35rem .65rem;transition:all .2s;display:flex}.copy-btn:hover{background:var(--border-hover);color:var(--text)}.copy-btn.copied{background:var(--success-soft);color:var(--success);border-color:#00e69d33}.error-state{text-align:center;color:var(--text-muted);padding:5rem 2rem}.error-icon{font-size:var(--fs-5xl);margin-bottom:1rem;display:block}.error-state h3{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--text);line-height:var(--lh-snug);text-wrap:balance;margin-bottom:.5rem}.error-state p{font-size:var(--fs-base);line-height:var(--lh-relaxed);color:var(--text-dim);text-wrap:pretty;margin-bottom:1.5rem}.history-feed{flex-direction:column;gap:2rem;display:flex}.history-day{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.history-day-header{border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;font-family:inherit;font-size:inherit;text-align:inherit;color:inherit;background:#ffffff04;border:none;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.history-day-header:hover{background:#ffffff0a}.history-day-header:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.history-day-header-left{align-items:center;gap:1rem;display:flex}.chevron-icon{font-size:var(--fs-xs);color:var(--text-dim);transition:transform .3s cubic-bezier(.4,0,.2,1)}.history-day.collapsed .chevron-icon{transform:rotate(-90deg)}.history-day.collapsed .history-matches{display:none}.history-day.collapsed .history-day-header{border-bottom:none}.history-day-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-snug);text-wrap:balance}.hit-rate-badge{font-size:var(--fs-sm);font-weight:var(--fw-extrabold);border-radius:100px;padding:.3rem .7rem}.hit-rate-badge.good{background:var(--success-soft);color:var(--success);border:1px solid #00e69d33}.hit-rate-badge.mid{background:var(--warning-soft);color:var(--warning);border:1px solid #fa03}.hit-rate-badge.bad{background:var(--danger-soft);color:var(--danger);border:1px solid #f363}.history-matches{flex-direction:column;display:flex;overflow-x:auto}.history-table-header{border-bottom:1px solid var(--border);font-size:11px;font-weight:var(--fw-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;-webkit-user-select:none;user-select:none;background:#0003;grid-template-columns:minmax(180px,1.3fr) minmax(260px,2fr) minmax(180px,1.3fr) 110px minmax(170px,1.2fr) 90px;align-items:center;gap:1.25rem;padding:.75rem 1.5rem;display:grid}.history-table-header .th-cell.th-match,.history-table-header .th-cell.th-status{text-align:center}.history-table-header .th-cell.th-actions{text-align:right}.history-row{border-bottom:1px solid var(--border-subtle,#ffffff0d);font-size:var(--fs-base);border-left:3px solid #0000;grid-template-columns:minmax(180px,1.3fr) minmax(260px,2fr) minmax(180px,1.3fr) 110px minmax(170px,1.2fr) 90px;align-items:center;gap:1.25rem;min-width:0;padding:1rem 1.5rem;transition:background .12s,border-color .12s;display:grid}.history-row:last-child{border-bottom:none}.history-row:hover{background:#ffffff06}.history-row.correct{border-left-color:var(--success)}.history-row.incorrect{border-left-color:var(--danger)}.history-row.void{border-left-color:var(--text-dim)}.history-row.postponed{border-left-color:var(--warning)}.history-row-header{flex-direction:column;gap:.35rem;min-width:0;display:flex}.history-row-league-wrap{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.history-row-sport{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;align-items:center;gap:.3rem;display:inline-flex}.history-row-league{font-size:var(--fs-xs);color:var(--text-dim);font-weight:var(--fw-medium);align-items:center;gap:.35rem;min-width:0;display:inline-flex}.league-title{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.history-row-date{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:var(--fw-normal)}.history-row-match{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;min-width:0;display:grid}.history-team{font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-team.home-team{text-align:right}.history-team.away-team{text-align:left}.history-team.is-winner{color:var(--text-bright,#fff);font-weight:var(--fw-extrabold)}.history-score.prominent-score{font-family:var(--font-display);font-weight:var(--fw-black);font-size:var(--fs-base);color:var(--text-bright,#fff);background:var(--bg-elevated);font-variant-numeric:tabular-nums;letter-spacing:.04em;border:1px solid var(--border-subtle);text-align:center;border-radius:8px;flex-shrink:0;min-width:48px;padding:.25rem .65rem;box-shadow:0 1px 3px #0003}.history-row-details{flex-direction:column;gap:.35rem;min-width:0;display:flex}.history-row-prediction,.history-row-result{white-space:nowrap;align-items:center;gap:.4rem;min-width:0;display:flex}.history-pred-label,.history-actual-label{font-size:10px;font-weight:var(--fw-bold);color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.history-pred-value{font-weight:var(--fw-bold);color:var(--accent);font-size:var(--fs-xs);text-overflow:ellipsis;overflow:hidden}.history-actual-value{font-weight:var(--fw-bold);font-size:var(--fs-xs);color:var(--text);text-overflow:ellipsis;overflow:hidden}.history-confidence{color:var(--accent-light,#38bdf8);font-size:10px;font-weight:var(--fw-bold);background:rgba(var(--accent-rgb), .12);border:1px solid rgba(var(--accent-rgb), .25);font-variant-numeric:tabular-nums;border-radius:4px;flex-shrink:0;padding:.1rem .35rem}.history-row-status{justify-content:center;align-items:center;display:flex}.status-badge{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:.02em;white-space:nowrap;border-radius:100px;align-items:center;gap:.35rem;padding:.3rem .75rem;line-height:1;display:inline-flex;box-shadow:0 1px 2px #00000026}.status-badge.correct{background:var(--success-soft);color:var(--success);border:1px solid #00e69d4d}.status-badge.incorrect{background:var(--danger-soft);color:var(--danger);border:1px solid #ff33664d}.status-badge.postponed{background:var(--warning-soft);color:var(--warning);border:1px solid #ffaa004d}.status-badge.void{color:var(--text-dim);border:1px solid var(--border-subtle);background:#ffffff0f}.history-row-odds{flex-direction:column;gap:.3rem;min-width:0;display:flex}.history-odds-label{font-size:10px;font-weight:var(--fw-bold);color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.history-odds-badges{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.history-odds-value{border-radius:var(--radius-sm);font-weight:var(--fw-semibold);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap;background:#ffffff0d;border:1px solid #0000;padding:.15rem .45rem}.history-odds-value.odds-highlight{background:rgba(var(--accent-rgb), .2);border-color:var(--accent);color:var(--text-bright,#fff)}.history-odds-empty{color:var(--text-muted);font-size:var(--fs-sm)}.history-row-actions{justify-content:flex-end;display:flex}.touch-target,.filter-toggles .btn,.market-filter-chips .btn,.pagination .btn,.pagination-controls .btn{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.skeleton{background:var(--bg-elevated);background:linear-gradient(90deg, var(--bg-elevated) 25%, #ffffff0d 50%, var(--bg-elevated) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeInContent{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tab-content-enter{contain:content;animation:.18s cubic-bezier(.16,1,.3,1) forwards fadeInContent}.match-grid,.matches-grid,.history-feed,.history-matches,.history-container{contain:content}.skeleton-text{width:100%;height:1em;margin-bottom:.5rem}.skeleton-title{width:60%;height:1.5rem;margin-bottom:1rem}.skeleton-value{width:80px;height:2.25rem}.skeleton-paragraph{width:100%;height:1.6em;margin-bottom:1.25rem}.skeleton-paragraph:last-child{margin-bottom:0}.match-card-skeleton{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.match-card-skeleton-top{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.match-card-skeleton-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem 1.25rem;display:flex}.match-card-skeleton-actions{border-top:1px solid var(--border);background:#00000026;gap:.75rem;padding:1rem 1.25rem;display:flex}.history-row-skeleton{border-bottom:1px solid var(--border-subtle,#ffffff0d);background:var(--bg-card);border-left:3px solid #0000;grid-template-columns:minmax(180px,1.3fr) minmax(260px,2fr) minmax(180px,1.3fr) 110px minmax(170px,1.2fr) 90px;align-items:center;gap:1.25rem;min-height:68px;padding:1rem 1.5rem;display:grid}.history-row-skeleton .skeleton-cell-header{flex-direction:column;gap:.35rem;min-width:0;display:flex}.history-row-skeleton .skeleton-cell-match{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;min-width:0;display:grid}.history-row-skeleton .skeleton-cell-match .skeleton:first-child{justify-self:end}.history-row-skeleton .skeleton-cell-details{flex-direction:column;gap:.35rem;min-width:0;display:flex}.history-row-skeleton .skeleton-cell-status{justify-content:center;align-items:center;display:flex}.history-row-skeleton .skeleton-cell-odds{flex-direction:column;gap:.3rem;min-width:0;display:flex}.history-row-skeleton .skeleton-cell-actions{justify-content:flex-end;align-items:center;display:flex}.market-history-list .history-row-skeleton{border:1px solid var(--border);border-radius:var(--radius-lg,14px);background:var(--bg-card);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.market-history-list .history-row-skeleton .skeleton-cell-match{justify-content:space-between;align-items:center;display:flex}.skip-to-content{background:var(--accent);color:#fff;z-index:2000;font-weight:var(--fw-bold);border-radius:0 0 10px 10px;padding:.75rem 1.5rem;text-decoration:none;transition:top .2s;position:absolute;top:-100px;left:50%;transform:translate(-50%)}.skip-to-content:focus{top:0}#main-content:focus{outline:none}.analysis-text p{text-wrap:pretty;margin-bottom:1.25rem}.analysis-text p:last-child{margin-bottom:0}.scroll-top-btn{background:var(--accent);color:#fff;width:44px;height:44px;font-size:var(--fs-xl2);font-weight:var(--fw-bold);cursor:pointer;z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 12px #0000004d}.scroll-top-btn:hover{background:#0080ff;transform:translateY(-4px)}@media (width<=768px){.scroll-top-btn{bottom:calc(5rem + env(safe-area-inset-bottom,0px));width:40px;height:40px;right:1.5rem}}.kpi-inline-label{font-weight:var(--fw-semibold);color:var(--text-muted)}.kpi-inline-value{font-weight:var(--fw-extrabold)}.kpi-inline-sep{color:var(--text-dim)}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#000000e0;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:24px;width:95%;max-width:740px;max-height:85vh;padding:3rem;animation:.35s cubic-bezier(.16,1,.3,1) slideUp;position:relative;overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);width:36px;height:36px;font-size:var(--fs-lg);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.modal-close:hover{background:#ffffff1a;transform:rotate(90deg)}.modal-header{text-align:center;margin-bottom:2.5rem}.modal-league{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;line-height:var(--lh-snug);justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.modal-title{font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:var(--fw-extrabold);letter-spacing:-.035em;line-height:var(--lh-tight);text-wrap:balance;margin-bottom:.75rem}.modal-meta{font-size:var(--fs-sm);color:var(--text-muted);font-weight:var(--fw-semibold);line-height:var(--lh-snug);text-transform:uppercase;letter-spacing:.04em;justify-content:center;gap:1.5rem;margin-bottom:1rem;display:flex}.modal-score{color:var(--text);font-weight:var(--fw-extrabold)}.modal-date{font-size:var(--fs-sm);color:var(--text-dim);font-weight:var(--fw-semibold)}.kpi-inline{align-items:center;gap:.3rem;display:flex}.modal-prediction{font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-snug);justify-content:center;align-items:center;gap:.75rem;display:flex}.modal-prediction strong{font-weight:var(--fw-black)}.modal-body{font-size:var(--fs-lg);line-height:var(--lh-loose);color:var(--text-muted);white-space:pre-wrap;overflow-wrap:break-word;text-wrap:pretty}.dock{z-index:200;-webkit-backdrop-filter:blur(20px)saturate(1.2);border-top:1px solid var(--border);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom,0px));background:#060608eb;justify-content:space-evenly;align-items:flex-start;display:none;position:fixed;bottom:0;left:0;right:0}.dock-item{min-width:48px;min-height:48px;color:var(--text-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;padding:.3rem .15rem;font-family:inherit;transition:color .2s;display:flex;position:relative}.dock-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.dock-item:active{opacity:.7}.dock-icon{font-size:var(--fs-xl2);line-height:var(--lh-snug);transition:transform .2s}.dock-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;letter-spacing:.01em}.dock-item.active{color:var(--accent)}.dock-item.active:after{content:"";background:var(--accent);border-radius:0 0 3px 3px;width:18px;height:2.5px;position:absolute;top:-.35rem;left:50%;transform:translate(-50%)}@media (width<=1200px){.market-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.match-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (width<=1024px){.history-table-header{display:none}.history-matches{background:0 0;border:none;border-radius:0}.history-row{background:var(--bg-card);border:1px solid var(--border);border-left-width:4px;border-radius:14px;flex-direction:column;align-items:stretch;gap:.85rem;margin-bottom:.75rem;padding:1.15rem 1.25rem;display:flex}.history-row:last-child{border-bottom:1px solid var(--border)}.history-row:hover{background:var(--bg-elevated)}.history-row-header{border-bottom:1px solid #ffffff0d;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding-bottom:.5rem;display:flex}.history-row-league-wrap{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.league-title{max-width:220px}.history-row-match{grid-template-columns:1fr auto 1fr;align-items:center;gap:.85rem;width:100%;padding:.25rem 0;display:grid}.history-team{font-size:var(--fs-md);font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-team.home-team{text-align:right}.history-team.away-team{text-align:left}.history-score.prominent-score{font-size:var(--fs-xl);font-weight:var(--fw-black);background:var(--bg-base);border:1px solid var(--border);letter-spacing:.05em;border-radius:8px;padding:.35rem .85rem}.history-row-details{flex-flow:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;display:flex}.history-row-status{justify-content:flex-start}.history-row-odds{flex-flow:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.history-row-actions{width:100%}.history-row-actions button{width:100%;min-height:44px}.history-row-skeleton{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;align-items:stretch;gap:.85rem;margin-bottom:.75rem;padding:1.15rem 1.25rem;display:flex}.history-row-skeleton .skeleton-cell-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.history-row-skeleton .skeleton-cell-match{grid-template-columns:1fr auto 1fr;align-items:center;gap:.85rem;padding:.25rem 0;display:grid}.history-row-skeleton .skeleton-cell-match .skeleton:first-child{justify-self:end}.history-row-skeleton .skeleton-cell-details{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.history-row-skeleton .skeleton-cell-status{justify-content:flex-start}.history-row-skeleton .skeleton-cell-odds{align-items:center;gap:.5rem;display:flex}.history-row-skeleton .skeleton-cell-actions{width:100%}.history-row-skeleton .skeleton-cell-actions .skeleton{width:100%!important;height:44px!important}}@media (width<=860px){.sidebar{width:72px}.sidebar-header{border-bottom:none;margin-bottom:.25rem;padding:1rem 0 .5rem}.sidebar-footer,.brand-name span,.nav-label,.nav-item span:last-child{display:none}.brand-logo-btn{min-height:44px}.nav-item{justify-content:center;min-height:44px;padding:.65rem}.main-viewport{max-width:100vw;margin-left:72px}.nav-item.active:before{left:0}.content-body{padding:1.5rem}.market-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=768px){.sidebar{display:none}.main-viewport{max-width:100vw;margin-left:0;overflow-x:hidden}.dock{display:flex}.content-body{max-width:100vw;padding:1rem .75rem calc(1rem + 80px)}.top-bar{flex-wrap:wrap;gap:.5rem;max-width:100vw;height:auto;min-height:56px;padding:.5rem .75rem}.page-title{font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.top-mode-switch{order:3;grid-template-columns:1fr 1fr;width:100%}.top-mode-btn{min-width:0;font-size:var(--fs-sm)}.top-bar-status{display:none}.match-grid{grid-template-columns:1fr}.match-card{border-radius:14px}.match-card-top{flex-wrap:wrap;gap:.5rem;padding:.85rem .75rem}.match-card-body{padding:1.25rem .75rem}.team-name{font-size:var(--fs-md);overflow-wrap:break-word}.match-card-actions{flex-wrap:wrap;padding:.85rem .75rem}.kpi-grid{grid-template-columns:1fr;gap:.85rem;margin-bottom:2rem}.kpi-card{padding:1.25rem}.kpi-value{font-size:var(--fs-3xl);overflow-wrap:break-word}.kpi-total{font-size:var(--fs-base)}.section-header{overflow-wrap:break-word;flex-direction:column;align-items:flex-start;gap:.75rem}.section-title{font-size:var(--fs-xl)}.leaderboard-grid{grid-template-columns:1fr}.leaderboard-item{gap:.5rem;padding:.85rem}.league-name-text{max-width:100%}.history-feed{gap:1.25rem}.history-day-header{flex-wrap:wrap;gap:.5rem;padding:.85rem .75rem}.history-day-title{font-size:var(--fs-base);overflow-wrap:break-word}.history-row{font-size:var(--fs-sm);border-radius:12px;gap:.75rem;padding:1rem .85rem}.history-team{font-size:var(--fs-base)}.history-score.prominent-score{font-size:var(--fs-lg);text-align:center;min-width:44px;padding:.25rem .65rem}.history-row-skeleton{border-radius:12px;gap:.75rem;padding:1rem .85rem}.controls{flex-direction:column;gap:.75rem}.filter-input{max-width:100%;font-size:16px}.search-container{width:100%;max-width:100%}.search-field-label,.search-shortcut{display:none}.filter-toggles{flex-wrap:wrap;gap:.25rem}.btn-sm{font-size:var(--fs-xs);padding:.35rem .6rem}.market-card{padding:1rem}.market-header{flex-wrap:wrap;gap:.5rem}.market-info{min-width:0}.market-symbol{font-size:var(--fs-xl);overflow-wrap:break-word}.market-name{overflow-wrap:break-word}.market-price{min-width:0}.current-price{font-size:var(--fs-lg);overflow-wrap:break-word}.market-trade-meta{flex-wrap:wrap;gap:.5rem}.market-rationale{-webkit-line-clamp:4}.market-timeline{flex-direction:column;gap:.75rem;padding:.85rem 1rem;display:flex}.timeline-node{width:100%}.timeline-connector{align-items:center;gap:.4rem;padding:.1rem 0;display:inline-flex}.timeline-arrow{display:inline-block;transform:rotate(90deg)}.timeline-node.timeline-return{border-left:none;border-top:1px solid var(--border-subtle);flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-top:.25rem;padding-top:.65rem;padding-left:0;display:flex}.modal-content{border-radius:18px;width:calc(100% - .75rem);max-height:90vh;margin:.375rem;padding:1.25rem}.modal-title{font-size:var(--fs-2xl);overflow-wrap:break-word}.modal-meta{flex-direction:column;align-items:center;gap:.5rem}.modal-close{width:32px;height:32px;top:1rem;right:1rem}.modal-body{font-size:var(--fs-base);line-height:var(--lh-relaxed);overflow-wrap:break-word}.empty-state,.loading-state,.error-state{padding:3rem 1.5rem}.page-animate{overflow-x:hidden}}@media (width<=480px){.content-body{padding:.75rem .5rem calc(.75rem + 80px)}.top-bar{padding:.5rem}.page-title{font-size:var(--fs-sm)}.match-card-top{flex-direction:column;align-items:flex-start;gap:.5rem}.match-time,.live-badge{align-self:flex-start}.teams-display{gap:.35rem}.team-name{font-size:var(--fs-base);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.team{min-width:0}.pred-winner{font-size:var(--fs-lg);overflow-wrap:break-word}.pred-rationale{font-size:var(--fs-sm)}.kpi-value{font-size:var(--fs-2xl)}.history-day-header{flex-direction:column;align-items:flex-start;gap:.5rem}.history-day-stats{align-self:flex-start}.history-row{gap:.65rem;padding:.85rem .75rem}.history-row-header{flex-wrap:wrap;gap:.35rem}.league-title{max-width:130px}.history-row-match{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;display:grid}.history-team{font-size:var(--fs-sm);overflow-wrap:break-word}.history-score.prominent-score{font-size:var(--fs-sm);min-width:38px;padding:.2rem .5rem}.history-row-details{flex-direction:column;align-items:flex-start;gap:.35rem}.history-row-prediction,.history-row-result{justify-content:flex-start;width:100%}.history-pred-value,.history-actual-value{overflow-wrap:break-word}.history-row-odds{flex-direction:column;align-items:flex-start;gap:.35rem}.history-odds-badges{gap:.25rem}.history-odds-value{padding:.12rem .35rem;font-size:11px}.modal-content{border-radius:14px;margin:0 .25rem;padding:.75rem}.modal-title{font-size:var(--fs-xl)}.modal-league,.modal-prediction{flex-wrap:wrap}.market-grid{grid-template-columns:1fr}.market-history-row{gap:.65rem;padding:.85rem .75rem}.market-history-header{flex-wrap:wrap;gap:.5rem}.market-timeline{gap:.5rem;padding:.65rem .75rem}.timeline-node.timeline-return{flex-wrap:wrap;gap:.5rem}.kpi-card{padding:1rem}.dock{padding:.3rem .15rem calc(.3rem + env(safe-area-inset-bottom,0px))}.dock-icon{font-size:var(--fs-lg)}.dock-label{font-size:var(--fs-xs)}}@media (hover:none){.match-card:hover{border-color:var(--border);transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.live-dot-pulse:after{animation:none!important;display:none!important}}.trend-section{margin-bottom:2.5rem}.trend-overall{font-size:var(--fs-base);font-weight:var(--fw-extrabold);color:var(--success);font-family:var(--font-display);white-space:nowrap}.trend-row{gap:.5rem;padding:1rem 0 0;display:flex;overflow-x:auto}.trend-item{flex-direction:column;flex:1;align-items:center;gap:.25rem;min-width:48px;display:flex}.trend-day-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-dim);white-space:nowrap}.trend-pct{font-size:var(--fs-sm);font-weight:var(--fw-extrabold);font-family:var(--font-display)}.trend-pct.good{color:var(--success)}.trend-pct.mid{color:var(--warning)}.trend-pct.bad{color:var(--danger)}.trend-pct.nodata{color:var(--text-dim)}.trend-mbar{background:var(--bg-elevated);border-radius:2px;width:100%;height:4px;overflow:hidden}.trend-mbar-fill{border-radius:2px;height:100%;transition:width .3s}.trend-mbar-fill.good{background:var(--success)}.trend-mbar-fill.mid{background:var(--warning)}.trend-mbar-fill.bad{background:var(--danger)}@media (width<=768px){.trend-row{gap:.35rem}.trend-item{min-width:40px}.trend-pct{font-size:var(--fs-sm)}.trend-day-label{font-size:var(--fs-xs)}}@media (width<=480px){.trend-row{gap:.25rem}.trend-item{min-width:34px}.trend-pct{font-size:var(--fs-sm)}}.leaderboard-section{margin-bottom:2.5rem}.section-subtitle{font-size:var(--fs-sm);color:var(--text-dim);margin-top:.25rem}.leaderboard-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.leaderboard-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:1rem;display:flex}.leaderboard-item .league-info{align-items:center;gap:.75rem;display:flex}.league-name-text{font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;text-overflow:ellipsis;max-width:120px;overflow:hidden}.league-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.league-stats-row{flex-direction:column;align-items:flex-end;display:flex}.league-rate{font-size:var(--fs-lg);font-weight:var(--fw-extrabold);font-family:var(--font-display);color:var(--success)}.league-count{font-size:var(--fs-xs);color:var(--text-dim);font-weight:var(--fw-semibold)}.live-banner{-webkit-backdrop-filter:blur(8px);border-top-left-radius:calc(var(--radius) - 1px);border-top-right-radius:calc(var(--radius) - 1px);background:#06140ee0;border-bottom:1px solid #00e69d38;justify-content:space-between;align-items:center;padding:.6rem 1.15rem;display:flex}.live-banner-left{align-items:center;gap:.65rem;display:flex}.live-banner-text{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:#00e699;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-display)}.live-banner-status{font-size:var(--fs-xs);font-weight:var(--fw-black);color:#00e699;letter-spacing:.06em;background:#00e69d26;border:1px solid #00e69d59;border-radius:4px;padding:.15rem .5rem}.live-section-pinned{border-bottom:1px solid #00e69d26;margin-bottom:2.25rem;padding-bottom:1.5rem}.live-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.15rem;display:flex}.live-section-title-wrap{align-items:center;gap:.75rem;display:flex}.live-section-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:#00e699;letter-spacing:-.01em;align-items:center;gap:.4rem;margin:0;display:flex}.live-count-badge{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:#00e699;letter-spacing:.04em;background:#00e69d26;border:1px solid #00e69d59;border-radius:100px;padding:.2rem .6rem}.live-section-subtitle{font-size:var(--fs-sm);color:var(--text-dim)}.team-predicted .team-name{color:#fff;text-shadow:0 0 12px #ffffff26}.predicted-edge-tag{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:var(--success);text-transform:uppercase;letter-spacing:.05em;background:#00e69d1f;border:1px solid #00e69d40;border-radius:4px;margin-top:.3rem;padding:.12rem .4rem;display:inline-block}.pred-badge-live{font-size:var(--fs-md);font-weight:var(--fw-extrabold);color:#00e699;align-items:center;gap:.35rem;display:inline-flex}.pred-winner-badge{font-size:var(--fs-md);font-weight:var(--fw-extrabold);color:var(--text);align-items:center;gap:.35rem;display:inline-flex}.pred-check-icon{color:var(--success);font-weight:var(--fw-black)}.pred-meter-wrapper{width:100%;margin:.75rem 0 .5rem}.confidence-meter-container{flex-direction:column;gap:.35rem;width:100%;display:flex}.confidence-meter-header{font-size:var(--fs-xs);font-weight:var(--fw-bold);justify-content:space-between;align-items:center;display:flex}.confidence-meter-value{color:var(--text-muted);font-variant-numeric:tabular-nums}.confidence-meter-tier-badge{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;border-radius:100px}.confidence-badge-emerald{color:#00e699;background:#00e69d1f;border:1px solid #00e69d4d}.confidence-badge-blue{color:#0070f3;background:#0070f31f;border:1px solid #0070f34d}.confidence-badge-amber{color:#fa0;background:#ffaa001f;border:1px solid #ffaa004d}.confidence-track{background:#ffffff12;border-radius:999px;height:6px;position:relative;overflow:hidden}.confidence-bar-fill{border-radius:999px;height:100%;transition:width .4s cubic-bezier(.16,1,.3,1)}.confidence-bar-fill.fill-strong{background:linear-gradient(90deg,#00b377,#00e699);box-shadow:0 0 10px #00e69d80}.confidence-bar-fill.fill-solid{background:linear-gradient(90deg,#0050b3,#0070f3);box-shadow:0 0 10px #0070f366}.confidence-bar-fill.fill-moderate{background:linear-gradient(90deg,#d48800,#fa0);box-shadow:0 0 10px #fa06}.odds-strip-wrapper{border-top:1px solid var(--border);flex-direction:column;gap:.45rem;padding:.85rem 1.25rem;display:flex}.odds-strip-label{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;display:flex}.odds-strip-ai-tag{font-size:var(--fs-xs);color:var(--accent);background:var(--accent-soft);font-weight:var(--fw-bold);border-radius:3px;padding:.1rem .4rem}.odds-strip-segments{grid-template-columns:1fr 1fr 1fr;gap:.5rem;display:grid}.odds-pill{border:1px solid var(--border);text-align:center;background:#ffffff08;border-radius:8px;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem .4rem;transition:all .2s;display:flex}.odds-pill.odds-highlight{border-color:var(--accent);background:#0070f31f;box-shadow:0 0 12px #0070f340,inset 0 0 6px #0070f326}.odds-pill-role{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.odds-pill-values{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.25rem;display:flex}.odds-pill-number{font-size:var(--fs-base);font-weight:var(--fw-extrabold);color:var(--text)}.odds-pill-prob{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}.odds-pill.odds-highlight .odds-pill-role{color:var(--accent)}.odds-pill.odds-highlight .odds-pill-number{color:#fff}.odds-pill.odds-highlight .odds-pill-prob{color:#ffffffd9}.sport-nav-bar{z-index:45;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#030303eb;margin-bottom:1.5rem;padding:.65rem 1.25rem;position:sticky;top:64px}.sport-nav-scroll{scrollbar-width:none;-ms-overflow-style:none;align-items:center;gap:.5rem;display:flex;overflow-x:auto}.sport-nav-scroll::-webkit-scrollbar{display:none}.sport-nav-item{border:1px solid var(--border);background:var(--bg-card);min-height:44px;color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-bold);cursor:pointer;white-space:nowrap;border-radius:100px;align-items:center;gap:.45rem;padding:.6rem .95rem;font-family:inherit;transition:all .2s;display:flex}.sport-nav-item:hover{border-color:var(--border-hover);color:var(--text);background:#ffffff0d}.sport-nav-item.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 12px #0070f359}.sport-nav-icon{font-size:var(--fs-lg)}.sport-nav-count{font-size:var(--fs-xs);font-weight:var(--fw-extrabold);color:var(--text-dim);background:#ffffff14;border-radius:100px;padding:.1rem .45rem}.sport-nav-item.active .sport-nav-count{color:#fff;background:#ffffff40}.top-bar-live-pill{color:#00e699;font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:.04em;text-transform:uppercase;background:#00e69d1f;border:1px solid #00e69d4d;border-radius:100px;align-items:center;gap:.5rem;padding:.25rem .65rem;display:flex}@media (width<=768px){.sport-nav-bar{margin-bottom:1rem;padding:.5rem .75rem;position:relative;top:auto}.odds-strip-segments{gap:.35rem}.odds-pill{padding:.35rem .25rem}}.brand-logo-btn{min-height:44px;font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-black);letter-spacing:-.04em;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.6rem;margin:-.5rem -.6rem;padding:.5rem .6rem;text-decoration:none;transition:opacity .15s,background-color .15s;display:inline-flex}.brand-logo-btn:hover{opacity:.85;background:#ffffff0d}.brand-logo-btn:focus-visible{outline:2px solid var(--accent,#00e699);outline-offset:2px}.brand-logo-text{font-weight:var(--fw-extrabold);font-size:var(--fs-xl);letter-spacing:-.02em;color:var(--text,#fff)}.analysis-section-block{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;margin-bottom:1rem;padding:1rem 1.25rem}.analysis-section-heading{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text,#fff);text-wrap:balance;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.analysis-section-dot{background:var(--accent,#00e699);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 8px #00e69980}.analysis-section-block p{color:var(--text-muted,#94a3b8);line-height:var(--lh-relaxed);font-size:var(--fs-md);text-wrap:pretty;margin:0}.modal-deep-link-row{border-top:1px solid #ffffff14;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;display:flex}.match-detail-view{flex-direction:column;gap:1.75rem;max-width:900px;margin:0 auto;padding:1.5rem 1rem 4rem;display:flex}.detail-header-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.detail-hero-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff06;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 12px 36px #00000059}.detail-meta-row{justify-content:space-between;align-items:center;display:flex}.detail-teams-hero{text-align:center;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.detail-team-block{flex-direction:column;flex:1;align-items:center;gap:.35rem;min-width:0;display:flex}.detail-team-name{font-size:var(--fs-3xl);font-weight:var(--fw-extrabold);color:var(--text,#fff);line-height:var(--lh-snug);text-wrap:balance;margin:0}.detail-venue-tag{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim,#64748b);font-weight:var(--fw-bold)}.detail-vs-badge{font-weight:var(--fw-black);font-size:var(--fs-base);color:var(--accent,#00e699);letter-spacing:.05em;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;padding:.4rem .8rem}.detail-final-score{color:#00e699;font-size:var(--fs-lg);background:#00e69d14;border:1px solid #00e69d40;border-radius:10px;justify-content:center;gap:.75rem;padding:.6rem 1.2rem;display:flex}.detail-verdict-banner{background:#00e69d0a;border:1px solid #00e69d26;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;display:flex}.verdict-meter{flex:1;min-width:200px}.verdict-summary{flex:1;min-width:240px}.verdict-label{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim,#64748b);margin-bottom:.25rem}.verdict-value{font-size:var(--fs-xl2);color:var(--text,#fff);align-items:center;gap:.75rem;display:flex}.detail-rationale-text{font-size:var(--fs-md);color:var(--text-muted,#94a3b8);line-height:var(--lh-normal);text-wrap:pretty;margin-top:.5rem}.detail-quote-mark{color:var(--accent,#00e699);font-weight:var(--fw-extrabold)}.detail-analysis-container{flex-direction:column;gap:1rem;display:flex}.detail-section-title{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text,#fff);text-wrap:balance;margin:0}.detail-analysis-grid{flex-direction:column;gap:1rem;display:flex}.detail-analysis-card{background:#ffffff06;border:1px solid #ffffff14;border-radius:14px;padding:1.25rem 1.5rem}.detail-card-heading{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text,#fff);align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.detail-analysis-card p{color:var(--text-muted,#94a3b8);line-height:var(--lh-relaxed);font-size:var(--fs-md);text-wrap:pretty;margin:0}@media (width<=640px){.detail-teams-hero{flex-direction:column;gap:.75rem}.detail-team-name{font-size:var(--fs-2xl)}.detail-hero-card{padding:1.25rem}}
