:root{--bg:#f7f7fb;--surface:#fff;--surface-alt:#f1f0fa;--border:#e3e2f0;--text:#1c1b29;--text-secondary:#5b5a72;--muted:#8b899f;--accent:#6853e8;--accent-hover:#5540d0;--accent-contrast:#fff;--accent-soft:#ece9fb;--success:#1f9d6b;--success-soft:#e3f7ee;--warning:#b9770e;--warning-soft:#fbf0dc;--danger:#d64545;--danger-soft:#fbe4e4;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--shadow-sm:0 1px 2px #1c1b290f;--shadow-md:0 16px 40px -16px #1c1b2938;--font-sans:"Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}@media (prefers-color-scheme:dark){:root{--bg:#141320;--surface:#1c1b2c;--surface-alt:#232236;--border:#322f47;--text:#eeedf7;--text-secondary:#b3b1c9;--muted:#7f7d97;--accent:#8a76f5;--accent-hover:#a290ff;--accent-contrast:#14101f;--accent-soft:#2b2650;--success:#46caa0;--success-soft:#163329;--warning:#e0a53f;--warning-soft:#362c15;--danger:#ea7070;--danger-soft:#3a1e1e;--shadow-md:0 16px 40px -16px #0000008c}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:700}p{color:var(--text-secondary);margin:0}a{color:var(--accent)}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{justify-content:space-between;align-items:center;padding:18px 32px;display:flex}.brand{align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.brand .mark{background:var(--accent);width:30px;height:30px;color:var(--accent-contrast);border-radius:9px;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.container{flex:1;width:100%;max-width:880px;margin:0 auto;padding:0 24px 64px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px 30px}.stack{flex-direction:column;gap:20px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.field input,.field select{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);color:var(--text);padding:11px 13px}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.field .hint{color:var(--muted);font-size:.78rem}.btn{font:inherit;border-radius:var(--radius-sm);cursor:pointer;background:var(--accent);color:var(--accent-contrast);border:none;padding:12px 20px;font-weight:600;transition:background .15s}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{color:var(--text);border:1px solid var(--border);background:0 0}.btn.block{width:100%}.btn-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.banner{border-radius:var(--radius-sm);padding:12px 14px;font-size:.88rem}.banner.err{background:var(--danger-soft);color:var(--danger)}.banner.ok{background:var(--success-soft);color:var(--success)}.pill{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;align-items:center;padding:3px 11px;font-size:.72rem;font-weight:700;display:inline-flex}.pill.ok{background:var(--success-soft);color:var(--success)}.pill.warn{background:var(--warning-soft);color:var(--warning)}.pill.err{background:var(--danger-soft);color:var(--danger)}.pill.muted{background:var(--surface-alt);color:var(--muted)}.steps{gap:8px;margin-bottom:4px;display:flex}.steps .dot{background:var(--border);border-radius:999px;flex:1;height:4px}.steps .dot.active{background:var(--accent)}.plans-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.plan-card{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:var(--surface-alt);padding:18px;transition:border-color .15s,transform .1s}.plan-card:hover{transform:translateY(-2px)}.plan-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.plan-card .price{margin:6px 0;font-size:1.5rem;font-weight:800}.resource-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.resource-row:last-child{border-bottom:none}.resource-main{flex:1;min-width:0}.bar-track{background:var(--surface-alt);border-radius:999px;height:7px;margin-top:6px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:999px;height:100%}.bar-fill.over{background:var(--danger)}.feature-row{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:10px;padding:13px 16px;display:flex}.feature-row:last-child{margin-bottom:0}.feature-row.locked{color:var(--muted);border-style:dashed}.hero{text-align:center;padding:64px 0 40px}.hero h1{margin-bottom:10px;font-size:2.4rem}.hero p{max-width:46ch;margin:0 auto;font-size:1.05rem}footer{text-align:center;color:var(--muted);padding:24px;font-size:.8rem}
