@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f8f9fa;color:#333;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Poppins,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:600;letter-spacing:-1px}.container{max-width:1200px;margin:0 auto;padding:0 20px}header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px 0;text-align:center;position:relative}header h1{font-size:2.5em;margin-bottom:10px;font-weight:600}header h1 i{margin-right:15px;color:gold}header p{font-size:1.2em;opacity:.9;max-width:600px;margin:0 auto}.panel{background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.panel h2,.panel h3{margin:0 0 15px;color:#333;font-size:1.1em;display:flex;align-items:center;gap:10px}.btn-primary{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:.9em;font-weight:600;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.btn-primary:hover{background:#0056b3;transform:translateY(-2px);box-shadow:0 4px 15px #007bff4d}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:.9em;transition:background .3s;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:#545b62;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.card-link{background:#fff;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;text-decoration:none;color:inherit;display:flex;align-items:center;gap:20px;transition:all .3s ease;border:1px solid transparent}.card-link:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001f;border-color:#667eea4d}.card-link .icon-wrap{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea26,#764ba226);color:#667eea;font-size:1.5em}.card-link h2{margin:0 0 8px;font-size:1.25em;color:#333}.card-link p{margin:0;color:#666;font-size:.95em;line-height:1.5}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}input[type=text],input[type=email],input[type=password],select,textarea{padding:8px 12px;border:1px solid #ddd;border-radius:5px;font-size:.9em;font-family:inherit}input:focus,select:focus,textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.whatsapp-float{position:fixed;bottom:30px;right:30px;background:#25d366;color:#fff;width:60px;height:60px;border-radius:50%;text-align:center;font-size:30px;box-shadow:0 4px 20px #25d3664d;z-index:1000;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .3s ease}.whatsapp-float:hover{background:#128c7e;transform:scale(1.1);color:#fff;text-decoration:none}footer{width:100%;text-align:center;padding:28px 0 18px;font-size:1.08em;color:#888;background:transparent;margin-top:40px}footer a{color:#3b5bdb;text-decoration:none;font-weight:600}footer a:hover{text-decoration:underline}.auth-links{position:absolute;top:20px;right:20px;display:flex;gap:15px}.auth-links a{color:#fff;text-decoration:none;font-weight:500;padding:8px 16px;border-radius:8px;background:#ffffff26;transition:all .3s ease}.auth-links a:hover{background:#ffffff40}#map{height:600px;border-radius:10px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px}.leaflet-popup-content-wrapper{border-radius:10px;box-shadow:0 4px 20px #00000026}.leaflet-popup-content{margin:0;padding:0}.leaflet-popup-tip{background:#fff}.filters-panel{background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.filter-group{display:flex;flex-direction:column}.filter-group label{font-weight:600;color:#333;margin-bottom:5px;font-size:.9em}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid #ddd;border-radius:5px;font-size:.9em}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.filter-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}.filter-btn{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:.9em;transition:background .3s;display:inline-flex;align-items:center;gap:8px}.filter-btn:hover{background:#0056b3}.clear-btn{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:.9em;transition:background .3s;display:inline-flex;align-items:center;gap:8px}.clear-btn:hover{background:#545b62}.results-info{background:#f8f9fa;padding:15px;border-radius:5px;display:flex;align-items:center}.results-count{font-weight:600;color:#333}.legend{background:#fff;padding:15px;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.legend h3{margin:0 0 15px;color:#333;font-size:1.1em}.legend-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.legend-item{display:flex;align-items:center;gap:8px;font-size:.9em}.legend-color{width:20px;height:20px;border-radius:50%;border:2px solid white;box-shadow:0 1px 3px #0003}.custom-marker{background:transparent;border:none}@media (max-width: 768px){#map{height:400px}.filters-grid{grid-template-columns:1fr}.filter-actions{flex-direction:column;align-items:stretch}}@media (max-width: 480px){#map{height:350px}}.text-center{text-align:center}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::selection{background:#007bff;color:#fff}@media (max-width: 768px){header h1{font-size:2em}header p{font-size:1em}.auth-links{position:static;justify-content:center;margin-top:15px}.cards-grid{grid-template-columns:1fr}.whatsapp-float{width:50px;height:50px;font-size:25px;bottom:20px;right:20px}.container{padding:0 15px}}@media (max-width: 480px){header{padding:20px 0}header h1{font-size:1.8em}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus,input:focus,select:focus,a:focus{outline:2px solid #007bff;outline-offset:2px}body.welcome-page .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 8px 30px #00000059}
