:root[data-theme=dark],:root:not([data-theme]){--bg:#070a15;--bg-elevated:#0c1018;--surface:#0c1021a6;--surface-solid:#111827;--surface-dim:#10162a8c;--surface-hover:#111827cc;--border:#00f0ff33;--border-light:#00f0ff1a;--border-hover:#00f0ff80;--accent:#00f0ff;--accent-hover:#00c3ff;--accent-soft:#0a84ff;--accent-light:#00f0ff26;--accent-lighter:#00f0ff0d;--accent-glow:#00f0ff59;--success:#10b981;--warning:#eab308;--danger:#ef4444;--offline:#475569;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--bg-image:radial-gradient(ellipse at 50% -20%, #00f0ff1f 0%, transparent 70%), linear-gradient(#ffffff08 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px);--map-fill:#1e293b;--map-fill-opacity:.4;--map-stroke:#00f0ff26;--map-stroke-soft:#00f0ff0f;--shadow-card:0 4px 8px #0009, 0 0 10px #00f0ff0d;--shadow-popup:0 8px 32px #0009, 0 0 16px #00f0ff14}:root[data-theme=light]{--bg:#e8e9eb;--bg-elevated:#f0f0f2;--surface:#ffffffeb;--surface-solid:#fcfcfd;--surface-dim:#ffffffb3;--surface-hover:#0f172a0a;--border:#0f172a1f;--border-light:#0f172a12;--border-hover:#0891b273;--accent:#0891b2;--accent-hover:#06b6d4;--accent-soft:#0e7490;--accent-light:#0891b21f;--accent-lighter:#0891b20d;--accent-glow:#0891b240;--success:#15803d;--warning:#b45309;--danger:#b91c1c;--offline:#64748b;--text-primary:#1a202c;--text-secondary:#3f4a5c;--text-muted:#64748b;--bg-image:radial-gradient(ellipse at 50% -20%, #0891b214 0%, transparent 70%), linear-gradient(#0f172a0a 1px, transparent 1px), linear-gradient(90deg, #0f172a0a 1px, transparent 1px);--map-fill:#cbd5e1;--map-fill-opacity:.55;--map-stroke:#0891b259;--map-stroke-soft:#0891b21f;--shadow-card:0 1px 2px #0f172a14, 0 4px 14px #0f172a1a;--shadow-popup:0 12px 32px #0f172a2e, 0 4px 12px #0891b214}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0;padding:0}body{background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans,system-ui,-apple-system,sans-serif;transition:background-color .22s,color .22s}button{font-family:inherit}@keyframes plantaPulse{0%{transform-origin:50%;opacity:.6;transform:scale(1)}to{transform-origin:50%;opacity:0;transform:scale(2.4)}}@keyframes plantaPulse2{0%{transform-origin:50%;opacity:.35;transform:scale(1)}to{transform-origin:50%;opacity:0;transform:scale(3.2)}}@keyframes headerPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.planta-pulse{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite plantaPulse}.planta-pulse-2{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out .6s infinite plantaPulse2}.header-pulse{animation:1.8s ease-in-out infinite headerPulse}.theme-toggle{background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--accent);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.theme-toggle:hover{background:var(--accent-lighter);border-color:var(--border-hover);color:var(--accent-hover)}.theme-toggle .theme-icon-sun{display:none}.theme-toggle .theme-icon-moon,:root[data-theme=dark] .theme-toggle .theme-icon-sun,:root:not([data-theme]) .theme-toggle .theme-icon-sun{display:block}:root[data-theme=dark] .theme-toggle .theme-icon-moon,:root:not([data-theme]) .theme-toggle .theme-icon-moon{display:none}
