@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=EB+Garamond:wght@400;500;600&display=swap";:root{--primary-blue: #0070f3;--primary-dark-blue: #005bb5;--header-bg-light: #ffffff;--header-border-light: #eaeaea;--header-text-light: #444444;--header-hover-light: var(--primary-blue);--header-bg-dark: #1f2328;--header-border-dark: #3a4048;--header-text-dark: #e6e6e6;--header-hover-dark: var(--primary-blue)}.header{position:sticky;top:0;z-index:var(--z-sticky);background:#fff;border-bottom:1px solid #E8E6DC;transition:all var(--transition-normal)}.header.scrolled{background:#fff;box-shadow:0 2px 8px #0000000f}.header .container{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);max-width:1400px;margin:0 auto}.logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none;color:#141413;font-weight:var(--font-bold);font-size:var(--font-size-xl);transition:all var(--transition-fast);font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.logo:hover{color:#c15f3c}.logo svg{font-size:var(--font-size-2xl);color:#c15f3c}.logo h1{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-bold);color:#141413;background:none;-webkit-text-fill-color:#141413}.nav{display:flex;align-items:center;gap:var(--space-xl)}.nav-link{color:#141413;text-decoration:none;font-weight:500;font-size:15px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-lg);transition:all var(--transition-fast);position:relative;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.nav-link:hover,.nav-link.active{color:#c15f3c;background:transparent}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:#c15f3c;transition:all var(--transition-fast);transform:translate(-50%)}.nav-link:hover:after,.nav-link.active:after{width:80%}.auth-buttons{display:flex;align-items:center;gap:var(--space-sm)}.auth-buttons .btn{padding:var(--space-xs) var(--space-md);font-size:14px;font-weight:500;border-radius:8px;transition:all var(--transition-normal);font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.auth-buttons .btn-secondary{background:transparent;border:1px solid #E8E6DC;color:#141413}.auth-buttons .btn-secondary:hover{background:#f4f3ee;border-color:#b0aea5;color:#141413}.auth-buttons .btn-primary{background:#141413;border:none;color:#fff;box-shadow:none}.auth-buttons .btn-primary:hover{background:#2d2d2c}.mobile-menu-toggle{display:none;background:none;border:none;color:#141413;font-size:var(--font-size-xl);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:#f4f3ee;color:#c15f3c}@media (max-width: 768px){.nav{position:fixed;top:100%;left:0;right:0;background:#fff;border-top:1px solid #E8E6DC;flex-direction:column;padding:var(--space-lg);gap:var(--space-md);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all var(--transition-normal);box-shadow:0 4px 12px #00000014}.nav.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-link{width:100%;text-align:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-xl)}.mobile-menu-toggle{display:block}.auth-buttons{gap:var(--space-xs)}.auth-buttons .btn{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}}@media (max-width: 480px){.header .container{padding:var(--space-xs) var(--space-sm)}.logo h1{font-size:var(--font-size-lg)}.logo svg{font-size:var(--font-size-xl)}.auth-buttons{flex-direction:column;gap:var(--space-xs)}.auth-buttons .btn{width:100%;min-width:80px}}.footer{padding:var(--space-3xl) var(--space-md);border-top:1px solid var(--border-primary)}.footer-light,.footer-dark{background:var(--bg-secondary);border-color:var(--border-primary);color:var(--text-muted)}.footer .container{max-width:1400px;margin:0 auto}.footer-main{display:flex;justify-content:space-between;gap:var(--space-3xl);margin-bottom:var(--space-xl);flex-wrap:wrap}.footer-about .logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none;margin-bottom:var(--space-md);color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--font-size-xl)}.footer-light .footer-about .logo,.footer-light .footer-about p,.footer-dark .footer-about .logo,.footer-dark .footer-about p{color:var(--text-primary)}.footer-about h3{font-size:var(--font-size-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-sm)}.footer-about svg{font-size:var(--font-size-2xl);color:var(--accent-primary)}.footer-about p{color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-md)}.footer-links-grid{display:flex;gap:var(--space-3xl);flex-wrap:wrap}.footer-column h4{font-weight:var(--font-semibold);margin-bottom:var(--space-lg);font-size:var(--font-size-base);color:var(--text-primary)}.footer-light .footer-column h4,.footer-dark .footer-column h4{color:var(--text-primary)}.footer-column a{display:block;text-decoration:none;margin-bottom:var(--space-md);transition:color var(--transition-fast);color:var(--text-muted);font-size:var(--font-size-sm)}.footer-light .footer-column a,.footer-dark .footer-column a{color:var(--text-muted)}.footer-column a:hover{color:var(--accent-primary)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-lg);border-top:1px solid var(--border-primary);font-size:var(--font-size-sm);flex-wrap:wrap;gap:var(--space-md);color:var(--text-muted)}.footer-light .footer-bottom,.footer-dark .footer-bottom{border-color:var(--border-primary)}.footer-socials{display:flex;gap:var(--space-lg)}.footer-socials a{font-size:var(--font-size-xl);transition:color var(--transition-fast);color:var(--text-muted)}.footer-light .footer-socials a,.footer-dark .footer-socials a{color:var(--text-muted)}.footer-socials a:hover{color:var(--accent-primary)}.footer-legal{display:flex;gap:var(--space-lg)}.footer-legal a{text-decoration:none;transition:color var(--transition-fast);color:var(--text-muted);font-size:var(--font-size-sm)}.footer-light .footer-legal a,.footer-dark .footer-legal a{color:var(--text-muted)}.footer-legal a:hover{color:var(--accent-primary)}@media (max-width: 768px){.footer{padding:var(--space-2xl) var(--space-sm)}.footer-main{flex-direction:column;gap:var(--space-xl)}.footer-links-grid{gap:var(--space-xl)}.footer-bottom{flex-direction:column;text-align:center;gap:var(--space-sm)}.footer-socials,.footer-legal{justify-content:center}}.authenticated-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.main-content{flex:1 0 auto;padding:var(--space-lg) var(--space-3xl);overflow-y:auto;color:var(--text-primary);background:var(--bg-secondary)}@media (max-width: 1024px){.main-content{padding:var(--space-md) var(--space-lg)}}@media (max-width: 768px){.main-content{padding:var(--space-sm) var(--space-md)}}.hero{position:relative;background:var(--bg-gradient-primary);padding:var(--space-3xl) var(--space-md);min-height:100vh;display:flex;align-items:center;overflow:hidden}.hero-background{position:absolute;inset:0;z-index:1}.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(0,212,255,.12) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(99,102,241,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(0,212,255,.06) 0%,transparent 50%);animation:float 20s ease-in-out infinite}.hero-gradient-animated{position:absolute;inset:0;background:linear-gradient(135deg,#00d4ff1f,#00a8cc14,#6366f11f,#00a8cc14,#00d4ff1f);background-size:200% 200%;animation:gradientShift 15s ease infinite;z-index:0}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(1deg)}66%{transform:translateY(10px) rotate(-1deg)}}.hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-3xl);align-items:center;max-width:1600px;margin:0 auto;padding:var(--space-2xl) var(--space-md)}.trust-badges{display:flex;gap:var(--space-md);margin-bottom:var(--space-xl);flex-wrap:wrap}.trust-badge{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#00d4ff14;backdrop-filter:blur(8px);border:1px solid rgba(0,212,255,.2);border-radius:var(--radius-xl);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-medium);transition:all var(--transition-normal);box-shadow:0 2px 8px #0003}.trust-badge:hover{background:#00d4ff1f;border-color:#00d4ff66;transform:translateY(-2px);box-shadow:0 4px 12px #00d4ff33}.trust-badge svg{color:var(--accent-primary);font-size:var(--font-size-sm)}.hero-content{max-width:650px;padding-right:var(--space-xl)}.hero-headline{font-size:clamp(3rem,8vw,5.5rem);font-weight:800;line-height:1.05;margin-bottom:var(--space-xl);letter-spacing:-.02em;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 50%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 40px rgba(0,212,255,.3)}.hero-highlight{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:var(--text-secondary);letter-spacing:-.01em}.hero-subheadline{font-size:var(--font-size-lg);line-height:var(--leading-relaxed);color:var(--text-muted);margin-bottom:var(--space-xl);max-width:600px;font-weight:400}.social-proof{margin-bottom:var(--space-xl)}.rating{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.stars{display:flex;gap:2px}.star{color:#fbbf24;font-size:var(--font-size-sm)}.rating-text{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-medium)}.stats{display:flex;gap:var(--space-lg)}.stat{display:flex;flex-direction:column;align-items:flex-start}.stat-number{font-size:var(--font-size-2xl);font-weight:var(--font-bold);color:var(--accent-primary);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-medium)}.cta-section{display:flex;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.cta-primary{background:var(--accent-gradient);border:1px solid rgba(0,212,255,.3);padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg);font-weight:var(--font-bold);box-shadow:var(--shadow-lg),var(--glow-primary);position:relative;overflow:hidden;color:var(--text-primary)}.cta-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.cta-primary:hover:before{left:100%}.cta-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl),var(--glow-primary-hover);background:var(--accent-gradient-hover);border-color:#00d4ff80}.cta-secondary{border-color:var(--border-secondary);color:var(--text-secondary);background:transparent}.cta-secondary:hover{border-color:var(--accent-primary);color:var(--text-primary);background:#3461ff1a}.guarantee{display:flex;align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:var(--font-size-sm)}.guarantee-icon{color:var(--success);font-size:var(--font-size-base)}.hero-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:600px}.testimonial-carousel{width:100%;max-width:500px}.testimonial-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:var(--shadow-card);transition:all var(--transition-normal);animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--border-accent)}.testimonial-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.testimonial-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-primary)}.testimonial-info{flex:1}.testimonial-name{font-size:var(--font-size-base);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.testimonial-role{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.testimonial-wins{text-align:right}.wins-amount{display:block;font-size:var(--font-size-lg);font-weight:var(--font-bold);color:var(--success)}.wins-label{font-size:var(--font-size-xs);color:var(--text-muted)}.testimonial-text{font-size:var(--font-size-base);line-height:var(--leading-relaxed);color:var(--text-secondary);font-style:italic;margin:0}.product-screenshots{width:100%;display:flex;justify-content:center;align-items:center;padding-left:var(--space-xl)}.featured-screenshot-wrapper{width:100%;max-width:700px;position:relative}.featured-screenshot-card{background:linear-gradient(135deg,#21253bfa,#14182dfa);border:1px solid rgba(52,97,255,.3);border-radius:var(--radius-2xl);overflow:hidden;transition:all .3s ease;box-shadow:0 40px 100px -20px #00000080,0 0 0 1px #3461ff33,inset 0 1px #ffffff1a,0 0 60px #3461ff26;position:relative;backdrop-filter:blur(20px);width:100%}.featured-screenshot-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#3461ff14,#7c3aed14);opacity:0;transition:opacity .3s ease;pointer-events:none}.featured-screenshot-card:hover:before{opacity:1}.featured-screenshot-card:hover{transform:translateY(-4px);box-shadow:0 50px 120px -20px #3461ff66,0 0 0 1px #3461ff66,inset 0 1px #ffffff26,0 0 80px #3461ff40;border-color:#3461ff80}.screenshot-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#3461ff0d,#7c3aed0d);opacity:0;transition:opacity .3s ease;pointer-events:none}.screenshot-card:hover:before{opacity:1}.screenshot-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 32px 80px -12px #3461ff4d,0 0 0 1px #3461ff4d,inset 0 1px #ffffff1a,0 0 40px #3461ff33;border-color:#3461ff66}.screenshot-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:#0003;border-bottom:1px solid rgba(255,255,255,.05)}.screenshot-dots{display:flex;gap:6px}.screenshot-dots span{width:8px;height:8px;border-radius:50%;background:#fff3}.screenshot-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);flex:1}.screenshot-content-large{padding:var(--space-2xl);min-height:500px;display:flex;align-items:center;justify-content:center}.prediction-card-mockup-large{background:#0006;border-radius:var(--radius-xl);padding:var(--space-2xl);border:1px solid rgba(52,97,255,.15);width:100%;max-width:600px}.prediction-card-mockup{background:#0000004d;border-radius:var(--radius-xl);padding:var(--space-lg);border:1px solid rgba(52,97,255,.1)}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.tournament-badge{background:var(--accent-gradient);padding:4px 12px;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;color:#fff}.match-date{font-size:var(--font-size-xs);color:var(--text-muted)}.players-row-large{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl);gap:var(--space-xl);padding:var(--space-lg) 0}.player-info-large{flex:1;text-align:center}.player-name-large{font-size:var(--font-size-2xl);font-weight:800;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.01em}.player-rank{font-size:var(--font-size-xs);color:var(--text-muted)}.vs-divider-large{font-size:var(--font-size-lg);color:var(--text-muted);font-weight:700;padding:0 var(--space-md)}.prediction-stats-large{margin-bottom:var(--space-xl)}.prediction-bar-large{position:relative;height:48px;background:#0006;border-radius:var(--radius-xl);margin-bottom:var(--space-md);overflow:hidden;display:flex;align-items:center;padding:0 var(--space-md)}.prediction-fill{position:absolute;left:0;top:0;height:100%;background:var(--accent-gradient);border-radius:var(--radius-lg);box-shadow:0 0 20px #3461ff80}.prediction-fill-large{position:absolute;left:0;top:0;height:100%;background:var(--accent-gradient);border-radius:var(--radius-xl);box-shadow:0 0 30px #3461ff99}.prediction-percentage-large{position:relative;z-index:1;font-size:var(--font-size-lg);font-weight:800;color:#fff;margin-left:var(--space-md)}.confidence-badge-large{display:inline-block;padding:8px 16px;background:#10b98140;border:1px solid rgba(16,185,129,.4);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:700;color:#10b981}.shap-features-large{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-xl)}.shap-item-large{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:#3461ff14;border:1px solid rgba(52,97,255,.15);border-radius:var(--radius-lg);transition:all .2s ease}.shap-item-large:hover{background:#3461ff1f;border-color:#3461ff40;transform:translate(4px)}.shap-label-large{font-size:var(--font-size-base);color:var(--text-secondary);font-weight:500}.shap-value-large{font-size:var(--font-size-base);font-weight:800}.shap-value.positive,.shap-value-large.positive{color:#10b981}.shap-explanation-mockup{background:#0000004d;border-radius:var(--radius-xl);padding:var(--space-lg);border:1px solid rgba(52,97,255,.1)}.explanation-header{font-size:var(--font-size-base);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-md)}.feature-list{display:flex;flex-direction:column;gap:var(--space-sm)}.feature-row{display:flex;align-items:center;gap:var(--space-sm)}.feature-name{font-size:var(--font-size-xs);color:var(--text-secondary);min-width:140px}.feature-bar{flex:1;height:8px;background:#0000004d;border-radius:var(--radius-sm);overflow:hidden}.feature-fill{height:100%;background:var(--accent-gradient);border-radius:var(--radius-sm)}.feature-impact{font-size:var(--font-size-xs);font-weight:700;color:#10b981;min-width:40px;text-align:right}.analysis-mockup{background:#0000004d;border-radius:var(--radius-xl);padding:var(--space-lg);border:1px solid rgba(52,97,255,.1)}.analysis-section{margin-bottom:var(--space-lg)}.section-title{font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-sm)}.match-item{padding:var(--space-sm);background:#3461ff0d;border-radius:var(--radius-md);margin-bottom:var(--space-xs);display:flex;justify-content:space-between;align-items:center}.match-players{font-size:var(--font-size-xs);font-weight:600;color:var(--text-primary)}.match-prediction{font-size:var(--font-size-xs);color:var(--text-muted)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.stat-box{background:#3461ff1a;border:1px solid rgba(52,97,255,.2);border-radius:var(--radius-md);padding:var(--space-sm);text-align:center}.stat-value{font-size:var(--font-size-xl);font-weight:800;color:var(--accent-primary);margin-bottom:4px}.stat-label{font-size:var(--font-size-xs);color:var(--text-muted)}.screenshot-placeholder{width:100%;height:100%;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);color:var(--text-muted);font-size:var(--font-size-sm);transition:all var(--transition-normal)}.screenshot-placeholder:hover{border-color:var(--border-accent);background:var(--bg-secondary)}.screenshot-icon{font-size:var(--font-size-2xl);color:var(--accent-primary)}.feature-highlights{display:flex;gap:var(--space-lg);justify-content:center;flex-wrap:wrap}.feature-item{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:#3461ff1a;border:1px solid rgba(52,97,255,.2);border-radius:var(--radius-xl);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-medium);transition:all var(--transition-normal)}.feature-item:hover{background:#3461ff26;border-color:#3461ff4d;transform:translateY(-2px)}.feature-icon{color:var(--accent-primary);font-size:var(--font-size-base)}.scroll-indicator{position:absolute;bottom:var(--space-lg);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--font-size-sm);animation:bounce 2s infinite}.scroll-arrow{width:2px;height:20px;background:var(--accent-primary);border-radius:1px;position:relative}.scroll-arrow:after{content:"";position:absolute;bottom:0;left:-3px;width:8px;height:8px;border-right:2px solid var(--accent-primary);border-bottom:2px solid var(--accent-primary);transform:rotate(45deg)}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@media (max-width: 1024px){.hero .container{grid-template-columns:1fr;gap:var(--space-3xl);text-align:center;padding:var(--space-xl) var(--space-md)}.hero-content{max-width:100%;padding-right:0}.hero-visual{min-height:auto;padding-top:var(--space-2xl)}.product-screenshots{padding-left:0}.featured-screenshot-wrapper{max-width:100%}.hero-headline{font-size:var(--font-size-5xl)}.hero-subtitle{font-size:var(--font-size-4xl)}.stats,.cta-section,.trust-badges{justify-content:center}}@media (max-width: 768px){.hero{padding:var(--space-2xl) var(--space-sm)}.hero-headline{font-size:var(--font-size-4xl)}.hero-subtitle{font-size:var(--font-size-3xl)}.hero-subheadline{font-size:var(--font-size-lg)}.cta-section{flex-direction:column;align-items:center}.cta-primary,.cta-secondary{width:100%;max-width:300px}.stats{flex-direction:column;gap:var(--space-md)}.screenshot-grid{grid-template-columns:1fr}.feature-highlights,.trust-badges{flex-direction:column;align-items:center}}@media (max-width: 480px){.hero-headline{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-2xl)}.testimonial-header{flex-direction:column;text-align:center;gap:var(--space-sm)}.testimonial-wins{text-align:center}}.features-section{background:var(--bg-secondary);padding:var(--space-3xl) var(--space-md);border-top:1px solid var(--border-primary);position:relative}.features-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border-primary)}.features-section .container{max-width:1400px;margin:0 auto}.section-header{text-align:center;margin-bottom:var(--space-3xl)}.section-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;color:#1a1a1a;margin-bottom:var(--space-md);letter-spacing:-.02em;line-height:1.1}.section-subtitle{font-size:var(--font-size-lg);color:#3d3d3d;max-width:700px;margin:0 auto;line-height:var(--leading-relaxed);font-weight:400}.features-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-xl);grid-auto-rows:minmax(280px,auto)}.feature-card--large{grid-column:span 6;grid-row:span 2;min-height:400px}.feature-card--medium{grid-column:span 4;min-height:320px}.feature-card--small{grid-column:span 3;min-height:280px}@media (max-width: 1200px){.feature-card--large,.feature-card--medium,.feature-card--small{grid-column:span 6}}@media (max-width: 768px){.features-grid{grid-template-columns:1fr}.feature-card--large,.feature-card--medium,.feature-card--small{grid-column:span 1;min-height:auto}}.feature-card{background:#fff!important;border:1px solid #E5E5E5!important;border-radius:var(--radius-lg);padding:var(--space-xl);text-align:left;transition:all .2s ease;box-shadow:0 1px 3px #0000001f!important;position:relative;overflow:hidden}.feature-card:before,.feature-card:after{display:none!important;content:none!important;background:none!important}.feature-card--large{padding:var(--space-2xl);box-shadow:0 1px 3px #0000001f!important;background:#fff!important}.feature-card--large:before,.feature-card--large:after{display:none!important;content:none!important;background:none!important;background-image:none!important}.feature-card:hover{background:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #00000026!important;border-color:#d1d0cb!important}.feature-card:hover:before,.feature-card:hover:after{display:none!important;background:none!important}.feature-card--large:hover{background:#fff!important;box-shadow:0 4px 12px #00000026!important}.feature-icon-wrapper{position:relative;display:inline-block;margin-bottom:var(--space-xl);z-index:1;background:none!important;background-image:none!important}.feature-icon-wrapper:before,.feature-icon-wrapper:after{display:none!important;content:none!important;background:none!important;background-image:none!important}.feature-icon-bg{display:none!important;visibility:hidden!important;opacity:0!important;background:none!important;background-image:none!important;background-gradient:none!important;filter:none!important;box-shadow:none!important}.feature-icon{position:relative;font-size:var(--font-size-5xl);color:#c15f3c!important;transition:color .2s ease;z-index:1;filter:none!important;text-shadow:none!important;box-shadow:none!important;background:none!important;background-image:none!important}.feature-icon:before,.feature-icon:after{display:none!important;content:none!important}.feature-card--large .feature-icon{font-size:var(--font-size-6xl)}.feature-card:hover .feature-icon{color:#a04e30}.feature-title{font-size:var(--font-size-xl);font-weight:700;color:#1a1a1a;margin-bottom:var(--space-md);letter-spacing:-.01em}.feature-description{font-size:var(--font-size-base);color:#3d3d3d;line-height:var(--leading-relaxed);font-weight:400}@media (max-width: 768px){.features-section{padding:var(--space-2xl) var(--space-sm)}.section-title{font-size:var(--font-size-4xl)}.features-grid{grid-template-columns:1fr;gap:var(--space-md)}.feature-card{padding:var(--space-lg)}}.redesigned-pricing-section{padding:var(--spacing-3xl) 0 var(--spacing-3xl) 0;background:var(--background-gradient)}.pricing-section-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.pricing-title{font-size:2.5rem;font-weight:var(--font-weight-bold);text-align:center;margin-bottom:var(--spacing-md);color:var(--text-primary)}.pricing-subtitle{font-size:1.25rem;color:var(--text-muted);text-align:center;margin-bottom:var(--spacing-xl)}.pricing-trust-row{display:flex;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.pricing-badge{background:var(--accent-container-1);color:var(--accent-primary);border-radius:var(--radius-md);padding:.5em 1.25em;font-weight:var(--font-weight-semibold);font-size:1rem;border:1px solid var(--accent-primary);margin-bottom:var(--spacing-xs);box-shadow:var(--shadow-sm)}.pricing-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.pricing-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000001a;border:1px solid var(--border-primary);padding:var(--spacing-xl) var(--spacing-lg);display:flex;flex-direction:column;align-items:center;transition:box-shadow var(--transition-normal),border-color var(--transition-normal),transform var(--transition-fast);min-height:480px;position:relative}.pricing-card:hover{box-shadow:0 4px 16px #00000026;border-color:var(--border-secondary);transform:translateY(-4px)}.pricing-card--highlighted{border:2px solid var(--accent-primary);box-shadow:0 4px 16px #0000001f;z-index:2}.pricing-card-popular-badge{position:absolute;top:-18px;left:50%;transform:translate(-50%);background:var(--accent-primary);color:#fff;font-size:.95rem;font-weight:var(--font-weight-bold);padding:.4em 1.2em;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;letter-spacing:.03em}.pricing-card-name{font-size:1.35rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-md);margin-top:.5em;text-align:center}.pricing-card-price-row{display:flex;align-items:baseline;gap:.5em;margin-bottom:var(--spacing-md);justify-content:center}.pricing-card-price{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--accent-primary);letter-spacing:-.02em}.pricing-card-cycle{font-size:1.1rem;color:var(--text-muted);font-weight:var(--font-weight-medium)}.pricing-card-features{list-style:none;padding:0;margin:0 0 var(--spacing-lg) 0;width:100%}.pricing-card-feature{color:var(--text-secondary);font-size:1.05rem;padding:.4em 0 .4em 1.5em;position:relative;margin-bottom:.2em}.pricing-card-feature:before{content:"✓";color:var(--accent-primary);font-weight:700;position:absolute;left:0;top:.2em;font-size:1.1em}.pricing-card-btn{width:100%;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.15rem;font-weight:var(--font-weight-bold);padding:.9em 0;margin-top:auto;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.pricing-card-btn:hover{background:var(--accent-primary-dark);box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}@media (max-width: 900px){.pricing-cards-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.pricing-card{min-height:0}}.testimonials-section{background:var(--bg-primary);padding:var(--space-3xl) var(--space-md);position:relative}.testimonials-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border-primary)}.testimonials-section .container{max-width:1400px;margin:0 auto}.testimonials-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2xl);max-width:1000px;margin:0 auto}.trust-signal-card{background:#fff!important;border:1px solid #E5E5E5!important;border-radius:var(--radius-lg);padding:var(--space-2xl);display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .2s ease;box-shadow:0 1px 3px #0000001f!important;position:relative;overflow:visible}.trust-signal-card:before{display:none!important;content:none!important;background:none!important;background-image:none!important}.trust-signal-card:hover{background:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #00000026!important;border-color:#d1d0cb!important}.trust-signal-card:hover:before,.trust-signal-card:hover:after{display:none!important;background:none!important}.trust-icon-container{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-xl);z-index:1}.trust-icon-bg{display:none!important;visibility:hidden!important;opacity:0!important;background:none!important;background-image:none!important;filter:none!important}.trust-icon-glow{display:none!important;visibility:hidden!important;opacity:0!important;background:none!important;background-image:none!important;filter:none!important;animation:none!important}.trust-icon-large{position:relative;font-size:var(--font-size-5xl);color:#c15f3c!important;z-index:1;filter:none!important;text-shadow:none!important;box-shadow:none!important;transition:color .2s ease}.trust-signal-card:hover .trust-icon-large{color:#a04e30!important;transform:none;filter:none!important}.trust-title-large{font-size:var(--font-size-xl);font-weight:700;color:#1a1a1a;margin-bottom:var(--space-sm);text-align:center;letter-spacing:-.01em}.trust-description-large{font-size:var(--font-size-base);color:#3d3d3d;line-height:var(--leading-relaxed);text-align:center;margin:0}.testimonial-quote{font-size:var(--font-size-lg);font-style:italic;color:var(--text-secondary);line-height:var(--leading-relaxed);flex-grow:1;margin-bottom:var(--space-lg)}.testimonial-author{display:flex;align-items:center;gap:var(--space-md)}.author-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-primary)}.author-info{line-height:var(--leading-tight)}.author-name{font-weight:var(--font-semibold);color:var(--text-primary);font-size:var(--font-size-base)}.author-role{font-size:var(--font-size-sm);color:var(--text-muted)}@media (max-width: 768px){.testimonials-section{padding:var(--space-2xl) var(--space-sm)}.testimonials-grid{grid-template-columns:1fr;gap:var(--space-xl)}.trust-signal-card{padding:var(--space-xl)}.trust-icon-container{width:100px;height:100px}.trust-icon-large{font-size:var(--font-size-4xl)}}.faq-section{background:var(--bg-secondary);padding:var(--space-3xl) 0;border-top:1px solid var(--border-primary)}.trust-features{margin-bottom:var(--space-3xl)}.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg);max-width:1000px;margin:0 auto}.trust-feature{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:#fff;border:1px solid #E5E5E5;border-radius:var(--radius-lg);transition:all .2s ease;box-shadow:0 1px 3px #0000001f;position:relative;overflow:hidden}.trust-feature:before{display:none}.trust-feature:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000026;border-color:var(--border-secondary)}.trust-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--accent-container-1);border-radius:var(--radius-md);color:var(--accent-primary);font-size:var(--font-size-lg);flex-shrink:0;box-shadow:none}.trust-content{flex:1}.trust-title{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-base);font-weight:700;color:#1a1a1a;letter-spacing:-.01em}.trust-description{margin:0;font-size:var(--font-size-sm);color:#3d3d3d}.faq-content{max-width:800px;margin:0 auto}.faq-header{text-align:center;margin-bottom:var(--space-2xl)}.faq-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;color:#1a1a1a;margin:0 0 var(--space-md) 0;letter-spacing:-.02em;line-height:1.1}.faq-subtitle{font-size:var(--font-size-lg);color:#3d3d3d;line-height:var(--leading-relaxed);margin:0;font-weight:400}.contact-link{color:var(--accent-primary);text-decoration:none;font-weight:var(--font-medium);transition:color var(--transition-fast)}.contact-link:hover{color:var(--accent-primary-dark);text-decoration:underline}.faq-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-2xl)}.faq-item{background:#fff;border:1px solid #E5E5E5;border-radius:var(--radius-lg);overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #0000001f}.faq-item:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #00000026}.faq-item.active{border-color:var(--accent-primary);box-shadow:0 2px 8px #00000026}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);background:none;border:none;color:#1a1a1a;font-size:var(--font-size-base);font-weight:var(--font-semibold);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.faq-question:hover{background:var(--bg-secondary)}.faq-icon{font-size:var(--font-size-sm);color:#3d3d3d;transition:all var(--transition-fast);flex-shrink:0;margin-left:var(--space-sm)}.faq-item.active .faq-icon{transform:rotate(180deg);color:var(--accent-primary)}.faq-answer{max-height:0;overflow:hidden;transition:all var(--transition-normal);background:var(--bg-secondary)}.faq-item.active .faq-answer{max-height:200px}.faq-answer p{margin:0;padding:0 var(--space-lg) var(--space-lg);color:#3d3d3d;line-height:var(--leading-relaxed);font-size:var(--font-size-base)}.guarantee-banner{background:var(--accent-container-1);border-radius:var(--radius-xl);padding:var(--space-xl);text-align:center;box-shadow:0 1px 3px #0000001f;position:relative;overflow:hidden;border:1px solid var(--border-primary)}.guarantee-banner:before{display:none}.guarantee-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:var(--space-md);flex-wrap:wrap}.guarantee-icon{font-size:var(--font-size-3xl);color:var(--accent-primary);flex-shrink:0}.guarantee-text{flex:1;min-width:300px}.guarantee-text h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-xl);font-weight:var(--font-bold);color:#1a1a1a}.guarantee-text p{margin:0;font-size:var(--font-size-base);color:#3d3d3d;line-height:var(--leading-relaxed)}@media (max-width: 768px){.faq-section{padding:var(--space-2xl) 0}.trust-grid{grid-template-columns:1fr;gap:var(--space-md)}.trust-feature{padding:var(--space-md)}.faq-title{font-size:var(--font-size-3xl)}.faq-subtitle{font-size:var(--font-size-base)}.faq-question{padding:var(--space-md);font-size:var(--font-size-sm)}.faq-answer p{padding:0 var(--space-md) var(--space-md)}.guarantee-banner{padding:var(--space-lg)}.guarantee-content{flex-direction:column;text-align:center}.guarantee-text{min-width:auto}.guarantee-text h3{font-size:var(--font-size-lg)}.guarantee-text p{font-size:var(--font-size-sm)}}@media (max-width: 480px){.trust-feature{flex-direction:column;text-align:center;gap:var(--space-sm)}.trust-icon{width:40px;height:40px;font-size:var(--font-size-base)}.faq-question{padding:var(--space-sm);font-size:var(--font-size-xs)}.faq-answer p{padding:0 var(--space-sm) var(--space-sm);font-size:var(--font-size-xs)}}.faq-item{animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.faq-item:before{display:none}.faq-question:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px;border-radius:var(--radius-lg)}.faq-item.loading{opacity:.6;pointer-events:none}.faq-item.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid var(--accent-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-family);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text-primary);margin:0}p{font-family:var(--font-family);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0 0 var(--space-md) 0}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}button{font-family:var(--font-family);cursor:pointer;border:none;outline:none;transition:all var(--transition-normal)}button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}input,textarea,select{font-family:var(--font-family);background-color:var(--bg-input);border:1px solid var(--border-secondary);border-radius:var(--radius-xl);color:var(--text-primary);padding:var(--space-sm) var(--space-md);transition:all var(--transition-fast)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-card);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}::selection{background-color:var(--accent-primary);color:var(--text-primary)}.container{max-width:1400px;margin:0 auto;padding:0 var(--space-md)}.home-page{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary)}.home-page main{flex:1}.dashboard-layout{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary)}.dashboard-content{flex:1;padding:var(--space-lg);background-color:var(--bg-secondary)}.loading{opacity:.6;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid var(--accent-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.container{padding:0 var(--space-sm)}}@media (max-width: 768px){html{font-size:14px}.container{padding:0 var(--space-xs)}.dashboard-content{padding:var(--space-md)}}@media (max-width: 480px){html{font-size:13px}.dashboard-content{padding:var(--space-sm)}}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.forgot-password{display:block;margin-bottom:var(--space-md);font-size:var(--font-size-sm)}.auth-page{display:flex;min-height:100vh;background:var(--bg-primary)}.auth-container{display:flex;width:100%;max-width:1400px;margin:auto;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 0 1px #3461ff0d;overflow:hidden;backdrop-filter:blur(10px)}.auth-branding{flex:1;padding:var(--space-3xl);background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(52,97,255,.05) 100%);color:var(--text-primary);display:flex;flex-direction:column;border-right:1px solid var(--border-primary);position:relative;overflow:hidden}.auth-branding:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:radial-gradient(circle,rgba(52,97,255,.1) 0%,transparent 70%);border-radius:50%;transform:translate(50%,-50%)}.auth-branding .logo{display:flex;align-items:center;color:var(--text-primary);text-decoration:none;gap:var(--space-sm);margin-bottom:var(--space-3xl);font-weight:var(--font-bold);font-size:var(--font-size-xl)}.auth-branding .logo svg{font-size:var(--font-size-4xl);color:var(--accent-primary)}.auth-branding .logo h1{font-size:var(--font-size-2xl);font-weight:var(--font-semibold);margin:0}.branding-content h2{font-size:var(--font-size-5xl);font-weight:var(--font-bold);margin-bottom:var(--space-lg);color:var(--text-primary);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:var(--leading-tight)}.branding-content p{font-size:var(--font-size-xl);color:var(--text-secondary);margin-bottom:var(--space-xl);line-height:var(--leading-relaxed);font-weight:var(--font-medium)}.branding-content ul{list-style:none;padding:0}.branding-content ul li{margin-bottom:var(--space-lg);color:var(--text-primary);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md);font-size:var(--font-size-lg);font-weight:var(--font-medium);background:#3461ff0d;border-radius:var(--radius-lg);border-left:3px solid var(--accent-primary);transition:all var(--transition-fast)}.branding-content ul li:hover{background:#3461ff1a;transform:translate(4px)}.branding-content ul li:before{content:"✓";color:var(--accent-primary);font-weight:var(--font-bold);font-size:var(--font-size-xl);flex-shrink:0}.auth-form-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-3xl);background:var(--bg-card)}@media (max-width: 992px){.auth-branding{display:none}.auth-form-wrapper{padding:var(--space-lg)}.auth-container{margin:var(--space-md);border-radius:var(--radius-lg)}}@media (max-width: 768px){.auth-page{padding:var(--space-sm)}.auth-container{margin:0;border-radius:var(--radius-md)}.auth-form-wrapper{padding:var(--space-md)}}.auth-form-container{width:100%;max-width:400px}.auth-form-card{background:var(--bg-card);padding:var(--space-2xl);border-radius:var(--radius-xl);border:1px solid var(--border-primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 0 0 1px #3461ff0d;backdrop-filter:blur(10px)}.auth-form-card h2{font-size:var(--font-size-4xl);font-weight:var(--font-bold);text-align:center;margin-bottom:var(--space-xs);color:var(--text-primary);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{text-align:center;color:var(--text-muted);margin-bottom:var(--space-xl);font-size:var(--font-size-lg)}.social-login-buttons{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.social-button{width:100%;padding:var(--space-md) var(--space-lg);border:1px solid var(--border-secondary);border-radius:var(--radius-xl);font-size:var(--font-size-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--space-sm);background:var(--bg-input);color:var(--text-primary);box-shadow:0 1px 2px #0000000d}.social-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-color:var(--accent-primary)}.social-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.social-button-google{background:#fff;color:#1f2937}.social-button-google:hover:not(:disabled){background:#f9fafb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.social-button-apple{background:#000;color:#fff;border-color:#000}.social-button-apple:hover:not(:disabled){background:#1a1a1a;box-shadow:0 4px 6px -1px #0003,0 2px 4px -1px #0000001a}.social-button svg{font-size:var(--font-size-lg)}.divider{display:flex;align-items:center;text-align:center;margin:var(--space-xl) 0;color:var(--text-muted);font-size:var(--font-size-sm)}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border-secondary)}.divider span{padding:0 var(--space-md)}.form-group{margin-bottom:var(--space-lg)}.form-group label{display:flex;align-items:center;gap:var(--space-xs);font-weight:var(--font-medium);margin-bottom:var(--space-xs);color:var(--text-primary);font-size:var(--font-size-sm)}.form-group input{width:100%;padding:var(--space-md) var(--space-lg);border:1px solid var(--border-secondary);border-radius:var(--radius-xl);font-size:var(--font-size-base);background:var(--bg-input);color:var(--text-primary);transition:all var(--transition-fast);box-shadow:0 1px 2px #0000000d}.form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3461ff1a}.form-group input::placeholder{color:var(--text-muted)}.error-message{background:#ef44441a;color:var(--error);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);margin-bottom:var(--space-md);text-align:center;border:1px solid rgba(239,68,68,.2);font-size:var(--font-size-sm)}.submit-button{width:100%;padding:var(--space-md) var(--space-lg);background:var(--accent-gradient);color:var(--text-primary);border:none;border-radius:var(--radius-xl);font-size:var(--font-size-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 6px -1px #3461ff33,0 2px 4px -1px #3461ff1a;margin-top:var(--space-md)}.submit-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.submit-button:disabled{background:var(--text-disabled);cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.auth-links{text-align:center;margin-top:var(--space-lg)}.auth-links a{color:var(--accent-primary);text-decoration:none;font-weight:var(--font-medium);transition:color var(--transition-fast)}.auth-links a:hover{color:var(--accent-secondary)}@media (max-width: 480px){.auth-form-card{padding:var(--space-lg)}.auth-form-card h2{font-size:var(--font-size-2xl)}}.page-wrapper{background:var(--bg-primary)}.about-page{color:var(--text-primary)}.about-hero-section{background:var(--bg-secondary);padding:var(--space-3xl) var(--space-md);text-align:center;border-bottom:1px solid var(--border-primary)}.about-hero-section .container{max-width:800px;margin:0 auto}.about-title{font-size:var(--font-size-6xl);font-weight:var(--font-bold);line-height:var(--leading-tight);margin-bottom:var(--space-lg);color:var(--text-primary)}.about-subtitle{font-size:var(--font-size-xl);color:var(--text-muted);line-height:var(--leading-relaxed)}.about-content-section{padding:var(--space-3xl) var(--space-md);background:var(--bg-primary)}.about-content-section .container{max-width:900px;margin:0 auto}.about-content-section h2{font-size:var(--font-size-4xl);font-weight:var(--font-semibold);margin-bottom:var(--space-lg);border-bottom:2px solid var(--accent-primary);padding-bottom:var(--space-md);color:var(--text-primary)}.about-story p,.about-built p,.about-transparency p{font-size:var(--font-size-lg);line-height:var(--leading-relaxed);color:var(--text-secondary)}.about-story p{margin-bottom:var(--space-lg)}.about-built{margin-top:var(--space-3xl)}.about-built p{margin-bottom:0}.about-transparency{margin-top:var(--space-3xl)}.about-transparency p{margin-bottom:0}.about-approach{margin-top:var(--space-3xl)}.about-approach p{margin-bottom:0}.about-cta-section{background:var(--bg-secondary);padding:var(--space-3xl) var(--space-md);text-align:center;border-top:1px solid var(--border-primary)}.about-cta-section h2{font-size:var(--font-size-4xl);font-weight:var(--font-semibold);margin-bottom:var(--space-lg);color:var(--text-primary)}.about-hero{background:linear-gradient(#060a1ce6,#060a1ce6),url(/assets/images/nba-court.jpg);background-size:cover;background-position:center;padding:var(--space-3xl) var(--space-md);text-align:center;border-bottom:1px solid var(--border-primary)}.about-hero h1{font-size:var(--font-size-6xl);color:var(--accent-primary);margin-bottom:var(--space-md);font-weight:var(--font-bold)}.about-hero p{font-size:var(--font-size-2xl);color:var(--text-secondary);line-height:var(--leading-relaxed)}.about-content{max-width:1400px;margin:var(--space-3xl) auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg);padding:0 var(--space-md)}.edge-card{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--space-lg);border:1px solid var(--border-accent);transition:all var(--transition-normal);box-shadow:var(--shadow-card)}.edge-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--accent-primary)}.edge-card h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-md);color:var(--text-primary);font-weight:var(--font-semibold)}.edge-card p{color:var(--text-secondary);line-height:var(--leading-relaxed)}.about-cta{text-align:center;margin:var(--space-3xl) 0}.cta-button{background:var(--accent-gradient);color:var(--text-primary);border:none;border-radius:var(--radius-xl);padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg);font-weight:var(--font-bold);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-lg)}.cta-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}@media (max-width: 768px){.about-title,.about-hero h1{font-size:var(--font-size-4xl)}.about-subtitle{font-size:var(--font-size-lg)}.about-content-section h2,.about-cta-section h2{font-size:var(--font-size-3xl)}.about-hero p{font-size:var(--font-size-xl)}.about-content{grid-template-columns:1fr;gap:var(--space-md)}.edge-card{padding:var(--space-md)}}.loading-spinner-container,.loading-container{display:flex;justify-content:center;align-items:center;height:100%;width:100%;min-height:100vh;background:#f4f3ee}.loading-spinner{border:4px solid #E8E6DC;border-left-color:#c15f3c;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{min-height:100vh;display:flex;flex-direction:column;background:#f4f3ee}.dashboard-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-lg) var(--space-lg) var(--space-md) var(--space-lg);background:#fff;border-bottom:1px solid #E8E6DC}.dashboard-header:before{display:none}.user-welcome h1{color:#141413;background:none;-webkit-text-fill-color:#141413;font-size:var(--font-size-3xl);margin:0 0 var(--space-xs) 0;font-weight:600;font-family:var(--font-family-sans);letter-spacing:-.02em}.logout-btn{background:#141413;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-weight:500;font-family:var(--font-family-sans);cursor:pointer;margin-top:var(--space-xs);transition:all var(--transition-normal);font-size:14px}.logout-btn:hover{background:#2d2d2c;color:#fff}.search-bar input{padding:10px 16px;border-radius:8px;border:1px solid #E8E6DC;background:#fff;color:#141413;font-size:14px;font-family:var(--font-family);width:260px;transition:border-color .2s ease}.search-bar input:focus{outline:none;border-color:#c15f3c}.search-bar input::placeholder{color:#b0aea5}.dashboard-content{flex:1 1 auto;display:grid;grid-template-columns:1fr 2fr;gap:var(--space-xl);padding:var(--space-xl) var(--space-lg) var(--space-lg) var(--space-lg);max-width:1400px;margin:0 auto;width:100%}@media (max-width: 1000px){.dashboard-content{grid-template-columns:1fr;gap:var(--space-lg);padding:var(--space-lg) var(--space-md) var(--space-md) var(--space-md)}}.betting-interface,.players-section{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:var(--space-lg) var(--space-md);margin-bottom:var(--space-lg);transition:border-color .2s ease}.betting-interface:before,.players-section:before{display:none}.betting-interface:hover,.players-section:hover{border-color:#b0aea5}.betting-interface:hover:before,.players-section:hover:before{display:none}.betting-interface h2,.players-section h2{color:#141413;font-family:var(--font-family-sans);font-size:var(--font-size-xl);margin-bottom:var(--space-lg);font-weight:var(--font-semibold)}.games-list{display:flex;flex-direction:column;gap:var(--space-md)}.game-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-input);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-md);color:var(--text-primary);font-size:var(--font-size-base);transition:all var(--transition-fast)}.game-item:hover{border-color:var(--border-accent);background:var(--bg-secondary)}.view-props-btn{background:var(--accent-gradient);color:var(--text-primary);border:none;border-radius:var(--radius-xl);padding:var(--space-xs) var(--space-md);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-sm);box-shadow:var(--shadow-md)}.view-props-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.players-section{margin-top:0}.players-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-lg)}@media (max-width: 700px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-md) var(--space-sm) var(--space-md)}.dashboard-content{padding:var(--space-md) var(--space-xs) var(--space-md) var(--space-xs)}.betting-interface,.players-section{padding:var(--space-md) var(--space-sm) var(--space-md) var(--space-sm)}.user-welcome h1{font-size:var(--font-size-3xl)}}.dashboard-container{padding:2rem}.dashboard-header{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--color-text-primary)}.dashboard-welcome{font-size:1.2rem;margin-bottom:2rem;color:var(--color-text-secondary)}.dashboard-content{background-color:var(--color-background-light);padding:2rem;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md)}.dashboard-verification-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background-color:var(--color-background-dark);color:var(--color-text-primary)}.verification-status{margin-top:1.5rem;font-size:1.2rem;font-weight:500;color:var(--color-text-secondary)}.betting-dashboard{min-height:100vh;background:#f4f3ee;color:#141413;font-family:var(--font-family)}.filter-bar{background:#fff;border:1px solid #E8E6DC;border-radius:var(--radius-xl);padding:var(--space-lg);margin-bottom:var(--space-xl);display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--space-md)}.filter-group{display:flex;gap:var(--space-lg);align-items:center;flex-wrap:wrap;justify-content:center}.filter-label{font-size:.9375rem;font-weight:600;color:#141413;text-transform:uppercase;letter-spacing:.05em}.filter-bar:before{display:none}.filter-button-group{display:flex;gap:var(--space-sm);background:#e8e6dc;padding:.25rem;border-radius:var(--radius-xl);border:1px solid #E8E6DC;box-shadow:none}.filter-button{background:transparent;border:none;color:#141413;padding:.625rem 1.25rem;border-radius:var(--radius-lg);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;position:relative}.filter-button:hover{color:#c15f3c;background:#c15f3c14}.filter-button.active{background:#c15f3c;color:#fff;box-shadow:none;border:none;font-weight:var(--font-bold)}.filter-button.active:before{display:none}.filter-group label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.5px}.filter-select{background:#fff;border:1px solid #E8E6DC;border-radius:var(--radius-lg);color:#141413;padding:.625rem 1.25rem;font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all .3s ease;min-width:160px;box-shadow:none}.filter-select{background:var(--bg-input);backdrop-filter:blur(8px);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-sm) var(--space-md);color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-sm);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300d4ff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-sm) center;padding-right:var(--space-2xl)}.filter-select:hover{border-color:#3461ff66;background:linear-gradient(135deg,#21253bfa,#14182dfa);box-shadow:0 4px 8px -2px #0000004d,0 0 0 1px #3461ff4d,inset 0 1px #ffffff14;transform:translateY(-1px)}.filter-select:hover{background:var(--card-gradient-hover);border-color:var(--border-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.filter-select:focus{outline:none;border-color:#3461ff80;box-shadow:0 0 0 3px #3461ff26,0 4px 8px -2px #0000004d,0 0 0 1px #3461ff4d}.advanced-filters{display:flex;align-items:center;gap:1rem}.filter-toggle{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#3b82f6;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.filter-toggle:hover{background:#3b82f633;border-color:#3b82f6}.filter-chips{display:flex;gap:.5rem;flex-wrap:wrap}.filter-chip{display:flex;align-items:center;gap:.5rem;background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:20px;padding:.375rem .75rem;font-size:.75rem;font-weight:500;color:#94a3b8;cursor:pointer;transition:all .2s ease}.filter-chip:hover{background:#1e293bcc;border-color:#3b82f6;color:#e2e8f0}.filter-chip input[type=checkbox]{display:none}.filter-chip input[type=checkbox]:checked+*{color:#3b82f6}.dashboard-layout{display:grid;grid-template-columns:1fr 320px;gap:2rem;padding:2rem;max-width:1600px;margin:0 auto}.main-content{display:flex;flex-direction:column;gap:1.5rem}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.content-header h2{font-size:1.5rem;font-weight:700;color:#141413;margin:0}.dashboard-main-heading{font-size:clamp(1.75rem,4vw,2.5rem)!important;font-weight:800!important;margin:0!important;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 100%)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;position:relative;z-index:1;display:flex;align-items:center;gap:var(--space-md)}.dashboard-main-heading:before{content:"🎾";font-size:2rem;filter:drop-shadow(0 0 20px rgba(0,212,255,.4));animation:pulse-glow 3s ease-in-out infinite}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 20px rgba(0,212,255,.4));transform:scale(1)}50%{filter:drop-shadow(0 0 30px rgba(0,212,255,.6));transform:scale(1.1)}}.view-controls{display:flex;gap:var(--space-sm);position:relative;z-index:1}.view-btn{background:var(--card-gradient);backdrop-filter:blur(8px);border:1px solid var(--border-primary);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.view-btn:hover{background:var(--card-gradient-hover);border-color:var(--border-accent);color:var(--text-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.view-btn.active{background:var(--accent-gradient);border-color:#00d4ff66;color:#fff;box-shadow:var(--glow-primary)}.view-btn.active:hover{background:var(--accent-gradient-hover);box-shadow:var(--glow-primary-hover)}.opportunities-feed{display:flex;flex-direction:column;gap:1.5rem}.opportunity-card{background:#fff;border:1px solid #E8E6DC;border-radius:var(--radius-2xl);overflow:hidden;transition:all .3s ease;box-shadow:none;position:relative}.opportunity-card:after{display:none}.opportunity-card:hover{box-shadow:0 4px 12px #00000014;border-color:#c15f3c;transform:translateY(-4px)}.card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #E8E6DC}.sport-info{display:flex;align-items:center;gap:.75rem}.sport-info svg{color:#141413;font-size:1.25rem}.league{font-weight:600;color:#141413;font-size:.875rem}.bet-type{background:#e5f3f1;color:#141413;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.edge-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.card-body{padding:1.5rem}.matchup{font-size:1.25rem;font-weight:700;color:#141413;margin:0 0 1rem;line-height:1.4}.line-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;background:#f4f3ee;border-radius:8px;border:1px solid #E8E6DC}.current-line{font-size:1.125rem;font-weight:600;color:#141413}.expected-value{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#10b981}.trend-up{color:#10b981}.trend-down{color:#ef4444}.historical-performance{margin-bottom:1.5rem}.historical-performance h4{font-size:.875rem;font-weight:600;color:#94a3b8;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.historical-bars{display:flex;align-items:end;gap:.25rem;height:60px;padding:.5rem 0}.bar{flex:1;min-width:8px;border-radius:2px 2px 0 0;transition:all .2s ease;cursor:pointer}.bar.over{background:linear-gradient(to top,#10b981,#34d399)}.bar.under{background:linear-gradient(to top,#ef4444,#f87171)}.bar:hover{opacity:.8;transform:scaleY(1.1)}.context-filter{display:flex;align-items:center;gap:.5rem;background:#3b82f61a;color:#3b82f6;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;margin-bottom:1rem}.recent-games{margin-bottom:1.5rem}.recent-games h4{font-size:.875rem;font-weight:600;color:#94a3b8;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.games-list{display:flex;flex-direction:column;gap:.5rem}.game-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#fafaf8;border-radius:6px;font-size:.875rem;border:1px solid #E8E6DC}.game-item span:first-child{color:#94a3b8}.game-item .over{color:#10b981;font-weight:600}.game-item .under{color:#ef4444;font-weight:600}.card-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;background:#f4f3ee;border-top:1px solid #E8E6DC}.analyze-btn,.track-btn{flex:1;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.analyze-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.analyze-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px)}.track-btn{background:#fff;color:#141413;border:1px solid #E8E6DC}.track-btn:hover{background:#fff;border-color:#c15f3c;color:#c15f3c}.sidebar{display:flex;flex-direction:column;gap:1.5rem}.sidebar-section{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:var(--space-lg);transition:border-color .2s ease}.sidebar-section:after{display:none}.sidebar-section:hover{border-color:#b0aea5}.sidebar-section h3{font-size:1rem;font-weight:600;color:#141413;font-family:var(--font-family-sans);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.sidebar-section-title{font-size:1rem!important;font-weight:600!important;color:#141413!important;font-family:var(--font-family-sans)!important;margin:0 0 var(--space-md) 0!important;display:flex!important;align-items:center!important;gap:var(--space-sm)!important}.sidebar-title-icon{font-size:1rem;color:#c15f3c}.edge-opportunities .edge-categories{display:flex;flex-direction:column;gap:12px}.edge-category{padding:14px 16px;border-radius:8px;border:1px solid #E8E6DC;background:#fafaf8;transition:all .2s ease}.edge-category:hover{border-color:#b0aea5}.edge-category-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.edge-label{font-size:11px;font-weight:700;letter-spacing:.5px}.edge-count{font-size:28px;font-weight:800;display:block;line-height:1.1}.edge-description{font-size:11px;color:#8892ab;display:block;margin-top:2px}.edge-category.strong-picks{background:#e5f3f1;border-color:#d0e8e5}.edge-category.strong-picks .edge-label,.edge-category.strong-picks .edge-count{color:#141413}.edge-category.value-picks{background:#efeef7;border-color:#e0def0}.edge-category.value-picks .edge-label,.edge-category.value-picks .edge-count{color:#141413}.edge-category.all-matches{background:#fafaf8;border-color:#e8e6dc}.edge-category.all-matches .edge-label{color:#b0aea5}.edge-category.all-matches .edge-count{color:#141413}.model-info-footer{margin-top:16px;padding-top:12px;border-top:1px solid #E8E6DC}.model-version{font-size:11px;color:#b0aea5;font-family:var(--font-family)}.odds-tracker{display:flex;flex-direction:column;gap:1rem}.odds-item{background:#fafaf8;border-radius:8px;padding:1rem;border:1px solid #E8E6DC}.odds-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.odds-header h4{font-size:.875rem;font-weight:600;color:#141413;font-family:var(--font-family-sans);margin:0}.odds-header .bet-type{background:#e5f3f1;color:#141413;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.sportsbooks{display:flex;flex-direction:column;gap:.5rem}.sportsbook-line{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#1e293b4d;border-radius:6px}.book-name{font-size:.875rem;font-weight:500;color:#94a3b8}.line{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#e2e8f0}.movement{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500}.movement.up{color:#10b981}.movement.down{color:#ef4444}.edge-alerts{display:flex;flex-direction:column;gap:.75rem}.edge-alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:8px;border:1px solid rgba(148,163,184,.1);transition:all .2s ease}.edge-alert.high{background:#10b9811a;border-color:#10b9814d}.edge-alert.high svg{color:#10b981}.edge-alert.medium{background:#f59e0b1a;border-color:#f59e0b4d}.edge-alert.medium svg{color:#f59e0b}.edge-alert:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.edge-alert strong{display:block;font-size:.875rem;font-weight:600;color:#f8fafc;margin-bottom:.25rem}.edge-alert p{font-size:.75rem;color:#94a3b8;margin:0;line-height:1.4}.historical-indicator{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:.5rem;gap:.25rem}.offseason-badge{background:#f59e0b;color:#fff;font-weight:600;padding:.25rem .75rem;border-radius:999px;font-size:.95rem;margin-bottom:.1rem;letter-spacing:.02em;box-shadow:0 1px 4px #00000012}.analyzed-date{color:#374151;font-size:.98rem;font-weight:500;margin-left:.1rem}@media (max-width: 1200px){.dashboard-layout{grid-template-columns:1fr;gap:1.5rem}.sidebar{order:-1}}@media (max-width: 768px){.filter-bar{flex-direction:column;align-items:stretch;padding:var(--space-md)}.filter-group{flex-direction:column;align-items:stretch;gap:var(--space-md)}.filter-label{text-align:center}.filter-button-group{flex-wrap:wrap;justify-content:center}.filter-button{flex:1;min-width:100px}.dashboard-layout{padding:1rem}.content-header{flex-direction:column;align-items:flex-start;gap:1rem}.line-info{flex-direction:column;align-items:flex-start;gap:.5rem}.card-footer{flex-direction:column}}.dashboard-verification-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#f4f3ee;color:#141413;text-align:center;padding:2rem}.verification-status{margin-top:1rem;font-size:1.125rem;color:#94a3b8;max-width:400px}.tennis-matches-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:20px}.tennis-predictions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px;margin-top:20px}.all-predictions-section{margin-top:30px;padding-top:20px;border-top:1px solid var(--border-secondary)}.all-predictions-section h3{color:var(--text-primary);margin-bottom:16px;font-size:18px;font-weight:600}.selected-match-details{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin-top:20px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.match-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}.match-details-header h3{margin:0;font-size:20px;font-weight:700;color:#1e293b}.close-btn{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.close-btn:hover{background:#f1f5f9;color:#374151}.match-details-content{display:flex;flex-direction:column;gap:20px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-text{margin-top:16px;color:var(--text-secondary);font-size:16px;font-weight:500}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#ef44440d;border:2px dashed rgba(239,68,68,.2);border-radius:16px;margin:20px 0}.error-icon{font-size:48px;margin-bottom:16px}.error-state h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 8px}.error-state p{color:var(--text-secondary);font-size:14px;margin:0 0 20px;max-width:400px}.retry-button{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #4f46e54d}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-3xl) var(--space-xl);text-align:center;background:var(--card-gradient);backdrop-filter:blur(12px);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);margin:var(--space-xl) 0;position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.empty-state:before{content:"";position:absolute;inset:0;background:var(--bg-gradient-card);opacity:.4;z-index:0}.empty-state>*{position:relative;z-index:1}.empty-icon{font-size:5rem;margin-bottom:var(--space-xl);opacity:.7;filter:drop-shadow(0 0 20px rgba(0,212,255,.3));animation:pulse-glow 3s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.7;transform:scale(1);filter:drop-shadow(0 0 20px rgba(0,212,255,.3))}50%{opacity:1;transform:scale(1.1);filter:drop-shadow(0 0 30px rgba(0,212,255,.5))}}.empty-state h3{background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;margin:0 0 var(--space-md) 0;letter-spacing:-.02em}.empty-state p{color:var(--text-secondary);font-size:clamp(1rem,2.5vw,1.25rem);margin:0;max-width:500px;line-height:1.7;font-weight:400}.active-tournaments{display:flex;flex-direction:column;gap:12px}.tournament-item{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);background:#fff;border-radius:var(--radius-lg);border:1px solid #E8E6DC;border-left:3px solid;transition:all .3s ease;position:relative;overflow:hidden}.tournament-item:before{display:none}.tournament-item:hover{background:#fff;border-color:#c15f3c;transform:translate(4px);box-shadow:0 2px 8px #00000014}.tournament-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-sm);margin-bottom:.25rem}.tournament-name{color:var(--text-primary);font-size:.9375rem;font-weight:700;line-height:1.3;flex:1}.tournament-level-badge{color:#fff;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;box-shadow:0 2px 4px #0003}.tournament-surface{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.empty-tournaments{padding:var(--space-xl) var(--space-md);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.empty-tournaments-icon{font-size:3rem;opacity:.5;margin-bottom:var(--space-sm)}.empty-tournaments-text{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.empty-tournaments-hint{color:var(--text-muted);font-size:.875rem;margin:0;line-height:1.5}.model-stats{display:flex;flex-direction:column;gap:12px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);background:#fff;border-radius:var(--radius-lg);border:1px solid #E8E6DC;transition:all .3s ease;position:relative;overflow:hidden}.stat-item:before{display:none}.stat-item:hover{background:#fff;border-color:#c15f3c;transform:translate(4px);box-shadow:0 2px 8px #0000000f}.stat-item:hover:before{display:none}.stat-item-model{border-top:2px solid rgba(148,163,184,.1);margin-top:var(--space-sm);padding-top:var(--space-lg)}.stat-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-value{color:var(--text-primary);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.3)}.stat-value-primary{color:var(--accent-primary)}.stat-value-success{color:#10b981;text-shadow:0 2px 8px rgba(16,185,129,.3)}.stat-value-warning{color:#c15f3c}.stat-value-error{color:#ef4444;text-shadow:0 2px 8px rgba(239,68,68,.3)}.stat-value-model{font-size:1rem;font-weight:700;color:var(--accent-primary);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none}@media (max-width: 768px){.tennis-matches-grid{grid-template-columns:1fr;gap:16px}.tennis-predictions-grid{grid-template-columns:1fr}.selected-match-details{padding:16px}.match-details-header h3{font-size:18px}.loading-state,.error-state,.empty-state{padding:40px 16px}}.tennis-match-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.tennis-match-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:#3b82f6}.tennis-match-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4);border-radius:16px 16px 0 0}.match-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.tournament-section{flex:1}.tournament-info{display:flex;flex-direction:column;gap:4px}.tournament-level{display:inline-block;padding:4px 8px;border-radius:6px;color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;align-self:flex-start}.tournament-name{font-size:18px;font-weight:700;color:#1e293b;margin:0;line-height:1.2}.round{font-size:14px;color:#64748b;font-weight:500}.surface-info{margin-top:8px}.surface-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;color:#fff;font-size:12px;font-weight:600;text-transform:capitalize}.status-section{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.status-indicator{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;background:#f1f5f9;font-size:12px;font-weight:600}.status-icon{font-size:12px}.status-icon.live{color:#dc2626;animation:pulse 2s infinite}.status-icon.completed{color:#059669}.status-icon.cancelled{color:#dc2626}.status-icon.scheduled{color:#d97706}.status-text{color:#374151}.match-date{font-size:12px;color:#6b7280;font-weight:500}.players-section{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:20px 0}.player{flex:1;display:flex;flex-direction:column;gap:8px}.player-info{display:flex;flex-direction:column;gap:6px}.player-header{display:flex;align-items:center;gap:8px}.player-name{font-size:16px;font-weight:700;color:#1e293b;margin:0;line-height:1.2}.winner-icon{color:#fbbf24;font-size:16px;animation:bounce 1s infinite}.player-details{display:flex;gap:12px;font-size:12px;color:#64748b}.player-ranking,.player-country{display:flex;align-items:center;gap:4px;font-weight:500}.player-score{font-size:24px;font-weight:800;color:#1e293b;text-align:center;padding:8px;background:#f8fafc;border-radius:8px;border:2px solid #e2e8f0}.match-divider{display:flex;flex-direction:column;align-items:center;gap:8px}.vs-circle{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.match-details{display:flex;gap:20px;margin-bottom:16px;padding:12px;background:#f8fafc;border-radius:8px;font-size:14px}.court-info,.set-scores{display:flex;align-items:center;gap:6px}.court-label,.scores-label{font-weight:600;color:#64748b}.court-name,.scores{color:#1e293b;font-weight:500}.betting-markets{margin-top:16px;padding:16px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;border:1px solid #bae6fd}.market-header h5{margin:0 0 12px;font-size:14px;font-weight:700;color:#0c4a6e}.odds-row{display:flex;gap:16px}.odds-item{flex:1;display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border-radius:8px;border:1px solid #e0f2fe}.odds-item .player-name{font-size:13px;font-weight:600;color:#1e293b}.odds-item .odds{font-size:16px;font-weight:800;color:#059669;background:#ecfdf5;padding:4px 8px;border-radius:6px;border:1px solid #a7f3d0}.live-score-data{margin-top:16px;padding:16px;background:linear-gradient(135deg,#fef2f2,#fee2e2);border-radius:12px;border:1px solid #fecaca}.current-set{font-size:14px;font-weight:700;color:#dc2626;margin-bottom:8px;text-align:center}.live-scores{display:flex;justify-content:center;align-items:center;gap:12px;font-size:20px;font-weight:800;color:#1e293b;margin-bottom:8px}.match-progress{font-size:12px;color:#dc2626;text-align:center;font-weight:600}.betting-status{margin-top:12px;text-align:center}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge.open{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.status-badge.suspended{background:#fef3c7;color:#d97706;border:1px solid #fcd34d}.status-badge.closed{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.tennis-match-card.compact{padding:16px}.tennis-match-card.compact .match-header{margin-bottom:12px}.tennis-match-card.compact .tournament-name{font-size:14px}.tennis-match-card.compact .round{font-size:12px}.tennis-match-card.compact .players-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.tennis-match-card.compact .player{flex:1;text-align:center}.tennis-match-card.compact .player-name{font-size:14px;font-weight:600}.tennis-match-card.compact .vs{font-size:12px;font-weight:700;color:#6b7280}.tennis-match-card.compact .match-footer{display:flex;justify-content:space-between;align-items:center}.tennis-match-card.compact .surface-badge{padding:4px 8px;font-size:10px}.tennis-match-card.compact .match-date{font-size:11px}@media (max-width: 768px){.tennis-match-card{padding:16px}.match-header{flex-direction:column;gap:12px}.status-section{align-items:flex-start}.players-section{flex-direction:column;gap:16px}.match-divider{transform:rotate(90deg)}.match-details,.odds-row{flex-direction:column;gap:8px}.live-scores{font-size:18px}}@media (max-width: 480px){.tennis-match-card{padding:12px}.tournament-name{font-size:16px}.player-name{font-size:14px}.player-score{font-size:20px}.vs-circle{width:32px;height:32px;font-size:10px}}.tennis-stats-widget{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.tennis-stats-widget:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#10b981,#059669,#047857);border-radius:16px 16px 0 0}.tennis-stats-widget.no-stats{text-align:center;padding:40px 24px}.no-stats-message{display:flex;flex-direction:column;align-items:center;gap:12px;color:#6b7280}.no-stats-message svg{font-size:32px;color:#9ca3af}.no-stats-message p{margin:0;font-size:16px;font-weight:500}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}.stats-header h3{margin:0;font-size:20px;font-weight:700;color:#1e293b}.set-info{background:#f0f9ff;color:#0369a1;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.stats-content{display:flex;flex-direction:column;gap:20px}.stat-row{display:flex;align-items:center;gap:16px;padding:16px;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s ease}.stat-row:hover{background:#f1f5f9;border-color:#cbd5e1}.stat-label{display:flex;align-items:center;gap:8px;min-width:140px;font-weight:600;color:#374151}.stat-label svg{color:#6b7280;font-size:14px}.stat-values{flex:1;display:flex;align-items:center;gap:16px}.stat-value{flex:1;display:flex;flex-direction:column;gap:8px;padding:12px;background:#fff;border-radius:8px;border:2px solid #e2e8f0;transition:all .2s ease}.stat-value.winner{border-color:#10b981;background:#f0fdf4;box-shadow:0 2px 4px #10b9811a}.stat-value .value{font-size:18px;font-weight:800;color:#1e293b;text-align:center}.progress-bar{width:100%;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:3px;transition:width .3s ease}.stat-value.winner .progress-fill{background:linear-gradient(90deg,#10b981,#059669)}.stat-divider{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:1px}.stat-winner{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fbbf24;color:#fff;border-radius:50%;font-size:12px;animation:bounce 1s infinite}.stats-summary{display:flex;gap:20px;margin-top:24px;padding-top:20px;border-top:2px solid #f1f5f9}.player-summary{flex:1;padding:16px;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.player-summary h4{margin:0 0 12px;font-size:16px;font-weight:700;color:#1e293b}.summary-stats{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#64748b}.summary-stats span{font-weight:500}.tennis-stats-widget.compact{padding:16px}.tennis-stats-widget.compact .stats-header{margin-bottom:16px;padding-bottom:12px}.tennis-stats-widget.compact .stats-header h4{margin:0;font-size:16px;font-weight:700;color:#1e293b}.compact-stats{display:flex;flex-direction:column;gap:12px}.compact-stat{display:flex;align-items:center;gap:12px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.stat-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#3b82f6;color:#fff;border-radius:8px;font-size:14px}.stat-info{flex:1;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.stat-comparison{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.stat-comparison .player1{color:#3b82f6}.stat-comparison .vs{color:#6b7280;font-size:12px;font-weight:700}.stat-comparison .player2{color:#8b5cf6}@media (max-width: 768px){.tennis-stats-widget{padding:16px}.stats-header{flex-direction:column;gap:12px;align-items:flex-start}.stat-row{flex-direction:column;gap:12px}.stat-label{min-width:auto;justify-content:center}.stat-values{flex-direction:column;gap:12px}.stat-divider{transform:rotate(90deg)}.stats-summary{flex-direction:column;gap:12px}.compact-stats{gap:8px}.compact-stat{padding:10px}}@media (max-width: 480px){.tennis-stats-widget{padding:12px}.stats-header h3{font-size:18px}.stat-value .value{font-size:16px}.stat-icon{width:28px;height:28px;font-size:12px}.stat-label{font-size:11px}.stat-comparison{font-size:13px}}.tennis-live-score{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;position:relative;overflow:hidden}.tennis-live-score:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#dc2626,#ef4444,#f87171);border-radius:16px 16px 0 0}.score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f1f5f9}.match-status{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.match-status svg{font-size:16px}.current-set-info{display:flex;align-items:center;gap:8px;background:#f0f9ff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.current-set-label{color:#0369a1}.current-set-number{color:#0c4a6e;font-weight:700}.server-indicator{display:flex;align-items:center;gap:6px;background:#fef2f2;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;color:#dc2626}.serving-dot{color:#dc2626;animation:pulse 2s infinite}.serving-text{color:#dc2626}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.set-scores{margin-bottom:24px}.sets-header{margin-bottom:16px}.sets-header h4{margin:0;font-size:18px;font-weight:700;color:#1e293b}.sets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.set-card{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:16px;transition:all .2s ease}.set-card.current{border-color:#dc2626;background:#fef2f2;box-shadow:0 2px 4px #dc26261a}.set-card.completed{border-color:#10b981;background:#f0fdf4}.set-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.set-number{font-size:14px;font-weight:700;color:#374151}.current-indicator{color:#dc2626;font-size:12px;animation:pulse 2s infinite}.winner-indicator{color:#fbbf24;font-size:12px}.set-scores{display:flex;flex-direction:column;gap:8px}.player-score{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.player-score.winner{border-color:#10b981;background:#ecfdf5}.player-name{font-size:13px;font-weight:600;color:#374151}.score{font-size:16px;font-weight:800;color:#1e293b}.player-score.winner .score{color:#059669}.score-divider{text-align:center;font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:1px;margin:4px 0}.set-winner{margin-top:8px;text-align:center;font-size:12px;font-weight:600;color:#059669;background:#ecfdf5;padding:4px 8px;border-radius:6px}.live-current-score-section{margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#fef2f2,#fee2e2);border-radius:12px;border:1px solid #fecaca}.live-score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.live-score-header h4{margin:0;font-size:16px;font-weight:700;color:#dc2626}.server-info{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#dc2626}.live-score-display{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:12px}.player-current-score{display:flex;flex-direction:column;align-items:center;gap:4px}.player-current-score .player-name{font-size:12px;font-weight:600;color:#64748b}.current-score{font-size:32px;font-weight:900;color:#1e293b}.score-separator{font-size:24px;font-weight:700;color:#6b7280}.match-progress{text-align:center;font-size:12px;color:#dc2626;font-weight:600}.match-summary{text-align:center;padding:20px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:12px;border:1px solid #bbf7d0}.winner-announcement{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.winner-trophy{color:#fbbf24;font-size:20px;animation:bounce 1s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.winner-text{font-size:18px;font-weight:700;color:#059669}.final-score{font-size:14px;color:#047857;font-weight:600}.no-scores-state{text-align:center;padding:40px 20px}.no-scores-message{display:flex;flex-direction:column;align-items:center;gap:12px;color:#6b7280}.no-scores-message svg{font-size:32px;color:#9ca3af}.no-scores-message p{margin:0;font-size:16px;font-weight:500}.tennis-live-score.compact{padding:16px}.tennis-live-score.compact .score-header{margin-bottom:12px;padding-bottom:12px}.tennis-live-score.compact .match-status{font-size:12px}.tennis-live-score.compact .current-set{font-size:11px;background:#f0f9ff;padding:4px 8px;border-radius:12px;color:#0369a1;font-weight:600}.compact-scores{margin-bottom:12px}.set-scores-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.set-score{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:60px;padding:8px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.set-number{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.score-pair{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:700}.score-pair .score{color:#1e293b}.score-pair .score.winner{color:#059669}.score-pair .separator{color:#6b7280;font-size:12px}.no-scores{text-align:center;color:#6b7280;font-size:12px;font-style:italic}.live-current-score{display:flex;align-items:center;justify-content:center;gap:12px;font-size:18px;font-weight:800;color:#1e293b;padding:8px;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}.live-current-score .separator{color:#6b7280;font-size:16px}@media (max-width: 768px){.tennis-live-score{padding:16px}.score-header{flex-direction:column;gap:12px;align-items:flex-start}.sets-grid{grid-template-columns:1fr;gap:12px}.live-score-display{flex-direction:column;gap:12px}.current-score{font-size:28px}.set-scores-row{gap:6px}.set-score{min-width:50px;padding:6px}.score-pair{font-size:12px}.live-current-score{font-size:16px}}@media (max-width: 480px){.tennis-live-score{padding:12px}.sets-header h4{font-size:16px}.set-card{padding:12px}.current-score{font-size:24px}.winner-text{font-size:16px}.set-score{min-width:45px;padding:4px}.score-pair{font-size:11px}}.shap-explanation-simple{background:#1a1f3a99;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:14px 18px;margin-top:14px}.shap-simple-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}.shap-title{color:#fff;font-size:13px;font-weight:600;letter-spacing:.2px}.shap-factors{display:flex;flex-direction:column;gap:10px}.shap-factor{display:flex;align-items:flex-start;gap:10px;padding:6px 0}.shap-factor:last-child{padding-bottom:0}.factor-icon{color:#141413;font-size:14px;font-weight:600;flex-shrink:0;margin-top:1px}.factor-content{flex:1;display:flex;flex-direction:column;gap:2px}.factor-label{color:#fff;font-size:13px;font-weight:600;line-height:1.3}.factor-magnitude{color:#c15f3c;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.factor-context{color:#8892ab;font-size:11px;font-weight:400}.factor-impact{display:none}@media (max-width: 768px){.shap-explanation-simple{padding:12px 14px}.shap-title,.factor-label{font-size:12px}.factor-magnitude{font-size:10px}}.shap-explanation-chart{background:#1a1f3a99;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;margin-top:16px}.shap-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.shap-header h4{color:#fff;font-size:14px;font-weight:600;margin:0}.info-icon{color:#8892ab;font-size:14px;cursor:help}.shap-no-data{text-align:center;padding:16px;color:#8892ab}.shap-bars{display:flex;flex-direction:column;gap:12px}.shap-bar-container{display:flex;flex-direction:column;gap:6px}.shap-bar-label{display:flex;justify-content:space-between;align-items:center}.explanation-text{color:#fff;font-weight:500;font-size:13px}.impact-percentage{color:#fff;font-weight:700;font-size:13px;padding:3px 8px;border-radius:4px;min-width:50px;text-align:center}.shap-bar-wrapper{height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.shap-bar{height:100%;border-radius:4px;transition:width .3s ease}.shap-bar.positive{background:#e5f3f1}.shap-bar.negative{background:#ff4757}.shap-legend{display:none}.tennis-prediction-card{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:var(--space-lg);margin-bottom:var(--space-md);cursor:pointer;transition:border-color .2s ease;position:relative}.tennis-prediction-card:hover{border-color:#c15f3c}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.sport-info{display:flex;align-items:center;gap:8px}.sport-icon{color:#c15f3c;font-size:16px}.league{background:#c15f3c;color:#fff;padding:4px 12px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-family-sans)}.surface{color:#b0aea5;font-size:12px;font-weight:500;font-family:var(--font-family)}.confidence-badge{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-family-sans)}.confidence-badge.high{background:#c15f3c;color:#fff}.confidence-badge.medium{background:#e5f3f1;color:#141413}.confidence-badge.low{background:#efeef7;color:#141413}.card-body{display:flex;flex-direction:column;gap:16px}.matchup{color:#141413;font-size:18px;font-weight:600;font-family:var(--font-family-sans);margin:0;line-height:1.4}.tournament-info{display:flex;justify-content:space-between;align-items:center;color:#b0aea5;font-size:12px;text-transform:uppercase;letter-spacing:.3px;font-family:var(--font-family-sans)}.tournament{font-weight:500;color:#b0aea5}.date{display:flex;align-items:center;gap:4px;color:#b0aea5}.prediction-details{display:flex;flex-direction:column;gap:16px}.win-probabilities{display:flex;align-items:center;justify-content:space-between;gap:16px}.player-probability{display:flex;flex-direction:column;align-items:center;flex:1;padding:20px 16px;background:#fafaf8;border-radius:10px;border:1px solid #E8E6DC;transition:border-color .2s ease}.player-probability:hover{border-color:#b0aea5}.player-name{color:#141413;font-size:15px;font-weight:500;font-family:var(--font-family);text-align:center;margin-bottom:10px}.probability{color:#b0aea5;font-size:42px;font-weight:700;font-family:var(--font-family-sans);margin-bottom:8px;line-height:1;letter-spacing:-1px}.player-probability.favored .probability{color:#141413}.rank{color:#b0aea5;font-size:14px;font-weight:400;font-family:var(--font-family)}.vs-separator{display:flex;align-items:center;justify-content:center;padding:.25rem}.vs-separator svg{opacity:.7}.recommendation{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;font-family:var(--font-family);padding:10px 12px;background:#fafaf8;border-radius:6px;border-left:3px solid #C15F3C;color:#141413}.model-info{display:flex;justify-content:space-between;align-items:center;color:#b0aea5;font-size:12px;font-family:var(--font-family);padding-top:12px;border-top:1px solid #E8E6DC}.model-version{display:flex;align-items:center;gap:4px}.edge-indicator{background:#c15f3c;color:#fff;padding:4px 10px;border-radius:4px;font-size:10px;font-weight:600;font-family:var(--font-family-sans);text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.tennis-prediction-card{padding:16px}.matchup{font-size:16px}.player-name{font-size:14px}.probability{font-size:32px}.rank{font-size:12px}.win-probabilities{flex-direction:column;gap:12px}.vs-separator{order:-1}.tournament-info{flex-direction:column;align-items:flex-start;gap:4px;font-size:11px}.model-info{flex-direction:column;align-items:flex-start;gap:8px}}.tennis-h2h-modal-overlay{position:fixed;inset:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.tennis-h2h-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000004d;border:1px solid #333}.tennis-h2h-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #333;background:linear-gradient(90deg,#2d3748,#4a5568);border-radius:16px 16px 0 0}.tennis-h2h-modal-header h2{color:#fff;margin:0;font-size:24px;font-weight:600}.tennis-h2h-modal-close{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.tennis-h2h-modal-close:hover{background-color:#ffffff1a}.tennis-h2h-modal-content{padding:32px}.tennis-h2h-loading,.tennis-h2h-error{text-align:center;padding:40px;color:#fff;font-size:16px}.tennis-h2h-error{color:#ff6b6b}.tennis-h2h-match-info{text-align:center;margin-bottom:32px;padding:24px;background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;border:1px solid #4a5568}.tennis-h2h-match-info h3{color:#fff;margin:0 0 8px;font-size:28px;font-weight:600}.tennis-h2h-match-info p{color:#a0aec0;margin:0;font-size:16px}.tennis-h2h-record{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid #4a5568}.tennis-h2h-record h4{color:#fff;margin:0 0 16px;font-size:20px;font-weight:600}.tennis-h2h-record-stats{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:12px}.tennis-h2h-player{display:flex;flex-direction:column;align-items:center;gap:8px}.tennis-h2h-player-name{color:#fff;font-weight:600;font-size:16px}.tennis-h2h-wins{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 16px;border-radius:20px;font-weight:600;font-size:18px;min-width:40px;text-align:center}.tennis-h2h-vs{color:#a0aec0;font-weight:600;font-size:16px}.tennis-h2h-total-matches{text-align:center;color:#a0aec0;margin:0;font-size:14px}.tennis-h2h-stats-comparison{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid #4a5568}.tennis-h2h-stats-comparison h4{color:#fff;margin:0 0 20px;font-size:20px;font-weight:600}.tennis-h2h-stats-grid{display:flex;flex-direction:column;gap:24px}.tennis-h2h-stat-category{background:#0003;border-radius:8px;padding:16px;border:1px solid #4a5568}.tennis-h2h-stat-category h5{color:#fff;margin:0 0 12px;font-size:16px;font-weight:600}.tennis-h2h-stat-row{display:flex;justify-content:space-between;gap:16px}.tennis-h2h-stat-player{flex:1;display:flex;flex-direction:column;gap:4px}.tennis-h2h-stat-name{color:#fff;font-weight:600;font-size:14px}.tennis-h2h-stat-value{color:#a0aec0;font-size:14px}.tennis-h2h-advantage{color:#48bb78;font-size:12px;font-weight:600;margin-top:4px}.tennis-h2h-surfaces-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:12px}.tennis-h2h-surface{background:#0000004d;border-radius:8px;padding:12px;border:1px solid #4a5568}.tennis-h2h-surface h6{color:#fff;margin:0 0 8px;font-size:14px;font-weight:600}.tennis-h2h-surface-stats{display:flex;flex-direction:column;gap:4px}.tennis-h2h-surface-stats span{color:#a0aec0;font-size:12px}.tennis-h2h-no-data{text-align:center;padding:40px;color:#a0aec0}.tennis-h2h-no-data p{margin:0 0 16px}.tennis-h2h-no-data ul{text-align:left;max-width:400px;margin:0 auto}.tennis-h2h-no-data li{margin-bottom:8px}.tennis-h2h-betting-insights{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;padding:24px;border:1px solid #4a5568}.tennis-h2h-betting-insights h4{color:#fff;margin:0 0 16px;font-size:20px;font-weight:600}.tennis-h2h-insights{display:flex;flex-direction:column;gap:12px}.tennis-h2h-insight{background:#0003;border-radius:8px;padding:12px;border:1px solid #4a5568;color:#a0aec0;font-size:14px;line-height:1.5}.tennis-h2h-insight strong{color:#fff}@media (max-width: 768px){.tennis-h2h-modal{margin:10px;max-height:95vh}.tennis-h2h-modal-header{padding:16px 20px}.tennis-h2h-modal-header h2{font-size:20px}.tennis-h2h-modal-content{padding:20px}.tennis-h2h-match-info h3{font-size:24px}.tennis-h2h-record-stats{flex-direction:column;gap:16px}.tennis-h2h-stat-row{flex-direction:column;gap:12px}.tennis-h2h-surfaces-grid{grid-template-columns:1fr}}.upcoming-tournaments-section{width:100%;padding:var(--space-xl) 0}.upcoming-tournaments-header{text-align:center;margin-bottom:var(--space-2xl)}.upcoming-tournaments-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;margin:0 0 var(--space-md) 0;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.upcoming-tournaments-subtitle{font-size:clamp(1rem,2vw,1.25rem);font-weight:400;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.upcoming-tournaments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-xl);max-width:1400px;margin:0 auto}.upcoming-tournament-card{background:#fff;border:1px solid #E8E6DC;border-radius:var(--radius-2xl);padding:var(--space-xl);position:relative;overflow:hidden;transition:all .3s ease;box-shadow:none}.upcoming-tournament-card:before{display:none}.upcoming-tournament-card:after{display:none}.upcoming-tournament-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000014;border-color:#c15f3c;background:#fff}.upcoming-tournament-card:hover:before{display:none}.upcoming-tournament-card:hover:after{display:none}.upcoming-tournament-card.grand-slam{border:2px solid #C15F3C;box-shadow:none}.upcoming-tournament-card.grand-slam:before{display:none}.tournament-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-lg);gap:var(--space-md)}.tournament-name-row{display:flex;align-items:center;gap:var(--space-sm);flex:1}.tournament-icon{font-size:1.5rem;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.tournament-name{font-size:clamp(1.125rem,2.5vw,1.5rem);font-weight:700;color:var(--text-primary);margin:0;line-height:1.3;letter-spacing:-.01em}.tournament-level-badge{color:#fff;padding:.375rem .75rem;border-radius:var(--radius-md);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;box-shadow:0 2px 8px #0003}.tournament-details{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.tournament-detail-item{display:flex;align-items:center;gap:var(--space-sm)}.detail-icon{color:var(--text-muted);font-size:1rem;flex-shrink:0}.surface-icon{font-size:1.25rem;flex-shrink:0;width:1rem;text-align:center}.detail-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.detail-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.tournament-countdown{display:flex;flex-direction:column;gap:.5rem;padding-top:var(--space-md);border-top:1px solid rgba(148,163,184,.1)}.countdown-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.countdown-value{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:800;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.3)}@media (max-width: 768px){.upcoming-tournaments-grid{grid-template-columns:1fr;gap:var(--space-lg)}.upcoming-tournament-card{padding:var(--space-lg)}.tournament-card-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.tournament-level-badge{align-self:flex-start}}.filter-bar{display:flex;gap:var(--space-xs);padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);margin-bottom:var(--space-lg);position:relative;z-index:10;box-shadow:var(--shadow-card)}.filter-category{position:relative}.category-button{display:flex;align-items:center;gap:var(--space-xs);background:var(--bg-input);color:var(--text-secondary);border:1px solid var(--border-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);transition:all var(--transition-fast);font-size:var(--font-size-sm)}.category-button:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent-primary)}.filter-dropdown{position:absolute;top:100%;left:0;margin-top:var(--space-xs);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-sm);box-shadow:var(--shadow-xl);width:250px;z-index:20}.filter-dropdown ul{list-style:none;padding:0;margin:0}.filter-dropdown li{padding:var(--space-sm) var(--space-md);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm)}.filter-dropdown li:hover{background:var(--bg-secondary);color:var(--text-primary)}@media (max-width: 768px){.filter-bar{flex-direction:column;gap:var(--space-sm)}.category-button{justify-content:space-between}}:root{--hub-bg: #1a1d21;--sidebar-bg: #23272c;--panel-bg: #2a2e34;--header-color: #e6e6e6;--text-color: #b0b8c4;--border-color: #3a4048;--accent-color: #00aaff;--accent-hover: #0088cc;--input-bg: #333840;--danger-color: #ff4d4d}.intelligence-hub{padding:var(--space-md) 0;background:var(--bg-primary);min-height:100vh}.page-title{font-size:var(--font-size-4xl);font-weight:var(--font-semibold);margin-bottom:var(--space-lg);color:var(--text-primary)}.query-builder{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media (min-width: 1024px){.query-builder{grid-template-columns:1fr 2fr}}.active-query-panel,.results-panel{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:var(--shadow-card);transition:all var(--transition-normal)}.active-query-panel:hover,.results-panel:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lg)}.panel-title{font-size:var(--font-size-xl);font-weight:var(--font-medium);margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-sm);color:var(--text-primary)}.empty-state{color:var(--text-muted);text-align:center;padding:var(--space-lg);font-size:var(--font-size-base)}.active-filters-list{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.active-filter{display:flex;align-items:center;gap:var(--space-md);background:var(--bg-input);border:1px solid var(--border-secondary);padding:var(--space-sm);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.active-filter:hover{border-color:var(--border-accent);background:var(--bg-secondary)}.filter-name{font-weight:var(--font-medium);flex-shrink:0;color:var(--text-primary);font-size:var(--font-size-sm)}.filter-input{flex-grow:1;background:var(--bg-primary);border:1px solid var(--border-secondary);color:var(--text-primary);padding:var(--space-xs);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.filter-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3461ff1a}.remove-filter-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.remove-filter-btn:hover{color:var(--error);background:#ef44441a}.query-actions{display:flex;gap:var(--space-md)}.query-actions button{background:var(--accent-gradient);color:var(--text-primary);border:none;border-radius:var(--radius-xl);padding:var(--space-sm) var(--space-md);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-sm);box-shadow:var(--shadow-md)}.query-actions button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.query-actions button:disabled{background:var(--text-disabled);cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.results-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card)}.results-table th,.results-table td{padding:var(--space-md);text-align:left;border-bottom:1px solid var(--border-primary)}.results-table th{font-weight:var(--font-semibold);color:var(--text-primary);background:var(--bg-secondary);font-size:var(--font-size-sm)}.results-table td{color:var(--text-secondary);font-size:var(--font-size-sm)}.results-table tr:hover{background:var(--bg-secondary)}.loading-spinner{border:4px solid var(--border-secondary);border-top:4px solid var(--accent-primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:var(--space-lg) auto}@media (max-width: 768px){.intelligence-hub{padding:var(--space-sm) 0}.page-title{font-size:var(--font-size-3xl)}.active-query-panel,.results-panel{padding:var(--space-md)}.query-actions{flex-direction:column}}.nba-analytics-dashboard{max-width:1400px;margin:0 auto;padding:2rem;font-family:var(--font-family);background:#f4f3ee;min-height:100vh;color:#141413}.dashboard-header{text-align:center;margin-bottom:3rem;padding:2rem;background:#ffffff0d;border-radius:16px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.dashboard-header h1{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.dashboard-header p{font-size:1.1rem;color:#94a3b8;margin:0}.player-selector{margin-bottom:2rem;text-align:center}.search-container{margin-bottom:1rem}.player-search{width:100%;max-width:400px;padding:.75rem 1rem;font-size:1rem;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:12px;color:#e2e8f0;backdrop-filter:blur(10px);transition:all .3s ease}.player-search::placeholder{color:#94a3b8}.player-search:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.player-selector label{display:block;font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:#e2e8f0}.player-selector select{width:100%;max-width:400px;padding:1rem 1.5rem;font-size:1rem;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:12px;color:#e2e8f0;backdrop-filter:blur(10px);transition:all .3s ease}.player-selector select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.player-selector select:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:1rem;border-radius:8px;margin-bottom:2rem;text-align:center}.player-info{text-align:center;margin-bottom:2rem;padding:2rem;background:#ffffff0d;border-radius:16px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.player-info h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#f1f5f9}.player-meta{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.team-badge,.position-badge,.games-badge{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.team-badge{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.position-badge{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.games-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.tabs{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.tab{padding:1rem 2rem;font-size:1rem;font-weight:600;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:12px;color:#e2e8f0;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(10px)}.tab:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px)}.tab.active{background:linear-gradient(135deg,#60a5fa,#3b82f6);border-color:#60a5fa;color:#fff;box-shadow:0 8px 25px #60a5fa4d}.tab-content{min-height:400px}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#94a3b8}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-left:4px solid #60a5fa;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.empty-state{text-align:center;padding:4rem 2rem;color:#94a3b8}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:#e2e8f0}.empty-state p{font-size:1.1rem;max-width:500px;margin:0 auto}.overview-section{animation:fadeIn .5s ease-in-out}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#ffffff0d;border-radius:16px;padding:1.5rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);transition:transform .3s ease}.stat-card:hover{transform:translateY(-4px)}.stat-card h3{font-size:1.2rem;font-weight:700;margin-bottom:1rem;color:#f1f5f9;text-align:center}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.stat-row:last-child{border-bottom:none}.stat-row span:first-child{color:#e2e8f0;font-weight:600}.stat-value{font-weight:700;color:#60a5fa;font-size:1.1rem}.recent-games{background:#ffffff0d;border-radius:16px;padding:2rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.recent-games h3{font-size:1.3rem;font-weight:700;margin-bottom:1.5rem;color:#f1f5f9;text-align:center}.games-chart{display:flex;justify-content:center;align-items:end;gap:1rem;height:200px;padding:1rem}.game-bar{display:flex;flex-direction:column;align-items:center;gap:.5rem}.bar-label{font-size:.9rem;font-weight:600;color:#e2e8f0}.bar{width:40px;background:linear-gradient(135deg,#60a5fa,#3b82f6);border-radius:8px 8px 0 0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9rem;min-height:30px;transition:all .3s ease}.bar:hover{transform:scale(1.05);box-shadow:0 4px 15px #60a5fa66}.splits-section{animation:fadeIn .5s ease-in-out}.splits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.split-card{background:#ffffff0d;border-radius:16px;padding:1.5rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);transition:transform .3s ease}.split-card:hover{transform:translateY(-4px)}.split-card h3{font-size:1.2rem;font-weight:700;margin-bottom:1rem;color:#f1f5f9;text-align:center}.split-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.split-row:last-child{border-bottom:none}.split-row span:first-child{color:#e2e8f0;font-weight:600}.split-value{font-weight:700;color:#60a5fa;font-size:1.1rem}.split-difference{margin-top:1rem;padding:.75rem;background:#ffffff1a;border-radius:8px;text-align:center;font-weight:600;color:#f1f5f9}.props-section{animation:fadeIn .5s ease-in-out}.props-section h3{font-size:1.5rem;font-weight:700;margin-bottom:2rem;color:#f1f5f9;text-align:center}.props-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.prop-card{background:#ffffff0d;border-radius:16px;padding:1.5rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);transition:transform .3s ease}.prop-card:hover{transform:translateY(-4px)}.prop-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.prop-header h4{font-size:1.1rem;font-weight:700;color:#f1f5f9;margin:0}.prop-confidence{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:700;color:#fff}.prop-details{margin-bottom:1rem}.prop-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.prop-row:last-child{border-bottom:none}.prop-row span:first-child{color:#e2e8f0;font-weight:600}.prop-value{font-weight:700;color:#60a5fa}.prop-reasoning{margin-bottom:1rem}.prop-reasoning h5{font-size:1rem;font-weight:600;margin-bottom:.5rem;color:#f1f5f9}.prop-reasoning ul{list-style:none;padding:0;margin:0}.prop-reasoning li{color:#e2e8f0;font-size:.9rem;position:relative;padding:.25rem 0 .25rem 1rem}.prop-reasoning li:before{content:"•";color:#60a5fa;font-weight:700;position:absolute;left:0}.prop-risk-factors{display:flex;flex-wrap:wrap;gap:.5rem}.risk-badge{padding:.25rem .75rem;background:#ef444433;border:1px solid rgba(239,68,68,.3);border-radius:12px;font-size:.8rem;font-weight:600;color:#fca5a5;text-transform:uppercase;letter-spacing:.5px}.matchups-section{animation:fadeIn .5s ease-in-out}.matchups-section h3{font-size:1.5rem;font-weight:700;margin-bottom:2rem;color:#f1f5f9;text-align:center}.matchups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.matchup-card{background:#ffffff0d;border-radius:16px;padding:1.5rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);transition:transform .3s ease}.matchup-card:hover{transform:translateY(-4px)}.matchup-card h4{font-size:1.1rem;font-weight:700;margin-bottom:1rem;color:#f1f5f9;text-align:center}.matchup-stats{display:flex;flex-direction:column;gap:.5rem}.matchups-context{margin-bottom:1.5rem;padding:1rem;background:#3b82f61a;border-radius:8px;border-left:4px solid #3b82f6}.matchups-context p{color:#e2e8f0;font-size:.9rem;margin:0;font-style:italic}.matchup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.matchup-header h4{margin:0;color:#f1f5f9;font-size:1.1rem}.difficulty-rating{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:#ffffff0d;border-radius:6px}.difficulty-stars{font-size:.8rem;color:#fbbf24}.difficulty-text{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.matchup-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.matchup-row:last-child{border-bottom:none}.matchup-row span:first-child{color:#e2e8f0;font-weight:600}.matchup-value{font-weight:700;color:#60a5fa}.matchup-stat-with-indicator{display:flex;align-items:center;gap:.5rem}.performance-indicator{font-size:1rem;cursor:help;transition:transform .2s ease}.performance-indicator:hover{transform:scale(1.2)}.matchup-insights{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.insight-item{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.insight-label{color:#94a3b8;font-weight:500}.insight-value{color:#cbd5e1;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.nba-analytics-dashboard{padding:1rem}.dashboard-header h1{font-size:2rem}.player-info h2{font-size:1.8rem}.stats-grid,.splits-grid,.props-grid,.matchups-grid{grid-template-columns:1fr}.tabs{flex-direction:column;align-items:center}.tab{width:100%;max-width:300px}.player-meta{flex-direction:column;align-items:center}.games-chart{height:150px}.bar{width:30px;font-size:.8rem}}@media (max-width: 480px){.dashboard-header{padding:1rem}.dashboard-header h1{font-size:1.5rem}.player-info{padding:1rem}.player-info h2{font-size:1.5rem}.stat-card,.split-card,.prop-card,.matchup-card{padding:1rem}}.preview-predictions-section{width:100%;margin-bottom:var(--space-2xl)}.preview-predictions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-xl);gap:var(--space-lg);flex-wrap:wrap}.preview-header-content{display:flex;align-items:center;gap:var(--space-md);flex:1}.preview-icon-wrapper{width:48px;height:48px;border-radius:10px;background:#c15f3c;display:flex;align-items:center;justify-content:center}.preview-header-icon{font-size:1.5rem;color:#fff}.preview-predictions-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:600;color:#141413;font-family:var(--font-family-sans);margin:0 0 var(--space-xs) 0;letter-spacing:-.02em}.preview-predictions-subtitle{font-size:clamp(.9rem,1.5vw,1rem);color:#b0aea5;font-family:var(--font-family);margin:0;line-height:1.6}.preview-predictions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-lg)}.preview-prediction-card{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:var(--space-lg);position:relative;transition:border-color .2s ease}.preview-prediction-card:hover{border-color:#c15f3c}.preview-overlay{position:absolute;top:var(--space-sm);right:var(--space-sm);background:#efeef7;border-radius:6px;padding:4px 8px;z-index:10}.preview-overlay-text{font-size:10px;font-weight:500;color:#b0aea5;text-transform:uppercase;letter-spacing:.3px;font-family:var(--font-family-sans)}.preview-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md);gap:var(--space-sm)}.preview-tournament-info{display:flex;align-items:center;gap:var(--space-sm);flex:1}.preview-tournament-icon{color:#c15f3c;font-size:1rem}.preview-tournament-name{display:block;font-size:15px;font-weight:600;color:#141413;font-family:var(--font-family-sans);margin-bottom:2px}.preview-tournament-level{display:block;font-size:11px;color:#b0aea5;text-transform:uppercase;letter-spacing:.3px;font-family:var(--font-family-sans)}.preview-confidence-badge{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;font-family:var(--font-family-sans);white-space:nowrap}.preview-confidence-badge.high{background:#c15f3c;color:#fff}.preview-confidence-badge.medium{background:#e5f3f1;color:#141413}.preview-confidence-badge.low{background:#efeef7;color:#141413}.preview-match-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid #E8E6DC;gap:var(--space-md);flex-wrap:wrap}.preview-match-date{display:flex;align-items:center;gap:var(--space-xs);color:#b0aea5;font-size:13px;font-family:var(--font-family)}.preview-date-icon{color:#b0aea5;font-size:13px}.preview-surface-badge{background:#e5f3f1;border:1px solid #D0E8E5;border-radius:6px;padding:4px 10px;font-size:11px;color:#141413;font-weight:500;font-family:var(--font-family-sans)}.preview-players{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-md)}.preview-player{display:flex;flex-direction:column;gap:var(--space-xs)}.preview-player-header{display:flex;justify-content:space-between;align-items:center}.preview-player-name{font-size:15px;font-weight:500;color:#141413;font-family:var(--font-family)}.preview-player-rank{font-size:13px;color:#b0aea5;font-weight:400;font-family:var(--font-family)}.preview-probability-bar{position:relative;height:36px;background:#fafaf8;border-radius:8px;overflow:hidden;border:1px solid #E8E6DC}.preview-probability-fill{position:absolute;left:0;top:0;height:100%;border-radius:8px;display:flex;align-items:center;padding:0 var(--space-sm);transition:width .5s ease}.preview-probability-fill.favored{background:#e5f3f1}.preview-probability-fill.underdog{background:#efeef7}.preview-probability-text{position:relative;z-index:1;font-size:15px;font-weight:600;color:#141413;font-family:var(--font-family-sans)}.preview-vs-divider{text-align:center;font-size:12px;font-weight:500;color:#b0aea5;text-transform:uppercase;letter-spacing:1px;padding:var(--space-xs) 0;font-family:var(--font-family-sans)}.preview-key-factors{margin-bottom:var(--space-md);padding-top:var(--space-sm);border-top:1px solid #E8E6DC}.preview-factors-title{font-size:12px;font-weight:600;color:#141413;font-family:var(--font-family-sans);margin:0 0 var(--space-xs) 0;text-transform:uppercase;letter-spacing:.3px}.preview-factors-list{display:flex;flex-direction:column;gap:6px}.preview-factor-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:#fafaf8;border-radius:6px;font-size:13px}.preview-factor-label{color:#b0aea5;font-weight:400;font-family:var(--font-family)}.preview-factor-value{color:#141413;font-weight:500;font-family:var(--font-family)}.preview-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-sm);border-top:1px solid #E8E6DC;color:#b0aea5;font-size:12px;font-family:var(--font-family)}.preview-footer-text{font-style:italic}.preview-footer-arrow{color:#c15f3c;font-size:14px;transition:transform .2s ease}.preview-prediction-card:hover .preview-footer-arrow{transform:translate(4px)}@media (max-width: 768px){.preview-predictions-header{flex-direction:column;align-items:flex-start}.preview-header-content{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.preview-predictions-grid{grid-template-columns:1fr}.preview-card-header{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.preview-match-info{flex-direction:column;align-items:flex-start}}.trust-building-section{width:100%;margin-bottom:var(--space-3xl);padding:var(--space-2xl) 0}.trust-section-header{text-align:center;margin-bottom:var(--space-2xl)}.trust-section-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 var(--space-md) 0;letter-spacing:-.02em}.trust-section-subtitle{font-size:clamp(1rem,2vw,1.125rem);color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.trust-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);margin-bottom:var(--space-2xl)}.trust-feature-card{background:var(--card-gradient);backdrop-filter:blur(12px);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-lg);transition:all var(--transition-normal);position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.trust-feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border-gradient);opacity:0;transition:opacity var(--transition-normal)}.trust-feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:var(--border-accent);background:var(--card-gradient-hover)}.trust-feature-card:hover:before{opacity:1}.trust-feature-icon-wrapper{width:56px;height:56px;border-radius:var(--radius-lg);background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-md);box-shadow:var(--glow-primary)}.trust-feature-icon{font-size:1.5rem;color:#fff}.trust-feature-title{font-size:var(--font-size-lg);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-sm) 0}.trust-feature-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.6}.trust-stats-section{background:var(--card-gradient);backdrop-filter:blur(12px);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-xl);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.trust-stats-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border-gradient);opacity:.5}.trust-stats-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.trust-stats-icon{color:var(--accent-primary);font-size:1.5rem;filter:drop-shadow(0 0 8px rgba(0,212,255,.4))}.trust-stats-title{font-size:var(--font-size-xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.trust-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.trust-stat-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-lg);background:#00d4ff0d;border:1px solid rgba(0,212,255,.1);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.trust-stat-card:hover{background:#00d4ff1a;border-color:#00d4ff33;transform:translateY(-2px);box-shadow:0 4px 12px #00d4ff33}.trust-stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-xs);text-shadow:0 0 20px currentColor}.trust-stat-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.trust-features-grid,.trust-stats-grid{grid-template-columns:1fr}}.tennis-dashboard{padding:2rem;max-width:1400px;margin:0 auto;background:#f4f3ee;min-height:100vh;color:#141413;font-family:EB Garamond,Georgia,serif}.tennis-dashboard h1,.tennis-dashboard h2,.tennis-dashboard h3,.tennis-dashboard .tournament-group-name,.tennis-dashboard .win-probability,.tennis-dashboard .stat-value,.tennis-dashboard .confidence-badge,.tennis-dashboard .expand-details-btn,.tennis-dashboard .filter-group label,.tennis-dashboard .filter-select{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.tennis-dashboard .player-name,.tennis-dashboard .player-rank,.tennis-dashboard .match-time,.tennis-dashboard .surface,.tennis-dashboard .round,.tennis-dashboard .analysis-factors .factor-text,.tennis-dashboard .methodology-text span,.tennis-dashboard .stat-description,.tennis-dashboard .trust-tagline{font-family:EB Garamond,Georgia,serif}.dashboard-header{text-align:left;margin-bottom:2rem;padding:1.5rem 0;border-bottom:1px solid #E8E6DC}.dashboard-header h1{font-size:2rem;font-weight:600;color:#141413;margin-bottom:8px;letter-spacing:-.02em}.dashboard-header .header-subtitle{font-size:16px;font-weight:400;color:#b0aea5;margin:0}.filters-section{display:flex;gap:1.5rem;margin-bottom:2rem;padding:1rem 0;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:500;color:#141413;font-size:.85rem}.filter-select{padding:10px 36px 10px 14px;background:#fff;border:1px solid #E8E6DC;border-radius:8px;color:#141413;font-size:14px;font-weight:400;min-width:160px;transition:border-color .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23141413' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}.filter-select:hover{border-color:#b0aea5}.filter-select:focus{outline:none;border-color:#141413}.trust-signals-bar{display:flex;justify-content:center;align-items:center;padding:12px 20px;margin-bottom:2rem}.trust-tagline{font-size:14px;font-weight:400;color:#b0aea5;text-align:center}@media (max-width: 768px){.trust-signals-bar{padding:10px 16px}.trust-tagline{font-size:13px}}.loading-state,.error-state{text-align:center;padding:3rem;background:#fff;border-radius:12px;border:1px solid #E8E6DC}.spinner{width:40px;height:40px;border:3px solid #E8E6DC;border-top:3px solid #141413;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-state p{color:#dc2626;margin-bottom:1rem}.section{margin-bottom:3rem}.section h2{font-size:1.5rem;font-weight:600;color:#141413;margin-bottom:1.5rem;letter-spacing:-.01em}.tennis-layout{display:grid;grid-template-columns:minmax(0,8.25fr) minmax(260px,2.75fr);gap:1.25rem;align-items:start}.tennis-main{min-width:0}.tennis-sidebar{min-width:0;max-width:380px}.tournament-groups{display:flex;flex-direction:column;gap:1.5rem}.tournament-group{background:#fff;border:1px solid #E8E6DC;border-radius:12px;overflow:hidden}.tournament-group-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fafaf8;cursor:pointer;transition:background .2s ease;border-bottom:1px solid #E8E6DC}.tournament-group-header:hover{background:#f4f3ee}.tournament-header-left{display:flex;align-items:center;gap:12px}.collapse-icon{font-size:12px;color:#b0aea5;transition:transform .3s ease}.collapse-icon.collapsed{transform:rotate(-90deg)}.tournament-group-name{font-size:16px;font-weight:600;color:#141413}.tournament-group-level{font-size:11px;font-weight:500;color:#141413;background:#e5f3f1;padding:4px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px}.tournament-match-count{font-size:13px;font-weight:500;color:#b0aea5}.tournament-group>.matches-grid{padding:16px}.matches-grid,.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.match-card{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:1.5rem;transition:all .2s ease}.match-card:hover{border-color:#b0aea5}.match-card.upcoming,.match-card.result{border-left:none}.match-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #E8E6DC}.tournament-info{display:flex;flex-direction:column;gap:.25rem}.tournament-name{font-weight:500;color:#b0aea5;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.tournament-level{font-size:12px;color:#141413;background:#efeef7;padding:4px 8px;border-radius:4px;width:fit-content}.match-details{display:flex;flex-direction:column;gap:.25rem;align-items:flex-end}.surface,.round{font-size:13px;color:#b0aea5}.players{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.player{flex:1;display:flex;flex-direction:column;gap:.5rem}.player-info{display:flex;flex-direction:column;gap:.25rem}.player-name{font-weight:600;color:#141413;font-size:1.1rem}.player-rank{font-size:.85rem;color:#b0aea5}.vs{display:flex;align-items:center;justify-content:center;padding:.25rem}.vs svg{opacity:.7}.prediction{display:flex;flex-direction:column;align-items:center;gap:.25rem}.win-probability{font-weight:700;font-size:36px;color:#b0aea5;line-height:1;letter-spacing:-1px}.player .player-info{display:flex;flex-direction:column;align-items:center;gap:4px}.player .player-name{font-size:17px;font-weight:600;color:#141413}.player .player-rank{font-size:14px;font-weight:400;color:#b0aea5}.player.favored .win-probability{color:#141413}.player:not(.favored) .win-probability{color:#b0aea5}.prediction-details{margin-bottom:1rem;padding:1rem;background:#e5f3f1;border-radius:10px;border:1px solid #D0E8E5}.prediction-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.recommendation-brief{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#141413}.recommendation-brief .star{font-size:12px}.expand-details-btn{width:100%;padding:10px 16px;background:#fafaf8;border:1px solid #E8E6DC;border-radius:8px;color:#141413;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:12px}.expand-details-btn:hover{background:#f4f3ee;border-color:#b0aea5}.expanded-analysis{padding:16px;background:#fafaf8;border:1px solid #E8E6DC;border-radius:10px;margin-bottom:12px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.analysis-header{font-size:14px;font-weight:600;color:#141413;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #E8E6DC}.analysis-factors{display:flex;flex-direction:column;gap:8px}.analysis-factors .factor{display:flex;align-items:center;gap:10px}.analysis-factors .factor-icon{font-size:14px;color:#141413;font-weight:600}.analysis-factors .factor-text{font-size:13px;color:#141413}.expanded-analysis .model-info{margin-top:12px;padding-top:10px;border-top:1px solid #E8E6DC;font-size:11px;color:#b0aea5}.confidence{margin-bottom:.5rem}.confidence-badge{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;color:#141413;text-transform:uppercase;letter-spacing:.3px}.confidence-badge.confidence-high{color:#fff}.confidence-badge.confidence-medium,.confidence-badge.confidence-low{color:#141413}.recommendation p{margin:0;font-size:.9rem;color:#141413;font-style:italic}.winner-badge{font-size:11px;font-weight:600;color:#141413;background:#e5f3f1;padding:4px 8px;border-radius:4px;margin-left:.5rem}.result-details{margin-bottom:1rem;padding:1rem;background:#fafaf8;border-radius:8px;border:1px solid #E8E6DC}.score{text-align:center;margin-bottom:.5rem}.final-score{font-weight:600;font-size:1.1rem;color:#141413}.winner{text-align:center;margin-bottom:.5rem}.winner-name{font-weight:500;color:#141413}.prediction-accuracy{text-align:center}.accuracy-badge{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.accuracy-badge.correct{background:#e5f3f1;color:#141413}.accuracy-badge.incorrect{background:#fee2e2;color:#991b1b}.match-time{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#b0aea5;padding-top:1rem;border-top:1px solid #E8E6DC}.no-data{text-align:center;padding:3rem;color:#b0aea5;grid-column:1 / -1}.no-data-subtitle{margin-top:.5rem;font-size:14px;color:#b0aea5}.empty-state-enhanced{display:flex;flex-direction:column;gap:2rem;grid-column:1 / -1}.no-matches-card{background:#fff;border:1px solid #E8E6DC;border-radius:12px;padding:3rem;text-align:center;display:flex;flex-direction:column;align-items:center}.empty-state-illustration{margin-bottom:1.5rem;opacity:.8}.no-matches-title{font-size:1.5rem;font-weight:600;color:#141413;margin:0 0 1rem}.no-matches-message{font-size:14px;color:#b0aea5;line-height:1.6;max-width:500px;margin:0 auto}.performance-stats-section{grid-column:1 / -1;margin-top:1rem}.performance-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.performance-stat-card{background:#e5f3f1;border:1px solid #D0E8E5;border-radius:12px;padding:24px;text-align:center}.performance-stat-card:hover{border-color:#b0aea5}.performance-stat-card .stat-content{width:100%}.performance-stat-card .stat-label{font-size:12px;color:#141413;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;font-weight:500}.performance-stat-card .stat-value{font-size:36px;font-weight:600;color:#141413;margin-bottom:8px;line-height:1}.performance-stat-card .stat-description{font-size:13px;color:#b0aea5;line-height:1.4}.methodology-section{margin-top:2rem}.methodology-section h2{font-size:1.25rem;margin-bottom:1rem}.methodology-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.methodology-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #E8E6DC;border-radius:10px}.methodology-icon{color:#141413;font-size:14px;font-weight:600;flex-shrink:0;margin-top:2px}.methodology-text{display:flex;flex-direction:column;gap:4px}.methodology-text strong{color:#141413;font-size:14px;font-weight:600}.methodology-text span{color:#b0aea5;font-size:13px;line-height:1.4}@media (max-width: 768px){.tennis-dashboard{padding:1rem}.dashboard-header h1{font-size:1.5rem}.dashboard-header .header-subtitle{font-size:14px}.filters-section{flex-direction:column;gap:1rem}.matches-grid,.results-grid{grid-template-columns:1fr;gap:1rem}.tournament-group-header{padding:14px 16px}.tournament-group-name{font-size:14px}.tournament-group-level{font-size:10px;padding:3px 8px}.tournament-group>.matches-grid{padding:12px}.match-card{padding:16px}.players{flex-direction:column;gap:.5rem}.player .player-name{font-size:15px}.win-probability{font-size:30px}.player .player-rank{font-size:12px}.vs{transform:rotate(90deg)}.expand-details-btn{font-size:12px;padding:8px 12px}.expanded-analysis{padding:12px}.analysis-factors .factor-text{font-size:12px}.prediction-summary{flex-direction:column;align-items:flex-start;gap:8px}.recommendation-brief{font-size:13px}.section h2{font-size:1.25rem}.methodology-content{grid-template-columns:1fr}.methodology-item{padding:14px}}@media (max-width: 480px){.tennis-dashboard{padding:.75rem}.dashboard-header{padding:1rem}.dashboard-header h1{font-size:1.5rem;flex-direction:column;gap:.5rem}.win-probability{font-size:32px}.trust-signals-bar{flex-direction:column;gap:8px}.trust-item{justify-content:flex-start}}.btn{padding:10px 20px;border-radius:8px;font-weight:500;text-decoration:none;display:inline-block;transition:all .2s ease;border:none;cursor:pointer;font-size:14px}.btn-primary{background:#141413;color:#fff}.btn-primary:hover{background:#2d2d2c}.btn-secondary{background:#fff;color:#141413;border:1px solid #E8E6DC}.btn-secondary:hover{border-color:#b0aea5}.summary-cards-section{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:0}.summary-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #E8E6DC}.summary-card-title{font-size:1rem;font-weight:600;color:#141413;margin:0 0 1rem;letter-spacing:-.01em}.active-tournaments-list{display:flex;flex-direction:column;gap:.75rem}.tournament-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#f4f3ee;border-radius:8px;border-left:3px solid #C15F3C}.tournament-item-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.tournament-item .tournament-name{font-weight:600;color:#141413;font-size:.9rem}.tournament-level-badge{font-size:.65rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.02em}.tournament-surface{font-size:.8rem;color:#b0aea5}.no-tournaments{color:#b0aea5;font-size:.9rem;text-align:center;padding:1rem}.picks-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pick-stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;border-radius:8px;background:#f4f3ee}.pick-stat.high-conviction{background:#e5f3f1}.pick-stat.all-matches{background:#efeef7}.pick-count{font-size:2rem;font-weight:700;color:#141413;line-height:1;font-family:DM Sans,sans-serif}.pick-label{font-size:.7rem;font-weight:600;color:#141413;text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem;font-family:DM Sans,sans-serif}.pick-description{font-size:.75rem;color:#b0aea5;margin-top:.25rem}.live-badge{display:inline-block;background:#10b981;color:#fff;font-size:.7rem;font-weight:700;padding:.3rem .6rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.analysis-factors .factor{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.analysis-factors .factor-magnitude{font-size:.75rem;color:#b0aea5;font-style:italic;margin-left:auto;flex-shrink:0}@media (max-width: 768px){.tennis-layout{grid-template-columns:1fr}}@media (max-width: 480px){.picks-grid{grid-template-columns:1fr}.pick-count{font-size:1.75rem}}:root{--player-news-bg: rgba(26, 26, 42, .5);--player-news-border: rgba(255, 255, 255, .1);--player-news-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--player-news-backdrop-blur: 10px;--text-color: #E0E0E0;--text-color-muted: #A0A0A0;--accent-gradient: linear-gradient(90deg, #4F46E5 0%, #A642ED 100%);--icon-color: #8A8A9E;--sport-nba-color: #F56565;--sport-nfl-color: #4299E1;--sport-mlb-color: #68D391;--sport-nhl-color: #ECC94B}.player-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-lg);padding:var(--space-lg)}.news-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-normal);box-shadow:var(--shadow-card);position:relative}.news-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--border-accent)}.news-card-image-link{position:relative;display:block;overflow:hidden;aspect-ratio:16/9}.news-card-image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.news-card:hover .news-card-image{transform:scale(1.05)}.news-card-category-badge{position:absolute;top:var(--space-sm);left:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-xl);color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.5px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.news-card-content{padding:var(--space-lg)}.news-card-headline{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight)}.news-card-headline a{color:var(--text-primary);text-decoration:none;transition:color var(--transition-fast)}.news-card-headline a:hover{color:var(--accent-primary)}.news-card-summary{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--leading-relaxed);margin:0 0 var(--space-md) 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}.news-card-source{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-medium)}.news-card-time{color:var(--text-muted);font-size:var(--font-size-xs);display:flex;align-items:center;gap:var(--space-xs)}.news-card-time:before{content:"•";color:var(--text-disabled)}.news-card-read-more{color:var(--accent-primary);font-size:var(--font-size-xs);font-weight:var(--font-medium);text-decoration:none;display:flex;align-items:center;gap:var(--space-xs);transition:all var(--transition-fast);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-lg)}.news-card-read-more:hover{color:var(--accent-secondary);background:#3461ff1a;transform:translate(2px)}.skeleton-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card)}.skeleton-image{width:100%;height:200px;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-input) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-content{padding:var(--space-lg)}.skeleton-line{height:16px;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-input) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.skeleton-line.short{width:60%}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.news-error,.news-empty{grid-column:1 / -1;text-align:center;padding:var(--space-3xl);color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-xl);border-style:dashed}.news-error{color:var(--error);border-color:var(--error)}.news-card[data-sport=NBA] .news-card-category-badge{background:linear-gradient(135deg,#ff6b35,#f7931e)}.news-card[data-sport=NFL] .news-card-category-badge{background:linear-gradient(135deg,#013369,#d50a0a)}.news-card[data-sport=MLB] .news-card-category-badge{background:linear-gradient(135deg,#002d72,#d50032)}.news-card[data-sport=NHL] .news-card-category-badge{background:linear-gradient(135deg,#000,#ffb81c)}@media (max-width: 1024px){.player-news-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-md);padding:var(--space-md)}}@media (max-width: 768px){.player-news-grid{grid-template-columns:1fr;gap:var(--space-md);padding:var(--space-sm)}.news-card-content{padding:var(--space-md)}.news-card-footer{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.news-card-time:before{display:none}}@media (max-width: 480px){.news-card-headline{font-size:var(--font-size-base)}.news-card-summary{font-size:var(--font-size-xs)}.news-card-content{padding:var(--space-sm)}}.news-card.loading{opacity:.7;pointer-events:none}.news-card.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;border:2px solid var(--accent-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.news-card:before{content:"";position:absolute;inset:0;background:var(--accent-gradient);opacity:0;transition:opacity var(--transition-fast);z-index:-1;border-radius:var(--radius-xl)}.news-card:hover:before{opacity:.02}.news-card:focus-within{outline:2px solid var(--accent-primary);outline-offset:2px}.news-card-headline a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.news-card-read-more:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.tennis-news-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-4xl) var(--space-lg);text-align:center;min-height:500px;background:var(--card-gradient);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);backdrop-filter:blur(12px);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.tennis-news-empty-state:before{content:"";position:absolute;inset:0;background:var(--bg-gradient-card);opacity:.5;z-index:0}.tennis-news-empty-state>*{position:relative;z-index:1}.tennis-news-empty-icon{color:var(--accent-primary);margin-bottom:var(--space-lg);opacity:.7;filter:drop-shadow(0 0 20px rgba(0,212,255,.3));animation:pulse-glow 3s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.7;transform:scale(1);filter:drop-shadow(0 0 20px rgba(0,212,255,.3))}50%{opacity:1;transform:scale(1.08);filter:drop-shadow(0 0 30px rgba(0,212,255,.5))}}.tennis-news-empty-title{font-size:var(--font-size-3xl);font-weight:var(--font-bold);background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-md);letter-spacing:-.02em}.tennis-news-empty-message{font-size:var(--font-size-lg);color:var(--text-secondary);max-width:600px;line-height:1.7;margin-bottom:var(--space-xl);font-weight:var(--font-normal)}.tennis-news-empty-features{display:flex;gap:var(--space-xl);flex-wrap:wrap;justify-content:center;margin-top:var(--space-lg)}.tennis-news-feature{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-lg);background:var(--card-gradient);backdrop-filter:blur(8px);border:1px solid var(--border-primary);border-radius:var(--radius-xl);min-width:140px;transition:all var(--transition-normal);position:relative;overflow:hidden}.tennis-news-feature:before{content:"";position:absolute;inset:0;background:var(--bg-gradient-card);opacity:0;transition:opacity var(--transition-normal)}.tennis-news-feature:hover{border-color:var(--border-accent);transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.tennis-news-feature:hover:before{opacity:1}.tennis-news-feature-icon{font-size:var(--font-size-2xl);margin-bottom:var(--space-xs)}.tennis-news-feature span:last-child{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-medium)}@media (max-width: 768px){.tennis-news-empty-state{padding:var(--space-2xl) var(--space-md);min-height:400px}.tennis-news-empty-title{font-size:var(--font-size-2xl)}.tennis-news-empty-message{font-size:var(--font-size-sm)}.tennis-news-empty-features{gap:var(--space-md)}.tennis-news-feature{min-width:100px;padding:var(--space-sm)}}.player-news-page .container{max-width:1400px;margin:0 auto;padding:0 var(--space-md)}.player-news-page .page-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) 0;border-bottom:1px solid var(--border-primary);margin-bottom:var(--space-md)}.player-news-page .page-title{font-size:var(--font-size-4xl);font-weight:var(--font-bold);color:var(--text-primary)}.sport-tabs{display:flex;gap:var(--space-xs)}.sport-tab{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:transparent;border:1px solid var(--border-secondary);color:var(--text-muted);border-radius:var(--radius-xl);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast)}.sport-tab:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-accent)}.sport-tab.active{background:var(--accent-gradient);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:var(--shadow-md)}.sport-tab.coming-soon{opacity:.5;cursor:not-allowed;position:relative}.sport-tab .sport-icon{font-size:var(--font-size-base)}@media (max-width: 768px){.player-news-page .page-header{flex-direction:column;gap:var(--space-md);align-items:flex-start}.player-news-page .page-title{font-size:var(--font-size-3xl)}.sport-tabs{flex-wrap:wrap;gap:var(--space-sm)}.sport-tab{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-normal);border:2px solid transparent;gap:var(--space-sm)}.btn-primary{background:var(--accent-gradient);color:var(--text-primary);box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-outline{background:transparent;color:var(--accent-primary);border-color:var(--accent-primary)}.btn-outline:hover{background:#3461ff1a;border-color:var(--accent-secondary)}.text-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;padding:0;font-size:inherit;text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-fast)}.debug-outline *{border:1px solid rgba(255,0,0,.1)!important}:root{--bg-primary: #F4F3EE;--bg-secondary: #FAFAF8;--bg-tertiary: #FFFFFF;--bg-card: #FFFFFF;--bg-card-hover: #FAFAF8;--bg-input: #FFFFFF;--accent-container-1: #E5F3F1;--accent-container-2: #EFEEF7;--accent-primary: #C15F3C;--accent-primary-dark: #A04E30;--accent-primary-light: #D97757;--accent-secondary: #C15F3C;--accent-secondary-dark: #A04E30;--accent-secondary-light: #D97757;--color-success: #10B981;--color-danger: #DC2626;--color-warning: #F59E0B;--color-muted: #B0AEA5;--color-text-secondary: #B0AEA5;--accent-gradient: #C15F3C;--accent-gradient-hover: #D97757;--card-gradient: #FFFFFF;--card-gradient-hover: #FAFAF8;--bg-gradient-primary: #F4F3EE;--bg-gradient-card: #FFFFFF;--text-primary: #141413;--text-secondary: #4A4A49;--text-muted: #B0AEA5;--text-disabled: #D1D0CB;--border-primary: #E8E6DC;--border-secondary: #D1D0CB;--border-accent: #C15F3C;--border-accent-hover: #D97757;--border-gradient: #E8E6DC;--success: #10B981;--success-light: #34D399;--success-gradient: #10B981;--warning: #F59E0B;--warning-light: #FBBF24;--warning-gradient: #F59E0B;--error: #DC2626;--error-light: #EF4444;--error-gradient: #DC2626;--info: #C15F3C;--info-light: #D97757;--info-gradient: #C15F3C;--confidence-high: #E5F3F1;--confidence-medium: #EFEEF7;--confidence-low: #C15F3C;--confidence-gradient-high: #E5F3F1;--confidence-gradient-medium: #EFEEF7;--confidence-gradient-low: #C15F3C;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .08);--shadow-xl: 0 8px 16px rgba(0, 0, 0, .1);--shadow-2xl: 0 12px 24px rgba(0, 0, 0, .12);--shadow-card: 0 1px 3px rgba(0, 0, 0, .04);--shadow-card-hover: 0 2px 6px rgba(0, 0, 0, .08);--glow-primary: none;--glow-primary-hover: none;--glow-secondary: none;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--space-3xl: 6rem;--font-family: "EB Garamond", Georgia, serif;--font-family-sans: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--transition-fast: .15s ease-in-out;--transition-normal: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080}*{box-sizing:border-box}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;padding:0}::selection{background-color:#c15f3c;color:#fff}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f4f3ee}::-webkit-scrollbar-thumb{background:#d1d0cb;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b0aea5}a{color:#c15f3c;text-decoration:none;transition:color .2s ease}a:hover{color:#a04e30}a:focus-visible{outline:2px solid #C15F3C;outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-family-sans);font-weight:600;line-height:var(--leading-tight);color:#141413}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:8px;font-family:var(--font-family-sans);font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;border:none;gap:8px}.btn-primary{background-color:#c15f3c;color:#fff}.btn-primary:hover{background-color:#a04e30}.btn-primary:focus-visible{box-shadow:0 0 0 3px #c15f3c4d}.btn-secondary{background-color:#141413;color:#fff}.btn-secondary:hover{background-color:#2d2d2c}.btn-outline{background-color:transparent;color:#141413;border:1px solid #E8E6DC}.btn-outline:hover{background-color:#f4f3ee;border-color:#b0aea5}.btn-outline:focus-visible{box-shadow:0 0 0 3px #c15f3c33}.text-link{background:none;border:none;color:#c15f3c;cursor:pointer;padding:0;font-size:inherit;font-family:var(--font-family);transition:color .2s ease}.text-link:hover{color:#a04e30;text-decoration:underline}.text-link:focus-visible{outline:2px solid #C15F3C;outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-color-scheme: dark){body{background-color:#f4f3ee;color:#141413}}html{scroll-behavior:smooth}body{margin:0;padding:0;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast),outline var(--transition-fast)}a:hover{color:var(--accent-secondary)}a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text-primary)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin:0 0 var(--space-md) 0;color:var(--text-secondary);line-height:var(--leading-relaxed)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.login-container,.signup-container{max-width:400px;margin:2rem auto;padding:2rem;border:1px solid #ddd;border-radius:8px}.error{color:red;margin-bottom:1rem}input,textarea,select{background-color:var(--bg-input);border:1px solid var(--border-secondary);border-radius:var(--radius-xl);padding:var(--space-sm) var(--space-md);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-base);transition:all var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3461ff1a}input::placeholder,textarea::placeholder{color:var(--text-muted)}button{background:#06c;color:#fff;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer}.dashboard{padding:2rem}.games-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.game-card{border:1px solid #ddd;padding:1rem;border-radius:8px}.odds{display:flex;gap:1rem;margin:1rem 0}.bet-form{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-xl);font-weight:var(--font-semibold);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-normal);border:2px solid transparent;gap:var(--space-sm);text-decoration:none;font-family:var(--font-family)}.btn-primary{background:var(--accent-gradient);color:var(--text-primary);box-shadow:var(--shadow-md),var(--glow-primary);border:1px solid rgba(0,212,255,.2);font-weight:var(--font-semibold);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--glow-primary-hover);background:var(--accent-gradient-hover);border-color:#00d4ff66}.btn-primary:hover:before{left:100%}.btn-primary:focus-visible{box-shadow:0 0 0 3px #3461ff80}.btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border-color:var(--border-secondary)}.btn-secondary:hover{background-color:var(--bg-secondary);border-color:var(--accent-primary);transform:translateY(-1px)}.btn-outline{background-color:transparent;color:var(--accent-primary);border-color:var(--accent-primary)}.btn-outline:hover{background-color:#3461ff1a;transform:translateY(-1px)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg);border-radius:var(--radius-2xl)}.btn-sm{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm);border-radius:var(--radius-lg)}.text-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;padding:0;font-family:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-fast)}.text-link:hover{color:var(--accent-secondary)}.text-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.card{background:var(--card-gradient);backdrop-filter:blur(12px);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:var(--shadow-card);transition:all var(--transition-normal);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--border-gradient);opacity:0;transition:opacity var(--transition-normal)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:var(--border-accent);background:var(--card-gradient-hover)}.card:hover:before{opacity:1}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.font-extrabold{font-weight:var(--font-extrabold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--accent-primary)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-card{background-color:var(--bg-card)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.m-0{margin:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.p-0{padding:0}.pt-0{padding-top:0}.pr-0{padding-right:0}.pb-0{padding-bottom:0}.pl-0{padding-left:0}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 768px){.container{padding:0 var(--space-sm)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}.btn-lg{padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-base)}}@media (max-width: 480px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}
