:root{--bg: #0a0612;--bg-2: #100a1c;--panel: #150d24;--panel-2: #1c1330;--line: #2a1d45;--uv: #a855f7;--uv-bright: #c084fc;--uv-glow: rgba(168, 85, 247, .45);--amber: #ffb347;--amber-dim: #c98a3a;--green: #34d399;--red: #f87171;--text: #ece5f8;--muted: #9a8bb8;--mono: "JetBrains Mono", ui-monospace, monospace;--sans: "Space Grotesk", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(1200px 600px at 50% -10%,rgba(168,85,247,.16),transparent 60%),radial-gradient(900px 500px at 100% 110%,rgba(255,179,71,.06),transparent 55%),var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}#app{min-height:100%;display:flex;align-items:center;justify-content:center;padding:20px}.terminal{width:100%;max-width:430px;background:linear-gradient(180deg,var(--bg-2),var(--bg));border:1px solid var(--line);border-radius:22px;box-shadow:0 0 0 1px #a855f714,0 30px 80px -20px #000c,inset 0 1px #ffffff0a;overflow:hidden;position:relative}.head{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(168,85,247,.08),transparent)}.mark{width:38px;height:38px;border-radius:10px;flex:0 0 auto;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,var(--uv-bright),var(--uv) 70%);box-shadow:0 0 18px var(--uv-glow);color:#0a0612;font-family:var(--mono);font-weight:700;font-size:15px}.head h1{margin:0;font-size:15px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}.head .sub{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;margin-top:2px}.badge-sandbox{margin-left:auto;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:var(--amber);border:1px solid var(--amber-dim);border-radius:999px;padding:4px 9px;text-transform:uppercase;white-space:nowrap}.body{padding:20px 18px 22px}.screen{animation:fade .28s ease}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--uv-bright);margin:0 0 6px}.title{margin:0 0 16px;font-size:20px;font-weight:600;letter-spacing:-.01em}.hint{color:var(--muted);font-size:12.5px;line-height:1.5}.display{border:1px solid var(--line);border-radius:14px;background:repeating-linear-gradient(0deg,#0c0716,#0c0716 2px,#0a0612 2px 4px);padding:16px 18px;margin-bottom:16px;position:relative}.display .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.display .val{font-family:var(--mono);font-weight:700;font-size:34px;color:var(--amber);text-shadow:0 0 18px rgba(255,179,71,.35);letter-spacing:.02em;margin-top:4px}.display .ccy{font-size:15px;color:var(--amber-dim)}.field{margin-bottom:13px}.field label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}input,select{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--text);font-family:var(--mono);font-size:15px;padding:12px 13px;border-radius:11px;outline:none;transition:border-color .15s,box-shadow .15s}input::placeholder{color:#5b4d78}input:focus,select:focus{border-color:var(--uv);box-shadow:0 0 0 3px #a855f72e}.row{display:flex;gap:10px}.row>*{flex:1}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}.key{font-family:var(--mono);font-size:20px;padding:15px 0;border-radius:12px;background:var(--panel);border:1px solid var(--line);color:var(--text);cursor:pointer;transition:transform .06s,background .15s,border-color .15s}.key:hover{background:var(--panel-2);border-color:var(--uv)}.key:active{transform:scale(.95)}.key.alt{color:var(--amber)}.btn{width:100%;font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.02em;padding:15px;border-radius:13px;border:1px solid transparent;cursor:pointer;transition:transform .06s,box-shadow .15s,background .15s}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(180deg,var(--uv-bright),var(--uv));color:#14061f;box-shadow:0 8px 26px -8px var(--uv-glow)}.btn-primary:hover{box-shadow:0 10px 32px -6px var(--uv-glow)}.btn-ghost{background:var(--panel);border-color:var(--line);color:var(--text)}.btn-ghost:hover{border-color:var(--uv)}.btn-amber{background:linear-gradient(180deg,#ffc266,var(--amber));color:#221304}.btn+.btn{margin-top:10px}.methods{display:grid;gap:10px;margin-bottom:4px}.tile{display:flex;align-items:center;gap:13px;text-align:left;width:100%;padding:15px 16px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:var(--text);cursor:pointer;transition:border-color .15s,background .15s,transform .06s}.tile:hover{border-color:var(--uv);background:var(--panel-2)}.tile:active{transform:scale(.99)}.tile .ico{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto;background:#a855f71f;color:var(--uv-bright)}.tile .ico svg{width:21px;height:21px}.tile .t-name{font-weight:600;font-size:15px}.tile .t-desc{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.04em;margin-top:2px}.tile .chev{margin-left:auto;color:var(--muted)}.toggle{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);margin-bottom:13px;cursor:pointer}.toggle .sw{width:42px;height:24px;border-radius:999px;background:#2a1d45;position:relative;flex:0 0 auto;transition:background .18s}.toggle .sw:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#6a5a8c;transition:transform .18s,background .18s}.toggle.on .sw{background:#a855f773}.toggle.on .sw:after{transform:translate(18px);background:var(--uv-bright)}.toggle .tg-name{font-weight:600;font-size:13.5px}.toggle .tg-desc{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:1px}.qr-wrap{display:grid;place-items:center;gap:14px;padding:6px 0 2px}.qr-frame{padding:14px;background:#e9d5ff;border-radius:16px;box-shadow:0 0 40px -8px var(--uv-glow)}.qr-frame img{display:block;width:240px;height:240px}.qr-ref{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em}.receipt{border:1px dashed var(--line);border-radius:14px;padding:18px;background:#ffb34708;font-family:var(--mono)}.receipt .stamp{text-align:center;font-size:22px;font-weight:700;letter-spacing:.12em;margin-bottom:4px}.stamp.ok{color:var(--green);text-shadow:0 0 20px rgba(52,211,153,.35)}.stamp.no{color:var(--red);text-shadow:0 0 20px rgba(248,113,113,.3)}.receipt .method{text-align:center;font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}.rline{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px}.rline:first-of-type{border-top:none}.rline .k{color:var(--muted)}.rline .v{color:var(--text);text-align:right;word-break:break-all}.rline .v.big{color:var(--amber);font-weight:700}.err{background:#f871711a;border:1px solid rgba(248,113,113,.4);color:#fca5a5;font-family:var(--mono);font-size:12px;padding:10px 12px;border-radius:10px;margin-bottom:13px}.note{font-family:var(--mono);font-size:10.5px;color:var(--muted);line-height:1.6;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.note b{color:var(--amber-dim)}.back{background:none;border:none;color:var(--muted);font-family:var(--mono);font-size:11px;letter-spacing:.08em;cursor:pointer;padding:0;margin-bottom:14px}.back:hover{color:var(--uv-bright)}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--uv-bright);border-radius:50%;display:inline-block;animation:spin .7s linear infinite;vertical-align:-3px}@keyframes spin{to{transform:rotate(360deg)}}.center{text-align:center}.mono-sm{font-family:var(--mono);font-size:11px;color:var(--muted)}@media(max-width:380px){.display .val{font-size:28px}}
