:root{--bg:#0b0c0f;--panel:#14161c;--border:#232733;--text:#e7e9ee;--muted:#9aa3b2;--accent:#5b8cff;--accent-ink:#0b0c0f;--warn:#f0b232;--lock:#6b7280}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}.wrap{max-width:980px;margin:0 auto;padding:40px 20px}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:16px 20px}.brand{font-weight:700;letter-spacing:.3px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:18px;gap:18px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}.card h3{margin:0;font-size:17px}.tagline{margin:0}.desc,.tagline{color:var(--muted)}.desc{font-size:13.5px}.price{font-weight:700}.trial{color:var(--accent);font-size:13px}.disclaimer{color:var(--warn);font-size:12px;border-left:2px solid var(--warn);padding-left:8px}.badge{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted);width:-moz-fit-content;width:fit-content}.badge.live{color:#6ee7a8;border-color:#2a5a40}.badge.soon{color:var(--warn);border-color:#5a4a22}.product-icon{width:56px;height:56px;border-radius:14px;display:block;border:1px solid var(--border);object-fit:cover}.product-icon--mono{display:flex;align-items:center;justify-content:center;background:var(--panel);color:var(--accent);font-size:26px;font-weight:700;line-height:1}a.btn,button.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:9px;padding:9px 14px;background:var(--accent);color:var(--accent-ink);font-weight:600;cursor:pointer;width:-moz-fit-content;width:fit-content}a.btn.ghost,button.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn:disabled{background:var(--lock);cursor:not-allowed}.warnbanner{background:#2a2310;border:1px solid #5a4a22;color:var(--warn);padding:8px 12px;border-radius:8px;font-size:13px}.muted{color:var(--muted)}input.field{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:9px 12px;width:100%}