:root{--bg: oklch(.985 .004 264);--surface: oklch(1 0 0);--surface-raised: oklch(.972 .006 264);--ink: oklch(.19 .02 264);--ink-secondary: oklch(.4 .025 264);--ink-muted: oklch(.5 .02 264);--line: oklch(.88 .012 264);--line-strong: oklch(.76 .02 264);--accent: oklch(.56 .25 270);--accent-strong: oklch(.48 .29 282);--success: oklch(.51 .16 156);--danger: oklch(.57 .21 27);--accent-soft: oklch(.95 .04 270);--success-soft: oklch(.95 .04 156);--danger-soft: oklch(.96 .04 27);--shadow-panel: 0 8px 24px -12px oklch(.2 .04 264 / 22%);--ease: cubic-bezier(.22, 1, .36, 1)}@media(prefers-color-scheme:dark){:root{--bg: oklch(.15 .018 257);--surface: oklch(.18 .021 257);--surface-raised: oklch(.22 .024 257);--ink: oklch(.94 .012 257);--ink-secondary: oklch(.73 .025 257);--ink-muted: oklch(.62 .025 257);--line: oklch(.3 .025 257);--line-strong: oklch(.41 .035 257);--accent: oklch(.68 .23 270);--accent-strong: oklch(.62 .28 285);--success: oklch(.72 .17 156);--danger: oklch(.71 .2 27);--accent-soft: oklch(.24 .07 270);--success-soft: oklch(.23 .05 156);--danger-soft: oklch(.24 .055 27);--shadow-panel: 0 8px 24px -12px oklch(.02 .01 257 / 55%)}}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:IBM Plex Sans,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input{font:inherit}.app{width:min(100%,440px);min-height:100dvh;margin:0 auto;padding:max(28px,env(safe-area-inset-top)) 24px max(28px,env(safe-area-inset-bottom));display:flex;flex-direction:column}.brand{height:54px;margin-bottom:24px;display:flex;align-items:center;justify-content:center}.brand img{display:block;width:84px;height:auto}.screen{width:100%;margin:0 0 auto;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-panel)}.merchant{margin:0 0 22px;color:var(--ink);font-size:20px;font-weight:600;letter-spacing:-.015em}.payment-method{min-height:44px;margin:0 0 26px;padding:0 0 14px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);color:var(--ink-muted);font-size:13px;font-weight:500}.payment-method-name{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-size:14px;font-weight:600;white-space:nowrap}.payment-method-name img{width:16px;height:20px;object-fit:contain}.result-method{flex:0 0 auto;min-height:auto;margin:0 10px 2px 0;padding:0;justify-content:flex-end;border:0}.result-method .payment-method-name{gap:11px;font-size:21px;font-weight:600}.result-method .payment-method-name img{width:27px;height:33px}.amount-label{display:block;margin:0 0 9px;color:var(--ink-muted);font-size:13px;font-weight:500}.amount-control{position:relative;display:flex;align-items:center;min-height:78px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface-raised);transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.amount-control:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #435bff24;box-shadow:0 0 0 3px oklch(.56 .25 270 / 14%)}input{width:100%;min-width:0;padding:18px 92px 18px 20px;border:0;outline:0;background:transparent;color:var(--ink);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:clamp(30px,8.5vw,40px);font-weight:600;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}input::placeholder{color:var(--ink-muted);opacity:.55}input:read-only{color:var(--ink)}.currency{position:absolute;right:20px;color:var(--ink-muted);font-size:17px;font-weight:700}.limits{min-height:20px;margin:9px 1px 24px;color:var(--ink-muted);font-size:12px;font-variant-numeric:tabular-nums}button,.bank-link{width:100%;min-height:52px;border:0;border-radius:8px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-size:16px;font-weight:600;line-height:1.1;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .18s var(--ease),transform .12s var(--ease),opacity .18s var(--ease);-webkit-tap-highlight-color:transparent}button:hover,.bank-link:hover{background:var(--accent-strong)}button:active,.bank-link:active{transform:scale(.985)}button:focus-visible,.bank-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{cursor:wait;opacity:.55}.secondary{margin-top:10px;border:1px solid var(--line-strong);border-radius:8px;background:transparent;box-shadow:none;color:var(--ink)}.secondary:hover{border-color:var(--ink-muted);background:var(--surface-raised)}.error{margin:14px 2px 0;padding:10px 14px;border-radius:8px;background:var(--danger-soft);color:var(--danger);font-size:14px;line-height:1.45}.loading-block{padding:6px 0}.loading-line{height:14px;border-radius:7px;background:var(--surface-raised);overflow:hidden}.loading-line+.loading-line{width:64%;margin-top:12px}.loading-line:after,.qr-placeholder:after{content:"";display:block;width:45%;height:100%;background:linear-gradient(90deg,transparent,oklch(1 0 0 / 55%),transparent);transform:translate(-110%)}.result-head{margin-bottom:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:34px;text-align:left}.result-merchant{margin:0 0 5px;color:var(--ink-muted);font-size:13px;font-weight:500}.result-amount{margin:0;color:var(--ink);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:36px;font-weight:600;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.qr-frame{width:min(100%,280px);aspect-ratio:1;margin:0 auto;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.qr,.qr-placeholder{display:block;width:100%;height:100%;border-radius:0}.qr-placeholder{background:linear-gradient(90deg,var(--line) 10%,transparent 10% 18%,var(--line) 18% 32%,transparent 32% 38%,var(--line) 38% 52%,transparent 52% 60%,var(--line) 60% 76%,transparent 76% 82%,var(--line) 82%),linear-gradient(var(--line) 12%,transparent 12% 20%,var(--line) 20% 35%,transparent 35% 43%,var(--line) 43% 56%,transparent 56% 65%,var(--line) 65% 82%,transparent 82% 88%,var(--line) 88%);overflow:hidden}.payment-status{margin:18px 0;text-align:center}.status-title{margin:0;color:var(--ink);font-size:15px;font-weight:600}.status-help{margin:4px 0 0;color:var(--ink-muted);font-size:12px;line-height:1.45}.status-help:empty{display:none}.payment-expiry{min-height:18px;margin:8px 0 0;color:var(--ink-muted);font-size:13px;font-variant-numeric:tabular-nums}.payment-expiry.expired{color:var(--danger)}.status-line{width:100%;height:1px;margin:14px 0 0;background:var(--line);overflow:hidden}.status-line:after{content:"";display:block;width:38px;height:100%;background:var(--accent);transform:translate(-36px)}.state{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.state-mark{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:20px;border-radius:999px;background:var(--success-soft);color:var(--success);font-size:28px;line-height:1}.state-mark.error-mark{background:var(--danger-soft);color:var(--danger);font-size:24px}.state-mark.info-mark{background:var(--accent-soft);color:var(--accent);font-size:24px}.state-title{margin:0;color:var(--ink);font-size:26px;font-weight:600;line-height:1.2;letter-spacing:-.02em}.state-amount{margin:10px 0 0;color:var(--ink);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:21px;font-weight:500;font-variant-numeric:tabular-nums}.state-help{max-width:340px;margin:8px 0 26px;color:var(--ink-muted);font-size:14px;line-height:1.5}.state-help:empty{display:none}.state .secondary,.state .bank-link{max-width:260px;margin-top:28px}.powered{min-height:56px;padding:18px 4px 0;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ink-muted);font-size:11px;letter-spacing:.01em}.powered img{width:18px;height:18px}.powered strong{color:var(--ink-secondary);font-size:12px;font-weight:500;letter-spacing:-.01em}@media(max-width:520px){.app{padding-left:18px;padding-right:18px}.screen{padding:22px;border-radius:10px}.brand{height:48px;margin-bottom:20px}.brand img{width:78px}.qr-frame{width:min(100%,264px)}.result-head{gap:22px}.result-method{margin-right:4px}.result-method .payment-method-name{font-size:19px}.result-method .payment-method-name img{width:24px;height:30px}}@media(max-height:720px)and (min-width:521px){.app{padding-top:18px;padding-bottom:20px}.brand{height:50px}.qr-frame{width:232px}.payment-status{margin-top:15px;margin-bottom:14px}}@media(prefers-reduced-motion:no-preference){.screen{animation:enter .3s var(--ease) both}.loading-line:after,.qr-placeholder:after{animation:shimmer 1.5s ease-in-out infinite}.status-line:after{animation:status-progress 1.25s ease-in-out infinite}.state-mark{animation:confirm .4s var(--ease) both}@keyframes enter{0%{opacity:0;transform:translateY(10px)}}@keyframes shimmer{to{transform:translate(260%)}}@keyframes status-progress{50%{transform:translate(76px)}to{transform:translate(-36px)}}@keyframes confirm{0%{opacity:0;transform:scale(.8)}}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.sandbox-card-form .field{display:block;margin:0 0 16px}.sandbox-card-form .field span{display:block;margin:0 0 9px;color:var(--ink-muted);font-size:13px;font-weight:500}.sandbox-card-form input{width:100%;min-width:0;padding:14px 16px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface-raised);color:var(--ink);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:17px;font-weight:500;line-height:1.2;letter-spacing:.01em;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.sandbox-card-form input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px #435bff24;box-shadow:0 0 0 3px oklch(.56 .25 270 / 14%)}.sandbox-card-form input[aria-invalid=true]{border-color:var(--danger)}.sandbox-card-form input::placeholder{color:var(--ink-muted);opacity:.45}.sandbox-card-row{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.field-error{display:block;margin:6px 2px 0;color:var(--danger);font-size:12px;line-height:1.4}.sandbox-disclaimer{margin:18px 2px 0;color:var(--ink-muted);font-size:11px;line-height:1.5;text-align:center}.reference-label{font-size:12px;color:var(--ink-muted)}.attempt-reference{display:block;margin-top:8px;font-size:12px;line-height:1.5;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.sandbox-tag{font-size:12px;color:var(--ink-muted);margin-top:0}.widget-note{font-size:13px;color:var(--ink-muted);line-height:1.5}.state .attempt-reference{max-width:100%}
