:root{--bg:#0f1c1b;--bg-soft:#142523;--panel:#1a302d;--panel-2:#203935;--border:#2c4b46;--text:#eaf4f1;--muted:#9db8b1;--accent:#34d399;--accent-strong:#10b981;--accent-ink:#05271d;--danger:#f87171;--shadow:0 20px 50px #00000059;--radius:16px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1200px 600px at 80% -10%, #12332c 0%, transparent 60%), var(--bg);color:var(--text);min-height:100vh;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}.wrap{max-width:980px;margin:0 auto;padding:40px 24px 80px}.brand{align-items:center;gap:12px;margin-bottom:40px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--accent-strong));width:40px;height:40px;color:var(--accent-ink);border-radius:12px;place-items:center;font-size:20px;font-weight:800;display:grid}.brand-name{letter-spacing:.2px;font-weight:700}.brand-sub{color:var(--muted);font-size:13px}.hero{background:linear-gradient(180deg, var(--panel), var(--bg-soft));border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:36px}.hero h1{margin:0 0 12px;font-size:30px;line-height:1.2}.hero p{color:var(--muted);max-width:62ch;margin:0 0 24px}.consent{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:12px;align-items:flex-start;gap:12px;margin:20px 0;padding:14px 16px;font-size:14px;display:flex}.consent strong{color:var(--text)}.field{flex-wrap:wrap;align-items:center;gap:12px;display:flex}input[type=email]{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:260px;padding:13px 15px;font-size:15px}input[type=email]:focus{border-color:var(--accent)}button{cursor:pointer;border:none;border-radius:10px;padding:13px 20px;font-size:15px;font-weight:600;transition:transform 50ms,filter .15s}button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:var(--accent-ink)}.btn-primary:hover:not(:disabled){filter:brightness(1.05)}.btn-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.status{color:var(--muted);min-height:20px;margin-top:16px;font-size:14px}.status.error{color:var(--danger)}.accounts{gap:18px;margin-top:32px;display:grid}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.card-title{font-size:17px;font-weight:700}.pill{border:1px solid var(--border);color:var(--muted);text-transform:capitalize;border-radius:999px;padding:3px 10px;font-size:12px}.pill.ok{color:var(--accent);border-color:var(--accent)}.balance{margin:14px 0 4px;font-size:34px;font-weight:800}.balance-label{color:var(--muted);font-size:13px}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-size:13px}.tx{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:10px 0;font-size:14px;display:flex}.tx:first-of-type{border-top:none}.tx-desc{color:var(--text)}.tx-date{color:var(--muted);font-size:12px}.tx-amt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.tx-amt.neg{color:var(--danger)}.tx-amt.pos{color:var(--accent)}.owners{color:var(--muted);font-size:14px}.muted{color:var(--muted);font-size:13px}.pay-card{margin-top:20px}.plans{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (max-width:620px){.plans{grid-template-columns:repeat(2,1fr)}}.plan{background:var(--panel-2);border:1px solid var(--border);text-align:left;color:var(--text);border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;transition:border-color .15s,transform 50ms;display:flex}.plan:hover{border-color:var(--accent)}.plan-name{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.plan-price{font-size:24px;font-weight:800}.plan-cadence{color:var(--muted);font-size:12px}.amount-input{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:10px;align-items:center;gap:6px;padding:0 14px;font-size:16px;display:flex}.amount-input:focus-within{border-color:var(--accent)}.amount-input input{color:var(--text);background:0 0;border:none;outline:none;width:110px;padding:12px 0;font-size:16px}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#050f0eb8;place-items:start center;padding:40px 16px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-body{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:560px;box-shadow:var(--shadow);padding:22px}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.modal-head .btn-ghost{padding:8px 14px;font-size:14px}.pay-done{text-align:center;color:var(--muted);padding:20px 8px 8px}.pay-done-icon{width:52px;height:52px;color:var(--accent-ink);background:linear-gradient(135deg, var(--accent), var(--accent-strong));border-radius:999px;place-items:center;margin:0 auto 14px;font-size:26px;font-weight:800;display:grid}.saved-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:15px;display:flex}.saved-row:first-of-type{border-top:none;margin-top:6px}.footer{color:var(--muted);text-align:center;margin-top:40px;font-size:12px}.admin-login-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.admin-login-card{background:linear-gradient(180deg, var(--panel), var(--bg-soft));border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:380px;box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:32px;display:flex}.admin-login-card h1{margin:6px 0 0;font-size:22px}.admin-login-card input,.admin-search{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;width:100%;padding:13px 15px;font-size:15px}.admin-login-card input:focus,.admin-search:focus{border-color:var(--accent)}.admin-wrap{max-width:980px;margin:0 auto;padding:32px 24px 80px}.admin-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.admin-top .brand{margin-bottom:0}.admin-actions{gap:10px;display:flex}.admin-actions .btn-ghost{padding:10px 16px;font-size:14px}.admin-stats{gap:14px;margin-bottom:20px;display:flex}.stat{background:var(--panel);border:1px solid var(--border);border-radius:12px;min-width:120px;padding:16px 22px}.stat-num{font-size:28px;font-weight:800}.stat-label{color:var(--muted);font-size:13px}.admin-search{margin-bottom:20px}.admin-empty{text-align:center;padding:30px}.admin-customer{margin-bottom:18px}.admin-customer code{color:var(--muted);font-size:12px}.admin-saved{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.admin-saved .pill{text-transform:none}.admin-charge{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.admin-charge-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.admin-charge-row .amount-input input{width:90px}.admin-charge-note{margin-top:8px;font-size:12px}.status.ok{color:var(--accent)}.admin-accounts{gap:10px;margin-top:16px;display:grid}.admin-account{border:1px solid var(--border);background:var(--bg-soft);border-radius:12px;overflow:hidden}.admin-account-head{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:14px;font-weight:500;display:flex}.admin-account-head:hover{background:var(--panel-2)}.admin-account-body{border-top:1px solid var(--border);padding:4px 16px 18px}.admin-account-body .balance{margin-top:12px;font-size:26px}.admin-auth{margin-top:16px;padding-top:4px}.admin-auth-link{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.admin-auth-link input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:260px;padding:11px 14px;font-size:13px}.admin-auth-link input:focus{border-color:var(--accent)}.admin-auth-link .btn-ghost,.admin-auth-open{align-items:center;padding:11px 16px;font-size:14px;text-decoration:none;display:inline-flex}
