:root{--color-bg-primary:#0a0a0f;--color-bg-secondary:#12121a;--color-bg-card:#1a1a24;--color-bg-hover:#22222e;--color-bg-input:#16161e;--color-text-primary:#f5f5f5;--color-text-secondary:#a0a0a0;--color-text-muted:#666;--color-border:#2a2a35;--color-border-hover:#3a3a45;--color-accent-primary:#e10600;--color-accent-secondary:#c20000;--color-accent-gradient:linear-gradient(135deg,#e10600,#8b0000);--color-accent-glow:rgba(225,6,0,.2);--color-condition-good:#16a34a;--color-condition-caution:#ca8a04;--color-condition-poor:#dc2626;--color-condition-unknown:#6b7280;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 6px rgba(0,0,0,.4);--shadow-lg:0 10px 25px rgba(0,0,0,.5);--transition-fast:150ms ease;--transition-base:250ms ease}[data-theme=dark]{--color-bg-primary:#0a0a0f;--color-bg-secondary:#12121a;--color-bg-card:#1a1a24;--color-bg-hover:#22222e;--color-bg-input:#16161e;--color-text-primary:#f5f5f5;--color-text-secondary:#a0a0a0;--color-text-muted:#666;--color-border:#2a2a35;--color-border-hover:#3a3a45;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 6px rgba(0,0,0,.4);--shadow-lg:0 10px 25px rgba(0,0,0,.5)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body,html{overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.5;min-height:100vh;transition:background var(--transition-fast),color var(--transition-fast)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}ol,ul{list-style:none}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}h1,h2{text-transform:uppercase;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-size:.875rem;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background:var(--color-accent-gradient);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.btn-lg{padding:var(--space-md) var(--space-lg);font-size:1rem}.label{display:block;font-size:.875rem;font-weight:500;margin-bottom:var(--space-xs);color:var(--color-text-secondary)}.input{width:100%;padding:var(--space-sm) var(--space-md);font-size:1rem;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.input:focus{outline:none;border-color:var(--color-accent-primary)}.input::placeholder{color:var(--color-text-muted)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md)}.view-toggle{background:var(--color-bg-secondary);padding:4px}.view-toggle,.view-toggle-btn{display:flex;border-radius:var(--radius-full)}.view-toggle-btn{padding:var(--space-sm) var(--space-md);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);align-items:center;gap:var(--space-xs);transition:all var(--transition-fast)}.view-toggle-btn.active{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;padding:var(--space-sm) 0;padding-bottom:max(var(--space-sm),env(safe-area-inset-bottom));background:var(--color-bg-card);border-top:1px solid var(--color-border);z-index:100}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-xs) var(--space-sm);font-size:.625rem;color:var(--color-text-muted);transition:color var(--transition-fast)}.mobile-nav-item.active{color:var(--color-accent-primary)}.mobile-nav-icon{font-size:1.25rem}.map-container{position:relative;height:50vh;min-height:300px;max-height:400px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}.map-container .leaflet-container{height:100%;width:100%;background:var(--color-bg-secondary)}.tracks-grid{display:flex;flex-direction:column;gap:var(--space-md)}@media (min-width:640px){.tracks-grid{display:grid;grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.tracks-grid{grid-template-columns:repeat(3,1fr)}}.tracks-grid .ad-banner{grid-column:1/-1}.ad-mobile-only{display:block}.ad-desktop-only{display:none}@media (min-width:768px){.ad-mobile-only{display:none}.ad-desktop-only{display:block}}.loading{display:flex;align-items:center;justify-content:center;padding:var(--space-xl)}.spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}main{padding-bottom:70px}@media (min-width:768px){main{padding-bottom:0}.mobile-nav{display:none}}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-accent{color:var(--color-accent-primary)}.font-bold{font-weight:600}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:1rem;transition:all var(--transition-fast)}.theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.landing{min-height:100vh}.landing .header{padding:10px 0;position:fixed;top:0;left:0;right:0;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;border-bottom:1px solid var(--color-border)}[data-theme=dark] .landing .header{background:rgba(10,10,15,.95)}.landing .header-inner{display:flex;align-items:center;justify-content:space-between}.landing .logo{font-weight:600;font-size:.8125rem;color:var(--color-accent-primary);display:flex;align-items:center;gap:5px}.landing .logo-text{display:none}.landing .header-right{display:flex;align-items:center;gap:6px}.landing .theme-btn{width:28px;height:28px;border-radius:50%;color:var(--color-text-muted);font-size:.75rem;display:flex;align-items:center;justify-content:center}.landing .header-link{padding:6px 10px;font-size:.6875rem;color:var(--color-text-secondary);font-weight:500}.landing .header-cta{padding:6px 12px;font-size:.6875rem;background:var(--color-accent-primary);color:#fff;border-radius:4px;font-weight:500}.landing .section-hero{position:relative;height:80vh;min-height:400px;display:flex;align-items:center;justify-content:center;text-align:center;margin-top:48px}.landing .hero-image{position:absolute;inset:0}.landing .hero-image img{width:100%;height:100%;object-fit:cover}.landing .hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,.7))}.landing .hero-content{position:relative;z-index:1;color:#fff}.landing .hero-content h1{font-size:2rem;font-weight:700;margin-bottom:12px;line-height:1.1}.landing .hero-content p{font-size:.875rem;opacity:.9;margin-bottom:20px;max-width:300px;margin-left:auto;margin-right:auto}.landing .cta-btn{display:inline-block;padding:12px 28px;background:var(--color-accent-gradient);color:#fff;border-radius:var(--radius-md);font-size:.875rem;font-weight:600}@media (min-width:480px){.landing .logo-text{display:inline}.landing .header-link{padding:8px 14px;font-size:.75rem}.landing .header-cta{padding:8px 16px;font-size:.75rem}}@media (max-width:768px){.landing .hero-content h1{font-size:1.5rem}}@media (min-width:1024px){.landing .header{padding:16px 0}.landing .logo{font-size:1.125rem}.landing .header-link{padding:10px 20px;font-size:.875rem}.landing .header-cta{padding:10px 24px;font-size:.875rem;border-radius:6px}.landing .section-hero{height:90vh;min-height:600px;margin-top:64px}.landing .hero-content h1{font-size:4rem;margin-bottom:24px}.landing .hero-content p{font-size:1.25rem;max-width:500px;margin-bottom:32px}.landing .cta-btn{padding:16px 40px;font-size:1.125rem;border-radius:8px}.landing .section-community,.landing .section-cta,.landing .section-plan,.landing .section-problem,.landing .section-solution{padding:80px 0}.landing .section-community h2,.landing .section-cta h2,.landing .section-plan h2,.landing .section-problem h2,.landing .section-solution h2{font-size:2.5rem;margin-bottom:16px}.landing .section-community>.container>p,.landing .section-cta>.container>p,.landing .section-problem p,.landing .section-solution>.container>p{font-size:1.125rem;max-width:600px;margin-left:auto;margin-right:auto}.landing .problem-text{max-width:700px;margin:0 auto;text-align:center}.landing .pain{font-size:1.25rem}.landing .community-grid,.landing .solution-grid{gap:80px}.landing .community-image img,.landing .solution-image img{max-width:400px}.landing .feature-list li{font-size:1rem}.landing .steps{gap:60px}.landing .step{max-width:220px}.landing .step-num{width:48px;height:48px;font-size:1.25rem;margin-bottom:16px}.landing .step h3{font-size:1.125rem;margin-bottom:8px}.landing .step p{font-size:.875rem}.landing .stats{gap:48px}.landing .stat span{font-size:2.5rem}.landing .stat p{font-size:.875rem}.landing .footer{padding:32px 0}.landing .footer p{font-size:.875rem}}.home{min-height:100vh}.page-header{padding:1rem 0;border-bottom:1px solid var(--color-border)}.page-header h1{font-size:1.125rem;font-weight:600;margin-bottom:2px}.page-header p{font-size:.75rem;color:var(--color-text-muted)}.search-section{padding:12px 0;background:var(--color-bg-primary);border-bottom:1px solid var(--color-border)}.search-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.search-bar i{color:var(--color-text-muted);font-size:.875rem}.search-bar input{flex:1 1;border:none;background:transparent;font-size:.875rem;color:var(--color-text-primary);outline:none}.search-bar input::placeholder{color:var(--color-text-muted)}.clear-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-muted);font-size:.75rem}.clear-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.controls{padding:.75rem 0;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.controls-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.content{padding:1rem 0}.map-loading{height:300px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border-radius:var(--radius-md)}.map-loading,.no-results{color:var(--color-text-muted)}.no-results{text-align:center;padding:2rem;font-size:.875rem}.track-card{display:flex;align-items:center;gap:10px;padding:10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.track-card:hover{border-color:var(--color-accent-primary)}.track-main{gap:10px;flex:1 1;min-width:0}.track-country,.track-main{display:flex;align-items:center}.track-country{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-bg-secondary);justify-content:center;font-size:.625rem;font-weight:700;color:var(--color-text-muted);flex-shrink:0}.track-info{min-width:0}.track-info h3{font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-info p{color:var(--color-text-muted)}.next-event,.track-info p{font-size:.6875rem;display:flex;align-items:center;gap:4px}.next-event{color:var(--color-accent-primary);white-space:nowrap}.arrow{font-size:.75rem;color:var(--color-text-muted)}.fav-icon{color:var(--color-accent-primary);font-size:.75rem}.filter{display:flex;gap:6px}.filter-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;font-size:.75rem;font-weight:500;border-radius:var(--radius-full);background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);transition:all var(--transition-fast)}.filter-btn:hover{border-color:var(--color-border-hover)}.filter-btn.active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff}.filter-btn .count{font-size:.625rem;padding:1px 5px;background:rgba(0,0,0,.1);border-radius:var(--radius-full)}.filter-btn.active .count{background:hsla(0,0%,100%,.2)}.track-page{min-height:100vh}.track-header{padding:12px 0;border-bottom:1px solid var(--color-border)}.track-header .container{gap:12px}.back,.track-header .container{display:flex;align-items:center}.back{font-size:.75rem;color:var(--color-text-muted);gap:4px}.track-title{flex:1 1;min-width:0}.track-title h1{font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-title p{font-size:.6875rem;gap:4px}.fav-btn,.track-title p{color:var(--color-text-muted);display:flex;align-items:center}.fav-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);justify-content:center;font-size:.875rem;background:transparent}.fav-btn.active{background:rgba(225,6,0,.1);border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.section{padding:16px 0;border-bottom:1px solid var(--color-border)}.section:last-child{border-bottom:none}.section h2{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:12px;display:flex;align-items:center;gap:6px}.section h2 i{color:var(--color-accent-primary)}.empty,.error{font-size:.8125rem;color:var(--color-text-muted);text-align:center;padding:16px}.login-prompt{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;background:var(--color-bg-secondary);border-radius:var(--radius-md);text-align:center}.login-prompt i{font-size:1.5rem;color:var(--color-text-muted)}.login-prompt p{font-size:.8125rem;color:var(--color-text-secondary)}.weather{flex-direction:column}.current,.weather{display:flex;gap:12px}.current{align-items:center;padding:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.temp{font-size:2rem;font-weight:700;color:var(--color-accent-primary)}.icon{font-size:1.5rem}.details,.icon{color:var(--color-text-muted)}.details{margin-left:auto;display:flex;flex-direction:column;gap:2px;font-size:.6875rem}.details span{gap:4px}.condition,.details span{display:flex;align-items:center}.condition{gap:8px;padding:8px 12px;border-radius:var(--radius-md);font-size:.75rem}.condition.good{background:rgba(22,163,74,.1);color:var(--color-condition-good)}.condition.caution{background:rgba(202,138,4,.1);color:var(--color-condition-caution)}.condition.poor{background:rgba(220,38,38,.1);color:var(--color-condition-poor)}.condition.unknown{background:var(--color-bg-secondary);color:var(--color-text-muted)}.dot{width:8px;height:8px;border-radius:50%;background:currentColor}.condition .label{font-weight:600}.reason{color:var(--color-text-secondary);flex:1 1}.hourly{overflow-x:auto;padding-bottom:4px}.hour,.hourly{display:flex;gap:4px}.hour{flex-direction:column;align-items:center;padding:8px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:50px}.time{font-size:.5625rem;color:var(--color-text-muted)}.hour i{font-size:.875rem;color:var(--color-text-secondary)}.t{font-size:.75rem;font-weight:500}.event{gap:10px;padding:10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.date,.event{display:flex;align-items:center}.date{flex-direction:column;padding:6px 10px;background:var(--color-accent-gradient);border-radius:var(--radius-sm);color:#fff;min-width:44px}.day{font-size:1rem;font-weight:700;line-height:1}.month{font-size:.5625rem;text-transform:uppercase}.event .info{flex:1 1;min-width:0}.event .info h3{font-size:.8125rem;font-weight:500;margin-bottom:2px}.meta{display:flex;gap:10px;font-size:.625rem;color:var(--color-text-muted)}.meta span{gap:3px}.attend,.meta span{display:flex;align-items:center}.attend{width:32px;height:32px;border-radius:50%;border:1px solid var(--color-border);justify-content:center;font-size:.75rem;color:var(--color-text-muted);background:transparent}.attend:hover:not(:disabled){border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.attend.active{background:rgba(22,163,74,.1);border-color:var(--color-condition-good);color:var(--color-condition-good)}.dashboard{padding:12px 0}.dashboard .header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dashboard .header h1{font-size:1.125rem;font-weight:600}.settings{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:.875rem}.stats{display:flex;gap:12px;margin-bottom:20px}.stat{flex:1 1;display:flex;flex-direction:column;align-items:center;padding:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.val{font-size:1.25rem;font-weight:700;color:var(--color-accent-primary)}.lbl{font-size:.625rem;color:var(--color-text-muted);text-transform:uppercase}.list{display:flex;flex-direction:column;gap:6px}.item{gap:10px;padding:10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.date-badge,.item{display:flex;align-items:center}.date-badge{flex-direction:column;padding:4px 8px;background:var(--color-accent-gradient);border-radius:var(--radius-sm);color:#fff;font-size:.5625rem;line-height:1.2}.date-badge span:first-child{font-size:.875rem;font-weight:700}.item-info{flex:1 1;min-width:0}.item-info strong{display:block;font-size:.8125rem;font-weight:500}.item-info span{font-size:.6875rem;color:var(--color-text-muted)}.item>i:last-child{color:var(--color-text-muted);font-size:.75rem}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.auth-box{width:100%;max-width:320px;text-align:center}.auth-box .icon{font-size:2rem;color:var(--color-accent-primary);margin-bottom:8px}.auth-box h1{font-size:1.25rem;margin-bottom:16px}.form{gap:12px;text-align:left}.field,.form{display:flex;flex-direction:column}.field{gap:4px}.field label{font-size:.75rem;color:var(--color-text-secondary)}.field input{padding:10px 12px;font-size:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-input);color:var(--color-text-primary)}.field input:focus{outline:none;border-color:var(--color-accent-primary)}.checkbox{display:flex;align-items:center;gap:8px;font-size:.8125rem;cursor:pointer}.checkbox input{accent-color:var(--color-accent-primary)}.submit{padding:10px;background:var(--color-accent-gradient);color:#fff;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;border:none;cursor:pointer}.submit:disabled{opacity:.6}.auth-box .link{margin-top:16px;font-size:.75rem;color:var(--color-text-muted)}.auth-box .link a{color:var(--color-accent-primary);font-weight:500}.test-info{margin-top:24px;padding:8px;background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.test-info small{font-size:.625rem;color:var(--color-text-muted)}.header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:var(--color-bg-primary);border-bottom:1px solid var(--color-border)}.header-inner{justify-content:space-between;height:48px}.header .logo,.header-inner{display:flex;align-items:center}.header .logo{gap:6px;font-weight:600;font-size:.9375rem;color:var(--color-accent-primary)}.nav-desktop{display:none;gap:1.5rem}.nav-link{font-size:.8125rem;color:var(--color-text-secondary);font-weight:500}.nav-link:hover{color:var(--color-text-primary)}.header-right{display:flex;align-items:center;gap:8px}.user-menu{position:relative}.user-btn{padding:0}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-accent-gradient);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff}.dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:150px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;z-index:200}.dropdown-item{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.8125rem;color:var(--color-text-secondary);width:100%;text-align:left;background:none;border:none;cursor:pointer}.dropdown-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.dropdown-item.logout{color:var(--color-accent-primary);border-top:1px solid var(--color-border)}@media (min-width:768px){.header-inner{height:52px}.nav-desktop{display:flex}}.events-page{min-height:100vh}.events-list{display:flex;flex-direction:column;gap:8px}.event-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.event-item:hover{border-color:var(--color-accent-primary)}.event-date{min-width:44px;padding:6px 10px}.event-date .day{font-size:1.125rem;font-weight:700;line-height:1}.event-date .month{font-size:.5625rem;text-transform:uppercase}.event-info h3{margin-bottom:2px}.event-info p{font-size:.6875rem;color:var(--color-text-muted);display:flex;align-items:center;gap:4px}.event-meta{flex-direction:column;align-items:flex-end;gap:2px;font-size:.625rem}.event-meta .attendees{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary)}.event-meta .country{color:var(--color-text-muted);font-weight:600}@media (min-width:1024px){.container{max-width:1100px}.page-header{padding:2rem 0}.page-header h1{font-size:1.75rem}.page-header p{font-size:1rem}.track-page .container{max-width:1000px}.track-header{padding:20px 0}.track-title h1{font-size:1.5rem}.track-title p{font-size:.875rem}.section{padding:32px 0}.section h2{font-size:1.125rem;margin-bottom:20px}.weather{gap:20px}.current{padding:24px;gap:24px}.temp{font-size:3.5rem}.icon{font-size:2.5rem}.details{font-size:.875rem;gap:6px}.condition{padding:12px 20px;font-size:1rem}.hourly{gap:8px}.hour{min-width:70px;padding:12px}.time{font-size:.75rem}.hour i{font-size:1.25rem}.t{font-size:1rem}.events-list{gap:12px}.event{padding:16px;gap:16px}.date{min-width:60px;padding:10px 14px}.day{font-size:1.25rem}.month{font-size:.75rem}.event .info h3{font-size:1rem}.meta{font-size:.8125rem;gap:16px}.dashboard{padding:32px 0}.dashboard .header h1{font-size:1.75rem}.stats{gap:24px;margin-bottom:32px}.stat{padding:24px}.val{font-size:2rem}.lbl{font-size:.8125rem}.list{gap:12px}.item{padding:16px;gap:16px}.item-info strong{font-size:1rem}.item-info span{font-size:.875rem}.events-page .content{padding:32px 0}.event-item{padding:20px;gap:20px}.event-date .day{font-size:1.5rem}.event-date .month{font-size:.75rem}.event-info h3{font-size:1.125rem}.event-info p,.event-meta{font-size:.875rem}.track-card{padding:16px;gap:16px}.track-country{width:48px;height:48px;font-size:.875rem}.track-info h3{font-size:1.0625rem}.next-event,.track-info p{font-size:.8125rem}.controls{padding:1rem 0}.filter-btn{padding:8px 16px;font-size:.875rem}.view-toggle-btn{padding:10px 16px;font-size:1rem}.auth-box{max-width:400px}.auth-box h1{font-size:1.75rem}.field label{font-size:.875rem}.field input{padding:14px 16px;font-size:1rem}.submit{padding:14px;font-size:1rem}}.condition-section{padding:12px 0}.condition-badge{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-md);font-size:.8125rem}.condition-badge.good{background:rgba(34,197,94,.25);color:#4ade80}.condition-badge.caution{background:rgba(250,204,21,.25);color:#fbbf24}.condition-badge.poor{background:hsla(0,91%,71%,.25);color:#f87171}.condition-badge.unknown{background:var(--color-bg-secondary);color:var(--color-text-muted)}.weather-temps{display:flex;flex-direction:column;gap:2px}.weather-high-low{display:flex;gap:10px;font-size:.75rem;color:var(--color-text-secondary)}.weather-high-low .high{color:#f87171;display:flex;align-items:center;gap:3px}.weather-high-low .low{color:#60a5fa;display:flex;align-items:center;gap:3px}.weather-high-low i{font-size:.625rem}.condition-dot{width:10px;height:10px;border-radius:50%;background:currentColor}.condition-label{font-weight:700}.condition-reason{color:var(--color-text-secondary);font-weight:400}.weather-card-today{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;max-width:100%}.weather-card-header{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.weather-card-header-link{cursor:pointer;transition:background var(--transition-fast)}.weather-card-header-link:hover{background:var(--color-bg-hover)}.race-day-arrow{margin-left:auto;color:var(--color-text-muted);font-size:.875rem}.today-badge{padding:4px 10px;background:var(--color-accent-gradient);color:#fff;font-size:.6875rem;font-weight:700;border-radius:var(--radius-full);letter-spacing:.05em}.weather-desc-inline{font-size:.8125rem;color:var(--color-text-secondary);font-style:italic}.race-day-info{display:flex;flex-direction:column;gap:0;flex:1 1;min-width:0}.race-event-name{font-size:.8125rem;font-weight:600;color:var(--color-text-primary)}.race-event-classes,.race-event-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.race-event-classes{font-size:.6875rem;color:var(--color-text-secondary)}.weather-desc-bar{padding:8px 16px;font-size:.8125rem;color:var(--color-text-secondary);font-style:italic;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.weather-card-body{display:flex;align-items:center;gap:16px;padding:16px;flex-wrap:wrap;overflow:hidden}.weather-current{display:flex;flex-direction:column;align-items:center}.current-label{font-size:.625rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.current-temp{font-size:3rem;font-weight:700;line-height:1}.current-temp,.current-temp .degree{color:var(--color-text-primary)}.weather-icon-large{font-size:2.5rem}.weather-range{display:flex;flex-direction:column;gap:8px}.temp-high{display:flex;align-items:center;gap:6px;color:#f87171;font-weight:600}.temp-high i{font-size:1rem}.temp-low{display:flex;align-items:center;gap:6px;color:#60a5fa;font-weight:600}.temp-low i{font-size:1rem}.weather-stats{display:flex;flex-direction:column;gap:6px;margin-left:auto;font-size:.8125rem;color:var(--color-text-secondary)}.weather-stat{display:flex;align-items:center;gap:6px}.rain-icon{color:#60a5fa}.wind-icon{color:#a3e635}.icon-sunny{color:#fbbf24}.icon-partly-cloudy{color:#fcd34d}.icon-cloudy{color:#9ca3af}.icon-rain{color:#60a5fa}.weather-card{display:flex;align-items:center;padding:14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast)}.weather-card:hover{border-color:var(--color-accent-primary)}.weather-main{display:flex;align-items:center;gap:12px;flex:1 1}.weather-temp{font-size:2.25rem;font-weight:700;color:var(--color-accent-primary)}.weather-icon{font-size:1.5rem;color:var(--color-text-muted)}.weather-details{margin-left:auto;display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--color-text-muted)}.weather-details span{display:flex;align-items:center;gap:6px}.weather-toggle{color:var(--color-text-muted);font-size:.75rem;margin-left:12px}.weather-expanded{margin-top:12px}.hourly-forecast{gap:6px;padding:4px 0}.hour-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:55px;flex-shrink:0}.hour-time{font-size:.625rem;color:var(--color-text-muted)}.hour-item i{font-size:1rem;color:var(--color-text-secondary)}.hour-temp{font-size:.875rem;font-weight:600}.event-card-link{padding:12px;transition:border-color var(--transition-fast)}.event-card-header{gap:12px}.event-date-badge{justify-content:center;min-width:48px;padding:8px 10px;background:var(--color-accent-gradient);color:#fff;flex-shrink:0}.event-title-section h3{font-size:.875rem;font-weight:500;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-time{font-size:.6875rem;color:var(--color-text-muted);display:inline-flex;gap:4px}.event-chevron{font-size:.75rem;flex-shrink:0}.event-card-footer{margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border);font-size:.6875rem;color:var(--color-text-muted)}.event-card-footer span{display:inline-flex;gap:4px}.event-link{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.event-link:hover{border-color:var(--color-accent-primary)}.event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:48px;padding:8px 10px;background:var(--color-accent-gradient);border-radius:var(--radius-sm);color:#fff;flex-shrink:0}.event-day{font-size:1.125rem}.event-month{margin-top:2px}.event-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.event-info h3{font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.event-meta{display:flex;align-items:center;gap:10px;font-size:.6875rem;color:var(--color-text-muted);flex-wrap:wrap}.event-meta span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.event-arrow{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0;margin-left:auto}.event-detail-page{min-height:100vh}.event-header{padding:12px 0;border-bottom:1px solid var(--color-border)}.back-link{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary);font-size:.875rem}.back-link:hover{color:var(--color-accent-primary)}.event-main{padding:24px 0;border-bottom:1px solid var(--color-border);text-align:center}.event-date-large{display:inline-flex;flex-direction:column;align-items:center;padding:12px 20px;background:var(--color-accent-gradient);border-radius:var(--radius-md);color:#fff;margin-bottom:16px}.event-date-large .day{font-size:2rem;font-weight:700;line-height:1}.event-date-large .month{font-size:.875rem;text-transform:uppercase}.event-date-large .year{font-size:.75rem;opacity:.8}.event-main h1{font-size:1.5rem;font-weight:600;margin-bottom:8px}.classes{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:20px}.event-times{display:flex;justify-content:center;gap:24px;margin-bottom:20px}.time-item{display:flex;flex-direction:column;align-items:center;gap:4px}.time-item i{font-size:1.25rem;color:var(--color-accent-primary)}.time-item span{font-size:.625rem;color:var(--color-text-muted);text-transform:uppercase}.time-item strong{font-size:1rem;font-weight:600}.attend-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--color-accent-primary);color:#fff;border-radius:var(--radius-md);font-size:1rem;font-weight:500}.attend-btn.attending{background:var(--color-condition-good)}.attendee-list{display:flex;flex-wrap:wrap;gap:8px}.attendee{gap:8px;padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.8125rem}.attendee,.avatar{display:flex;align-items:center}.avatar{width:28px;height:28px;border-radius:50%;background:var(--color-accent-gradient);justify-content:center;color:#fff;font-size:.75rem;font-weight:600}.spectator-count{font-size:1rem;color:var(--color-text-secondary)}.profile-page{min-height:100vh}.profile-header{padding:20px 0;border-bottom:1px solid var(--color-border);margin-bottom:20px}.avatar-section{display:flex;align-items:center;gap:16px}.avatar-wrapper{position:relative}.avatar-image{object-fit:cover}.avatar-image,.avatar-placeholder{width:80px;height:80px;border-radius:50%}.avatar-placeholder{background:var(--color-accent-gradient);font-size:2rem;color:#fff}.avatar-upload{position:absolute;bottom:0;right:0;width:28px;height:28px;border-radius:50%;background:var(--color-accent-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;cursor:pointer;border:2px solid var(--color-bg-primary)}.avatar-upload:hover{background:var(--color-accent-secondary)}.profile-info h1{font-size:1.25rem;font-weight:600;margin-bottom:4px}.profile-info p{color:var(--color-text-muted);margin-bottom:8px}.profile-info .badge{display:inline-block;padding:4px 10px;background:var(--color-bg-secondary);border-radius:var(--radius-full);font-size:.75rem;color:var(--color-text-secondary)}.stats-section{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:24px}.stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center}.stat-card i{font-size:1.25rem;color:var(--color-accent-primary)}.stat-value{font-size:1.125rem;font-weight:600}.stat-label{font-size:.6875rem;color:var(--color-text-muted)}.message{padding:12px}.message.error{color:var(--color-accent-primary)}.edit-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{font-size:1rem;font-weight:600}.edit-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-text-secondary)}.edit-btn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.form-group{margin-bottom:16px}.form-group label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.form-group input{width:100%;padding:10px 14px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-text-primary)}.form-group input:focus{border-color:var(--color-accent-primary);outline:none}.form-group p{font-size:.875rem;color:var(--color-text-primary)}.toggle-group{display:flex;gap:8px}.toggle-btn{flex:1 1;padding:10px 16px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;gap:6px}.toggle-btn.active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff}.button-group{display:flex;gap:12px;margin-top:20px}.save-btn{flex:1 1;padding:12px;background:var(--color-accent-primary);color:#fff;border-radius:var(--radius-md);font-size:.875rem;font-weight:500}.save-btn:disabled{opacity:.7}.cancel-btn{padding:12px 20px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-text-secondary)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.logo-img{height:32px;width:auto}@media (min-width:768px){.logo-img{height:40px}}@media (min-width:1024px){.logo-img{height:50px}}.user-avatar-img{width:28px;height:28px;border-radius:50%;object-fit:cover}@media (min-width:768px){.user-avatar-img{width:36px;height:36px}}.weather-description{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:16px;font-style:italic}.race-day-weather{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;margin-top:12px}.race-day-label{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-accent-gradient);border-radius:var(--radius-full);font-size:.75rem;color:#fff;font-weight:600;margin-bottom:12px}.race-day-hourly{display:flex;gap:8px;overflow-x:auto;padding:4px 0}.track-header-right{display:flex;align-items:center;gap:12px}.current-datetime{display:flex;flex-direction:column;align-items:flex-end;font-size:.6875rem;color:var(--color-text-muted)}.current-time{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header-row h2{margin-bottom:0}.last-updated{font-size:.625rem;color:var(--color-text-muted);font-style:italic}.weather-card-static{padding:14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:16px}.hourly-forecast-section{margin-top:16px}.event-card-link.today{background:rgba(225,6,0,.05)}.event-date-badge.today{position:relative}.today-label{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:var(--color-accent-primary);color:#fff;font-size:.5rem;padding:2px 6px;border-radius:var(--radius-full);font-weight:700}.events-search-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px}.events-search-bar i{color:var(--color-text-muted);font-size:1rem}.events-search-bar input{flex:1 1;border:none;background:transparent;color:var(--color-text-primary);font-size:1rem;outline:none}.events-search-bar input::placeholder{color:var(--color-text-muted)}.clear-search{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px}.clear-search:hover{color:var(--color-text-primary)}.filters-toggle{margin-bottom:12px}.filters-toggle-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast)}.filters-toggle-btn.open,.filters-toggle-btn:hover{border-color:var(--color-accent-primary)}.filters-toggle-btn.open{background:var(--color-bg-secondary)}.filters-toggle-btn .filter-count{background:var(--color-accent-primary);color:#fff;font-size:.625rem;padding:2px 6px;border-radius:var(--radius-full)}.filters-toggle-btn .arrow-icon{margin-left:auto;font-size:.75rem;color:var(--color-text-muted)}.events-filters{padding:16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:16px}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:16px;gap:16px}.filter-item{display:flex;flex-direction:column;gap:6px}.filter-item label{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.filter-item input,.filter-item select{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:.875rem}.filter-item input:focus,.filter-item select:focus{outline:none;border-color:var(--color-accent-primary)}.filters-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border)}.clear-filters-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;color:var(--color-accent-primary);font-size:.8125rem;cursor:pointer}.clear-filters-btn:hover{text-decoration:underline}.results-info{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:16px}.events-list .event-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px;transition:border-color var(--transition-fast)}.events-list .event-item:hover{border-color:var(--color-accent-primary)}.event-item .event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:50px;padding:8px;background:var(--color-accent-gradient);border-radius:var(--radius-sm)}.event-item .event-date .day{font-size:1.25rem;font-weight:700;color:#fff}.event-item .event-date .month{font-size:.625rem;text-transform:uppercase;color:hsla(0,0%,100%,.8)}.event-item .event-info{flex:1 1;min-width:0}.event-item .event-info h3{font-size:1rem;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-item .event-info p{font-size:.8125rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.event-item .event-info p i{color:var(--color-accent-primary);font-size:.75rem}.event-item .event-classes{margin-top:4px;font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-item .event-meta{display:flex;flex-direction:column;gap:4px;align-items:flex-end;min-width:60px}.event-item .event-meta span{font-size:.75rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:4px}.event-item .event-meta .country{padding:2px 8px;background:var(--color-bg-secondary);border-radius:var(--radius-full);font-weight:500}.event-item .arrow{color:var(--color-text-muted);font-size:.875rem}.empty-state{padding:60px 20px}.empty-state p{margin-bottom:16px}@media (max-width:768px){.events-search-bar{padding:10px 12px}.events-search-bar input{font-size:.9375rem}.filters-grid{grid-template-columns:1fr;gap:12px}.events-list .event-item{padding:12px;gap:10px}.event-item .event-date{min-width:44px;padding:6px}.event-item .event-date .day{font-size:1.125rem}.event-item .event-date .month{font-size:.5625rem}.event-item .event-info h3{font-size:.875rem}.event-item .event-info p{font-size:.75rem}.event-item .event-classes{display:none}.event-item .event-meta{min-width:auto}.event-item .event-meta .country{font-size:.625rem;padding:2px 6px}.event-item .arrow{display:none}.events-page .page-header{padding:16px 0}.events-page .page-header h1{font-size:1.25rem}.events-page .page-header p{font-size:.8125rem}}.form-group{margin-bottom:var(--space-md)}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-input);color:var(--color-text-primary);transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent-primary)}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer}.checkbox-label input{width:auto}.form-row{grid-template-columns:1fr 1fr}.driver-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:rgba(225,6,0,.1);color:var(--color-accent-primary);border-radius:var(--radius-md);font-size:.75rem;font-weight:600}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-xl)}.admin-dashboard .admin-header{margin-bottom:var(--space-xl);padding-top:var(--space-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.admin-dashboard .admin-header h1{font-size:1.5rem;display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-primary)}.admin-dashboard .admin-header h1 i{color:var(--color-accent-primary)}.admin-dashboard .admin-header .track-info h1{margin-bottom:4px}.admin-dashboard .admin-header .track-info p{color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--space-xs)}.admin-dashboard .back-link{display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;margin-bottom:var(--space-md);width:100%}.admin-dashboard .back-link:hover{color:var(--color-accent-primary)}.admin-dashboard .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-md);gap:var(--space-md);margin-bottom:var(--space-xl)}@media (min-width:768px){.admin-dashboard .stats-grid{grid-template-columns:repeat(4,1fr)}}.admin-dashboard .stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md)}.admin-dashboard .stat-card i{width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-accent-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.admin-dashboard .stat-content{display:flex;flex-direction:column}.admin-dashboard .stat-value{font-size:1.5rem;font-weight:700;line-height:1;margin-bottom:4px}.admin-dashboard .stat-label{font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.admin-dashboard .admin-nav-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-md);gap:var(--space-md);margin-bottom:var(--space-xl)}@media (min-width:640px){.admin-dashboard .admin-nav-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.admin-dashboard .admin-nav-grid{grid-template-columns:repeat(4,1fr)}}.admin-dashboard .admin-nav-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);transition:all var(--transition-base)}.admin-dashboard .admin-nav-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.admin-dashboard .admin-nav-card i{font-size:2rem;color:var(--color-accent-primary);margin-bottom:var(--space-sm)}.admin-dashboard .admin-nav-card h3{font-size:1.125rem;color:var(--color-text-primary)}.admin-dashboard .admin-nav-card p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.admin-dashboard .recent-activity{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.admin-dashboard .recent-activity h2{font-size:1.125rem;margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.admin-dashboard .activity-list{display:flex;flex-direction:column}.admin-dashboard .activity-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--color-border)}.admin-dashboard .activity-item:last-child{border-bottom:none;padding-bottom:0}.admin-dashboard .notif-type{font-size:.75rem;font-weight:600;padding:4px 8px;border-radius:var(--radius-sm);text-transform:uppercase;min-width:80px;text-align:center}.admin-dashboard .notif-type.going_ahead{background:rgba(22,163,74,.1);color:var(--color-condition-good)}.admin-dashboard .notif-type.cancelled{background:rgba(220,38,38,.1);color:var(--color-condition-poor)}.admin-dashboard .notif-type.postponed{background:rgba(59,130,246,.1);color:#3b82f6}.admin-dashboard .notif-type.assessing{background:rgba(202,138,4,.1);color:var(--color-condition-caution)}.admin-dashboard .activity-details{flex:1 1;font-size:.875rem}.admin-dashboard .activity-details strong{font-weight:600}.admin-dashboard .activity-meta{font-size:.75rem;color:var(--color-text-muted)}.admin-dashboard .activity-meta-group{display:flex;flex-direction:column;gap:2px;align-items:flex-end;min-width:80px}.admin-dashboard .notifications-broadcast-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.admin-dashboard .notifications-broadcast-card h2{font-size:1.125rem;margin-bottom:var(--space-sm);display:flex;align-items:center;gap:var(--space-sm)}.admin-dashboard .notifications-broadcast-card h2 i{color:var(--color-accent-primary)}.admin-dashboard .notifications-broadcast-card .description{font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--space-lg)}.admin-dashboard .notifications-broadcast-card .form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-md);gap:var(--space-md)}.admin-dashboard .notifications-broadcast-card .form-grid .full-width{grid-column:1/-1}.admin-dashboard .notifications-broadcast-card .form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.admin-dashboard .notifications-broadcast-card .form-group input,.admin-dashboard .notifications-broadcast-card .form-group select,.admin-dashboard .notifications-broadcast-card .form-group textarea{width:100%;padding:10px 12px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.875rem}.admin-dashboard .notifications-broadcast-card .form-group input:focus,.admin-dashboard .notifications-broadcast-card .form-group select:focus,.admin-dashboard .notifications-broadcast-card .form-group textarea:focus{outline:none;border-color:var(--color-accent-primary)}.admin-dashboard .notifications-broadcast-card .actions{margin-top:var(--space-lg)}.admin-dashboard .notifications-broadcast-card .message{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-md);display:flex;justify-content:space-between;align-items:center}.admin-dashboard .notifications-broadcast-card .message.success{background:rgba(22,163,74,.1);color:var(--color-condition-good);border:1px solid var(--color-condition-good)}.admin-dashboard .notifications-broadcast-card .message.error{background:rgba(220,38,38,.1);color:var(--color-condition-poor);border:1px solid var(--color-condition-poor)}.admin-dashboard .notifications-broadcast-card .message button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem;line-height:1}.admin-dashboard .notif-message-preview{font-size:.75rem;color:var(--color-text-muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.admin-dashboard .target-badge{font-size:.625rem;background:var(--color-bg-secondary);padding:2px 6px;border-radius:var(--radius-sm);margin-left:6px}@media (max-width:768px){.admin-dashboard .notifications-broadcast-card .form-grid{grid-template-columns:1fr}.admin-dashboard .activity-item{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.admin-dashboard .notif-type{min-width:auto;order:0}.admin-dashboard .activity-details{width:100%;order:1}.admin-dashboard .activity-meta-group{flex-direction:row;flex-wrap:wrap;gap:var(--space-sm);align-items:flex-start;width:100%;order:2}.admin-dashboard .notif-message-preview{white-space:normal;max-width:100%}.admin-dashboard .notifications-broadcast-card,.admin-dashboard .recent-activity{padding:var(--space-md)}}.admin-dashboard .filters{display:flex;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.admin-dashboard .search-box{flex:1 1;min-width:200px;position:relative}.admin-dashboard .search-box i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.admin-dashboard .search-box input{width:100%;padding:10px 12px 10px 36px}.admin-dashboard .filters select,.admin-dashboard .search-box input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-input);color:var(--color-text-primary)}.admin-dashboard .filters select{padding:10px 32px 10px 12px;min-width:150px}.admin-dashboard .users-table{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.admin-dashboard table{width:100%;border-collapse:collapse}.admin-dashboard td,.admin-dashboard th{padding:var(--space-md);text-align:left;border-bottom:1px solid var(--color-border)}.admin-dashboard th{font-weight:600;color:var(--color-text-secondary);font-size:.75rem;text-transform:uppercase;background:var(--color-bg-secondary)}.admin-dashboard tr:last-child td{border-bottom:none}.admin-dashboard .user-cell .user-info{display:flex;flex-direction:column}.admin-dashboard .user-cell strong{font-size:.875rem}.admin-dashboard .user-cell span{font-size:.75rem;color:var(--color-text-muted)}.admin-dashboard .role-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.admin-dashboard .role-badge.super_admin{background:#3b82f6;color:#fff}.admin-dashboard .role-badge.track_admin{background:#8b5cf6;color:#fff}.admin-dashboard .role-badge.driver{background:var(--color-accent-primary);color:#fff}.admin-dashboard .role-badge.user{background:var(--color-bg-secondary);color:var(--color-text-secondary)}.admin-dashboard .fan-badge{display:inline-block;padding:2px 8px;background:var(--color-bg-secondary);color:var(--color-text-muted);border-radius:var(--radius-full);font-size:.75rem}.admin-dashboard .stats-cell{display:flex;flex-direction:column;font-size:.75rem;color:var(--color-text-secondary)}.admin-dashboard .actions-cell{display:flex;gap:8px}.admin-dashboard .btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-bg-secondary);transition:all var(--transition-fast)}.admin-dashboard .btn-icon:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.admin-dashboard .btn-icon.danger:hover{background:#fee2e2;color:#dc2626}.admin-dashboard .modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--space-md)}.admin-dashboard .modal{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:500px;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.admin-dashboard .modal h2{margin-bottom:var(--space-lg)}.admin-dashboard .form-group{margin-bottom:var(--space-md)}.admin-dashboard .form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.admin-dashboard .form-group input,.admin-dashboard .form-group select,.admin-dashboard .form-group textarea{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-input);color:var(--color-text-primary)}.admin-dashboard .settings-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.admin-dashboard .section-description{color:var(--color-text-secondary);margin-bottom:var(--space-lg);font-size:.875rem}.admin-dashboard .settings-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-lg);gap:var(--space-lg)}.admin-dashboard .setting-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.admin-dashboard .setting-item.full-width{flex-direction:column;align-items:flex-start}.admin-dashboard .setting-item.full-width input{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-md)}.admin-dashboard .setting-info h3{font-size:1rem;margin-bottom:4px}.admin-dashboard .setting-info p{font-size:.75rem;color:var(--color-text-muted)}.admin-dashboard .toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.admin-dashboard .toggle-switch input{opacity:0;width:0;height:0}.admin-dashboard .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:34px}.admin-dashboard .slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}.admin-dashboard input:checked+.slider{background-color:var(--color-accent-primary)}.admin-dashboard input:checked+.slider:before{transform:translateX(24px)}.admin-dashboard .notification-panel{background:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-md)}.admin-dashboard .notification-blocked{background:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--space-lg);text-align:center;color:var(--color-text-secondary)}.admin-dashboard .notification-types{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-sm);gap:var(--space-sm);margin:var(--space-md) 0}.admin-dashboard .notif-type-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:var(--space-md);border:2px solid transparent;border-radius:var(--radius-md);background:var(--color-bg-card);transition:all var(--transition-fast)}.admin-dashboard .notif-type-btn:hover{transform:translateY(-2px);border-color:var(--color-border)}.admin-dashboard .notif-type-btn.selected{border-color:currentColor;background:rgba(var(--rgb-bg),.1)}.admin-dashboard .notif-type-btn.warning{color:var(--color-condition-caution)}.admin-dashboard .notif-type-btn.info{color:#3b82f6}.admin-dashboard .notif-type-btn.danger{color:var(--color-condition-poor)}.admin-dashboard .notif-type-btn.success{color:var(--color-condition-good)}.admin-dashboard .recipient-options{display:flex;gap:var(--space-lg);margin-bottom:var(--space-md)}.admin-dashboard .recipient-options label{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500}.admin-dashboard .custom-message textarea{width:100%;min-height:80px;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:4px;margin-bottom:var(--space-md)}.admin-dashboard .send-btn{width:100%;padding:12px;background:var(--color-accent-gradient);color:#fff;border-radius:var(--radius-md);font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.admin-dashboard .send-btn:disabled{opacity:.7;cursor:not-allowed}.admin-settings-page{padding:var(--space-lg) 0;padding-top:calc(var(--space-lg) + 20px);min-height:100vh}.admin-settings-page .admin-header{margin-bottom:var(--space-xl)}.admin-settings-page .admin-header h1{font-size:1.5rem;display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-md)}.admin-settings-page .admin-header h1 i{color:var(--color-accent-primary)}.admin-settings-page .back-link{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.admin-settings-page .back-link:hover{color:var(--color-accent-primary)}.admin-settings-page .message{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg);display:flex;justify-content:space-between;align-items:center}.admin-settings-page .message.success{background:rgba(22,163,74,.1);color:var(--color-condition-good);border:1px solid var(--color-condition-good)}.admin-settings-page .message.error{background:rgba(220,38,38,.1);color:var(--color-condition-poor);border:1px solid var(--color-condition-poor)}.admin-settings-page .message button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem;line-height:1}.admin-settings-page .settings-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.admin-settings-page .settings-section h2{font-size:1.125rem;display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.admin-settings-page .settings-section h2 i{color:var(--color-accent-primary)}.admin-settings-page .section-description{font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--space-lg)}.admin-settings-page .settings-grid{display:flex;flex-direction:column;gap:var(--space-md)}.admin-settings-page .setting-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.admin-settings-page .setting-item.full-width{flex-direction:column;align-items:stretch}.admin-settings-page .setting-info{flex:1 1;min-width:0}.admin-settings-page .setting-info h3{font-size:.9375rem;font-weight:600;margin-bottom:4px}.admin-settings-page .setting-info p{font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.admin-settings-page .toggle-switch{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.admin-settings-page .toggle-switch input{opacity:0;width:0;height:0}.admin-settings-page .toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-bg-hover);transition:.3s;border-radius:28px}.admin-settings-page .toggle-switch .slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.admin-settings-page .toggle-switch input:checked+.slider{background-color:var(--color-accent-primary)}.admin-settings-page .toggle-switch input:checked+.slider:before{transform:translateX(24px)}.admin-settings-page .input-with-unit{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.admin-settings-page .input-with-unit input{width:80px;padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.875rem;text-align:center}.admin-settings-page .input-with-unit span{font-size:.875rem;color:var(--color-text-muted)}.admin-settings-page .setting-item.full-width input{width:100%;margin-top:var(--space-sm);padding:10px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.875rem}.admin-settings-page .setting-item.full-width input:focus{outline:none;border-color:var(--color-accent-primary)}.admin-settings-page .settings-actions{margin-top:var(--space-md)}@media (max-width:640px){.admin-settings-page{padding-top:var(--space-lg)}.admin-settings-page .settings-section{padding:var(--space-md)}.admin-settings-page .setting-item{flex-direction:column;align-items:stretch;gap:var(--space-md)}.admin-settings-page .input-with-unit,.admin-settings-page .toggle-switch{align-self:flex-end}}.admin-dashboard .drivers-by-track{margin-top:var(--space-lg)}.admin-dashboard .track-group{background:var(--color-bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-md);overflow:hidden}.admin-dashboard .track-group .track-header{padding:var(--space-sm) var(--space-md);background:rgba(0,0,0,.05);display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.875rem}.admin-dashboard .driver-list{padding:var(--space-sm) var(--space-md)}.admin-dashboard .driver-list li{display:flex;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid var(--color-border)}.admin-dashboard .driver-list li:last-child{border-bottom:none}.admin-dashboard .driver-list .car-number{background:var(--color-accent-primary);color:#fff;padding:1px 6px;border-radius:4px;font-size:.75rem;font-weight:700}.admin-dashboard .driver-list .class{color:var(--color-text-secondary);font-size:.75rem;margin-left:auto}.admin-dashboard .message{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-md);display:flex;align-items:center;justify-content:space-between;font-weight:500}.admin-dashboard .message.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.admin-dashboard .events-list{display:flex;flex-direction:column;gap:var(--space-md)}.admin-dashboard .event-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md);transition:all .2s}.admin-dashboard .event-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.admin-dashboard .event-card.cancelled{border-left:4px solid var(--color-condition-poor);background:rgba(220,38,38,.05)}.admin-dashboard .event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-secondary);padding:8px 16px;border-radius:var(--radius-md);min-width:70px}.admin-dashboard .event-date .day{font-size:1.25rem;font-weight:700;line-height:1}.admin-dashboard .event-date .month{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;font-weight:600}.admin-dashboard .event-info{flex:1 1}.admin-dashboard .event-info h3{margin-bottom:4px;font-size:1rem;font-weight:600}.admin-dashboard .event-info .track-name{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:2px}.admin-dashboard .event-info .time{color:var(--color-text-muted);font-size:.75rem}.admin-dashboard .event-stats{display:flex;flex-direction:column;gap:4px;align-items:flex-end;text-align:right;min-width:120px;font-size:.875rem;color:var(--color-text-secondary)}.admin-dashboard .cancelled-badge{font-size:.625rem;background:var(--color-condition-poor);color:#fff;padding:2px 6px;border-radius:4px;font-weight:700;text-transform:uppercase}.admin-dashboard .event-actions{display:flex;gap:8px}@media (max-width:768px){.admin-dashboard .event-card{flex-direction:column;align-items:flex-start}.admin-dashboard .event-date{width:100%;flex-direction:row;gap:8px;padding:8px}.admin-dashboard .event-stats{align-items:flex-start;text-align:left;margin-top:8px}.admin-dashboard .event-actions{width:100%;justify-content:flex-end;margin-top:8px}}.admin-dashboard .message.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.form-row{display:grid;grid-template-columns:1fr;grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:640px){.form-row{grid-template-columns:1fr 1fr}}.profile-page{padding:20px 0;min-height:calc(100vh - 64px);background:var(--color-bg-primary)}.profile-page .page-header{margin-bottom:24px}.profile-page .page-header h1{font-size:1.5rem;font-weight:700;color:var(--color-text-primary)}.profile-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:1fr}@media (min-width:1024px){.profile-grid{grid-template-columns:350px 1fr}}.profile-card,.settings-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm)}.profile-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;margin-bottom:24px}.avatar-large{width:100px;height:100px;border-radius:50%;overflow:hidden;border:4px solid var(--color-bg-card);box-shadow:0 0 0 1px var(--color-border)}.avatar-large,.avatar-placeholder{background:var(--color-bg-secondary)}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:var(--color-text-secondary)}.profile-info h2{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.profile-info p{color:var(--color-text-secondary);font-size:.875rem}.profile-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;padding-top:24px;border-top:1px solid var(--color-border)}.profile-stats .stat{display:flex;flex-direction:column;align-items:center;gap:4px}.profile-stats .value{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.profile-stats .label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.05em}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.card-header h2{font-size:1.125rem;font-weight:600}.driver-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border)}.help-text{margin-top:6px;font-size:.8125rem;color:var(--color-text-muted);margin-left:28px}.driver-fields{margin-top:20px;padding:20px;background:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.action-buttons{display:flex;gap:12px}.impersonation-banner{position:fixed;top:0;left:0;right:0;z-index:2000;background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1a1a;padding:10px 16px;box-shadow:0 2px 8px rgba(0,0,0,.2)}.impersonation-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;text-align:center}.impersonation-content i{font-size:1.25rem}.impersonation-content span{font-size:.875rem;font-weight:500}.exit-impersonation-btn{background:#1a1a1a;color:#f59e0b;padding:6px 12px;border-radius:var(--radius-md);font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:6px;transition:all .2s}.exit-impersonation-btn:hover{background:#333}.exit-impersonation-btn:disabled{opacity:.7}body:has(.impersonation-banner) .header{top:50px}body:has(.impersonation-banner) main{padding-top:50px}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:40px!important}.password-toggle{position:absolute;right:10px;background:transparent;color:var(--color-text-muted);padding:4px 8px;font-size:.875rem;transition:color .2s}.password-toggle:hover{color:var(--color-text-primary)}.message{padding:12px 16px;border-radius:var(--radius-md);margin-bottom:16px;font-size:.875rem;font-weight:500}.message.success{background:rgba(22,163,74,.1);color:var(--color-condition-good);border:1px solid rgba(22,163,74,.2)}.message.error{background:rgba(220,38,38,.1);color:var(--color-condition-poor);border:1px solid rgba(220,38,38,.2)}.password-section{margin-top:24px}.password-section .card-header h2{display:flex;align-items:center;gap:8px}.avatar-large.clickable{cursor:pointer;position:relative}.avatar-large.clickable:hover .avatar-overlay{opacity:1}.avatar-overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);color:#fff;font-size:1.25rem;opacity:0;transition:opacity .2s}.avatar-loading,.avatar-overlay{border-radius:50%;display:flex;align-items:center;justify-content:center}.avatar-loading{width:80px;height:80px;background:var(--color-bg-secondary);color:var(--color-text-muted)}.driver-section h3{font-size:1rem;font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:8px;color:var(--color-accent-primary)}.driver-section h3 i{font-size:1rem}.settings-form textarea{width:100%;padding:10px 12px;font-size:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-input);color:var(--color-text-primary);font-family:inherit;resize:vertical}.settings-form textarea:focus{outline:none;border-color:var(--color-accent-primary)}.settings-form textarea:disabled{opacity:.7;cursor:not-allowed}.achievements-section{margin-top:16px}.achievements-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.achievement-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-secondary);border-radius:var(--radius-sm);font-size:.8125rem}.achievement-year{font-weight:700;color:var(--color-accent-primary);min-width:45px}.achievement-title{flex:1 1;font-weight:500}.achievement-track,.btn-remove{color:var(--color-text-muted);font-size:.75rem}.btn-remove{background:transparent;padding:4px;transition:color .2s}.btn-remove:hover{color:var(--color-condition-poor)}.add-achievement{display:grid;grid-template-columns:60px 1fr 100px auto;grid-gap:8px;gap:8px;align-items:center}.add-achievement input{padding:8px 10px;font-size:.8125rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary)}.add-achievement input:focus{outline:none;border-color:var(--color-accent-primary)}@media (max-width:640px){.add-achievement{grid-template-columns:1fr}.add-achievement .btn{width:100%}}.avatar-large.clickable:after{content:"Change Photo";position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:.6875rem;color:var(--color-accent-primary);white-space:nowrap;opacity:.8}.avatar-edit-hint{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px;font-size:.75rem;color:var(--color-accent-primary);cursor:pointer}.avatar-edit-hint:hover{text-decoration:underline}.public-driver-page{min-height:100vh;padding:24px 16px 80px}.driver-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;margin-bottom:32px}.driver-avatar-large{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid var(--color-accent-primary);box-shadow:0 4px 20px rgba(225,6,0,.3)}.driver-avatar-large img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-large{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:3rem;font-weight:700}.driver-header-info{display:flex;flex-direction:column;align-items:center;gap:8px}.driver-name-row{display:flex;align-items:center;gap:12px}.driver-name-row h1{font-size:1.5rem;font-weight:700}.car-number-badge{display:flex;align-items:center;gap:8px;background:var(--color-bg-secondary);padding:6px 16px;border-radius:var(--radius-full)}.car-number-badge .car-number{font-size:1.25rem;font-weight:800;color:var(--color-accent-primary)}.car-number-badge .racing-class{font-size:.8125rem;color:var(--color-text-secondary)}.home-track-link{display:flex;align-items:center;gap:6px;font-size:.875rem;color:var(--color-text-secondary);transition:color .2s}.home-track-link i,.home-track-link:hover{color:var(--color-accent-primary)}.driver-content{max-width:600px;margin:0 auto}.driver-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;margin-bottom:16px}.driver-section h2{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:12px;display:flex;align-items:center;gap:8px}.driver-section h2 i{color:var(--color-accent-primary)}.car-details,.driver-bio{font-size:.9375rem;line-height:1.6;color:var(--color-text-primary)}.achievements-display{display:flex;flex-direction:column;gap:8px}.achievement-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.achievement-card .achievement-year{font-size:1rem;font-weight:800;color:var(--color-accent-primary);min-width:50px}.achievement-card .achievement-title{font-weight:600;flex:1 1}.achievement-card .achievement-track{font-size:.75rem;color:var(--color-text-muted)}.upcoming-events{display:flex;flex-direction:column;gap:8px}.upcoming-event-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-secondary);border-radius:var(--radius-sm);transition:background .2s}.upcoming-event-card:hover{background:var(--color-bg-hover)}.upcoming-event-card .event-date{font-size:.75rem;font-weight:600;color:var(--color-accent-primary);min-width:80px}.upcoming-event-card .event-info{flex:1 1;display:flex;flex-direction:column;gap:2px}.upcoming-event-card .event-name{font-weight:500}.upcoming-event-card .event-track,.upcoming-event-card i{font-size:.75rem;color:var(--color-text-muted)}.no-events{color:var(--color-text-muted);font-style:italic}.private-profile-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.private-message{text-align:center}.private-message i{font-size:3rem;color:var(--color-text-muted);margin-bottom:16px}.private-message h1{font-size:1.5rem;margin-bottom:8px}.private-message p{color:var(--color-text-muted)}@media (min-width:768px){.driver-header{flex-direction:row;text-align:left;gap:24px}.driver-header-info{align-items:flex-start}.driver-name-row h1{font-size:2rem}}.weather-card-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-md);background:var(--color-bg-secondary);border:none;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-weight:500;font-size:.875rem;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.weather-card-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.hourly-forecast-section{display:block}@media (max-width:767px){.hourly-forecast-section{display:none;margin-top:var(--space-sm)}.hourly-forecast-section.expanded{display:block;animation:slideDown .3s ease-out}.weather-card-toggle.mobile-only{display:flex}}@media (min-width:768px){.weather-card-toggle.mobile-only{display:none!important}.hourly-forecast-section{display:block!important}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.container-wide{width:98%;max-width:none;padding:0 var(--space-sm)}@media (min-width:1024px){.container-wide{width:98%;max-width:none;padding:0 var(--space-md)}}.track-tabs{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:48px;z-index:90;margin-bottom:var(--space-md)}.tabs-list{display:flex;gap:8px;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.tabs-list::-webkit-scrollbar{display:none}.tab-btn{padding:16px 4px;background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-weight:500;font-size:.9375rem;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--color-text-primary)}.tab-btn.active{color:var(--color-accent-primary);border-bottom-color:var(--color-accent-primary)}.tab-count{font-size:.75rem;background:var(--color-bg-secondary);padding:2px 8px;border-radius:var(--radius-full);color:var(--color-text-muted)}.tab-btn.active .tab-count{background:rgba(225,6,0,.1);color:var(--color-accent-primary)}.hourly-forecast{display:flex;gap:4px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;-ms-overflow-style:none}.hourly-forecast::-webkit-scrollbar{display:none}.track-content-grid{display:grid;grid-gap:24px;gap:24px;align-items:start}.track-content-main,.track-content-sidebar{min-width:0}@media (min-width:1024px){.track-content-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.sticky-ad-container{position:-webkit-sticky;position:sticky;top:120px}}.drivers-grid-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.drivers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.driver-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);height:100%}.driver-card-link:hover .driver-card{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.driver-card-avatar{flex-shrink:0;width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--color-bg-secondary);border:2px solid var(--color-border)}.driver-card-avatar img{width:100%;height:100%;object-fit:cover}.driver-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:var(--color-text-muted)}.driver-card-info{flex:1 1;min-width:0}.driver-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.driver-card-header h3{font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-card-number{font-size:1.125rem;font-weight:800;color:var(--color-accent-primary);font-style:italic}.driver-card-class{display:inline-block;font-size:.75rem;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:2px 8px;border-radius:var(--radius-sm);margin-bottom:6px}.driver-card-bio{font-size:.8125rem;color:var(--color-text-muted);display:-webkit-box;
  /*! autoprefixer: off */-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.empty-state{text-align:center;padding:48px;background:var(--color-bg-secondary);border-radius:var(--radius-md);color:var(--color-text-muted)}.empty-state i{font-size:3rem;margin-bottom:16px;opacity:.5}.event-card-link{display:block;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);overflow:hidden;margin-bottom:8px}.event-card-link:hover{border-color:var(--color-accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.event-card-link.today{border-color:var(--color-accent-primary);background:linear-gradient(90deg,rgba(225,6,0,.05),transparent)}.event-card-header{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--color-border)}.event-date-badge{display:flex;flex-direction:column;align-items:center;padding:4px 8px;background:var(--color-bg-secondary);border-radius:var(--radius-sm);min-width:45px}.event-date-badge.today{background:var(--color-accent-primary);color:#fff}.event-date-badge.today .event-day,.event-date-badge.today .event-month{color:#fff}.today-label{font-size:.4375rem;font-weight:800;letter-spacing:.02em;position:relative;top:-1px}.event-day{font-size:1rem;font-weight:700;line-height:1}.event-month{font-size:.5625rem;text-transform:uppercase;color:var(--color-text-muted)}.event-title-section{flex:1 1;min-width:0}.event-card-link h3{font-size:.875rem;font-weight:600;margin-bottom:2px}.event-time{font-size:.75rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.event-chevron{font-size:.875rem;color:var(--color-text-muted)}.event-card-footer{display:flex;gap:16px;padding:6px 10px;background:var(--color-bg-secondary);font-size:.75rem;color:var(--color-text-secondary)}.event-card-footer span{display:flex;align-items:center;gap:6px}@media (min-width:1024px){.event-card-link{margin-bottom:6px}.event-card-header{padding:6px 10px}.event-card-footer{padding:4px 10px;font-size:.6875rem}.event-date-badge{min-width:40px;padding:3px 6px}.event-day{font-size:.9375rem}}.track-info-section{padding:var(--space-lg) 0}.track-info-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:768px){.track-info-grid{grid-template-columns:repeat(2,1fr)}}.info-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md)}.info-card.full-width{grid-column:1/-1}.info-card h3{font-size:1rem;font-weight:600;margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-primary)}.info-card h3 i{color:var(--color-accent-primary)}.info-items{flex-direction:column}.info-item,.info-items{display:flex;gap:var(--space-sm)}.info-item{align-items:center;color:var(--color-text-secondary);font-size:.875rem}.info-item i{width:20px;color:var(--color-text-muted)}.info-item a{color:var(--color-accent-primary);text-decoration:none}.info-item a:hover{text-decoration:underline}.info-item.address p{margin:0;line-height:1.5}.pricing-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border)}.pricing-item:last-of-type{border-bottom:none}.pricing-item .price{font-weight:600;color:var(--color-accent-primary)}.pricing-notes{font-size:.75rem;color:var(--color-text-muted);margin-top:var(--space-sm);font-style:italic}.track-description{font-size:.9375rem;line-height:1.7;color:var(--color-text-secondary)}.info-card .btn-sm{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);font-size:.75rem}.events-tab-section{padding:var(--space-lg) 0}.events-tab-section h2{font-size:1.25rem;margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-sm)}.events-tab-section h2 i{color:var(--color-accent-primary)}.events-list-full{display:flex;flex-direction:column;gap:var(--space-sm)}.event-card-full{display:flex;align-items:center;gap:var(--space-sm);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);text-decoration:none;transition:all var(--transition-fast)}.event-card-full:hover{background:var(--color-bg-hover);border-color:var(--color-accent-primary)}.event-card-full.today{border-color:var(--color-accent-primary);background:rgba(229,62,62,.05)}.event-card-full .event-date-badge{min-width:48px;text-align:center;padding:var(--space-xs) var(--space-sm);background:var(--color-bg-secondary);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;flex-shrink:0}.event-card-full .event-date-badge.today{background:var(--color-accent-gradient)}.event-card-full .event-date-badge .event-day{font-size:1rem;font-weight:700}.event-card-full .event-date-badge .event-month{font-size:.625rem;text-transform:uppercase}.event-card-full .event-details{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.event-card-full .event-details h3{font-size:.875rem;font-weight:600;margin:0;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-card-full .event-description{display:none}.event-card-full .event-meta{display:flex;align-items:center;gap:var(--space-md);font-size:.6875rem;color:var(--color-text-muted)}.event-card-full .event-meta span{display:flex;align-items:center;gap:3px;white-space:nowrap}.event-card-full .event-meta i{font-size:.625rem}.event-card-full .event-arrow{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0}@media (max-width:480px){.event-card-full .event-meta{gap:var(--space-sm)}}