:root{--primary:#00C853;--primary-dark:#009624;--primary-light:#69f0ae;--primary-50:rgba(0,200,83,0.05);--primary-100:rgba(0,200,83,0.1);--primary-200:rgba(0,200,83,0.2);--primary:#007a3d;--primary-dark:#005f2f;--primary-light:#00964b;--primary-50:rgba(0,122,61,0.06);--primary-100:rgba(0,122,61,0.12);--primary-200:rgba(0,122,61,0.22);--secondary:#00695C;--secondary-dark:#004d40;--secondary-light:#33ab9f;--accent:#00E676;--accent-dark:#00b248;--accent-light:#66ffa6;--accent:#00873d;--accent-dark:#006b30;--accent-light:#22c55e;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--success:#059669;--warning:#d97706;--error:#dc2626;--info:#2563eb;--bg-primary:#ffffff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--text-primary:#111829;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-primary:#0f172a;--text-secondary:#334155;--text-tertiary:#475569;--text-inverse:#ffffff;--border-light:#e5e7eb;--border-dark:#d1d5db;--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 2px 4px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,0.25);--glass-bg:rgba(255,255,255,0.85);--glass-border:rgba(255,255,255,0.5);--glass-shadow:0 8px 32px rgba(0,0,0,0.08);--glass-blur:blur(20px);--font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.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;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--header-height:72px;--header-height-compact:60px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background-color:var(--bg-secondary);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin:0 0 var(--spacing-md);color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin:0 0 var(--spacing-md)}.gradient-text{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);padding:var(--spacing-lg)}.main-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:1050}body:not([data-page="search"]){padding-top:72px;display:flex;flex-direction:column;min-height:100vh}body:not([data-page="search"]) main{flex:1 0 auto}.main-header .navbar{background:rgba(255,255,255,0.85);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid rgba(229,231,235,0.4);padding:var(--spacing-md) 0;transition:all var(--transition-base);z-index:var(--z-fixed)}.main-header .navbar.scrolled{background:rgba(255,255,255,0.96) !important;box-shadow:var(--shadow-md);border-bottom-color:rgba(229,231,235,0.8)}.main-header.compact .navbar{padding:var(--spacing-sm) 0}.navbar-brand{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:700;font-size:var(--font-size-xl);color:var(--text-primary) !important}.navbar-brand img{height:42px !important;max-height:48px !important;width:auto !important;object-fit:contain !important}.navbar-brand .brand-icon{background:transparent !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;display:flex;align-items:center}.navbar-brand .highlight{color:var(--primary)}.navbar-nav .nav-link{color:var(--text-secondary);font-weight:500;padding:var(--spacing-sm) var(--spacing-md) !important;border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-xs);transition:all var(--transition-fast)}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--primary);background:var(--primary-50)}.navbar-nav .dropdown{position:relative}.navbar-nav .dropdown-menu{display:block;opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:all 0.2s ease;margin-top:0.35rem;border:1px solid rgba(0,200,83,0.12);border-radius:0.9rem;box-shadow:0 16px 40px rgba(15,23,42,0.12);padding:0.35rem}.navbar-nav .dropdown-menu.scrollable-menu{max-height:400px;overflow-y:auto}.navbar-nav .dropdown:hover>.dropdown-menu,.navbar-nav .dropdown.show>.dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.navbar-nav .dropdown-item{display:flex;align-items:center;gap:0.6rem;padding:0.7rem 0.9rem;border-radius:0.7rem;color:var(--text-secondary)}.navbar-nav .dropdown-item:hover,.navbar-nav .dropdown-item.active{color:var(--primary);background:var(--primary-50)}.navbar-nav .dropdown-toggle::after{margin-left:0.35rem;transition:transform 0.2s ease}.navbar-nav .dropdown:hover .dropdown-toggle::after{transform:rotate(180deg)}.nav-actions{display:flex;align-items:center;gap:var(--spacing-md)}.theme-toggle{width:40px;height:40px;border-radius:var(--radius-full);border:1px solid var(--border-light);background:var(--bg-primary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast)}.theme-toggle:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-50)}.nav-user .dropdown-toggle{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-primary);text-decoration:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.nav-user .dropdown-toggle:hover{background:var(--gray-100)}.nav-user .user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--gray-200);display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:var(--font-size-xl);color:var(--text-secondary)}.nav-user .user-avatar img{width:100%;height:100%;object-fit:cover}.nav-user .user-name{font-weight:500;font-size:var(--font-size-sm)}.header-search{flex:1;max-width:400px;margin:0 var(--spacing-xl)}.header-search .search-input-wrapper{display:flex;align-items:center;background:var(--gray-100);border-radius:var(--radius-full);padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-xs) var(--spacing-md);border:1px solid transparent;transition:all var(--transition-fast)}.header-search .search-input-wrapper:focus-within{background:var(--bg-primary);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.header-search .search-input-wrapper i{color:var(--text-tertiary);margin-right:var(--spacing-sm)}.header-search input{flex:1;border:none;background:transparent;outline:none;font-size:var(--font-size-sm);padding:var(--spacing-sm) 0}.navbar-toggler{border:none;padding:var(--spacing-sm);min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.toggler-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-lg);transition:all var(--transition-fast);border:1px solid transparent}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:white;border:none;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 100%);transform:translateY(-1px);box-shadow:var(--shadow-md);color:white}.btn-outline-primary{background:transparent;color:var(--primary);border:1px solid var(--primary)}.btn-outline-primary:hover{background:var(--primary);color:white}.btn-outline-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-dark)}.btn-outline-secondary:hover{background:var(--gray-100);color:var(--text-primary);border-color:var(--gray-300)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:var(--header-height);overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:-1}.hero-gradient{position:absolute;inset:0;background:linear-gradient(135deg,rgba(14,165,233,0.05) 0%,rgba(16,185,129,0.05) 100%)}.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,0.03) 1px,transparent 0);background-size:40px 40px}.hero-content{text-align:center;max-width:900px;margin:0 auto}.hero-badge{margin-bottom:var(--spacing-lg)}.hero-badge .badge-pill{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:var(--primary-100);color:var(--primary);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-full);font-weight:500;font-size:var(--font-size-sm)}.hero-title{font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:var(--spacing-lg)}.hero-subtitle{font-size:var(--font-size-xl);color:var(--text-secondary);max-width:600px;margin:0 auto var(--spacing-2xl)}.search-box-wrapper{max-width:700px;margin:0 auto}.search-box{padding:var(--spacing-lg);border-radius:var(--radius-2xl)}.search-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.search-tab{flex:1;padding:var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-lg);font-weight:500;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all var(--transition-fast);cursor:pointer}.search-tab.active{background:var(--primary);color:white}.search-tab:hover:not(.active){background:var(--gray-100)}.search-tab-content{display:none}.search-tab-content.active{display:block}.search-input-group{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.input-wrapper{flex:1;position:relative}.input-wrapper .search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--text-tertiary)}.input-wrapper .search-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) calc(var(--spacing-md) * 3);border:1px solid var(--border-dark);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast)}.input-wrapper .search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.btn-clear{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);padding:var(--spacing-xs)}.btn-search{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-lg);white-space:nowrap}.nearby-info{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--gray-100);border-radius:var(--radius-lg);color:var(--text-secondary)}.quick-filters{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.filter-chip{padding:var(--spacing-sm) var(--spacing-md);background:var(--gray-100);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;transition:all var(--transition-fast)}.filter-chip:hover{background:var(--gray-200)}.filter-chip.active{background:var(--primary-100);color:var(--primary)}.hero-stats{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xl);margin-top:var(--spacing-3xl)}.stat-item{text-align:center}.stat-number{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs)}.stat-divider{width:1px;height:40px;background:var(--border-light)}.scroll-indicator{position:absolute;bottom:var(--spacing-xl);left:50%;transform:translateX(-50%);color:var(--text-tertiary);animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.map-preview-section{background:var(--bg-primary);padding:var(--spacing-3xl) 0}.map-preview-wrapper{display:flex;height:600px;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-xl)}.map-preview{flex:1;position:relative;background:var(--gray-200)}.map-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#e0f2fe 0%,#d1fae5 100%);overflow:hidden}.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,0.03) 1px,transparent 1px);background-size:50px 50px}.map-markers .marker{position:absolute;width:40px;height:40px;background:var(--primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:white;box-shadow:var(--shadow-lg);animation:pulse 2s infinite}.map-markers .marker:nth-child(2){animation-delay:0.3s}.map-markers .marker:nth-child(3){animation-delay:0.6s}.map-markers .marker:nth-child(4){animation-delay:0.9s}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}.map-overlay{position:absolute;inset:0;background:rgba(255,255,255,0.8);display:flex;align-items:center;justify-content:center}.map-content{text-align:center}.map-content i{font-size:3rem;color:var(--primary);margin-bottom:var(--spacing-md)}.nearby-sidebar{width:400px;background:var(--bg-primary);padding:var(--spacing-lg);overflow-y:auto}.sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.sidebar-header h3,.sidebar-header h4{margin:0;display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg)}.sidebar-header .view-all{font-size:var(--font-size-sm);display:flex;display:inline-flex;align-items:center;gap:var(--spacing-xs);min-height:44px;min-width:44px;padding:6px 12px}.stations-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.station-card-skeleton{height:100px;background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:skeleton 1.5s infinite;border-radius:var(--radius-lg)}@keyframes skeleton{0%{background-position:200% 0}100%{background-position:-200% 0}}.features-section{padding:var(--spacing-3xl) 0}.section-header{text-align:center;max-width:600px;margin:0 auto var(--spacing-2xl)}.section-badge{display:inline-block;background:var(--primary-100);color:var(--primary);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--spacing-md)}.section-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-sm)}.section-subtitle{color:var(--text-secondary)}.feature-card{padding:var(--spacing-xl);text-align:center;height:100%;transition:all var(--transition-base)}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.feature-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--primary-100) 0%,var(--primary-50) 100%);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md);font-size:var(--font-size-xl);color:var(--primary)}.feature-card h4{margin-bottom:var(--spacing-sm)}.feature-card p{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.feature-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-weight:500;font-size:var(--font-size-sm)}.feature-link:hover{gap:var(--spacing-sm)}.popular-section{padding:var(--spacing-3xl) 0;background:var(--bg-primary)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl)}.section-header .header-content{text-align:left}.stations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.how-it-works-section{padding:var(--spacing-3xl) 0}.steps-container{display:flex;align-items:flex-start;justify-content:center;gap:var(--spacing-lg);max-width:1000px;margin:0 auto var(--spacing-2xl)}.step-card{text-align:center;padding:var(--spacing-xl);position:relative}.step-number{width:48px;height:48px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:var(--font-size-xl);margin:0 auto var(--spacing-md);position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(-50%)}.step-icon{width:80px;height:80px;background:var(--primary-50);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:var(--spacing-lg) auto var(--spacing-md);font-size:var(--font-size-2xl);color:var(--primary)}.step-card h4{margin-bottom:var(--spacing-sm)}.step-card p{color:var(--text-secondary);font-size:var(--font-size-sm)}.step-connector{display:flex;align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-xl)}.step-connector .connector-line{width:60px;height:2px;background:var(--gray-300)}.step-connector i{color:var(--gray-400)}.testimonials-section{padding:var(--spacing-3xl) 0;background:var(--bg-primary)}.testimonial-card{padding:var(--spacing-xl);height:100%}.testimonial-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.user-info{display:flex;align-items:center;gap:var(--spacing-md)}.user-avatar{width:50px;height:50px;border-radius:var(--radius-full);overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-details h5{margin:0;font-size:var(--font-size-base)}.user-details span{font-size:var(--font-size-sm);color:var(--text-secondary)}.rating{color:var(--accent)}.testimonial-text{color:var(--text-secondary);font-style:italic;margin-bottom:var(--spacing-md)}.testimonial-footer{text-align:right;color:var(--primary);opacity:0.3;font-size:var(--font-size-2xl)}.cta-section{padding:var(--spacing-3xl) 0}.cta-card{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:white;padding:var(--spacing-3xl);text-align:center;position:relative;overflow:hidden}.cta-content h2{color:white;margin-bottom:var(--spacing-md)}.cta-content p{opacity:0.9;max-width:500px;margin:0 auto var(--spacing-xl)}.cta-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.cta-buttons .btn-outline-light{border-color:rgba(255,255,255,0.5);color:white}.cta-buttons .btn-outline-light:hover{background:rgba(255,255,255,0.1);border-color:white}.cta-decoration{position:absolute;inset:0;overflow:hidden;pointer-events:none}.cta-decoration .decoration-circle{position:absolute;border-radius:50%;background:rgba(255,255,255,0.1)}.cta-decoration .decoration-circle:nth-child(1){width:200px;height:200px;top:-50px;left:-50px}.cta-decoration .decoration-circle:nth-child(2){width:150px;height:150px;bottom:-30px;right:-30px}.cta-decoration .decoration-circle:nth-child(3){width:80px;height:80px;top:50%;left:30%}.main-footer{background:var(--gray-900);color:var(--gray-300)}.footer-top{padding:var(--spacing-3xl) 0}.footer-brand{margin-bottom:var(--spacing-lg)}.footer-logo{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xl);font-weight:700;color:white;margin-bottom:var(--spacing-md)}.footer-logo .brand-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:white}.footer-logo .highlight{color:var(--primary)}.footer-brand p{color:var(--gray-400);margin-bottom:var(--spacing-lg)}.social-links{display:flex;gap:var(--spacing-sm)}.social-links a{width:36px;height:36px;background:var(--gray-800);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--gray-400);transition:all var(--transition-fast)}.social-links a:hover{background:var(--primary);color:white}.footer-links h5{color:white;font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.footer-links ul{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:var(--spacing-sm)}.footer-links a{color:var(--gray-400);transition:all var(--transition-fast)}.footer-links a:hover{color:white;padding-left:var(--spacing-xs)}.footer-bottom{padding:var(--spacing-lg) 0;border-top:1px solid var(--gray-800)}.footer-bottom-content{display:flex;align-items:center;justify-content:space-between}.footer-bottom p{margin:0;color:var(--gray-500);font-size:var(--font-size-sm)}.footer-bottom-links{display:flex;gap:var(--spacing-lg)}.footer-bottom-links a{color:var(--gray-500);font-size:var(--font-size-sm)}.footer-bottom-links a:hover{color:white}.premium-footer{background:linear-gradient(135deg,#07111f 0%,#0f172a 55%,#111827 100%);color:#cbd5e1;padding:44px 0 20px;border-top:1px solid rgba(255,255,255,0.08);position:relative;overflow:hidden}.premium-footer::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(0,200,83,0.2),transparent 36%);pointer-events:none}.footer-hero-panel{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.09);border-radius:1.25rem;padding:1.5rem 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 16px 45px rgba(2,8,23,0.18)}.footer-kicker{margin:0 0 0.35rem;font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--primary-light);font-weight:700}.footer-hero-panel h3{margin:0;color:#f8fafc;font-size:1.2rem;line-height:1.4}.footer-hero-btn{display:inline-flex;align-items:center;justify-content:center;padding:0.8rem 1.1rem;border-radius:999px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);color:#052e16;font-weight:700;box-shadow:0 10px 24px rgba(0,200,83,0.24);white-space:nowrap}.footer-hero-btn:hover{color:#052e16;transform:translateY(-2px)}.footer-brand-premium{margin-bottom:1rem}.footer-logo-premium{display:inline-flex;align-items:center;gap:0.75rem}.footer-desc{margin-top:0.75rem;font-size:0.95rem;line-height:1.7;color:#94a3b8;max-width:360px}.footer-socials{display:flex;gap:0.6rem;margin-top:0.5rem;flex-wrap:wrap}.footer-socials a{width:2.25rem;height:2.25rem;border-radius:50%;background:rgba(255,255,255,0.08);color:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:0.9rem;transition:all var(--transition-fast)}.footer-socials a:hover{background:var(--primary);color:#052e16;transform:translateY(-2px)}.footer-links-col h5{color:#f8fafc !important;font-size:0.95rem !important;font-weight:700 !important;margin-bottom:10px !important;letter-spacing:0.2px}.footer-links-col ul{list-style:none !important;padding:0 !important;margin:0 !important;display:block !important}.footer-links-col ul li{margin:0 !important;padding:0 !important;line-height:1.1 !important;display:block !important}.footer-links-col ul li a{color:#cbd5e1 !important;font-size:0.82rem !important;line-height:1.1 !important;display:block !important;padding:0 !important;margin:0 !important;transition:all var(--transition-fast);text-decoration:none}.footer-links-col ul li a:hover{color:var(--primary-light) !important;padding-left:4px !important}.footer-bottom-premium{margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.08);font-size:0.85rem;color:#94a3b8;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.5rem}.footer-bottom-links{display:flex;gap:1.2rem;flex-wrap:wrap}.footer-bottom-links a{color:#cbd5e1}.footer-bottom-links a:hover{color:var(--primary-light)}.back-to-top{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);width:44px;height:44px;background:var(--primary);color:white;border:none;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:all var(--transition-base);z-index:var(--z-fixed)}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:var(--primary-dark);transform:translateY(-3px)}@media (max-width:767.98px){.footer-hero-panel{flex-direction:column;align-items:flex-start}.footer-bottom-premium{flex-direction:column;text-align:center}}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.form-control,.form-select{padding:var(--spacing-md);border:1px solid var(--border-dark);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast);background:var(--bg-primary);color:var(--text-primary)}.form-control:focus,.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100)}.form-control::placeholder{color:var(--text-tertiary)}.form-hint{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--spacing-xs);display:block}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:calc(var(--spacing-md) * 3)}.toggle-password{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);padding:var(--spacing-xs);cursor:pointer}.toggle-password:hover{color:var(--text-secondary)}.checkbox-remember{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm)}.checkbox-remember input{display:none}.checkbox-remember .checkmark{width:20px;height:20px;border:2px solid var(--border-dark);border-radius:var(--radius-sm);position:relative;transition:all var(--transition-fast)}.checkbox-remember input:checked+.checkmark{background:var(--primary);border-color:var(--primary)}.checkbox-remember input:checked+.checkmark::after{content:'';position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.station-card-wrapper{border-radius:var(--radius-xl);overflow:hidden}.station-card{transition:all var(--transition-base)}.station-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.station-main{display:flex;align-items:flex-start;gap:var(--spacing-md)}.station-status{width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}.station-status.available{background:rgba(16,185,129,0.1);color:var(--success)}.station-status.busy{background:rgba(245,158,11,0.1);color:var(--warning)}.station-status.offline{background:rgba(239,68,68,0.1);color:var(--error)}.station-info{flex:1}.station-name{font-size:var(--font-size-lg);font-weight:600;margin:0 0 var(--spacing-xs)}.station-address{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-sm)}.station-meta{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.meta-item{font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;align-items:center;gap:var(--spacing-xs)}.meta-item i{color:var(--primary)}.btn-favorite{width:40px;height:40px;border-radius:var(--radius-full);border:none;background:var(--gray-100);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.btn-favorite:hover,.btn-favorite.active{background:rgba(239,68,68,0.1);color:var(--error)}.station-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.station-connectors{display:flex;gap:var(--spacing-xs)}.connector-badge{background:var(--gray-100);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.load-more-wrapper{text-align:center;padding:var(--spacing-lg) 0}.load-more{min-width:200px}.section-header-flex{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.section-header-flex h3{margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.text-success{color:var(--success) !important}.text-warning{color:var(--warning) !important}.text-danger{color:var(--error) !important}.text-info{color:var(--info) !important}.badge-soft{background:var(--primary-100);color:var(--primary);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.decoration-circle{position:absolute;border-radius:50%;background:var(--primary-100)}.transition-all{transition:all var(--transition-base)}.d-none{display:none !important}.auth-page body{background:var(--bg-secondary)}.auth-container{display:flex;min-height:100vh}.auth-branding{flex:1;background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--gray-200) 100%);padding:var(--spacing-3xl);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.branding-content{max-width:400px;text-align:center;position:relative;z-index:1}.auth-logo{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xl)}.auth-logo .brand-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:white}.auth-logo .highlight{color:var(--primary)}.branding-content h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}.branding-content p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.branding-features{display:flex;flex-direction:column;gap:var(--spacing-md);text-align:left;margin-bottom:var(--spacing-xl)}.branding-features .feature-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--glass-bg);border-radius:var(--radius-lg)}.branding-features .feature-item i{width:24px;color:var(--primary)}.auth-form-panel{width:500px;padding:var(--spacing-3xl);display:flex;flex-direction:column;justify-content:center;position:relative}.auth-form-panel .theme-toggle{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg)}.auth-form-wrapper{max-width:360px;margin:0 auto;width:100%;margin-top:50px}.auth-form-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-form-header h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.auth-form-header p{color:var(--text-secondary);margin:0}.auth-form .form-row{display:flex;gap:var(--spacing-md)}.auth-form .form-row>*{flex:1}.form-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.forgot-password{font-size:var(--font-size-sm);color:var(--primary)}.btn-auth{width:100%;margin-bottom:var(--spacing-lg)}.btn-loading{display:none}.auth-divider{position:relative;margin-bottom:var(--spacing-lg)}.auth-divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-light)}.auth-divider span{position:relative;background:var(--bg-primary);padding:0 var(--spacing-md);color:var(--text-tertiary);font-size:var(--font-size-sm)}.social-auth-buttons{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.btn-social{flex:1;background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md)}.btn-social:hover{background:var(--gray-200)}.btn-social img{width:20px;height:20px}.auth-footer-text{text-align:center}.auth-footer-text p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.auth-alert{padding:var(--spacing-md);background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.2);border-radius:var(--radius-lg);display:flex;align-items:center;gap:var(--spacing-md);color:var(--error);margin-bottom:var(--spacing-lg)}.auth-alert.success{background:rgba(16,185,129,0.1);border-color:rgba(16,185,129,0.2);color:var(--success)}.password-strength{margin-top:var(--spacing-sm)}.password-strength .strength-bar{height:4px;background:var(--gray-200);border-radius:var(--radius-full);transition:all var(--transition-base)}.password-strength .strength-bar.weak{width:25%;background:var(--error)}.password-strength .strength-bar.fair{width:50%;background:var(--warning)}.password-strength .strength-bar.good{width:75%;background:var(--info)}.password-strength .strength-bar.strong{width:100%;background:var(--success)}.password-strength .strength-text{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:var(--spacing-xs)}.dashboard-page body{background:var(--bg-secondary)}.dashboard-main{padding-top:calc(var(--header-height-compact)+var(--spacing-xl));padding-bottom:var(--spacing-3xl)}.dashboard-welcome{margin-bottom:var(--spacing-xl)}.welcome-card{background:linear-gradient(135deg,#f0fdf4 0%,#ecfeff 48%,#f8fafc 100%);padding:1.6rem;border:1px solid rgba(0,200,83,0.14);box-shadow:0 18px 45px rgba(15,23,42,0.08)}.welcome-content{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.user-greeting{display:flex;align-items:center;gap:var(--spacing-lg);flex:1}.welcome-badge{display:inline-flex;align-items:center;gap:0.35rem;padding:0.35rem 0.7rem;border-radius:999px;background:rgba(0,200,83,0.12);color:var(--primary-dark);font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:0.55rem}.user-avatar-lg{width:72px;height:72px;border-radius:var(--radius-full);overflow:hidden;border:3px solid white;box-shadow:0 10px 25px rgba(0,0,0,0.15)}.user-avatar-lg img{width:100%;height:100%;object-fit:cover}.greeting-text h1{margin:0 0 var(--spacing-xs);font-size:clamp(1.4rem,2vw,1.8rem)}.greeting-text p{margin:0;color:var(--text-secondary);max-width:560px}.welcome-actions{display:flex;gap:0.75rem;flex-wrap:wrap}.quick-search .search-wrapper{display:flex;background:var(--bg-primary);border-radius:var(--radius-full);padding:var(--spacing-xs);box-shadow:var(--shadow-sm)}.quick-search .search-wrapper i{margin:auto 0 auto var(--spacing-md);color:var(--text-tertiary)}.quick-search .search-wrapper input{flex:1;border:none;background:transparent;padding:var(--spacing-sm) var(--spacing-md);outline:none}.quick-search .search-wrapper .btn{flex-shrink:0}.dashboard-section{margin-bottom:var(--spacing-xl)}.dashboard-stats-row{margin-bottom:1rem}.dashboard-section h3{font-size:var(--font-size-lg)}.dashboard-stats .stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);padding:1.2rem;position:relative;overflow:hidden}.stat-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,200,83,0.06),transparent 55%);pointer-events:none}.stat-card-top{display:flex;align-items:center;justify-content:space-between;width:100%}.stat-chip{display:inline-flex;align-items:center;justify-content:center;padding:0.28rem 0.6rem;border-radius:999px;background:rgba(0,200,83,0.1);color:var(--primary-dark);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em}.stat-card-featured{border:1px solid rgba(0,200,83,0.18);box-shadow:0 14px 34px rgba(15,23,42,0.08)}.stat-card .stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.stat-card .stat-icon.favorites{background:rgba(239,68,68,0.1);color:#ef4444}.stat-card .stat-icon.reviews{background:rgba(245,158,11,0.1);color:var(--warning)}.stat-card .stat-icon.sessions{background:rgba(14,165,233,0.1);color:var(--primary)}.stat-card .stat-icon.saved{background:rgba(16,185,129,0.1);color:var(--success)}.stat-details .stat-value{display:block;font-size:1.7rem;font-weight:800;line-height:1;color:var(--text-primary)}.stat-details .stat-label{color:var(--text-secondary);font-size:0.92rem;font-weight:600}.stat-footnote{margin:0;font-size:0.82rem;color:var(--text-tertiary);line-height:1.5}.station-row,.review-row{padding:var(--spacing-md);border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.station-row:last-child,.review-row:last-child{border-bottom:none}.station-row .station-info{flex:1;min-width:0}.station-row .station-name{font-size:var(--font-size-base);margin:0 0 var(--spacing-xs)}.station-row .station-address{font-size:var(--font-size-xs);margin:0}.station-row .station-meta{margin-top:var(--spacing-xs)}.station-row .station-meta span{font-size:var(--font-size-xs)}.station-row .station-actions{display:flex;align-items:center;gap:var(--spacing-md)}.station-row .status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full)}.station-row .status.available{background:rgba(16,185,129,0.1);color:var(--success)}.station-row .status.busy{background:rgba(245,158,11,0.1);color:var(--warning)}.review-row{flex-direction:column;align-items:flex-start}.review-station{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.review-station img{width:48px;height:48px;border-radius:var(--radius-md);object-fit:cover}.review-station h4{font-size:var(--font-size-sm);margin:0}.review-date{font-size:var(--font-size-xs);color:var(--text-tertiary)}.review-row{align-items:center}.review-row .review-rating{display:flex;color:var(--accent);font-size:var(--font-size-xs)}.review-row .review-preview{flex:1;min-width:0}.review-row .review-preview p{margin:0;font-size:var(--font-size-xs);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-chart{margin-bottom:var(--spacing-lg)}.chart-placeholder .chart-bars{display:flex;align-items:flex-end;justify-content:space-between;height:150px;padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-light);margin-bottom:var(--spacing-sm)}.chart-bar{flex:1;max-width:50px;background:linear-gradient(180deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin:0 var(--spacing-xs);position:relative}.chart-bar .bar-value{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:var(--font-size-xs);color:var(--text-secondary)}.chart-labels{display:flex;justify-content:space-around}.chart-labels span{font-size:var(--font-size-xs);color:var(--text-tertiary)}.activity-stats{display:flex;gap:var(--spacing-xl)}.activity-stat{text-align:center}.activity-stat .stat-label{display:block;font-size:var(--font-size-xs);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.activity-stat .stat-value{font-size:var(--font-size-lg);font-weight:600}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.action-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);color:var(--text-primary);text-align:center;transition:all var(--transition-fast)}.action-card:hover{background:var(--primary-50);color:var(--primary)}.action-card i{font-size:var(--font-size-xl)}.action-card span{font-size:var(--font-size-sm);font-weight:500}.vehicle-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.vehicle-image img{width:100px;border-radius:var(--radius-md)}.vehicle-info h4,.vehicle-details h4{margin:0 0 var(--spacing-xs);font-size:var(--font-size-base)}.vehicle-specs{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.vehicle-specs .spec-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-secondary)}.vehicle-note{font-size:var(--font-size-xs);color:var(--text-tertiary);margin:var(--spacing-sm) 0 0}.recommended-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-radius:var(--radius-lg);transition:background var(--transition-fast)}.recommended-item:hover{background:var(--bg-tertiary)}.recommended-item h4{font-size:var(--font-size-sm);margin:0 0 var(--spacing-xs)}.recommended-item p{font-size:var(--font-size-xs);color:var(--text-secondary);margin:0}.recommended-item .item-meta{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.recommended-item .rating,.recommended-item .speed{font-size:var(--font-size-xs);color:var(--text-secondary)}.recommended-item .item-distance{font-size:var(--font-size-sm);font-weight:500;color:var(--primary)}.tips-card{background:linear-gradient(135deg,var(--primary-50) 0%,var(--primary-100) 100%);padding:var(--spacing-lg);text-align:center}.tips-card .tips-icon{width:48px;height:48px;background:var(--primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:white;margin:0 auto var(--spacing-md)}.tips-card h4{margin-bottom:var(--spacing-sm);color:var(--primary-dark)}.tips-card p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.search-page body{background:var(--bg-primary)}.search-main{display:flex;height:100vh;padding-top:var(--header-height-compact)}.map-container{flex:1;position:relative}.map-view{position:absolute;inset:0;background:var(--gray-200)}.map-controls{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-xs);background:var(--glass-bg);padding:var(--spacing-sm);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.map-control-btn{width:36px;height:36px;background:var(--bg-primary);border:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast)}.map-control-btn:hover,.map-control-btn.active{background:var(--primary);color:white}.map-legend{position:absolute;bottom:var(--spacing-lg);left:var(--spacing-lg);background:var(--glass-bg);padding:var(--spacing-md);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.map-legend h6{font-size:var(--font-size-xs);margin:0 0 var(--spacing-sm);color:var(--text-secondary)}.legend-items{display:flex;flex-direction:column;gap:var(--spacing-xs)}.legend-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs)}.legend-marker{width:12px;height:12px;border-radius:var(--radius-full)}.legend-marker.available{background:var(--success)}.legend-marker.busy{background:var(--warning)}.legend-marker.fast{background:var(--primary)}.legend-marker.offline{background:var(--error)}.search-sidebar{width:420px;background:var(--bg-primary);border-left:1px solid var(--border-light);display:flex;flex-direction:column;overflow:hidden}.search-sidebar .sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);margin-top:30px}.search-sidebar .header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.search-sidebar .header-top h3{margin:0;font-size:var(--font-size-lg);display:flex;align-items:center;gap:var(--spacing-sm)}.sidebar-toggle{width:32px;height:32px;background:var(--bg-tertiary);border:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.location-input-wrapper{display:flex;align-items:center;background:var(--bg-tertiary);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-md)}.location-input-wrapper i{color:var(--text-tertiary);margin-right:var(--spacing-sm)}.location-input-wrapper input{flex:1;border:none;background:transparent;outline:none}.btn-location{background:none;border:none;color:var(--primary);padding:var(--spacing-xs)}.filters-section{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);overflow-y:auto}.filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.filter-header h5{margin:0;font-size:var(--font-size-base);display:flex;align-items:center;gap:var(--spacing-sm)}.btn-clear-filters{background:none;border:none;color:var(--primary);font-size:var(--font-size-sm);cursor:pointer}.filter-group{margin-bottom:var(--spacing-lg)}.filter-label{display:block;font-weight:500;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.checkbox-card{display:block;cursor:pointer}.checkbox-card input{display:none}.checkbox-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-lg);text-align:center;font-size:var(--font-size-xs);transition:all var(--transition-fast)}.checkbox-card input:checked+.checkbox-content,.checkbox-content.selected{background:var(--primary-50);border-color:var(--primary);color:var(--primary)}.availability-options{display:flex;gap:var(--spacing-sm)}.radio-card{flex:1;cursor:pointer}.radio-card input{display:none}.radio-content{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-xs);transition:all var(--transition-fast)}.radio-card input:checked+.radio-content,.radio-content.selected{background:var(--primary-50);border-color:var(--primary)}.range-slider{width:100%}.slider{width:100%;height:6px;border-radius:var(--radius-full);background:var(--gray-200);outline:none;-webkit-appearance:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:var(--radius-full);background:var(--primary);cursor:pointer;box-shadow:var(--shadow-sm)}.range-labels{display:flex;justify-content:space-between;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-tertiary)}.amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs)}.amenity-tag{display:block;cursor:pointer}.amenity-tag input{display:none}.amenity-tag span{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:var(--font-size-xs);transition:all var(--transition-fast)}.amenity-tag input:checked+span{background:var(--primary-50);color:var(--primary)}.btn-apply-filters{width:100%}.search-results-section{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.results-count{font-size:var(--font-size-sm);color:var(--text-secondary)}.stations-list-container .station-card{margin-bottom:var(--spacing-md)}.station-details-main body{background:var(--bg-secondary)}.breadcrumb-section{padding:var(--spacing-lg) 0;padding-top:calc(var(--header-height-compact)+var(--spacing-lg))}.breadcrumb{background:transparent;padding:0;margin:0}.breadcrumb-item a{color:var(--text-secondary);font-size:var(--font-size-sm)}.breadcrumb-item.active{color:var(--text-tertiary);font-size:var(--font-size-sm)}.station-header-section{margin-bottom:var(--spacing-xl)}.station-header-card{padding:var(--spacing-xl)}.station-status-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.status-badge.available{background:rgba(16,185,129,0.1);color:var(--success)}.status-badge.busy{background:rgba(245,158,11,0.1);color:var(--warning)}.status-badge.offline{background:rgba(239,68,68,0.1);color:var(--error)}.header-actions{display:flex;gap:var(--spacing-xs)}.btn-action{width:36px;height:36px;background:var(--bg-tertiary);border:none;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast)}.btn-action:hover{background:var(--gray-200);color:var(--text-primary)}.station-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-sm)}.station-location{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.station-rating-section{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.rating-stars{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--accent)}.rating-number{font-size:var(--font-size-xl);font-weight:700;margin-left:var(--spacing-xs)}.rating-count{color:var(--text-secondary);font-size:var(--font-size-sm)}.station-network{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.network-badge,.open-status{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary)}.station-tags{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.station-tags .tag{background:var(--bg-tertiary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.quick-info-card{padding:var(--spacing-lg)}.quick-info-card h4{margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-base)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-item{display:flex;align-items:center;gap:var(--spacing-sm)}.info-icon{width:40px;height:40px;background:var(--primary-50);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--primary)}.info-content .info-label{display:block;font-size:var(--font-size-xs);color:var(--text-tertiary)}.info-content .info-value{font-weight:600}.quick-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.gallery-section{margin-bottom:var(--spacing-xl)}.gallery-grid{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.gallery-main{flex:1;min-width:300px}.gallery-main img{width:100%;border-radius:var(--radius-xl);object-fit:cover;height:300px}.gallery-thumbnails{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.thumbnail{width:70px;height:70px;border-radius:var(--radius-lg);overflow:hidden;border:2px solid transparent;cursor:pointer;transition:border-color var(--transition-fast)}.thumbnail.active{border-color:var(--primary)}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail.view-all{background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600}.details-section h3{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.details-tabs .nav-tabs{border-bottom:1px solid var(--border-light);margin-bottom:var(--spacing-lg)}.details-tabs .nav-tabs .nav-link{color:var(--text-secondary);border:none;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.details-tabs .nav-tabs .nav-link.active{color:var(--primary);background:var(--primary-50);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.connectors-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.connector-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.connector-item .connector-status{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.connector-item .connector-status.available{background:rgba(16,185,129,0.1);color:var(--success)}.connector-item .connector-status.busy{background:rgba(245,158,11,0.1);color:var(--warning)}.connector-item .connector-icon{width:40px;height:40px;background:var(--bg-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--primary)}.connector-info{flex:1}.connector-type{display:block;font-weight:500;font-size:var(--font-size-sm)}.connector-speed{font-size:var(--font-size-xs);color:var(--text-secondary)}.connector-availability span{font-size:var(--font-size-xs)}.hours-list{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.hours-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-light)}.hours-row .day{font-weight:500}.hours-row .time.open{color:var(--success)}.amenities-grid-detail{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.amenities-grid-detail .amenity-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.amenities-grid-detail .amenity-item i{color:var(--primary);font-size:var(--font-size-lg)}.amenities-grid-detail .amenity-item span{font-size:var(--font-size-xs)}.mini-map-section{margin-bottom:var(--spacing-xl)}.mini-map{height:200px;border-radius:var(--radius-xl);overflow:hidden;background:var(--gray-200);margin-bottom:var(--spacing-md);position:relative}.mini-map .map-marker.center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;background:var(--primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:white;box-shadow:var(--shadow-lg)}.location-details address{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.location-details address i{padding-top:3px;color:var(--primary)}.location-actions{display:flex;gap:var(--spacing-sm)}.reviews-section h3{display:flex;align-items:center;gap:var(--spacing-sm)}.rating-summary{display:flex;gap:var(--spacing-2xl);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-xl);margin-bottom:var(--spacing-xl)}.overall-rating{text-align:center}.rating-big{font-size:3rem;font-weight:800;line-height:1}.rating-bars{flex:1}.rating-bar-row{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);margin-bottom:var(--spacing-xs)}.rating-bar{flex:1;height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}.rating-bar-fill{height:100%;background:var(--accent);border-radius:var(--radius-full)}.review-item{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light)}.review-item:last-child{border-bottom:none}.review-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.reviewer-info{display:flex;align-items:center;gap:var(--spacing-md)}.reviewer-avatar{width:44px;height:44px;border-radius:var(--radius-full);object-fit:cover}.reviewer-name{font-size:var(--font-size-sm);margin:0}.reviewer-meta{font-size:var(--font-size-xs);color:var(--text-tertiary)}.review-rating{color:var(--accent);font-size:var(--font-size-sm)}.review-date{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-bottom:var(--spacing-sm)}.review-content p{margin:0;font-size:var(--font-size-sm);line-height:1.6}.review-footer{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.btn-helpful,.btn-reply{background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-xs);display:inline-flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.btn-helpful:hover,.btn-reply:hover{color:var(--primary)}.pricing-card,.contact-card,.nearby-card,.safety-card{margin-bottom:var(--spacing-lg)}.pricing-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.pricing-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-light)}.pricing-row:last-child{border-bottom:none}.pricing-label{color:var(--text-secondary);font-size:var(--font-size-sm)}.pricing-value{font-weight:500;font-size:var(--font-size-sm)}.pricing-note{margin-top:var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-tertiary);display:flex;align-items:center;gap:var(--spacing-xs)}.contact-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-sm)}.nearby-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.nearby-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:background var(--transition-fast)}.nearby-item:hover{background:var(--bg-tertiary)}.nearby-name{font-size:var(--font-size-sm);font-weight:500;margin:0}.nearby-distance{font-size:var(--font-size-xs);color:var(--text-tertiary)}.nearby-status{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full)}.nearby-status.available{background:rgba(16,185,129,0.1);color:var(--success)}.nearby-status.busy{background:rgba(245,158,11,0.1);color:var(--warning)}.safety-items{display:flex;flex-direction:column;gap:var(--spacing-sm)}.safety-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.safety-item i{color:var(--success)}.favorites-main{padding-top:calc(var(--header-height-compact)+var(--spacing-xl));padding-bottom:var(--spacing-3xl)}.page-header-section{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);margin-top:15px}.page-header h1{margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-sm)}.page-header p{color:var(--text-secondary);margin:0}.page-actions{display:flex;gap:var(--spacing-md)}.view-toggle{display:flex;background:var(--bg-tertiary);padding:var(--spacing-xs);border-radius:var(--radius-md)}.btn-toggle{width:40px;height:40px;background:transparent;border:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast)}.btn-toggle.active{background:var(--bg-primary);color:var(--primary);box-shadow:var(--shadow-sm)}.filters-bar{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--glass-bg);border-radius:var(--radius-xl);margin-bottom:var(--spacing-xl)}.filter-search{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;max-width:300px;background:var(--bg-tertiary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg)}.filter-search i{color:var(--text-tertiary)}.filter-search input{flex:1;border:none;background:transparent;outline:none}.filter-options{display:flex;align-items:center;gap:var(--spacing-md)}.filter-tags{display:flex;gap:var(--spacing-xs)}.filter-tag{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);border:none;border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filter-tag.active{background:var(--primary);color:white}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.favorite-card{border-radius:var(--radius-xl);overflow:hidden;display:flex;flex-direction:column}.favorite-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md)}.favorite-image{position:relative;height:180px;overflow:hidden}.favorite-image img{width:100%;height:100%;object-fit:cover}.favorite-image .network-badge{position:absolute;bottom:var(--spacing-sm);left:var(--spacing-sm);background:rgba(0,0,0,0.6);color:white;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.favorite-content{padding:var(--spacing-md);flex:1}.favorite-notes{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);margin-top:var(--spacing-sm)}.favorite-notes i{color:var(--primary)}.favorite-notes span{font-size:var(--font-size-xs);color:var(--text-secondary);font-style:italic}.favorite-footer{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);padding-top:0}.favorite-footer .btn{flex:1}.btn-remove-favorite{background:none;border:none;color:var(--text-tertiary);padding:var(--spacing-sm)}.btn-remove-favorite:hover{color:var(--error)}.add-new-card{background:var(--bg-tertiary);border:2px dashed var(--border-dark);display:flex;align-items:center;justify-content:center;min-height:300px}.add-new-card:hover{border-color:var(--primary);background:var(--primary-50)}.add-new-content{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.add-icon{width:64px;height:64px;background:var(--bg-secondary);border:2px solid var(--border-dark);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-md);font-size:var(--font-size-2xl)}.favorites-empty{text-align:center;padding:var(--spacing-3xl)}.empty-content .empty-icon{width:80px;height:80px;background:var(--bg-tertiary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg);font-size:var(--font-size-3xl);color:var(--text-tertiary)}.empty-content h3{margin-bottom:var(--spacing-sm)}.empty-content p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.station-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:0.8rem;font-weight:600}.station-status.available{background:rgba(0,200,83,0.12);color:#00C853}.station-status.busy{background:rgba(255,152,0,0.12);color:#ff9800}.station-status.offline{background:rgba(244,67,54,0.12);color:#f44336}.station-status.available{background:rgba(0,122,61,0.12);color:#007a3d}.station-status.busy{background:rgba(180,83,9,0.12);color:#b45309}.station-status.offline{background:rgba(220,38,38,0.12);color:#dc2626}.station-connectors{display:flex;gap:6px;margin-top:8px}.connector-tag{background:rgba(0,0,0,0.05);padding:2px 8px;border-radius:4px;font-size:0.75rem;font-weight:600;color:#475569}.station-meta{display:flex;gap:12px;font-size:0.85rem;color:#64748b;margin:8px 0}.glass-card{background:#ffffff;border:1px solid #e2e8f0;box-shadow:0 4px 15px rgba(0,0,0,0.04);transition:transform 0.2s,box-shadow 0.2s}.glass-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px rgba(0,0,0,0.08)}.favorites-grid.list-view{grid-template-columns:1fr !important}.favorites-grid.list-view .favorite-card{flex-direction:row;align-items:center}.favorites-grid.list-view .favorite-image{width:220px;height:160px;flex-shrink:0}.favorites-grid.list-view .favorite-footer{padding-top:var(--spacing-md)}.profile-main{padding-top:calc(var(--header-height-compact)+var(--spacing-xl));padding-bottom:var(--spacing-3xl)}.profile-sidebar{position:sticky;top:calc(var(--header-height-compact)+var(--spacing-lg))}.profile-avatar-section{text-align:center;padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-light);margin-bottom:var(--spacing-lg)}.avatar-wrapper{position:relative;display:inline-block;margin-bottom:var(--spacing-md)}.avatar-wrapper img{width:100px;height:100px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--primary)}.btn-change-avatar{position:absolute;bottom:0;right:0;width:32px;height:32px;background:var(--primary);color:white;border:none;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.profile-name{margin:0 0 var(--spacing-xs);font-size:var(--font-size-lg)}.profile-email{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.member-since{font-size:var(--font-size-xs);color:var(--text-tertiary)}.profile-nav{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.profile-nav .nav-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-lg);color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm)}.profile-nav .nav-item:hover,.profile-nav .nav-item.active{background:var(--primary-50);color:var(--primary)}.profile-stats{display:flex;justify-content:space-around;padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.profile-stats .stat{text-align:center}.profile-stats .stat-value{display:block;font-size:var(--font-size-xl);font-weight:700}.profile-stats .stat-label{font-size:var(--font-size-xs);color:var(--text-secondary)}.profile-section{margin-bottom:var(--spacing-xl)}.profile-section .section-header{margin-bottom:var(--spacing-xl)}.profile-section .section-header h2{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.profile-section .section-header p{color:var(--text-secondary);margin:0}.profile-form .form-actions{display:flex;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.vehicle-info-card{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-xl);margin-bottom:var(--spacing-lg)}.vehicle-main{display:flex;align-items:center;gap:var(--spacing-lg)}.vehicle-main .vehicle-image img{width:120px;border-radius:var(--radius-lg)}.vehicle-details h4{margin:0 0 var(--spacing-xs)}.vehicle-details .vehicle-year{color:var(--text-tertiary);font-size:var(--font-size-sm);margin:0 0 var(--spacing-sm)}.vehicle-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.add-vehicle-section{padding:var(--spacing-md);border:1px dashed var(--border-dark);border-radius:var(--radius-lg);text-align:center}.add-vehicle-section h4{margin-bottom:var(--spacing-sm);font-size:var(--font-size-base)}.security-options,.notification-options,.privacy-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.security-item,.notification-item,.privacy-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg)}.security-info h4,.notification-info h4,.privacy-info h4{font-size:var(--font-size-base);margin:0 0 var(--spacing-xs)}.security-info p,.notification-info p,.privacy-info p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.toggle-switch{position:relative;width:48px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--gray-300);border-radius:var(--radius-full);transition:var(--transition-fast)}.toggle-switch .slider::before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:white;border-radius:var(--radius-full);transition:var(--transition-fast)}.toggle-switch input:checked+.slider{background:var(--primary)}.toggle-switch input:checked+.slider::before{transform:translateX(22px)}.danger-zone{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:rgba(239,68,68,0.05);border:1px solid rgba(239,68,68,0.2);border-radius:var(--radius-lg)}.danger-zone h4{color:var(--error);margin-bottom:0}.danger-action{display:flex;align-items:center;justify-content:space-between}.danger-action h5{margin:0 0 var(--spacing-xs);font-size:var(--font-size-sm)}.danger-action p{margin:0;font-size:var(--font-size-xs);color:var(--text-secondary)}.session-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--border-light)}.session-item:last-child{border-bottom:none}.session-icon{width:40px;height:40px;background:var(--bg-tertiary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.session-info{flex:1}.session-info h6{margin:0;font-size:var(--font-size-sm)}.session-info p{margin:0;font-size:var(--font-size-xs);color:var(--text-tertiary)}.badge-current{background:var(--success);color:white;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.star-rating-input{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:var(--spacing-xs)}.star-rating-input input{display:none}.star-rating-input label{cursor:pointer;font-size:var(--font-size-xl);color:var(--gray-300);transition:color var(--transition-fast)}.star-rating-input label:hover,.star-rating-input label:hover~label,.star-rating-input input:checked~label{color:var(--accent)}.photo-upload-area{border:2px dashed var(--border-dark);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.photo-upload-area:hover{border-color:var(--primary);color:var(--primary)}.photo-upload-area i{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm);display:block}.photo-upload-area input{opacity:0;position:absolute;cursor:pointer;width:100%;height:100%}.leaflet-container{font-family:var(--font-family);z-index:1}.leaflet-popup-content-wrapper{border-radius:var(--radius-lg) !important;box-shadow:var(--shadow-xl) !important;padding:0}.leaflet-popup-content{margin:0 !important;min-width:220px}.leaflet-popup-tip{box-shadow:var(--shadow-md) !important}.station-marker,.user-marker{background:transparent !important;border:none !important}.custom-marker{background:transparent;border:none}.marker-pulse{animation:marker-pulse 2s infinite}@keyframes marker-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:0.7}}#mapPreview,#searchMap,#miniMap{min-height:300px}#mapPreview{height:100%}#searchMap{height:calc(100vh - var(--header-height-compact))}#miniMap{height:200px}[data-theme="dark"] .leaflet-tile{filter:brightness(0.8) contrast(1.1)}[data-theme="dark"] .leaflet-popup-content-wrapper{background:var(--bg-primary);color:var(--text-primary)}[data-theme="dark"] .leaflet-popup-tip{background:var(--bg-primary)}.map-legend{z-index:500}.map-controls{z-index:500}.btn,.nav-link,.filter-chip,.map-btn,.action-btn{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.badge.bg-success-subtle,.section-badge-premium{color:#007730 !important}*{backface-visibility:hidden}