:root{--bg:#fff;--bg-alt:#f8fafc;--panel:#fff;--fg:#0f172a;--fg-soft:#334155;--muted:#64748b;--accent:#10b981;--accent-2:#06b6d4;--accent-strong:#047857;--gradient:linear-gradient(135deg, #10b981 0%, #06b6d4 100%);--border:#e2e8f0;--border-strong:#cbd5e1;--danger:#ef4444;--warn:#f59e0b;--shadow-sm:0 1px 2px #0f172a0a, 0 1px 3px #0f172a0f;--shadow-md:0 4px 6px -1px #0f172a14, 0 2px 4px -2px #0f172a0f;--shadow-lg:0 20px 25px -5px #0f172a14, 0 8px 10px -6px #0f172a14}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,Roboto,sans-serif;font-size:15px;line-height:1.55}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(900px 500px at 10% -5%,#10b98114,#0000 60%),radial-gradient(700px 500px at 100% 0,#06b6d40f,#0000 60%);position:fixed;inset:0}main{max-width:560px;margin:0 auto;padding:72px 24px}h1,h2,h3,h4{color:var(--fg);letter-spacing:-.02em;font-weight:700}h1{margin:0 0 8px;font-size:32px}h2{margin:32px 0 12px;font-size:20px;font-weight:600}p{color:var(--fg-soft);margin:0 0 12px}a{color:var(--accent-strong);text-decoration:none;transition:color .12s}a:hover{color:var(--accent);text-decoration:underline}.card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;margin:18px 0;padding:24px;transition:box-shadow .14s,border-color .14s}.card:hover{box-shadow:var(--shadow-md)}label{color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:500;display:block}input[type=email],input[type=text],input[type=password],input[type=number]{width:100%;color:var(--fg);border:1px solid var(--border);background:#fff;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:15px;transition:border-color .12s,box-shadow .12s}input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #10b98126}button{background:var(--gradient);color:#fff;cursor:pointer;box-shadow:var(--shadow-sm);border:0;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:transform .12s,box-shadow .12s,filter .12s}button:hover{box-shadow:var(--shadow-md);filter:brightness(1.04);transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed;filter:none;transform:none}.muted{color:var(--muted);font-size:13px}.price{letter-spacing:-.03em;background:var(--gradient);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:48px;font-weight:800;line-height:1.05}.price small{color:var(--muted);-webkit-text-fill-color:var(--muted);background:0 0;margin-left:6px;font-size:15px;font-weight:500}ul.features{margin:16px 0;padding:0;list-style:none}ul.features li{color:var(--fg-soft);align-items:flex-start;gap:8px;padding:6px 0;display:flex}ul.features li:before{content:"✓";color:var(--accent);flex-shrink:0;font-weight:700}.error{color:var(--danger);margin-top:8px;font-size:13px}code{background:var(--bg-alt);color:var(--fg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}table{border-collapse:collapse;border:1px solid var(--border);width:100%;box-shadow:var(--shadow-sm);background:#fff;border-radius:10px;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px;font-size:14px}th{color:var(--muted);background:var(--bg-alt);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}tr:last-child td{border-bottom:none}tbody tr{transition:background .1s}tbody tr:hover{background:var(--bg-alt)}.status-ready{color:var(--accent-strong);font-weight:600}.status-provisioning{color:var(--warn);font-weight:600}.status-failed{color:var(--danger);font-weight:600}.status-pending{color:var(--muted);font-weight:500}.portal-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:saturate(1.8)blur(12px);backdrop-filter:saturate(1.8)blur(12px);z-index:20;background:#ffffffd9;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.portal-logo{color:var(--fg);align-items:center;gap:10px;font-size:16px;font-weight:700;display:inline-flex}.portal-logo:hover{color:var(--fg);text-decoration:none}.portal-logo-mark{background:var(--gradient);color:#fff;width:30px;height:30px;box-shadow:var(--shadow-sm);border-radius:8px;place-items:center;font-size:16px;font-weight:800;display:grid}
