:root{--brand-blue:#00a0dd;--brand-blue-hover:#007bb2;--brand-orange:#f48731;--brand-orange-hover:#cd620e;--ink:#2e394a;--ink-soft:#5b6573;--ink-muted:#9f9f9f;--bg:#f2f2f2;--card:#fff;--light-blue:#e7f5ff;--gray-border:#e0e3e8;--error:#c0392b;--success:#1f9d6e;--warning:#f48731;--r-lg:1.25rem;--r-sm:.75rem;--shadow-card:0 2px 4px #2e394a0a, 0 8px 24px #2e394a0f;--shadow-pop:0 4px 12px #2e394a1f}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg)}body{color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;padding:0 16px 32px;font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif}main{max-width:480px;margin:0 auto}.app-header{justify-content:space-between;align-items:center;padding:18px 4px 12px;display:flex}.app-header .logo{width:auto;height:28px;display:block}.app-header .balance-pill{background:var(--card);border:1px solid var(--gray-border);color:var(--ink);box-shadow:var(--shadow-card);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex}.app-header .balance-pill .label{color:var(--ink-soft);font-weight:500}.card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow-card);margin-bottom:16px;padding:24px}.brand-card{text-align:center;padding-top:32px;padding-bottom:32px}.brand-card .logo{height:44px;margin-bottom:12px}.brand-card .tagline{color:var(--ink-soft);margin-bottom:28px;font-size:14px}.brand-card h1{color:var(--ink);margin-bottom:6px;font-size:22px;font-weight:700}.brand-card .sub{color:var(--ink-soft);margin-bottom:20px;font-size:14px}.machine-title{letter-spacing:-.01em;font-size:26px;font-weight:700}.machine-sub{color:var(--ink-soft);margin-top:4px;font-size:15px}.price{color:var(--brand-blue);letter-spacing:-.02em;margin:24px 0 8px;font-size:56px;font-weight:800;line-height:1}.price-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.muted{color:var(--ink-soft)}.tiny{color:var(--ink-muted);font-size:12px}button{border-radius:var(--r-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;width:100%;padding:16px 18px;font-family:inherit;font-size:16px;font-weight:700;transition:background .12s,transform 80ms,box-shadow .12s}button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button.primary{background:var(--brand-blue);color:#fff}button.primary:not(:disabled):hover{background:var(--brand-blue-hover)}button.secondary{color:var(--brand-orange);border:1.5px solid var(--brand-orange);background:0 0}button.secondary:not(:disabled):hover{background:#fff5ec}button.ghost{color:var(--ink-soft);background:0 0;font-weight:600}button.ghost:not(:disabled):hover{color:var(--ink)}.btn-stack>*+*{margin-top:10px}input[type=email],input[type=text],input[type=number]{border:1.5px solid var(--gray-border);border-radius:var(--r-sm);width:100%;color:var(--ink);background:#fff;padding:14px;font-family:inherit;font-size:16px;transition:border-color .12s,box-shadow .12s}input:focus{border-color:var(--brand-blue);outline:none;box-shadow:0 0 0 3px #00a0dd26}.otp-row{justify-content:space-between;gap:8px;margin:24px 0 8px;display:flex}.otp-cell{text-align:center;color:var(--ink);border:1.5px solid var(--gray-border);border-radius:var(--r-sm);-moz-appearance:textfield;background:#fff;flex:1 1 0;padding:14px 0;font-size:24px;font-weight:700}.otp-cell::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.otp-cell::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.otp-cell:focus{border-color:var(--brand-blue);outline:none;box-shadow:0 0 0 3px #00a0dd26}.status-banner{border-radius:var(--r-lg);text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:20px;padding:22px 20px;display:flex}.status-banner .icon{border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;font-size:28px;display:flex}.status-banner .label{text-transform:uppercase;letter-spacing:.08em;opacity:.75;font-size:14px}.status-banner .countdown{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:44px;font-weight:800;line-height:1}.status-banner .msg{font-size:15px}.status-banner.running{background:var(--light-blue);color:#00567a}.status-banner.running .icon{background:var(--brand-blue);color:#fff;animation:1.6s ease-in-out infinite pulse}.status-banner.warning{color:#8a4a14;background:#fff3e6}.status-banner.warning .icon{background:var(--brand-orange);color:#fff;animation:1s ease-in-out infinite pulse}.status-banner.completed{color:#14684a;background:#e6f7ee}.status-banner.completed .icon{background:var(--success);color:#fff}.status-banner.failed{color:#7a1d13;background:#fdecea}.status-banner.failed .icon{background:var(--error);color:#fff}.status-banner.paid{background:var(--light-blue);color:#00567a}.status-banner.paid .icon{background:var(--brand-blue);color:#fff;animation:.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #00a0dd00}50%{transform:scale(1.06);box-shadow:0 0 0 8px #00a0dd2e}}.error{color:var(--error);margin-top:10px;font-size:14px}.modal-backdrop{z-index:100;-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2e394a8c;justify-content:center;align-items:flex-start;padding:24px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-card{background:var(--card);border-radius:var(--r-lg);width:100%;max-width:420px;box-shadow:var(--shadow-pop);margin:auto;padding:24px}.modal-card h2{margin-bottom:4px;font-size:22px;font-weight:700}.modal-card .balance-line{color:var(--ink-soft);margin-bottom:18px;font-size:14px}.amount-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;display:grid}.amount-chip{border:1.5px solid var(--gray-border);border-radius:var(--r-sm);color:var(--ink);cursor:pointer;text-align:center;background:#fff;padding:14px 0;font-size:16px;font-weight:700;transition:all .12s}.amount-chip:hover{border-color:var(--brand-blue)}.amount-chip.active{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff;box-shadow:0 4px 10px #00a0dd40}.custom-toggle{color:var(--brand-blue);cursor:pointer;background:0 0;border:none;width:auto;padding:6px 0;font-size:14px;font-weight:600}.custom-toggle:hover{color:var(--brand-blue-hover)}.custom-amount{margin-top:8px;display:none}.custom-amount.show{display:block}.custom-amount label{color:var(--ink-soft);margin-bottom:6px;font-size:13px;display:block}.custom-amount .input-with-prefix{position:relative}.custom-amount .input-with-prefix:before{content:"$";color:var(--ink-soft);font-size:16px;font-weight:600;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.custom-amount input{padding-left:28px}#card-element{border:1.5px solid var(--gray-border);border-radius:var(--r-sm);background:#fff;margin:16px 0;padding:14px}.test-card-hint{background:var(--light-blue);color:#00567a;border-radius:var(--r-sm);margin-bottom:16px;padding:10px 12px;font-size:12px;line-height:1.5}#loading{text-align:center;color:var(--ink-soft);padding:64px 16px;font-size:14px}.push-banner{background:var(--light-blue);color:#00567a;border-radius:var(--r-sm);margin-bottom:16px;padding:12px 16px;font-size:14px}.push-banner button{width:auto;padding:6px 14px;font-size:14px}
