:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-card: rgba(30, 41, 59, .8);--bg-input: #1e293b;--bg-overlay: rgba(15, 23, 42, .9);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--text-inverse: #0f172a;--accent-primary: #22d3ee;--accent-hover: #06b6d4;--accent-glow: rgba(34, 211, 238, .3);--border-primary: #334155;--border-secondary: #475569;--border-accent: rgba(34, 211, 238, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px rgba(34, 211, 238, .2);--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: #3b82f6;--font-xs: clamp(.625rem, 1.5vw, .75rem);--font-sm: clamp(.75rem, 2vw, .875rem);--font-base: clamp(.875rem, 2.5vw, 1rem);--font-lg: clamp(1rem, 3vw, 1.25rem);--font-xl: clamp(1.25rem, 4vw, 1.5rem);--font-2xl: clamp(1.5rem, 5vw, 2rem);--font-3xl: clamp(1.875rem, 6vw, 2.5rem);--space-xs: clamp(.25rem, 1vw, .5rem);--space-sm: clamp(.5rem, 2vw, .75rem);--space-md: clamp(.75rem, 3vw, 1rem);--space-lg: clamp(1rem, 4vw, 1.5rem);--space-xl: clamp(1.5rem, 5vw, 2rem);--min-touch-target: 44px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px)}html.light{--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-tertiary: #e2e8f0;--bg-card: rgba(255, 255, 255, .9);--bg-input: #ffffff;--bg-overlay: rgba(248, 250, 252, .95);--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--text-inverse: #f8fafc;--accent-primary: #0891b2;--accent-hover: #0e7490;--accent-glow: rgba(8, 145, 178, .15);--border-primary: #e2e8f0;--border-secondary: #cbd5e1;--border-accent: rgba(8, 145, 178, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(8, 145, 178, .1)}html.light body{background-color:var(--bg-primary)!important;color:var(--text-primary)!important}html.light .bg-slate-950,html.light .bg-slate-900,html.light .bg-gray-900{background-color:var(--bg-primary)!important}html.light .bg-slate-800,html.light .bg-slate-800\/50,html.light .bg-slate-800\/60,html.light .bg-slate-800\/80{background-color:var(--bg-secondary)!important}html.light .bg-slate-700,html.light .bg-slate-700\/50{background-color:var(--bg-tertiary)!important}html.light .backdrop-blur-xl,html.light .backdrop-blur-md{background-color:var(--bg-card)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important}html.light .text-white,html.light .text-slate-200,html.light .text-gray-200,html.light .text-slate-100{color:var(--text-primary)!important}html.light .text-slate-300,html.light .text-slate-400{color:var(--text-secondary)!important}html.light .text-slate-500,html.light .text-slate-600,html.light .text-gray-500{color:var(--text-muted)!important}html.light .text-cyan-400,html.light .text-cyan-300{color:var(--accent-primary)!important}html.light .border-slate-600,html.light .border-slate-700,html.light .border-slate-800{border-color:var(--border-primary)!important}html.light .border-cyan-500\/30,html.light .border-cyan-400{border-color:var(--border-accent)!important}html.light header{background-color:var(--bg-primary)!important;border-bottom-color:var(--border-primary)!important;box-shadow:var(--shadow-sm)}html.light header .font-orbitron{color:var(--text-primary)!important;text-shadow:none}html.light header .drop-shadow-\[0_0_10px_rgba\(34\,211\,238\,0\.5\)\]{filter:drop-shadow(0 0 5px rgba(8,145,178,.3))!important}html.light .bg-gradient-to-r.from-cyan-600{background:linear-gradient(to right,#0891b2,#06b6d4)!important}html.light button:hover{box-shadow:var(--shadow-md)}html.light .bg-slate-800\/60:hover,html.light .hover\:bg-slate-700:hover{background-color:var(--bg-tertiary)!important}html.light .rounded-xl,html.light .rounded-2xl,html.light .rounded-lg{box-shadow:var(--shadow-md)}html.light .group:hover .rounded-xl,html.light .group:hover .rounded-2xl{box-shadow:var(--shadow-lg)}html.light .border-purple-500\/30{border-color:#a855f740!important}html.light .border-purple-500\/50{border-color:#a855f766!important}html.light .bg-purple-600\/30,html.light .bg-purple-500\/20{background-color:#a855f71a!important}html.light .text-purple-400,html.light .text-purple-300{color:#7c3aed!important}html.light .text-emerald-300,html.light .text-emerald-400,html.light .text-emerald-500{color:#059669!important}html.light .border-emerald-500\/30{border-color:#10b9814d!important}html.light .bg-emerald-600\/20,html.light .bg-emerald-500\/10{background-color:#10b9811a!important}html.light input,html.light textarea,html.light select{background-color:var(--bg-input)!important;border-color:var(--border-primary)!important;color:var(--text-primary)!important}html.light input:focus,html.light textarea:focus,html.light select:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 2px var(--accent-glow)!important}html.light input::placeholder,html.light textarea::placeholder{color:var(--text-muted)!important}html.light .absolute.bg-slate-800{background-color:var(--bg-input)!important;border-color:var(--border-primary)!important;box-shadow:var(--shadow-lg)}.leaflet-container{isolation:isolate;z-index:0}html.light .leaflet-container{background-color:var(--bg-tertiary)!important}html.light .leaflet-popup-content-wrapper{background-color:var(--bg-overlay)!important;color:var(--text-primary)!important;border-color:var(--accent-primary)!important;box-shadow:var(--shadow-lg)!important}html.light .leaflet-popup-tip{background-color:var(--bg-primary)!important;border-left-color:var(--accent-primary)!important;border-top-color:var(--accent-primary)!important}html.light .leaflet-bar{border-color:var(--border-primary)!important;box-shadow:var(--shadow-md)!important}html.light .leaflet-bar a{background-color:var(--bg-input)!important;color:var(--accent-primary)!important;border-bottom-color:var(--border-primary)!important}html.light .leaflet-bar a:hover{background-color:var(--bg-tertiary)!important;color:var(--accent-hover)!important}html.light .fixed.inset-0.bg-black\/50,html.light .fixed.inset-0.bg-black\/70{background-color:#0006!important}html.light .bg-slate-900.rounded-2xl,html.light .bg-slate-800.rounded-xl{background-color:var(--bg-input)!important;box-shadow:var(--shadow-lg)}html.light .min-h-screen.bg-slate-950,html.light .min-h-screen.bg-slate-900{background:linear-gradient(135deg,#f8fafc,#e2e8f0)!important}html.light .bg-cyan-500\/10,html.light .bg-cyan-600\/20{background-color:#0891b214!important}html.light .bg-purple-600\/20,html.light .bg-pink-600\/15,html.light .bg-indigo-600\/20{background-color:#8b5cf614!important}html.light ::-webkit-scrollbar{width:8px;height:8px}html.light ::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}html.light ::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:4px}html.light ::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}html.light .animate-pulse{animation-duration:4s!important}html.light .shadow-cyan-500\/20,html.light .shadow-cyan-500\/30{--tw-shadow-color: rgba(8, 145, 178, .1) !important}html.light .bg-slate-800\/80.border-cyan-500\/30{background-color:var(--bg-secondary)!important;border-color:var(--border-accent)!important}html.light .bg-gradient-to-br.from-slate-800{background:linear-gradient(to bottom right,#f1f5f9,#e2e8f0)!important}html.light .bg-cyan-500\/10{background-color:#0891b214!important}html.light .bg-\[linear-gradient\(to_right\,\#80808008_1px\,transparent_1px\)\]{background-image:none!important}.touch-target{min-width:var(--min-touch-target);min-height:var(--min-touch-target)}.safe-area-top{padding-top:var(--safe-area-top)}.safe-area-bottom{padding-bottom:var(--safe-area-bottom)}.safe-area-x{padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}.safe-area{padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}@media (hover: none) and (pointer: coarse){button:active,a:active,[role=button]:active{transform:scale(.97);opacity:.9}}button,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.text-fluid-xs{font-size:var(--font-xs)}.text-fluid-sm{font-size:var(--font-sm)}.text-fluid-base{font-size:var(--font-base)}.text-fluid-lg{font-size:var(--font-lg)}.text-fluid-xl{font-size:var(--font-xl)}.text-fluid-2xl{font-size:var(--font-2xl)}.text-fluid-3xl{font-size:var(--font-3xl)}.gap-fluid-xs{gap:var(--space-xs)}.gap-fluid-sm{gap:var(--space-sm)}.gap-fluid-md{gap:var(--space-md)}.gap-fluid-lg{gap:var(--space-lg)}.gap-fluid-xl{gap:var(--space-xl)}.p-fluid-xs{padding:var(--space-xs)}.p-fluid-sm{padding:var(--space-sm)}.p-fluid-md{padding:var(--space-md)}.p-fluid-lg{padding:var(--space-lg)}.p-fluid-xl{padding:var(--space-xl)}.no-select{-webkit-user-select:none;user-select:none}.scroll-touch{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.min-h-screen-dvh{min-height:100dvh}
