:root{--bg: #f7f8fa;--bg-2: #eef0f4;--surface: #ffffff;--surface-2: #f9fafb;--surface-3: #f1f3f7;--border: #e4e7ec;--border-strong: #d0d5dd;--border-bright: #98a2b3;--text: #1f2937;--text-strong: #0a0e16;--muted: #667085;--muted-2: #98a2b3;--primary: #10b981;--primary-strong: #34d399;--primary-hover: #059669;--primary-deep: #047857;--primary-soft: rgba(16, 185, 129, .1);--primary-soft-hover: rgba(16, 185, 129, .18);--primary-on: #04241a;--accent: #10b981;--accent-strong: #059669;--accent-soft: rgba(16, 185, 129, .1);--success: #059669;--warning: #d97706;--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .08);--info: #2563eb;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .04);--shadow-lg: 0 16px 32px rgba(16, 24, 40, .1), 0 4px 8px rgba(16, 24, 40, .05);--glow-primary: 0 0 0 3px var(--primary-soft);--glow-accent: 0 0 0 3px var(--accent-soft);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "SF Mono", ui-monospace, Menlo, Monaco, "Cascadia Code", monospace}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em;font-feature-settings:"cv02","cv03","cv04","cv11"}a{color:var(--primary);text-decoration:none;transition:color .15s ease;font-weight:500}a:hover{color:var(--primary-hover)}img,svg{display:block;max-width:100%}code,kbd,pre{font-family:var(--font-mono);font-size:.92em}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.02em;color:var(--text-strong)}h1{font-size:1.75rem;line-height:1.2}h2{font-size:1.4rem;line-height:1.25}h3{font-size:1.05rem;line-height:1.3}h4{font-size:.95rem;line-height:1.35}p{margin:0}input,select,textarea{font:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);padding:.6em .85em;border-radius:var(--radius);width:100%;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder,textarea::placeholder{color:var(--muted-2)}input:hover,select:hover,textarea:hover{border-color:var(--border-bright)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--glow-primary)}button{font:inherit;font-weight:600;background:var(--primary);color:var(--primary-on);border:0;padding:.6em 1.1em;border-radius:var(--radius);cursor:pointer;letter-spacing:-.005em;transition:background .15s ease,transform .05s ease,box-shadow .15s ease;display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap;box-shadow:var(--shadow-sm)}button:hover{background:var(--primary-hover);color:#fff}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:var(--glow-primary)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button.ghost{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm)}button.ghost:hover{background:var(--surface-3);border-color:var(--border-bright)}button.danger{color:var(--danger);background:var(--surface);border:1px solid rgba(220,38,38,.4)}button.danger:hover{background:var(--danger-soft)}button.subtle{background:var(--surface-3);color:var(--text);box-shadow:none}button.subtle:hover{background:var(--bg-2)}.loading{display:grid;place-items:center;height:60vh;color:var(--muted);font-size:.95rem}.skeleton{background:linear-gradient(90deg,#e4e7ec80,#e4e7ece6,#e4e7ec80);background-size:200% 100%;animation:skeleton-pulse 1.4s ease-in-out infinite;border-radius:6px}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm)}.empty-state{display:grid;place-items:center;text-align:center;padding:var(--space-12) var(--space-4);color:var(--muted)}.empty-state-icon{font-size:2.4rem;margin-bottom:var(--space-3);opacity:.55}.empty-state h3{margin:var(--space-2) 0 var(--space-2);color:var(--text)}.empty-state p{max-width:360px;font-size:.9rem;line-height:1.6}.empty-state-action{margin-top:var(--space-5)}.empty-state.error .empty-state-icon{color:var(--danger);opacity:1}.error{background:var(--danger-soft);color:#991b1b;border:1px solid rgba(220,38,38,.3);border-radius:var(--radius);padding:var(--space-3) var(--space-4);font-size:.9rem}.login-screen{min-height:100vh;display:grid;place-items:center;padding:var(--space-4);background:linear-gradient(180deg,var(--bg) 0%,#ffffff 100%);position:relative;overflow:hidden}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.login-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(16,185,129,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(16,185,129,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%)}.login-card{background:var(--surface);padding:var(--space-8) var(--space-6) var(--space-6);border-radius:var(--radius-xl);width:100%;max-width:440px;border:1px solid var(--border);box-shadow:0 30px 80px #10182824,0 12px 24px #10b98124,inset 0 1px #ffffffe6;position:relative;z-index:1;animation:float 9s ease-in-out infinite}.login-card:before{content:"";position:absolute;top:-16%;right:-8%;bottom:-10%;left:-8%;border-radius:32px;background:radial-gradient(ellipse 70% 65% at 50% 50%,rgba(16,185,129,.18) 0%,transparent 70%);filter:blur(36px);z-index:-1;animation:glow-pulse 5s ease-in-out infinite}.login-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:4px;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.login-live-pill{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.04em;color:var(--primary-deep);background:var(--primary-soft);padding:5px 12px;border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.28);margin-bottom:var(--space-4);font-weight:600}.login-live-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);animation:charging-pulse 1.6s ease-in-out infinite}.landing-section-dark{background:#0a0e16;color:#e6ebf5;position:relative;overflow:hidden;margin:0;max-width:100%;padding:var(--space-12) var(--space-8)}.landing-section-dark:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 50% 40% at 80% 10%,rgba(16,185,129,.18) 0%,transparent 60%),radial-gradient(ellipse 40% 35% at 10% 90%,rgba(16,185,129,.1) 0%,transparent 60%);filter:blur(40px);pointer-events:none;animation:mesh-shift 20s ease-in-out infinite alternate}.landing-section-dark:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%);pointer-events:none}.landing-section-dark>*{position:relative;z-index:1;max-width:1480px;margin-left:auto;margin-right:auto}.landing-section-dark .landing-section-head h2{color:#fff}.landing-section-dark .landing-section-tag{color:var(--primary-strong)}.landing-section-dark .landing-section-head p{color:#98a2b3}.product-showcase{max-width:1480px;margin:0 auto;padding:var(--space-12) var(--space-8) var(--space-12)}.product-showcase-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(var(--space-6),4vw,var(--space-10));align-items:center}@media (max-width: 980px){.product-showcase-grid{grid-template-columns:1fr}}.product-showcase-grid.reverse{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.product-showcase-grid.reverse .product-showcase-text{order:2}@media (max-width: 980px){.product-showcase-grid.reverse{grid-template-columns:1fr}.product-showcase-grid.reverse .product-showcase-text{order:1}}.product-showcase-text{display:grid;gap:var(--space-3)}.product-showcase-text .landing-section-tag{align-self:start}.product-showcase-text h2{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--text-strong)}.product-showcase-text p{color:var(--muted);font-size:1rem;line-height:1.65;max-width:460px}.product-showcase-features{list-style:none;padding:0;margin:var(--space-3) 0 0;display:grid;gap:var(--space-3)}.product-showcase-features li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:.92rem;color:var(--text)}.product-showcase-features li svg{width:18px;height:18px;flex-shrink:0;color:var(--primary);margin-top:2px}.product-showcase-features strong{color:var(--text-strong);font-weight:600}.product-phone-wrap{display:grid;place-items:center;position:relative;padding:var(--space-6) 0}.product-phone{position:relative;width:300px;height:600px;background:#0a0e16;border-radius:38px;padding:12px;box-shadow:0 30px 80px #10182833,0 12px 24px #10b9811a,inset 0 0 0 2px #1f2937;animation:float 9s ease-in-out infinite}.product-phone-screen{width:100%;height:100%;background:var(--surface);border-radius:28px;overflow:hidden;display:flex;flex-direction:column}.product-phone-notch{position:absolute;top:18px;left:50%;transform:translate(-50%);width:100px;height:22px;background:#0a0e16;border-radius:12px;z-index:2}.phone-screen-content{padding:38px 16px 16px;display:grid;gap:12px;font-size:12px}.phone-balance{background:radial-gradient(ellipse 80% 60% at 100% 0%,rgba(16,185,129,.1) 0%,transparent 70%),var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;position:relative;overflow:hidden}.phone-balance:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.phone-balance-label{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.phone-balance-amount{font-size:28px;font-weight:800;letter-spacing:-.03em;margin:4px 0;color:var(--text-strong);font-variant-numeric:tabular-nums}.phone-balance-sub{font-size:10px;color:var(--muted)}.phone-section-title{font-size:13px;font-weight:700;color:var(--text-strong);margin:4px 0 0}.phone-charger{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px}.phone-charger-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 2px var(--primary-soft);flex-shrink:0}.phone-charger-info{flex:1;min-width:0;display:grid;gap:1px}.phone-charger-info strong{font-size:11px;color:var(--text-strong);font-weight:700}.phone-charger-info em{font-style:normal;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-deep);background:var(--primary-soft);padding:2px 6px;border-radius:999px;align-self:flex-start;border:1px solid rgba(16,185,129,.28)}.phone-charger-cta{background:var(--primary);color:var(--primary-on);font-size:9px;font-weight:700;padding:6px 10px;border-radius:999px}.product-desktop-wrap{display:grid;place-items:center;position:relative;padding:var(--space-6) 0}.product-desktop{position:relative;width:100%;max-width:760px;background:#0a0e16;border-radius:14px;padding:8px 8px 14px;box-shadow:0 30px 80px #1018282e,0 14px 28px #10b9811a;animation:float 11s ease-in-out infinite}.product-desktop:after{content:"";position:absolute;bottom:-18px;left:50%;transform:translate(-50%);width:60%;height:6px;background:#1018282e;border-radius:50%;filter:blur(8px)}.product-desktop-bar{display:flex;align-items:center;gap:6px;padding:4px 8px 8px}.product-desktop-bar span{width:9px;height:9px;border-radius:50%;background:#1f2937}.product-desktop-bar span:nth-child(1){background:#ef4444}.product-desktop-bar span:nth-child(2){background:#f59e0b}.product-desktop-bar span:nth-child(3){background:#10b981}.product-desktop-bar em{margin-left:8px;font-style:normal;font-size:11px;font-family:var(--font-mono);color:#475467}.product-desktop-screen{background:var(--surface);border-radius:8px;padding:16px;display:grid;gap:14px}.desk-topbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:10px}.desk-topbar-brand{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text-strong)}.desk-topbar-brand .brand-bolt{width:22px;height:22px;font-size:12px}.desk-topbar-pill{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--primary-deep);background:var(--primary-soft);padding:3px 9px;border-radius:999px;border:1px solid rgba(16,185,129,.28);font-weight:600}.desk-topbar-pill:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--primary);animation:charging-pulse 1.6s ease-in-out infinite}.desk-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.desk-kpi{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:grid;gap:2px}.desk-kpi-label{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.desk-kpi-value{font-size:22px;font-weight:800;letter-spacing:-.03em;color:var(--text-strong);font-variant-numeric:tabular-nums;line-height:1}.desk-kpi-sub{font-size:9px;color:var(--muted)}.desk-kpi.accent{position:relative;overflow:hidden}.desk-kpi.accent:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.desk-kpi.accent .desk-kpi-value{color:var(--primary-deep)}.desk-chart{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;display:grid;gap:8px}.desk-chart-title{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.desk-chart-svg{width:100%;height:110px}.product-anno{position:absolute;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:11px;font-weight:600;color:var(--text-strong);box-shadow:0 8px 22px #1018281f;display:flex;align-items:center;gap:8px;white-space:nowrap;z-index:3}.product-anno:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);animation:charging-pulse 2s ease-in-out infinite}.product-anno-1{top:18%;right:-10px;animation:float 8s ease-in-out infinite}.product-anno-2{bottom:22%;left:-20px;animation:float 7s ease-in-out infinite reverse}.eco-diagram{position:relative;margin:var(--space-8) auto 0;max-width:980px;height:520px}@media (max-width: 800px){.eco-diagram{height:720px}}.eco-svg-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.eco-line{stroke:#10b98180;stroke-width:1.5;fill:none;stroke-dasharray:5 5;animation:dash-travel 18s linear infinite}@keyframes dash-travel{to{stroke-dashoffset:-200}}.eco-node{position:absolute;background:#ffffff0a;border:1px solid rgba(16,185,129,.32);border-radius:14px;padding:var(--space-3) var(--space-4);display:flex;align-items:center;gap:var(--space-3);min-width:180px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.eco-node:hover{transform:translateY(-3px);border-color:var(--primary);box-shadow:0 14px 32px #10b98152}.eco-node-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#10b98133,#10b9810a);border:1px solid rgba(16,185,129,.32);color:var(--primary-strong);display:grid;place-items:center;flex-shrink:0}.eco-node-icon svg{width:20px;height:20px}.eco-node-label{display:grid;gap:1px}.eco-node-label strong{font-size:.92rem;color:#fff;font-weight:700}.eco-node-label span{font-size:.72rem;color:#98a2b3}.eco-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:110px;height:110px;border-radius:28px;background:linear-gradient(135deg,var(--primary-strong) 0%,var(--primary-deep) 100%);display:grid;place-items:center;color:var(--primary-on);font-weight:800;font-size:.92rem;letter-spacing:-.01em;box-shadow:0 24px 56px #10b98173,inset 0 1px #fff6;z-index:2}.eco-center:before{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:32px;background:radial-gradient(ellipse 70% 65% at 50% 50%,rgba(16,185,129,.45) 0%,transparent 70%);filter:blur(20px);z-index:-1;animation:glow-pulse 4s ease-in-out infinite}.eco-center-bolt{font-size:1.6rem;line-height:1;margin-bottom:4px}.eco-node-1{top:6%;left:4%}.eco-node-2{top:6%;right:4%}.eco-node-3{bottom:6%;left:4%}.eco-node-4{bottom:6%;right:4%}@media (max-width: 800px){.eco-node{min-width:0;padding:var(--space-2) var(--space-3)}.eco-node-1{top:2%;left:50%;transform:translate(-50%)}.eco-node-2{top:22%;right:2%}.eco-node-3{bottom:22%;left:2%}.eco-node-4{bottom:2%;left:50%;transform:translate(-50%)}}.landing-section-dark .howto-grid li{background:#ffffff0a;border-color:#ffffff1a}.landing-section-dark .howto-grid li h3{color:#fff}.landing-section-dark .howto-grid li p{color:#98a2b3}.login-brand{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:linear-gradient(135deg,var(--primary-strong) 0%,var(--primary-deep) 100%);border-radius:11px;font-size:1.4rem;color:var(--primary-on);box-shadow:0 4px 14px #10b98152}.login-card h1{margin:0;font-size:1.75rem;font-weight:700}.login-card .subtitle{color:var(--muted);margin:0 0 var(--space-6);font-size:.92rem;line-height:1.5}.login-card form{display:grid;gap:var(--space-3)}.login-card label{display:grid;gap:6px;font-size:.78rem;color:var(--text);font-weight:500}.login-card button[type=submit]{margin-top:var(--space-2);padding:.95em 1.2em;font-weight:700;font-size:.95rem;background:var(--primary);color:var(--primary-on);justify-content:center;border-radius:var(--radius-full);box-shadow:0 6px 18px #10b98147}.login-card button[type=submit]:hover{background:var(--primary-hover);color:#fff;box-shadow:0 8px 22px #10b98161}.login-footer{text-align:center;margin-top:var(--space-6);color:var(--muted);font-size:.72rem}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-6);background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;gap:var(--space-3)}@media (max-width: 640px){.topbar{padding:var(--space-3) var(--space-4)}}.brand{display:flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:1rem;color:var(--text-strong);flex-shrink:0;letter-spacing:-.015em}.brand-bolt{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:linear-gradient(135deg,var(--primary-strong) 0%,var(--primary-deep) 100%);font-size:.95rem;color:var(--primary-on);box-shadow:0 2px 8px #10b98147}.topbar nav{display:flex;gap:var(--space-1);align-items:center;flex-wrap:wrap;justify-content:flex-end;min-width:0}.topbar nav a{color:var(--muted);padding:.5em .85em;border-radius:8px;white-space:nowrap;font-size:.88rem;font-weight:500;transition:all .12s ease}.topbar nav a:hover{color:var(--text-strong);background:var(--surface-3)}.topbar nav a.active{color:var(--primary);background:var(--primary-soft)}.topbar nav button.ghost{padding:.5em .85em;font-size:.88rem;box-shadow:none}.user-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:.35em .85em;font-size:.8rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text);font-weight:500;box-shadow:var(--shadow-sm)}.user-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}@media (max-width: 640px){.user-pill{display:none}.topbar nav a{padding:.4em .6em;font-size:.85rem}}main{padding:var(--space-6) var(--space-6);max-width:1120px;margin:0 auto;width:100%}@media (max-width: 640px){main{padding:var(--space-4)}}main:has(.admin-layout){max-width:1320px}.page-intro{background:var(--primary-soft);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);margin:var(--space-3) 0 var(--space-6);display:flex;gap:var(--space-3);align-items:flex-start}.page-intro-icon{font-size:1.15rem;line-height:1;margin-top:2px;flex-shrink:0}.page-intro-text{font-size:.86rem;color:var(--text);line-height:1.55}.page-intro-text strong{color:var(--text-strong);font-weight:600}.page-intro-text code{background:#10b98124;color:var(--primary-deep);padding:.1em .4em;border-radius:4px;font-size:.88em}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.card:hover{box-shadow:var(--shadow)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3);margin-bottom:var(--space-6)}.kpi-grid.kpi-4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);display:grid;gap:var(--space-2);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease,transform .15s ease;min-height:132px}.kpi:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.kpi.accent{background:var(--surface);border-color:var(--border);position:relative;overflow:hidden}.kpi.accent:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.kpi.accent .kpi-value{color:var(--primary-deep)}.kpi-label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.kpi-value{font-size:2.6rem;font-weight:800;letter-spacing:-.035em;line-height:1;color:var(--text-strong);font-variant-numeric:tabular-nums;margin-top:2px}.kpi-sub{color:var(--muted);font-size:.82rem;margin-top:4px}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-3);box-shadow:var(--shadow-sm)}.chart-card h3{margin:0 0 var(--space-4);font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.07em}.home{display:grid;gap:var(--space-4)}.balance-card{background:radial-gradient(ellipse 80% 60% at 100% 0%,rgba(16,185,129,.08) 0%,transparent 70%),var(--surface);padding:var(--space-6) var(--space-8);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow);position:relative;overflow:hidden}.balance-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.balance-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.balance-amount{font-size:3.2rem;font-weight:800;margin:var(--space-2) 0 var(--space-3);letter-spacing:-.04em;line-height:1;color:var(--text-strong);font-variant-numeric:tabular-nums}.balance-sites{list-style:none;padding:0;margin:var(--space-4) 0 0;display:grid;gap:0}.balance-sites li{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;padding:var(--space-2) 0;border-top:1px solid var(--border)}.balance-sites li:first-child{border-top:0;padding-top:0}.balance-sites li span{color:var(--muted)}.balance-sites li strong{color:var(--text-strong);font-variant-numeric:tabular-nums;font-weight:600}.active-session{background:var(--surface);border:1px solid rgba(16,185,129,.5);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);position:relative;overflow:hidden;box-shadow:0 8px 24px #10b9811f}.active-label{display:flex;align-items:center;gap:var(--space-2);font-size:.7rem;text-transform:uppercase;color:var(--primary-deep);letter-spacing:.08em;font-weight:700}.active-label:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft);animation:charging-pulse 2s ease-in-out infinite}.active-charger{font-weight:600;margin:var(--space-3) 0 var(--space-4);font-size:1rem;color:var(--text-strong)}.active-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.active-stats>div{text-align:left}.active-stats span{color:var(--muted);font-size:.7rem;display:block;text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:4px}.active-stats strong{font-size:1.7rem;font-weight:800;letter-spacing:-.025em;color:var(--text-strong);font-variant-numeric:tabular-nums}.soc-bar-wrapper{margin:var(--space-3) 0 var(--space-2);display:grid;gap:6px}.soc-label{display:flex;justify-content:space-between;align-items:baseline;font-size:.85rem;color:var(--muted)}.soc-label strong{color:var(--text-strong);font-size:1.05rem;margin-left:4px;font-weight:700}.eta{font-size:.72rem;color:var(--accent);font-weight:500}.soc-bar{height:8px;background:var(--bg-2);border-radius:var(--radius-full);overflow:hidden}.soc-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--accent) 100%);transition:width 1s ease-out}.sites{display:grid;gap:var(--space-4)}.sites>h2{margin-bottom:0}.sites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:var(--space-4)}@media (max-width: 720px){.sites-grid{grid-template-columns:1fr}}.site-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease,border-color .15s ease}.site-card:hover{box-shadow:var(--shadow);border-color:var(--border-strong)}.site-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.site-head strong{font-size:1.1rem;color:var(--text-strong);letter-spacing:-.015em}.site-address{color:var(--muted);font-size:.86rem}.badge{background:var(--primary-soft);color:var(--primary-deep);padding:5px 12px;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums;border:1px solid rgba(16,185,129,.28)}.charger-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-3)}.charger-list li{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);font-size:.9rem;transition:border-color .15s ease,box-shadow .15s ease,transform .05s ease}.charger-list li:hover{border-color:#10b98159;box-shadow:0 4px 14px #10b9811a}.charger-list li.offline{opacity:.55}.charger-list li em{margin-left:auto;color:var(--muted);font-size:.7rem;font-style:normal;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.charger-list li .charger-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:4px}.charger-list li .charger-info strong{font-weight:700;color:var(--text-strong);font-size:.95rem;letter-spacing:-.005em}.charger-list li .charger-info em{margin-left:0;align-self:flex-start;display:inline-block;padding:3px 10px;border-radius:var(--radius-full);font-size:.66rem;font-weight:700;background:var(--primary-soft);color:var(--primary-deep);border:1px solid rgba(16,185,129,.28)}.charger-list li.offline .charger-info em{background:var(--bg-2);color:var(--muted);border-color:var(--border)}.start-btn{padding:.55em 1.15em;font-size:.85rem;background:var(--primary);color:var(--primary-on);font-weight:700;border-radius:var(--radius-full);letter-spacing:-.01em}.start-btn:hover{background:var(--primary-hover);color:#fff}.start-btn:disabled{cursor:progress}.success-banner{background:var(--primary-soft);border:1px solid rgba(16,185,129,.32);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);margin-bottom:var(--space-3);display:grid;gap:4px}.success-banner strong{color:var(--primary-deep);font-weight:700}.success-banner span{color:var(--text);font-size:.88rem}.status{width:9px;height:9px;border-radius:50%;background:var(--muted-2);flex-shrink:0;box-shadow:0 0 0 3px transparent;transition:box-shadow .2s ease}.status-available{background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.status-charging{background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);animation:charging-pulse 2s ease-in-out infinite}.status-faulted{background:var(--danger);box-shadow:0 0 0 3px #dc262629}.status-preparing,.status-finishing{background:var(--warning);box-shadow:0 0 0 3px #d9770629}@keyframes charging-pulse{0%,to{box-shadow:0 0 0 3px var(--primary-soft)}50%{box-shadow:0 0 0 8px #10b9810a}}.history h2{font-size:1.4rem;margin-bottom:var(--space-4)}.history-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.history-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.history-list li:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.history-link{display:block;color:inherit;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md)}.history-head{display:flex;justify-content:space-between;font-size:.88rem;color:var(--muted)}.history-head strong{color:var(--text-strong);font-weight:600}.history-body{display:flex;justify-content:space-between;margin:var(--space-2) 0;font-variant-numeric:tabular-nums}.history-body strong{font-weight:600;color:var(--text-strong)}.history-status{display:inline-block;font-size:.68rem;padding:2px 8px;border-radius:4px;background:var(--bg-2);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.history-status.status-completed{color:var(--primary-deep);background:var(--primary-soft)}.history-status.status-cancelled{color:var(--muted)}.history-status.status-errored{color:var(--danger);background:var(--danger-soft)}.history-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-2)}.chevron{color:var(--muted-2);font-size:1.2rem}.session-detail{display:grid;gap:var(--space-3)}.back-link{font-size:.85rem;color:var(--muted);display:inline-flex;align-items:center;gap:4px;font-weight:500}.back-link:hover{color:var(--text)}.session-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-top:var(--space-2);margin-bottom:var(--space-2)}.session-header h2{margin:0}.session-header p{margin:4px 0 0;color:var(--muted);font-size:.9rem}.session-badge{padding:4px 12px;border-radius:var(--radius-full);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:var(--bg-2);color:var(--muted);font-weight:600;white-space:nowrap}.session-badge.status-completed,.session-badge.status-active{background:var(--primary-soft);color:var(--primary-deep)}.session-badge.status-cancelled{background:var(--bg-2);color:var(--muted)}.session-meta{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);display:grid;gap:6px;box-shadow:var(--shadow-sm)}.meta-row{display:flex;justify-content:space-between;font-size:.88rem;padding:4px 0;font-variant-numeric:tabular-nums}.meta-row span{color:var(--muted)}.meta-row strong{color:var(--text-strong);font-weight:500}.receipt-btn-large{width:100%;padding:.95em;background:var(--primary);color:var(--primary-on);font-weight:700;font-size:.92rem;border-radius:var(--radius);margin-top:var(--space-2);justify-content:center}.receipt-btn-large:hover{background:var(--primary-hover);color:#fff}.receipt-btn{padding:.4em .8em;font-size:.78rem;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);font-weight:500}.receipt-btn:hover{background:var(--surface-3)}.owner{display:grid;gap:var(--space-4)}.owner-header{margin-bottom:0;display:grid;gap:4px}.owner-header h2{margin:0;font-size:1.5rem}.owner-header select{font:inherit;background:var(--surface);color:var(--text-strong);border:1px solid var(--border-strong);padding:.55em .9em;border-radius:var(--radius);font-size:.95rem;font-weight:600;width:auto;max-width:320px;box-shadow:var(--shadow-sm)}.owner-charts{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-3)}@media (max-width: 800px){.owner-charts{grid-template-columns:1fr}}.chargers-section h3{font-size:1rem;margin:var(--space-2) 0 var(--space-3)}.chargers-section .charger-list>li{display:grid;gap:var(--space-2)}.charger-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.charger-row strong{font-family:var(--font-mono);font-size:.88rem}.charger-status{margin-left:auto;color:var(--muted);font-style:normal;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.connector-row{display:flex;gap:var(--space-4);flex-wrap:wrap;font-size:.84rem}.error-code{color:var(--danger);font-style:normal}.muted{color:var(--muted)}.muted.small{font-size:.78rem}.cashier h2{font-size:1.5rem;margin-bottom:var(--space-3)}.cashier-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);display:grid;gap:var(--space-4);max-width:480px;box-shadow:var(--shadow-sm)}.cashier-form label{display:grid;gap:6px;color:var(--text);font-size:.78rem;font-weight:500}.cashier-form .row{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.cashier-form .row.between{justify-content:space-between;align-items:center}.link-btn{display:inline-flex;align-items:center;padding:.6em 1.05em;background:var(--surface);color:var(--text);border-radius:var(--radius);font-size:.88rem;font-weight:500;border:1px solid var(--border-strong)}.link-btn:hover{background:var(--surface-3)}.link-btn.ghost{background:transparent}.cashier-card-detail{display:grid;gap:var(--space-3);max-width:480px}.cashier-card-detail .row.between{display:flex;justify-content:space-between;align-items:center}.balance-card.small{padding:var(--space-5);border-radius:var(--radius-md)}.balance-card.small .balance-amount{font-size:2rem}.cashier-success{background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius-md);padding:var(--space-6);display:grid;gap:var(--space-3);max-width:480px;text-align:center;box-shadow:var(--shadow)}.success-icon{font-size:3rem;color:var(--accent);line-height:1}.cashier-success h3{margin:0}.receipt{background:var(--bg-2);padding:var(--space-4) var(--space-5);border-radius:var(--radius);display:grid;gap:var(--space-2);text-align:left;border:1px solid var(--border)}.receipt-row{display:flex;justify-content:space-between;font-size:.88rem;font-variant-numeric:tabular-nums}.receipt-row span{color:var(--muted)}.receipt-row strong{color:var(--text-strong);font-weight:500}.admin-layout{display:grid;grid-template-columns:220px 1fr;gap:var(--space-6);align-items:start}@media (max-width: 800px){.admin-layout{grid-template-columns:1fr}}.admin-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);position:sticky;top:calc(56px + var(--space-4));box-shadow:var(--shadow-sm)}.admin-sidebar-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:var(--space-3);padding:0 var(--space-3);font-weight:700}.admin-sidebar nav{display:grid;gap:2px}.admin-sidebar nav a{display:block;padding:.55em .85em;color:var(--muted);border-radius:7px;font-size:.88rem;font-weight:500}.admin-sidebar nav a:hover{color:var(--text-strong);background:var(--surface-3)}.admin-sidebar nav a.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.admin-content{min-width:0;display:grid;gap:var(--space-4)}.admin-page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.admin-page-header h2{margin:0}.admin-page-header p{margin:4px 0 0;font-size:.86rem;color:var(--muted)}.live-badge{background:var(--primary-soft);color:var(--primary-deep);padding:5px 14px;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(16,185,129,.28)}.live-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px #10b9812e;animation:charging-pulse 2s ease-in-out infinite}.admin-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto;box-shadow:var(--shadow-sm)}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th,.admin-table td{text-align:left;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border)}.admin-table th{background:var(--bg-2);color:var(--muted);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--surface-3)}.admin-table code{font-size:.85em;background:var(--bg-2);padding:2px 6px;border-radius:4px;border:1px solid var(--border);color:var(--text-strong)}.flash{padding:var(--space-3) var(--space-4);border-radius:var(--radius);font-size:.88rem;font-weight:500}.flash.ok{background:var(--primary-soft);border:1px solid rgba(16,185,129,.4);color:var(--primary-deep)}.flash.err{background:var(--danger-soft);border:1px solid rgba(220,38,38,.4);color:#991b1b}.charger-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3)}.charger-tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);display:grid;gap:var(--space-3);box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.charger-tile:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.charger-tile.offline{opacity:.6}.charger-tile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2)}.charger-tile-head strong{font-family:var(--font-mono);font-size:.88rem;color:var(--text-strong)}.charger-tile-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.82rem}.charger-tile-connectors{display:flex;gap:var(--space-2);flex-wrap:wrap}.connector-pill{font-size:.68rem;padding:3px 8px;border-radius:4px;background:var(--bg-2);color:var(--muted);font-weight:600;border:1px solid var(--border)}.connector-pill.status-available,.connector-pill.status-charging{color:var(--primary-deep);background:var(--primary-soft);border-color:#10b98152}.connector-pill.status-faulted{color:var(--danger);background:var(--danger-soft);border-color:#dc26264d}.charger-tile-actions{display:flex;gap:var(--space-2);margin-top:4px}.charger-tile-actions button{padding:.4em .85em;font-size:.82rem;flex:1;justify-content:center}.status-pill{font-size:.68rem;padding:3px 9px;border-radius:4px;background:var(--bg-2);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;white-space:nowrap;border:1px solid var(--border)}.status-pill.status-available,.status-pill.status-charging{background:var(--primary-soft);color:var(--primary-deep);border-color:#10b98152}.status-pill.status-offline{background:var(--bg-2);color:var(--muted)}.status-pill.status-faulted,.status-pill.status-archived{background:var(--danger-soft);color:var(--danger);border-color:#dc26264d}.status-pill.status-active{background:var(--primary-soft);color:var(--primary-deep);border-color:#10b98152}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.checkbox-row{display:flex;align-items:center;gap:var(--space-2);font-size:.88rem;color:var(--text);margin-top:var(--space-2)}.checkbox-row input{width:auto}.landing{min-height:100vh;background:var(--surface);color:var(--text);overflow-x:hidden}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-8);max-width:1480px;margin:0 auto;gap:var(--space-4);position:relative;z-index:5}.landing-nav-links{display:flex;align-items:center;gap:var(--space-2)}.landing-nav-links a{color:var(--muted);font-size:.92rem;font-weight:500;padding:.5em .9em;border-radius:var(--radius);transition:color .12s ease,background .12s ease}.landing-nav-links a:hover{color:var(--text-strong);background:var(--surface-3)}.landing-cta-pill{background:var(--primary);color:var(--primary-on)!important;padding:.55em 1.2em!important;border-radius:var(--radius-full)!important;font-weight:700!important;box-shadow:0 4px 14px #10b98147}.landing-cta-pill:hover{background:var(--primary-hover)!important;color:#fff!important}@media (max-width: 720px){.landing-nav{padding:var(--space-3) var(--space-4)}.landing-nav-links a:not(.landing-cta-pill){display:none}}.landing-hero{position:relative;padding:var(--space-12) var(--space-8) var(--space-12);min-height:clamp(620px,84vh,880px);display:grid;align-items:center}.landing-hero-content,.landing-hero-visual{position:relative;z-index:2}.landing-hero-content{max-width:640px}@media (min-width: 1280px){.landing-hero-content{max-width:720px}}.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(var(--space-8),6vw,var(--space-12));max-width:1480px;margin:0 auto;width:100%}@media (max-width: 980px){.landing-hero{grid-template-columns:1fr;gap:var(--space-8);padding:var(--space-10) var(--space-4);min-height:0}}.landing-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.landing-mesh{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(ellipse 50% 40% at 80% 10%,rgba(16,185,129,.22) 0%,transparent 60%),radial-gradient(ellipse 40% 35% at 10% 90%,rgba(52,211,153,.18) 0%,transparent 60%),radial-gradient(ellipse 35% 30% at 95% 95%,rgba(4,120,87,.1) 0%,transparent 65%);filter:blur(40px);animation:mesh-shift 18s ease-in-out infinite alternate}@keyframes mesh-shift{0%{transform:translate(0) scale(1)}50%{transform:translate(-3%,2%) scale(1.04)}to{transform:translate(2%,-2%) scale(.98)}}.landing-hero-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(16,185,129,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(16,185,129,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 80%)}.landing-constellation{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.85}.landing-constellation .node circle:last-child{filter:drop-shadow(0 0 6px rgba(16,185,129,.55));animation:node-pulse 3.4s ease-in-out infinite}.landing-constellation .node-0 circle:last-child{animation-delay:0s}.landing-constellation .node-1 circle:last-child{animation-delay:.4s}.landing-constellation .node-2 circle:last-child{animation-delay:.8s}.landing-constellation .node-3 circle:last-child{animation-delay:1.2s}.landing-constellation .node-4 circle:last-child{animation-delay:1.6s}.landing-constellation .node-5 circle:last-child{animation-delay:2s}.landing-constellation .node-6 circle:last-child{animation-delay:2.4s}.landing-constellation .node-7 circle:last-child{animation-delay:2.8s}.landing-constellation .node circle:first-child{animation:node-glow 3.4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes node-pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes node-glow{0%,to{transform:scale(.8);opacity:.3}50%{transform:scale(1.15);opacity:.7}}.landing-eyebrow{display:inline-block;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--primary-deep);font-weight:700;background:var(--primary-soft);padding:6px 14px;border-radius:var(--radius-full);margin-bottom:var(--space-4);border:1px solid rgba(16,185,129,.22)}.landing-hero h1{font-size:clamp(2.4rem,5.4vw,4.6rem);font-weight:800;line-height:1;letter-spacing:-.045em;color:var(--text-strong);margin-bottom:var(--space-5)}.landing-hero h1 .hl{background:linear-gradient(120deg,var(--primary) 0%,var(--primary-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}.landing-lede{font-size:1.05rem;line-height:1.6;color:var(--muted);max-width:540px;margin-bottom:var(--space-6)}.landing-hero-ctas{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-8)}.landing-cta-primary{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:1em 1.7em;background:var(--primary);color:var(--primary-on);border-radius:var(--radius-full);font-weight:700;font-size:.95rem;letter-spacing:-.005em;box-shadow:0 10px 26px #10b9815c,inset 0 1px #fff6;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;overflow:hidden;isolation:isolate}.landing-cta-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);transform:translate(-110%);transition:transform .7s ease;z-index:-1}.landing-cta-primary:hover{background:var(--primary-hover);color:#fff;box-shadow:0 14px 36px #10b98180,inset 0 1px #ffffff4d;transform:translateY(-2px)}.landing-cta-primary:hover:after{transform:translate(110%)}.landing-cta-secondary{display:inline-flex;align-items:center;gap:var(--space-2);padding:.95em 1.4em;background:transparent;color:var(--text-strong);border-radius:var(--radius-full);font-weight:600;font-size:.95rem;border:1px solid var(--border-strong);transition:background .12s ease,border-color .12s ease}.landing-cta-secondary:hover{background:var(--surface-3);border-color:var(--border-bright)}.landing-hero-stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);border-top:1px solid var(--border);padding-top:var(--space-5);max-width:540px}.landing-hero-stats li{display:grid;gap:4px}.landing-hero-stats strong{font-size:1.5rem;font-weight:800;color:var(--text-strong);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.landing-hero-stats span{font-size:.78rem;color:var(--muted);line-height:1.3}.landing-hero-visual{display:grid;place-items:center;position:relative}.hero-mock-orbit{position:relative;width:100%;max-width:440px;animation:float 8s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-12px) rotate(.4deg)}}.hero-mock-glow{position:absolute;top:-12%;right:-8%;bottom:-10%;left:-8%;border-radius:32px;background:radial-gradient(ellipse 70% 65% at 50% 50%,rgba(16,185,129,.3) 0%,transparent 70%);filter:blur(28px);animation:glow-pulse 4.5s ease-in-out infinite;z-index:0}@keyframes glow-pulse{0%,to{opacity:.7}50%{opacity:1}}.hero-mock{position:relative;z-index:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-6);width:100%;box-shadow:0 30px 80px #10182824,0 12px 24px #10b98129,inset 0 1px #ffffffe6;display:grid;gap:var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-mock:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%)}.hero-mock-head{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.hero-mock-head strong{font-family:var(--font-mono);font-size:.9rem;color:var(--text-strong)}.hero-mock-head em{margin-left:auto;font-style:normal;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--primary-deep);background:var(--primary-soft);padding:4px 10px;border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.28)}.hero-mock-dot{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);animation:charging-pulse 2s ease-in-out infinite;flex-shrink:0}.hero-mock-kpi{display:grid;gap:4px}.hero-mock-kpi span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.hero-mock-kpi strong{font-size:2.6rem;font-weight:800;letter-spacing:-.035em;color:var(--text-strong);font-variant-numeric:tabular-nums;line-height:1}.live-num{position:relative;display:inline-block;animation:live-flick 1.4s ease-in-out;animation-iteration-count:1}.hero-mock-bar{height:8px;background:var(--bg-2);border-radius:var(--radius-full);overflow:hidden;position:relative}.hero-mock-fill{height:100%;background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%);box-shadow:0 0 10px #10b98199;transition:width 1.4s cubic-bezier(.4,0,.2,1)}.hero-mock-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.88rem;font-variant-numeric:tabular-nums;padding-top:var(--space-2);border-top:1px dashed var(--border)}.hero-mock-row span{color:var(--muted)}.hero-mock-row strong{color:var(--text-strong);font-weight:700}.hero-mock-pulse{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.hero-mock-pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);animation:charging-pulse 1.6s ease-in-out infinite}.hero-mock-pulse-text{font-family:var(--font-mono);font-size:.7rem;color:var(--muted);letter-spacing:.04em}@keyframes live-flick{0%{opacity:.55}20%{opacity:1}to{opacity:1}}.landing-section{max-width:1480px;margin:0 auto;padding:var(--space-12) var(--space-8)}.landing-section-alt{background:var(--bg);margin:0;max-width:100%}.landing-section-alt>*{max-width:1480px;margin-left:auto;margin-right:auto}.landing-section-head{display:grid;gap:var(--space-3);margin-bottom:var(--space-10);text-align:center;max-width:720px;margin-left:auto;margin-right:auto}.landing-section-tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--primary-deep);font-weight:700}.landing-section-head h2{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;color:var(--text-strong);line-height:1.15}@media (max-width: 720px){.landing-section{padding:var(--space-10) var(--space-4)}}.audience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-5)}.audience-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6) var(--space-6);display:grid;gap:var(--space-3);box-shadow:0 1px 2px #1018280a,0 4px 12px #1018280a;transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease;overflow:hidden;isolation:isolate}.audience-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary-strong) 0%,var(--primary-deep) 100%);transform:scaleX(.18);transform-origin:left;transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:1}.audience-card:hover{box-shadow:0 24px 48px #1018281a,0 8px 16px #10b9812e;transform:translateY(-6px);border-color:#10b98173}.audience-card:hover:before{transform:scaleX(1)}.audience-card-host{background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(16,185,129,.1) 0%,transparent 70%),var(--surface);border-color:#10b98173;box-shadow:0 12px 32px #10b98124,0 2px 6px #10b98114}.audience-card-host:before{transform:scaleX(1)}.audience-number{position:absolute;top:-22px;right:-8px;font-family:var(--font-mono);font-size:8rem;font-weight:800;line-height:1;letter-spacing:-.05em;color:#10b9810f;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;transition:color .3s ease,transform .3s ease}.audience-card:hover .audience-number{color:#10b9811f;transform:translateY(2px) translate(-2px)}.audience-card-host .audience-number{color:#10b9811a}.audience-tag{align-self:start;display:inline-flex;align-items:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--muted);padding:4px 10px;background:var(--surface-3);border-radius:var(--radius-full);border:1px solid var(--border);margin-bottom:var(--space-2);position:relative;z-index:2}.audience-tag-featured{color:var(--primary-deep);background:var(--primary-soft);border-color:#10b98152}.audience-tag-featured:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);margin-right:6px;animation:charging-pulse 2s ease-in-out infinite}.audience-icon{position:relative;z-index:2;width:56px;height:56px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--primary-soft) 0%,rgba(16,185,129,.04) 100%);border:1px solid rgba(16,185,129,.22);color:var(--primary-deep);margin-bottom:var(--space-2);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.audience-icon svg{width:28px;height:28px}.audience-card:hover .audience-icon{transform:scale(1.06) rotate(-2deg);border-color:#10b9818c;box-shadow:0 6px 18px #10b98140}.audience-card h3{font-size:1.2rem;font-weight:700;letter-spacing:-.015em;position:relative;z-index:2}.audience-card p{color:var(--muted);line-height:1.6;font-size:.92rem;position:relative;z-index:2}.audience-card ul{list-style:none;padding:0;margin:var(--space-3) 0 0;display:grid;gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-4);position:relative;z-index:2}.audience-card ul li{position:relative;padding-left:26px;font-size:.9rem;color:var(--text);line-height:1.5}.audience-card ul li:before{content:"";position:absolute;left:0;top:6px;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-deep) 100%);box-shadow:0 0 0 2px var(--primary-soft)}.audience-card ul li:after{content:"";position:absolute;left:4px;top:9px;width:6px;height:4px;border-left:1.6px solid white;border-bottom:1.6px solid white;transform:rotate(-45deg)}.audience-cta{margin-top:var(--space-3);font-weight:700;color:var(--primary-deep);font-size:.92rem;position:relative;z-index:2;display:inline-flex;align-items:center;gap:var(--space-1);transition:gap .2s ease,color .2s ease}.audience-cta:hover{color:var(--primary-hover);gap:var(--space-2)}.howto-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5);counter-reset:howto}.howto-grid li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);display:grid;gap:var(--space-3);position:relative}.howto-num{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--primary);color:var(--primary-on);font-weight:800;font-size:1.05rem;box-shadow:0 4px 12px #10b98147}.howto-grid li h3{font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.howto-grid li p{color:var(--muted);font-size:.92rem;line-height:1.6}.landing-cta-band{padding:var(--space-12) var(--space-8)}.landing-cta-card{background:radial-gradient(ellipse 70% 50% at 80% 0%,rgba(16,185,129,.12) 0%,transparent 70%),var(--surface);border:1px solid rgba(16,185,129,.28);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-8);text-align:center;display:grid;gap:var(--space-4);max-width:880px;margin:0 auto;box-shadow:0 12px 32px #10b9811a}.landing-cta-card h2{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:800;letter-spacing:-.025em;color:var(--text-strong)}.landing-cta-card p{color:var(--muted);font-size:1rem;line-height:1.6;max-width:600px;margin:0 auto}.landing-cta-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap;margin-top:var(--space-3)}.landing-footer{background:var(--bg);border-top:1px solid var(--border);padding:var(--space-8) var(--space-8) var(--space-5)}.landing-footer-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;gap:var(--space-8)}@media (max-width: 720px){.landing-footer-inner{grid-template-columns:1fr}.landing-footer{padding:var(--space-6) var(--space-4)}}.landing-footer-inner>div:first-child .brand{margin-bottom:var(--space-2)}.landing-footer-inner p{font-size:.82rem}.landing-footer-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.landing-footer-cols>div{display:grid;gap:var(--space-2)}.landing-footer-cols strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-strong);font-weight:700;margin-bottom:4px}.landing-footer-cols a,.landing-footer-cols span{color:var(--muted);font-size:.9rem;font-weight:500}.landing-footer-cols a:hover{color:var(--primary-deep)}.landing-footer-legal{max-width:1240px;margin:var(--space-6) auto 0;padding-top:var(--space-4);border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:.78rem;color:var(--muted-2)}.payout-tile{background:linear-gradient(135deg,var(--primary-soft) 0%,#ffffff 100%);border:1px solid rgba(16,185,129,.28);border-radius:14px;padding:var(--space-4) var(--space-5);margin:var(--space-4) 0;box-shadow:0 8px 24px #10b98114}.payout-tile-inner{display:grid;gap:6px}.payout-label{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-strong);font-size:.9rem}.payout-label em{color:var(--muted);font-style:normal;font-weight:500}.payout-icon{font-size:1.25rem}.payout-value{font-size:2.4rem;font-weight:800;color:var(--primary-deep);letter-spacing:-.02em;line-height:1.05}.payout-sub{color:var(--muted);font-size:.85rem}.status-pill.model-operated{background:var(--primary-soft);color:var(--primary-deep);border-color:#10b98152}.status-pill.model-affiliate{background:#6366f11f;color:#4338ca;border-color:#6366f152}.commissions-card{background:var(--bg-1);border:1px solid var(--border);border-radius:12px;padding:var(--space-4) var(--space-5);margin:var(--space-3) 0 var(--space-4)}.commissions-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.commissions-card header h3{margin:0;font-size:1rem}.commissions-card .actions{display:flex;gap:8px}.commissions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.commission-field{display:grid;gap:4px}.commission-field label{font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.commission-field strong{font-size:1.6rem;color:var(--primary-deep);font-weight:800}.commission-field input{font-size:1.2rem;font-weight:700;padding:6px 10px;border:1px solid var(--border);border-radius:8px;max-width:140px}.commission-field .muted{font-size:.78rem}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin:var(--space-3) 0}.tab{background:transparent;border:0;padding:10px 16px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;font-size:.92rem}.tab:hover{color:var(--text-strong)}.tab.active{color:var(--primary-deep);border-bottom-color:var(--primary)}.payouts-table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--bg-1);border:1px solid var(--border);border-radius:12px;overflow:hidden}.payouts-table th,.payouts-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border)}.payouts-table th{background:var(--bg-2);font-weight:600;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.payouts-table .num{text-align:right;font-variant-numeric:tabular-nums}.payouts-table .strong{font-weight:700;color:var(--primary-deep)}.payouts-table tr.totals{background:var(--bg-2);font-weight:700}.payouts-table tr.totals td{border-top:2px solid var(--border)}.admin-payouts .admin-page-header input[type=month]{padding:6px 10px;border:1px solid var(--border);border-radius:8px;font-size:.9rem}.admin-table .actions{display:inline-flex;gap:6px}.admin-table button.primary{background:var(--primary);color:var(--primary-on);border:0;padding:6px 12px;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer}.admin-table button.primary:disabled{opacity:.6;cursor:wait}.admin-table button.ghost{background:transparent;color:var(--muted);border:1px solid var(--border);padding:6px 12px;border-radius:8px;font-size:.85rem;cursor:pointer}.admin-table button.ghost:hover{color:var(--text-strong);border-color:var(--muted)}.public-site{min-height:100vh;background:linear-gradient(180deg,#ffffff 0%,var(--bg-2) 100%);color:var(--text-strong)}.public-site-nav{display:flex;justify-content:space-between;align-items:center;max-width:1480px;margin:0 auto;padding:18px 32px}.public-site-hero{position:relative;max-width:1480px;margin:0 auto;padding:var(--space-7) 32px var(--space-6)}.public-site-hero-inner{max-width:760px}.public-site-eyebrow{display:inline-block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--primary-deep);background:var(--primary-soft);padding:6px 12px;border-radius:999px;margin-bottom:var(--space-3)}.public-site-hero h1{font-size:clamp(2.4rem,5vw,3.6rem);font-weight:800;letter-spacing:-.02em;margin:0 0 var(--space-2);line-height:1.05}.public-site-address{color:var(--muted);font-size:1.05rem;margin:0 0 var(--space-4)}.public-site-status{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:10px 18px;font-size:.95rem;font-weight:500;box-shadow:0 4px 14px #1018280f}.public-site-status strong{color:var(--primary-deep);font-weight:800;font-size:1.1rem}.public-site-tariff{margin-left:4px;color:var(--muted)}.public-site-tariff strong{color:var(--text-strong)}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--muted)}.status-dot-live{background:var(--primary);box-shadow:0 0 0 4px #10b9812e;animation:pulse-dot 1.8s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 4px #10b9812e}50%{box-shadow:0 0 0 8px #10b9810f}}.public-site-map{position:relative;max-width:1480px;margin:0 auto var(--space-6);padding:0 32px}.public-site-map iframe{width:100%;height:340px;border:1px solid var(--border);border-radius:14px;background:#f3f4f6}.public-site-map-link{position:absolute;top:12px;right:44px;background:#fff;padding:8px 12px;border-radius:8px;border:1px solid var(--border);font-size:.85rem;font-weight:600;color:var(--primary-deep);text-decoration:none;box-shadow:0 2px 6px #10182814}.public-site-map-link:hover{background:var(--primary-soft)}.public-site-chargers{max-width:1480px;margin:0 auto;padding:var(--space-5) 32px;background:var(--bg-1)}.public-site-chargers h2,.public-site-how h2,.public-site-cta h2{font-size:clamp(1.4rem,2.5vw,1.8rem);font-weight:800;margin:0 0 var(--space-4);letter-spacing:-.01em}.public-charger-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.public-charger-list li{background:#fff;border:1px solid var(--border);border-radius:12px;padding:var(--space-3) var(--space-4)}.public-charger-list li.offline{opacity:.65}.public-charger-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:8px}.public-charger-row strong{font-size:1rem}.public-connector-row{display:flex;flex-wrap:wrap;gap:6px}.status-pill.status-available{background:var(--primary-soft);color:var(--primary-deep);border-color:#10b98152}.status-pill.status-in_use{background:#fef3c7;color:#92400e;border-color:#d9770652}.status-pill.status-offline{background:var(--bg-2);color:var(--muted);border-color:var(--border)}.public-site-how{background:linear-gradient(180deg,var(--text-strong) 0%,#0a0e16 100%);color:#fff;padding:var(--space-7) 32px}.public-site-how>*{max-width:1480px;margin-left:auto;margin-right:auto}.public-site-how h2{color:#fff}.public-how-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.public-how-steps li{display:flex;gap:var(--space-3);align-items:flex-start;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:var(--space-4)}.public-how-steps li strong{color:#fff;display:block;margin-bottom:4px;font-size:1.05rem}.public-how-steps li span{color:#ffffffb8;font-size:.95rem;line-height:1.5}.public-step-num{flex:0 0 36px;height:36px;border-radius:50%;background:var(--primary);color:var(--primary-on);display:grid;place-items:center;font-weight:800;font-size:1rem}.public-site-cta{background:var(--primary-soft);padding:var(--space-7) 32px;text-align:center}.public-site-cta-inner{max-width:720px;margin:0 auto}.public-site-cta p{color:var(--muted);font-size:1.05rem;margin:0 0 var(--space-4)}.public-site-cta strong{color:var(--text-strong)}.public-site-price{background:var(--bg-1);padding:var(--space-7) 32px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.public-site-price-inner{max-width:980px;margin:0 auto;text-align:center}.public-price-eyebrow{display:inline-block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--primary-deep);background:var(--primary-soft);padding:6px 14px;border-radius:999px;margin-bottom:var(--space-4)}.public-price-hero{display:inline-flex;align-items:baseline;gap:6px;margin-bottom:var(--space-3)}.public-price-big{font-size:clamp(4rem,10vw,7rem);font-weight:800;letter-spacing:-.04em;line-height:.95;color:var(--primary-deep);background:linear-gradient(135deg,var(--primary-deep) 0%,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.public-price-unit{font-size:clamp(1.2rem,2vw,1.6rem);font-weight:600;color:var(--muted)}.public-price-claim{font-size:clamp(1.05rem,1.6vw,1.25rem);color:var(--muted);max-width:620px;margin:0 auto var(--space-5);line-height:1.5}.public-price-claim strong{color:var(--text-strong);font-weight:700}.public-price-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);max-width:820px;margin:0 auto}.public-price-stat{background:#fff;border:1px solid var(--border);border-radius:14px;padding:var(--space-4) var(--space-3);display:grid;gap:4px;justify-items:center;text-align:center}.public-price-stat-icon{font-size:1.6rem;margin-bottom:2px}.public-price-stat strong{font-size:1.15rem;font-weight:800;color:var(--text-strong);letter-spacing:-.01em}.public-price-stat span:not(.public-price-stat-icon){color:var(--muted);font-size:.85rem;line-height:1.35}@media (max-width: 720px){.public-price-stats{grid-template-columns:1fr}}.public-host-cta{background:linear-gradient(180deg,var(--text-strong) 0%,#0a0e16 100%);color:#fff;padding:var(--space-7) 32px}.public-host-cta-inner{max-width:760px;margin:0 auto;text-align:left}.public-host-eyebrow{display:inline-block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--primary);background:#10b9811f;padding:6px 12px;border-radius:999px;margin-bottom:var(--space-3)}.public-host-cta h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;margin:0 0 var(--space-4);color:#fff;letter-spacing:-.01em}.public-host-bullets{list-style:none;padding:0;margin:0 0 var(--space-5);display:grid;gap:var(--space-3)}.public-host-bullets li{position:relative;padding-left:28px;color:#ffffffc7;font-size:.98rem;line-height:1.5}.public-host-bullets li:before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;display:grid;place-items:center;background:var(--primary);color:var(--primary-on);border-radius:50%;font-size:.8rem;font-weight:700}.public-host-bullets li strong{color:#fff;font-weight:700}.landing-cta-pill.landing-cta-pill-dark{background:var(--primary);color:var(--primary-on);border:0}.landing-cta-pill.landing-cta-pill-dark:hover{filter:brightness(1.08)}.public-site-footer{display:flex;justify-content:space-between;align-items:center;max-width:1480px;margin:0 auto;padding:var(--space-5) 32px;font-size:.88rem;color:var(--muted);gap:var(--space-4)}.public-site-footer-brand{display:grid;gap:4px}.public-site-footer-legal{font-size:.78rem;color:var(--muted-2, var(--muted))}.public-site-footer-legal strong{color:var(--text-strong);font-weight:600}.public-site-footer a{color:var(--primary-deep);font-weight:600;text-decoration:none;white-space:nowrap}.public-site-footer a:hover{text-decoration:underline}@media (max-width: 720px){.public-site-hero{padding-top:var(--space-5);padding-bottom:var(--space-4)}.public-site-map iframe{height:240px}.public-site-map-link{right:44px;top:8px}.public-site-how,.public-site-cta,.public-host-cta{padding-left:20px;padding-right:20px}.public-site-footer{flex-direction:column;gap:10px;align-items:flex-start}}
