:root{--bg: #0f172a;--bg-soft: #1e293b;--panel: rgba(15, 23, 42, .74);--line: rgba(148, 163, 184, .18);--text: #e2e8f0;--muted: #94a3b8;--amber: #f59e0b;--green: #22c55e;--red: #ef4444;--shadow: 0 30px 80px rgba(2, 6, 23, .45);font-family:Inter,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(245,158,11,.16),transparent 24%),radial-gradient(circle at right,rgba(30,41,59,.65),transparent 38%),linear-gradient(180deg,#020617,#0f172a 60%,#111827)}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.site-shell,.dashboard-shell,.auth-shell{min-height:100vh;padding:24px}.site-shell,.dashboard-shell{max-width:1240px;margin:0 auto}.topbar,.dashboard-header,.section-title,.unit-card,.hero-actions,.header-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar{margin-bottom:32px}.topbar nav{display:flex;gap:12px;align-items:center}.brand{font-weight:800;letter-spacing:.04em}.card{background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.glow{position:relative;overflow:hidden}.glow:after{content:"";position:absolute;inset:auto -20% -40% auto;width:320px;height:320px;border-radius:50%;background:#f59e0b29;filter:blur(40px)}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;padding:48px}.hero h1,.auth-card h1{font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95;margin:12px 0 18px}.hero p,.auth-card p,.price-card p,.card p,label,.unit-metrics,.history{color:var(--muted)}.eyebrow{color:var(--amber);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.hero-panel{padding:28px;background:#1e293bbf;border-radius:20px}.timeline{list-style:none;padding:0;margin:16px 0 0}.timeline li{padding:16px 0;border-bottom:1px solid var(--line)}.button{border:0;border-radius:999px;padding:12px 18px;cursor:pointer;transition:transform .14s ease}.button:hover{transform:translateY(-1px)}.button.primary,.button.amber{background:var(--amber);color:#111827;font-weight:700}.button.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.button.full{width:100%}.pill{display:inline-flex;align-items:center;border:1px solid rgba(245,158,11,.3);background:#f59e0b14;color:#fde68a;padding:8px 12px;border-radius:999px;font-size:.9rem}.feature-grid,.pricing-grid,.dashboard-grid{display:grid;gap:20px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0}.feature-grid .card,.pricing,.dashboard-grid .card,.auth-card,.unit-card{padding:24px}.pricing-grid,.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-card{border:1px solid var(--line);border-radius:20px;padding:24px}.price-card.featured{background:#f59e0b14}.price{font-size:2.4rem;font-weight:800;color:var(--text)}.auth-shell{display:grid;place-items:center}.auth-card{width:min(540px,100%)}.stack{display:grid;gap:16px}.compact{gap:12px}label{display:grid;gap:8px}input,select{padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:#0f172ae6;color:var(--text)}.dashboard-grid{margin-bottom:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.upgrade-banner{border:1px solid rgba(245,158,11,.32);border-radius:18px;padding:16px;background:#f59e0b14}.unit-list{display:grid;gap:18px}.unit-card{align-items:start;flex-wrap:wrap}.unit-metrics,.unit-actions,.history{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.history{width:100%}.status{padding:8px 12px;border-radius:999px;font-weight:700}.status.paid{color:var(--green);background:#22c55e1f}.status.due{color:#fbbf24;background:#fbbf241f}.status.overdue{color:#fca5a5;background:#ef44441f}.link-inline{color:#fde68a}.success,.error{border-radius:16px;padding:12px 16px;margin:0 0 16px}.success{background:#22c55e1f;color:#bbf7d0}.error{background:#ef44441f;color:#fecaca}@media (max-width: 960px){.hero,.feature-grid,.pricing-grid,.dashboard-grid{grid-template-columns:1fr}.topbar,.dashboard-header,.unit-card{align-items:flex-start;flex-direction:column}.hero{padding:28px}}
