@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap";.live-monitoring{padding:20px}.live-monitoring h2{color:#0f172a;margin-bottom:30px}.ports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.port-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;border:2px solid #E5E7EB}.port-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #F3F4F6}.port-header h3{color:#0f172a;margin:0}.port-controls{display:flex;gap:8px}.btn-on,.btn-off{padding:6px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s}.btn-on{background:#10b981;color:#fff}.btn-on:hover{background:#059669}.btn-off{background:#ef4444;color:#fff}.btn-off:hover{background:#dc2626}.meter-data{display:grid;gap:12px;margin-bottom:15px}.meter-item{display:flex;justify-content:space-between;padding:10px;background:#f9fafb;border-radius:6px}.meter-item .label{color:#6b7280;font-weight:500}.meter-item .value{color:#0f172a;font-weight:700;font-size:16px}.last-update{text-align:center;color:#9ca3af;font-size:13px;margin-top:10px}@media (max-width: 768px){.ports-grid{grid-template-columns:1fr}}:root{--primary:#10B981;--primary-dark:#059669;--secondary:#3B82F6;--accent:#F59E0B;--dark:#0F172A;--gray:#64748B;--light:#F1F5F9;--white:#FFFFFF;--gradient:linear-gradient(135deg,#10B981 0%,#3B82F6 100%);--shadow:0 4px 20px rgba(0,0,0,.1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;color:var(--dark);background:var(--white);overflow-x:hidden}.app{min-height:100vh}.navbar{position:fixed;top:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 20px #0000000d;z-index:1000;transition:all .3s ease}.navbar.scrolled{box-shadow:0 4px 30px #0000001a}.nav-container{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:800;color:var(--dark);text-decoration:none}.logo-icon{font-size:2rem;animation:pulse 2s infinite}.logo-highlight{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.menu-toggle{display:none;flex-direction:column;gap:.3rem;background:none;border:none;cursor:pointer}.menu-toggle span{width:25px;height:3px;background:var(--dark);transition:all .3s}.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}.nav-links a{text-decoration:none;color:var(--dark);font-weight:600;font-size:.95rem;transition:color .3s;position:relative}.nav-links a:hover{color:var(--primary)}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--primary);transition:width .3s}.nav-links a:hover:after{width:100%}.btn-cta{background:var(--gradient)!important;color:#fff!important;padding:.6rem 1.5rem;border-radius:50px}.btn-cta:after{display:none}.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:8rem 5% 4rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;position:relative;overflow:hidden}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;opacity:.1}.electric-lines{position:absolute;width:100%;height:100%;background:repeating-linear-gradient(90deg,#10B981 0px,transparent 2px,transparent 100px);animation:slide 20s linear infinite}@keyframes slide{0%{transform:translate(0)}to{transform:translate(100px)}}.hero-badge{display:inline-block;padding:.5rem 1.5rem;background:#10b98133;border:1px solid var(--primary);border-radius:50px;font-size:.9rem;font-weight:600;margin-bottom:1.5rem;animation:fadeInUp .8s ease}.hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1.2;margin-bottom:1.5rem;animation:fadeInUp .8s ease .2s both}.gradient-text{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.2rem;color:#fffc;margin-bottom:2rem;line-height:1.8;animation:fadeInUp .8s ease .4s both}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;animation:fadeInUp .8s ease .6s both}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;border-radius:50px;font-weight:600;text-decoration:none;transition:all .3s;border:none;cursor:pointer;font-size:1rem}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 30px #10b9814d}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 15px 40px #10b98166}.btn-secondary{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3)}.btn-secondary:hover{background:#ffffff1a;border-color:#fff}.arrow,.play-icon{transition:transform .3s}.btn:hover .arrow{transform:translate(5px)}.btn:hover .play-icon{transform:scale(1.2)}.hero-stats{display:flex;gap:3rem;flex-wrap:wrap;animation:fadeInUp .8s ease .8s both}.stat-item{text-align:center}.stat-number{font-size:2.5rem;font-weight:800;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{color:#ffffffb3;font-size:.9rem;margin-top:.5rem}.hero-image{position:relative;animation:fadeInRight 1s ease;width:100px;max-width:30%;height:auto}.charging-animation{width:300px;height:300px;position:relative;margin:0 auto}.bike-icon,.charging-bolt,.charging-station{font-size:4rem;position:absolute;animation:float 3s ease-in-out infinite}.bike-icon{top:50%;left:0;transform:translate(-50%,-50%)}.charging-bolt{top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;animation:pulse 2s infinite}.charging-station{top:50%;right:0;transform:translate(50%,-50%)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.section-header{text-align:center;max-width:800px;margin:0 auto 4rem}.section-badge{display:inline-block;padding:.5rem 1.5rem;background:#10b9811a;color:var(--primary);border-radius:50px;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem}.section-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--dark);margin-bottom:1rem}.section-subtitle{font-size:1.1rem;color:var(--gray);line-height:1.8}.about,.how-it-works,.clients,.pricing,.contact{padding:6rem 5%}.about{background:var(--white)}.image-placeholder{width:100%;aspect-ratio:1;background:var(--gradient);border-radius:20px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.charger-icon{font-size:8rem;filter:drop-shadow(0 10px 30px rgba(0,0,0,.3))}.energy-pulse{position:absolute;width:100%;height:100%;border-radius:20px;border:3px solid var(--primary);animation:energyPulse 2s infinite}@keyframes energyPulse{0%{transform:scale(.9);opacity:1}to{transform:scale(1.1);opacity:0}}.about-features{display:grid;grid-template-columns:1fr;gap:1.5rem}.feature-card{display:flex;gap:1.5rem;padding:1.5rem;background:var(--light);border-radius:15px;transition:transform .3s,box-shadow .3s}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.feature-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.feature-icon.green{background:#10b9811a}.feature-icon.blue{background:#3b82f61a}.feature-icon.orange{background:#f59e0b1a}.feature-icon.purple{background:#8b5cf61a}.feature-content h3{font-size:1.2rem;color:var(--dark);margin-bottom:.5rem}.feature-content p{color:var(--gray);line-height:1.6}.mission-statement{background:var(--gradient);color:#fff;padding:3rem;border-radius:20px;text-align:center}.mission-content h3{font-size:2rem;margin-bottom:1rem}.mission-content p{font-size:1.1rem;line-height:1.8;opacity:.95}.how-it-works{background:var(--light)}.steps-container{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:3rem;position:relative}.step-card{background:#fff;padding:2rem;border-radius:15px;text-align:center;box-shadow:var(--shadow);transition:transform .3s}.step-card:hover{transform:translateY(-10px)}.step-number{width:50px;height:50px;background:var(--gradient);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;margin:0 auto 1rem}.step-icon{font-size:3rem;margin-bottom:1rem}.step-card h3{font-size:1.2rem;color:var(--dark);margin-bottom:1rem}.step-card p{color:var(--gray);line-height:1.6}.step-connector{display:none}.how-it-works-cta{text-align:center}.clients{background:var(--white)}.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:4rem}.client-card{background:#fff;padding:2rem;border-radius:15px;box-shadow:var(--shadow);display:flex;gap:1.5rem;align-items:start;transition:transform .3s}.client-card:hover{transform:translateY(-5px)}.client-logo{width:80px;height:80px;background:var(--light);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0}.client-info h3{font-size:1.3rem;color:var(--dark);margin-bottom:.5rem}.client-desc{color:var(--gray);margin-bottom:.75rem;line-height:1.5}.client-type{display:inline-block;padding:.3rem .8rem;background:#10b9811a;color:var(--primary);border-radius:20px;font-size:.85rem;font-weight:600}.clients-testimonial{background:var(--light);padding:3rem;border-radius:20px;max-width:900px;margin:0 auto}.testimonial-content{text-align:center}.quote-icon{font-size:4rem;color:var(--primary);line-height:1}.testimonial-text{font-size:1.2rem;color:var(--dark);line-height:1.8;margin-bottom:2rem;font-style:italic}.testimonial-author{display:flex;align-items:center;justify-content:center;gap:1rem}.author-avatar{width:60px;height:60px;background:var(--gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem}.author-name{font-weight:700;color:var(--dark)}.author-position{color:var(--gray);font-size:.9rem}.pricing{background:var(--light)}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.pricing-card{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:var(--shadow);position:relative;transition:transform .3s}.pricing-card:hover{transform:translateY(-10px)}.pricing-card.popular{border:3px solid var(--primary)}.popular-badge{position:absolute;top:-15px;left:50%;transform:translate(-50%);background:var(--gradient);color:#fff;padding:.5rem 1.5rem;border-radius:50px;font-size:.85rem;font-weight:700;text-transform:uppercase}.plan-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin:0 auto 1.5rem}.plan-name{font-size:1.5rem;font-weight:700;color:var(--dark);text-align:center;margin-bottom:1rem}.plan-price{text-align:center;margin-bottom:2rem}.price-amount{font-size:2.5rem;font-weight:800;color:var(--dark)}.price-unit{display:block;font-size:.9rem;color:var(--gray);margin-top:.5rem}.plan-features{list-style:none;margin-bottom:2rem}.plan-features li{padding:.75rem 0;display:flex;align-items:start;gap:.75rem;color:var(--dark)}.check{color:var(--primary);font-weight:800;flex-shrink:0}.pricing-note{text-align:center;padding:2rem;background:#10b9811a;border-radius:15px;color:var(--dark);font-weight:600}.contact{background:var(--white)}.contact-container{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;max-width:1200px;margin:0 auto}.contact-info{display:flex;flex-direction:column;gap:1.5rem}.info-card{background:var(--light);padding:1.5rem;border-radius:15px;display:flex;gap:1rem}.info-icon{font-size:2rem}.info-content h4{font-size:1.1rem;color:var(--dark);margin-bottom:.5rem}.info-content p{color:var(--gray);line-height:1.6}.info-card.social .social-links{display:flex;gap:.75rem;margin-top:.5rem}.social-links a{width:40px;height:40px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;transition:transform .3s}.social-links a:hover{transform:translateY(-3px)}.contact-form-wrapper{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:var(--shadow)}.alert{padding:1rem;border-radius:10px;margin-bottom:1rem;text-align:center;font-weight:600}.alert.success{background:#10b9811a;color:var(--primary);border:1px solid var(--primary)}.alert.error{background:#ef44441a;color:#ef4444;border:1px solid #EF4444}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:var(--dark);margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.9rem;border:2px solid #E5E7EB;border-radius:10px;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-group textarea{resize:vertical}.btn-block{width:100%;justify-content:center}.footer{background:var(--dark);color:#fff;padding:4rem 5% 2rem}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;max-width:1400px;margin:0 auto 3rem}.footer-logo{margin-bottom:1rem}.footer-desc{color:#ffffffb3;line-height:1.8;margin-bottom:1.5rem}.footer-social{display:flex;gap:1rem}.footer-social a{width:40px;height:40px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;transition:all .3s}.footer-social a:hover{background:var(--primary);transform:translateY(-3px)}.footer-section h4{font-size:1.2rem;margin-bottom:1.5rem;font-weight:700}.footer-section ul{list-style:none}.footer-section li{margin-bottom:.75rem}.footer-section a{color:#ffffffb3;text-decoration:none;transition:color .3s}.footer-section a:hover{color:var(--primary)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-bottom p{color:#ffffffb3}.footer-links{display:flex;gap:2rem}.footer-links a{color:#ffffffb3;text-decoration:none;font-size:.9rem;transition:color .3s}.footer-links a:hover{color:var(--primary)}.whatsapp-float{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #25d36666;z-index:999;border:none;cursor:pointer;transition:all .3s}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 30px #25d36699}.whatsapp-float svg{transition:transform .3s}.whatsapp-float:hover svg{transform:rotate(15deg)}.whatsapp-text{display:none}@media (max-width:1024px){.hero{grid-template-columns:1fr;text-align:center}.hero-image{max-width:400px;margin:0 auto}.about-content{max-width:1200px;margin:0 auto 4rem}.steps-container{grid-template-columns:repeat(2,1fr)}.contact-container{grid-template-columns:1fr}.footer-content{grid-template-columns:1fr 1fr}}@media (max-width:768px){.nav-links{position:fixed;top:70px;left:0;right:0;background:#fff;flex-direction:column;padding:2rem;box-shadow:0 4px 20px #0000001a;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s}.nav-links.active{transform:translateY(0);opacity:1;visibility:visible}.menu-toggle{display:flex}.steps-container,.pricing-grid,.form-row,.footer-content{grid-template-columns:1fr}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:60px 8%;color:#fff;background-image:url(/assets/charging-station-Bp9wpdTp.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;z-index:1}.hero-content{position:relative;z-index:2}.logo-carousel{background:#f8fafc;padding:4rem 0;overflow:hidden;border-top:1px solid #E2E8F0;border-bottom:1px solid #E2E8F0}.carousel-container{max-width:100%;overflow:hidden}.carousel-track{display:flex;gap:6rem;animation:scroll 40s linear infinite;width:max-content}.logo-slide{flex-shrink:0;width:160px;height:90px;display:flex;align-items:center;justify-content:center;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;transition:all .3s}.logo-slide:hover{transform:translateY(-5px);box-shadow:0 4px 16px #0000001a}.logo-slide img{max-width:100%;max-height:100%;object-fit:contain;filter:opacity(1);transition:all .3s}.logo-slide:hover img{filter:grayscale(0%)opacity(1)}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.map-float{position:fixed;bottom:110px;right:30px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:1rem 1.5rem;border-radius:50px;box-shadow:0 4px 20px #3b82f666;cursor:pointer;z-index:998;display:flex;align-items:center;gap:.5rem;font-weight:600;transition:all .3s}.map-float:hover{transform:translateY(-3px);box-shadow:0 6px 30px #3b82f699}.map-btn-text{font-size:.95rem}.map-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:1001;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s}.map-content{background:#fff;width:95%;max-width:1000px;max-height:90vh;border-radius:20px;overflow:hidden;animation:slideUp .3s}.map-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.map-header h2{font-size:1.5rem;margin:0}.close-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.5rem;transition:all .3s}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.stations-grid{padding:2rem;max-height:calc(90vh - 80px);overflow-y:auto}.station-card{background:#f8fafc;padding:1.5rem;border-radius:15px;margin-bottom:1.5rem;border:2px solid transparent;cursor:pointer;transition:all .3s}.station-card:hover{border-color:#10b981;box-shadow:0 4px 20px #10b9811a}.station-card.closed{opacity:.7}.station-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.station-header h3{font-size:1.3rem;color:#0f172a;margin:0}.status-badge{padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.status-badge.open{background:#d1fae5;color:#059669}.status-badge.closed{background:#fee2e2;color:#dc2626}.station-info .address{color:#64748b;margin-bottom:.75rem;font-size:.95rem}.station-details{display:flex;flex-wrap:wrap;gap:1rem;font-size:.9rem;color:#64748b}.station-details span{background:#fff;padding:.5rem 1rem;border-radius:8px}.station-actions{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #E2E8F0}.action-btn{flex:1;padding:.75rem;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s}.action-btn.whatsapp{background:#25d366;color:#fff}.action-btn.whatsapp:hover{background:#20ba5a;transform:translateY(-2px)}.action-btn.directions{background:#3b82f6;color:#fff}.action-btn.directions:hover{background:#2563eb;transform:translateY(-2px)}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width:768px){.logo-slide{width:120px;height:70px}.carousel-track{gap:3rem}.map-btn-text{display:none}.map-float{padding:1rem}.station-details{flex-direction:column;gap:.5rem}.station-actions{flex-direction:column}}.btn-login,.btn-dashboard,.btn-logout-nav{padding:.6rem 1.5rem;border-radius:50px;border:none;font-weight:600;cursor:pointer;transition:all .3s}.btn-login{background:linear-gradient(135deg,#10b981,#3b82f6);color:#fff}.btn-login:hover{transform:translateY(-2px)}.btn-dashboard{background:#3b82f6;color:#fff}.btn-logout-nav{background:#fee2e2;color:#dc2626}.btn-install-nav{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:8px 18px;border-radius:25px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 2px 8px #10b9814d}@media (max-width: 768px){.btn-install-nav{width:100%;margin:10px 0}}.station-item-card{padding:20px;background:#fff;border:2px solid #E5E7EB;border-radius:12px;display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;transition:all .3s}.station-item-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b9811a}.station-item-card.pending{border-color:#f59e0b;background:#fef3c7}.station-item-card h4{margin:0 0 8px;color:#0f172a}.station-item-card p{margin:4px 0;color:#64748b}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;margin-top:8px}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.approved{background:#d1fae5;color:#059669}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:16px;padding:30px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content.large{max-width:700px}.modal-content h3{margin:0 0 20px;color:#0f172a}.modal-actions{display:flex;gap:12px;margin-top:20px;justify-content:flex-end}.form-input{width:100%;padding:10px;border:2px solid #E5E7EB;border-radius:8px;margin:10px 0;font-size:14px}.form-input:focus{outline:none;border-color:#10b981}.station-form{display:flex;flex-direction:column;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;margin-bottom:6px;color:#0f172a;font-size:14px}.form-group input,.form-group select{padding:10px;border:2px solid #E5E7EB;border-radius:8px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#10b981}.form-group small{color:#64748b;font-size:12px;margin-top:4px}.approval-list{display:flex;flex-direction:column;gap:15px}.approval-item{padding:20px;background:#fff;border:2px solid #F59E0B;border-radius:12px;display:flex;justify-content:space-between;align-items:center}.approval-info h4{margin:0 0 8px;color:#0f172a}.approval-info p{margin:4px 0;color:#64748b;font-size:14px}.approval-details{font-weight:600;color:#0f172a}.approval-date{font-size:12px;color:#9ca3af}.approval-actions{display:flex;gap:10px}.btn-success{background:#10b981;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.btn-success:hover{background:#059669}.btn-danger{background:#ef4444;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.empty-state{text-align:center;padding:40px;color:#9ca3af}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.station-item-card,.approval-item{flex-direction:column;align-items:flex-start;gap:15px}.approval-actions{width:100%}.approval-actions button{flex:1}}.logo-carousel .logo-slide img{filter:none!important;opacity:1!important}.logo-carousel .logo-slide:hover img{transform:scale(1.05)}.section-header-small{text-align:center;margin-bottom:2rem}.section-header-small h3{font-size:1.5rem;color:var(--dark)}.auth-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s;padding:1rem;overflow-y:auto}.auth-content{background:#fff;width:95%;max-width:450px;max-height:90vh;border-radius:20px;padding:2.5rem;position:relative;animation:slideUp .3s;overflow-y:auto;margin:auto}.auth-content::-webkit-scrollbar{width:8px}.auth-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.auth-content::-webkit-scrollbar-thumb{background:var(--primary);border-radius:10px}.auth-content::-webkit-scrollbar-thumb:hover{background:#059669}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h2{font-size:2rem;color:var(--dark);margin-bottom:.5rem}.auth-header p{color:var(--gray)}.auth-error{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:10px;margin-bottom:1.5rem;text-align:center}.auth-form .form-group{margin-bottom:1.5rem}.auth-form label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--dark)}.auth-form input,.auth-form select{width:100%;padding:.9rem;border:2px solid #E2E8F0;border-radius:10px;font-size:1rem;transition:border-color .3s}.auth-form input:focus,.auth-form select:focus{outline:none;border-color:var(--primary)}.auth-footer{text-align:center;margin-top:1.5rem;color:var(--gray)}.link-btn{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;text-decoration:underline}.dashboard-wrapper{display:flex;min-height:100vh;background:#f8fafc}.dashboard-sidebar{width:280px;background:#fff;border-right:1px solid #E2E8F0;padding:2rem 1.5rem;display:flex;flex-direction:column}.sidebar-header h2{font-size:1.5rem;color:var(--dark);margin-bottom:.5rem}.user-role{background:var(--gradient);color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.85rem;display:inline-block}.sidebar-user{margin:2rem 0;padding:1.5rem;background:#f8fafc;border-radius:15px;display:flex;align-items:center;gap:1rem}.user-avatar{width:50px;height:50px;background:var(--gradient);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.user-info h4{margin-bottom:.3rem;color:var(--dark)}.user-info p{font-size:.85rem;color:var(--gray)}.btn-logout{margin-top:auto;padding:.9rem;background:#fee2e2;color:#dc2626;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s}.btn-logout:hover{background:#dc2626;color:#fff}.dashboard-main{flex:1;padding:2rem;overflow-y:auto}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{font-size:2rem;color:var(--dark);margin-bottom:.5rem}.dashboard-header p{color:var(--gray)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:15px;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 10px #0000000d;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2rem}.stat-card.green .stat-icon{background:#10b9811a}.stat-card.blue .stat-icon{background:#3b82f61a}.stat-card.orange .stat-icon{background:#f59e0b1a}.stat-card.purple .stat-icon{background:#8b5cf61a}.stat-info h3{font-size:.9rem;color:var(--gray);margin-bottom:.5rem}.stat-number{font-size:2rem;font-weight:800;color:var(--dark)}.stat-change{font-size:.85rem;color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.dashboard-card{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 2px 10px #0000000d}.dashboard-card h3{font-size:1.3rem;color:var(--dark);margin-bottom:1.5rem}.dashboard-card.full-width{grid-column:1/-1}.placeholder-text{color:var(--gray);padding:2rem;text-align:center;background:#f8fafc;border-radius:10px;font-style:italic}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;align-items:start;gap:1rem;padding:1rem;background:#f8fafc;border-radius:10px}.activity-icon{font-size:1.5rem}.activity-info p{color:var(--dark);margin-bottom:.3rem}.activity-time{font-size:.85rem;color:var(--gray)}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.action-btn{padding:.9rem;background:#f8fafc;border:2px solid #E2E8F0;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s;color:var(--dark)}.action-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.station-list,.session-list,.favorite-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.station-item,.session-item,.favorite-item{padding:1rem;background:#f8fafc;border-radius:10px;display:flex;justify-content:space-between;align-items:center}.session-info h4,.favorite-item h4{color:var(--dark);margin-bottom:.3rem}.session-info p{color:var(--gray);font-size:.9rem}.session-date{font-size:.85rem;color:var(--gray)}.breaker-controls{margin-top:1rem}.breaker-status{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.status-dot{width:12px;height:12px;border-radius:50%;background:#10b981}.status-dot.active{animation:pulse 2s infinite}.btn-home{margin-top:1rem;padding:.6rem;background:#f8fafc;border:2px solid #E2E8F0;border-radius:8px;cursor:pointer;width:100%}.btn-home:hover{background:#e2e8f0}.close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s}.close-btn:hover{background:#f8fafc;color:var(--dark)}@media (max-width:1024px){.dashboard-sidebar{width:240px}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-wrapper{flex-direction:column}.dashboard-sidebar{width:100%;border-right:none;border-bottom:1px solid #E2E8F0}.stats-grid,.action-buttons{grid-template-columns:1fr}.auth-modal{padding:.5rem}.auth-content{padding:2rem 1.5rem;max-height:95vh}.auth-form .form-group{margin-bottom:1.2rem}.auth-header h2{font-size:1.5rem}}@media (max-width:480px){.auth-content{width:98%;padding:1.5rem 1rem}.auth-form .form-group{margin-bottom:1rem}.auth-form label{font-size:.9rem}.auth-form input,.auth-form select{padding:.8rem;font-size:.95rem}}.charging-action{text-align:center;margin:2rem 0}.btn-start-charging{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:1.5rem 3rem;border-radius:50px;border:none;font-size:1.3rem;font-weight:700;cursor:pointer;box-shadow:0 10px 30px #10b98166;transition:all .3s}.btn-start-charging:hover{transform:translateY(-5px);box-shadow:0 15px 40px #10b98199}.charging-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;z-index:3000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s}.charging-modal{background:#fff;width:95%;max-width:500px;border-radius:25px;padding:3rem;position:relative;animation:slideUp .4s}.charging-step{text-align:center}.charging-icon{font-size:5rem;margin-bottom:1rem}.charging-step h2{font-size:2rem;color:var(--dark);margin-bottom:1rem}.charging-step p{color:var(--gray);margin-bottom:2rem}.station-info{background:#f8fafc;padding:1.5rem;border-radius:15px;margin:2rem 0;text-align:left}.station-info p{margin:.5rem 0;color:var(--dark)}.charging-active{margin-bottom:2rem}.pulse-animation{font-size:6rem;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.live-stats{background:#f8fafc;padding:2rem;border-radius:20px;margin:2rem 0}.live-stat{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #E2E8F0}.live-stat:last-child{border-bottom:none}.live-stat.estimated{background:#10b9811a;border-radius:10px;margin-top:1rem;border:none}.stat-label{font-weight:600;color:var(--gray)}.stat-value{font-size:1.5rem;font-weight:800;color:var(--dark)}.live-stat.estimated .stat-value{color:var(--primary)}.final-summary{background:#f8fafc;padding:2rem;border-radius:20px;margin:2rem 0}.summary-row{display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #E2E8F0}.summary-row:last-child{border-bottom:none}.summary-row.total{background:#10b9811a;padding:1.5rem;border-radius:10px;margin-top:1rem;border:none}.summary-row.total strong{font-size:1.8rem;color:var(--primary)}.success-icon{width:100px;height:100px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:4rem;margin:0 auto 2rem}.btn-large{width:100%;padding:1.2rem;font-size:1.2rem;margin-top:1rem}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.empty-state{text-align:center;color:var(--gray);padding:3rem;font-style:italic}@media (max-width: 768px){.charging-modal{padding:2rem}.charging-icon{font-size:4rem}.pulse-animation{font-size:5rem}}.pwa-install-banner{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#10b981,#059669);padding:1rem;z-index:1000;animation:slideUp .4s}.pwa-content{display:flex;align-items:center;gap:1rem;max-width:1200px;margin:0 auto}.pwa-icon{font-size:2.5rem}.pwa-text h4{color:#fff;margin:0;font-size:1.1rem}.pwa-text p{color:#ffffffe6;margin:.2rem 0 0;font-size:.9rem}.pwa-actions{margin-left:auto;display:flex;gap:.5rem}.btn-install{background:#fff;color:#059669;padding:.7rem 1.5rem;border-radius:25px;border:none;font-weight:600;cursor:pointer}.btn-dismiss{background:#fff3;color:#fff;padding:.7rem 1rem;border-radius:25px;border:none;cursor:pointer}.otp-verification{padding:1rem 0}.otp-header{text-align:center;margin-bottom:2rem}.otp-header h2{font-size:1.8rem;color:var(--dark);margin-bottom:1rem}.otp-header p{color:var(--gray);margin:.5rem 0}.phone-number{font-weight:700;color:var(--primary);font-size:1.2rem}.test-hint{background:#fef3c7;color:#92400e;padding:.5rem;border-radius:8px;font-size:.85rem;margin-top:1rem}.back-btn{background:none;border:none;color:var(--primary);font-size:1rem;cursor:pointer;padding:.5rem;margin-bottom:1rem}.otp-inputs{display:flex;gap:.75rem;justify-content:center;margin:2rem 0}.otp-input{width:50px;height:60px;text-align:center;font-size:2rem;font-weight:700;border:2px solid #E2E8F0;border-radius:12px;transition:all .3s}.otp-input:focus{outline:none;border-color:var(--primary);transform:scale(1.05)}.otp-error{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:10px;margin-bottom:1.5rem;text-align:center}.otp-footer{text-align:center;margin-top:1.5rem;color:var(--gray)}.forgot-password-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:2000;display:flex;align-items:center;justify-content:center}.forgot-content{background:#fff;width:95%;max-width:450px;border-radius:20px;padding:2.5rem;position:relative}.forgot-header{text-align:center;margin-bottom:2rem}.forgot-icon{font-size:4rem;margin-bottom:1rem}.forgot-header h2{font-size:2rem;color:var(--dark);margin-bottom:.5rem}.forgot-header p{color:var(--gray)}.forgot-success{text-align:center;padding:2rem 0}.email-sent{font-weight:700;color:var(--primary);font-size:1.1rem;margin:1rem 0}.help-text{color:var(--gray);font-size:.9rem;margin:1.5rem 0}.forgot-link{text-align:right;margin-bottom:1rem}@media (max-width: 768px){.pwa-content{flex-direction:column;text-align:center}.pwa-actions{margin-left:0;width:100%}.btn-install{flex:1}.otp-inputs{gap:.5rem}.otp-input{width:45px;height:55px;font-size:1.8rem}.forgot-content{padding:2rem}}@media (max-width: 480px){.otp-input{width:40px;height:50px;font-size:1.5rem}}.form-group small{display:block;color:var(--gray);font-size:.85rem;margin-top:.3rem}.success-icon{width:80px;height:80px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem;animation:scaleIn .5s}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#1e293b);padding:2rem}.reset-container{background:#fff;width:100%;max-width:500px;border-radius:20px;padding:3rem;box-shadow:0 20px 60px #0000004d}.reset-header{text-align:center;margin-bottom:2rem}.reset-icon{font-size:5rem;margin-bottom:1rem}.reset-header h1{font-size:2rem;color:var(--dark);margin-bottom:.5rem}.reset-header p{color:var(--gray);font-size:1rem}.reset-error{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:10px;margin-bottom:1.5rem;text-align:center;font-weight:500}.reset-form{margin-bottom:2rem}.reset-form .form-group{margin-bottom:1.5rem}.reset-form label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--dark)}.reset-form input{width:100%;padding:1rem;border:2px solid #E2E8F0;border-radius:10px;font-size:1rem;transition:border-color .3s}.reset-form input:focus{outline:none;border-color:var(--primary)}.reset-form input:disabled{background:#f8fafc;cursor:not-allowed}.reset-footer{text-align:center;margin-top:2rem}.reset-footer a{color:var(--primary);text-decoration:none;font-weight:600}.reset-footer a:hover{text-decoration:underline}.reset-success{text-align:center;padding:2rem 0}.reset-success .success-icon{width:100px;height:100px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:4rem;margin:0 auto 2rem;animation:scaleIn .5s}.reset-success h2{font-size:2rem;color:var(--dark);margin-bottom:1rem}.reset-success p{color:var(--gray);margin:.5rem 0}.redirect-text{color:var(--primary);font-weight:600;margin:1.5rem 0!important}.reset-success .btn{margin-top:1rem}@keyframes scaleIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width: 768px){.reset-password-page{padding:1rem}.reset-container{padding:2rem}.reset-icon{font-size:4rem}.reset-header h1{font-size:1.5rem}}.btn-install-nav{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:8px 18px;border-radius:25px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 2px 8px #10b9814d;margin-right:10px}.btn-install-nav:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-install-nav:active{transform:translateY(0)}@media (max-width: 768px){.btn-install-nav{width:100%;margin:10px 0;padding:10px}}
