@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&display=swap";
:root{--bg-base:#f3f5f9;--bg-surface:#fff;--bg-elevated:#f8fafc;--bg-card:#fffc;--border-color:#e2e8f0;--border-hover:#cbd5e1;--border-focus:#0891b2;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent-primary:#0e7490;--accent-primary-hover:#155e75;--accent-primary-glow:#0e749014;--accent-secondary:#d97706;--accent-secondary-glow:#d9770614;--accent-violet:#7c3aed;--accent-violet-glow:#7c3aed14;--accent-success:#059669;--accent-success-glow:#05966914;--accent-warning:#d97706;--accent-warning-glow:#d9770614;--accent-danger:#dc2626;--accent-danger-glow:#dc262614;--color-individual:#2563eb;--color-commercial:#059669;--color-apartment:#7c3aed;--color-industrial:#ea580c;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", sans-serif;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000005;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000005;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-base:#090b10;--bg-surface:#0f1219;--bg-elevated:#161a24;--bg-card:#131720b8;--border-color:#ffffff12;--border-hover:#ffffff29;--border-focus:#22d3ee;--text-primary:#f4f6fa;--text-secondary:#9aa5b8;--text-muted:#656e80;--accent-primary:#22d3ee;--accent-primary-hover:#06b6d4;--accent-primary-glow:#22d3ee24;--accent-secondary:#fbbf24;--accent-secondary-glow:#fbbf2424;--accent-violet:#a78bfa;--accent-violet-glow:#a78bfa24;--accent-success:#34d399;--accent-success-glow:#34d3991f;--accent-warning:#fbbf24;--accent-warning-glow:#fbbf241f;--accent-danger:#fb7185;--accent-danger-glow:#fb71851f;--color-individual:#38bdf8;--color-commercial:#34d399;--color-apartment:#c084fc;--color-industrial:#fb923c;--shadow-sm:0 1px 3px #0000004d, 0 1px 2px #0003;--shadow-md:0 4px 12px -2px #00000059, 0 2px 6px -2px #0003;--shadow-lg:0 20px 40px -12px #00000080, 0 8px 16px -4px #0000004d}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden}html,body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);font-weight:700}a{color:inherit;transition:var(--transition-fast);text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.glassmorphism{background:var(--bg-card);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.gradient-text{background:linear-gradient(135deg,#0f172a 30%,#334155 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}[data-theme=dark] .gradient-text{background:linear-gradient(135deg,#fff 20%,#9aa5b8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.gradient-accent-text{background:linear-gradient(135deg,#67e8f9 0%,#22d3ee 45%,#a78bfa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.btn{font-family:var(--font-sans);cursor:pointer;transition:var(--transition-normal);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{color:#051016;background:linear-gradient(135deg,#22d3ee,#0891b2);box-shadow:0 4px 16px #22d3ee40}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px #22d3ee66}.btn-secondary{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--border-hover);background:#00000008}[data-theme=dark] .btn-secondary:hover{background:#ffffff0d}.btn-outline{border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.btn-outline:hover{border-color:var(--border-hover);color:var(--text-primary);background:#00000005}[data-theme=dark] .btn-outline:hover{background:#ffffff08}.theme-toggle-btn{border:1px solid var(--border-color);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-normal);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.theme-toggle-btn:hover{color:var(--text-primary);border-color:var(--border-hover)}.theme-toggle-btn svg{width:18px;height:18px}.theme-toggle-btn .icon-moon,[data-theme=dark] .theme-toggle-btn .icon-sun{display:none}[data-theme=dark] .theme-toggle-btn .icon-moon{display:block}.container{max-width:1280px;margin:0 auto;padding:0 24px}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-items:center;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-individual{color:var(--color-individual);background:#2563eb14;border:1px solid #2563eb33}.badge-commercial{color:var(--color-commercial);background:#05966914;border:1px solid #05966933}.badge-apartment{color:var(--color-apartment);background:#7c3aed14;border:1px solid #7c3aed33}.badge-industrial{color:var(--color-industrial);background:#ea580c14;border:1px solid #ea580c33}[data-theme=dark] .badge-individual{background:#38bdf81f;border-color:#38bdf840}[data-theme=dark] .badge-commercial{background:#34d3991f;border-color:#34d39940}[data-theme=dark] .badge-apartment{background:#c084fc1f;border-color:#c084fc40}[data-theme=dark] .badge-industrial{background:#fb923c1f;border-color:#fb923c40}.icon-badge{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.icon-badge svg{width:24px;height:24px}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.form-input{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-sans);transition:var(--transition-fast);border-radius:6px;padding:10px 14px;font-size:.9rem}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px var(--accent-primary-glow);outline:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #22d3ee33}50%{box-shadow:0 0 25px #22d3ee66}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.leaflet-container{font-family:var(--font-sans)!important;background:var(--bg-base)!important}.leaflet-bar{border:1px solid var(--border-color)!important;box-shadow:var(--shadow-md)!important}.leaflet-bar a{background-color:var(--bg-elevated)!important;color:var(--text-primary)!important;border-bottom:1px solid var(--border-color)!important}.leaflet-bar a:hover{background-color:var(--bg-surface)!important;color:var(--accent-primary)!important}.leaflet-popup-content-wrapper{background:var(--bg-elevated)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-lg)!important;border-radius:12px!important}.leaflet-popup-tip{background:var(--bg-elevated)!important;border:1px solid var(--border-color)!important}
