:root{--bg:#0b0b0b;--panel:#151515;--line:#2a2a2a;--ink:#f2efe8;--muted:#a39f95;--gold:#c9a34a;--gold-dark:#8f7230;--ok:#2e9e5b;--ok-bg:#0f2a1a;--warn:#d6a21a;--warn-bg:#2d2408;--err:#d9433b;--err-bg:#2f100f}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;margin:0;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:17px;line-height:1.4}.app{max-width:560px;margin:0 auto;padding:0 16px 32px}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px 0 10px;display:flex}.brand{letter-spacing:.08em;color:var(--gold);font-weight:700}.brand-mark{text-align:center;border:2px solid var(--gold);border-radius:50%;width:30px;height:30px;margin-right:6px;font-size:12px;line-height:28px;display:inline-block}.brand-sub{color:var(--muted);letter-spacing:0;margin-left:4px;font-weight:400}.top-right{align-items:center;gap:12px;display:flex}.env-badge{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn);border-radius:999px;padding:3px 8px;font-size:12px}h1{margin:0 0 6px;font-size:22px}h2{color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin:18px 0 8px;font-size:15px}.muted{color:var(--muted);margin:0 0 12px}.hidden{display:none!important}label{color:var(--muted);margin:12px 0 6px;font-size:14px;display:block}input[type=email],input[type=password],input[type=text],input[type=number]{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);border-radius:10px;padding:14px;font-size:18px}input:focus{outline:2px solid var(--gold);border-color:var(--gold)}button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;width:100%;margin-top:14px;padding:16px 18px;font-size:18px;font-weight:600}button.primary{background:var(--gold);color:#0b0b0b}button.primary:disabled{background:var(--gold-dark);color:#3a3a3a;cursor:not-allowed}button.secondary{background:var(--panel);color:var(--ink);border-color:var(--line)}button.link{color:var(--gold);background:0 0;width:auto;margin:0;padding:6px 8px;font-size:15px;font-weight:500}.notice{border-radius:10px;margin:10px 0;padding:12px 14px}.error{color:var(--err)}.notice.error{background:var(--err-bg);border:1px solid var(--err);color:var(--ink)}.choice-list{gap:8px;display:grid}.choice{text-align:left;background:var(--panel);border:1px solid var(--line);color:var(--ink);margin:0;padding:14px;font-size:16px;font-weight:500}.choice .sub{color:var(--muted);margin-top:2px;font-size:13px;font-weight:400;display:block}.choice.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.scan-context{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.scan-context strong{color:var(--gold)}.reader{border:1px solid var(--line);background:#000;border-radius:12px;width:100%;min-height:260px;overflow:hidden}.reader video{border-radius:12px;width:100%!important}.manual{color:var(--muted);margin-top:14px}.manual summary{cursor:pointer}.manual input{margin-top:8px}.result{border:2px solid var(--line);text-align:center;border-radius:16px;padding:22px 18px}.result.ok{background:var(--ok-bg);border-color:var(--ok)}.result.warn{background:var(--warn-bg);border-color:var(--warn)}.result.err{background:var(--err-bg);border-color:var(--err)}.result-title{letter-spacing:.02em;font-size:30px;font-weight:800}.result.ok .result-title{color:#5ed48a}.result.warn .result-title{color:#f0c24a}.result.err .result-title{color:#ff7067}.result-detail{margin-top:6px;font-size:17px}.facts{text-align:left;grid-template-columns:auto 1fr;gap:4px 14px;margin:16px 0 0;display:grid}.facts dt{color:var(--muted);font-size:14px}.facts dd{margin:0;font-weight:600}.amount{margin-top:16px}.amount-row{align-items:center;gap:8px;display:flex}.amount-currency{color:var(--muted)}.amount-row input{flex:1}.amount-row button{width:auto;margin:0;padding:14px 16px}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 6px}th{color:var(--muted);font-size:13px;font-weight:500}td.num{text-align:right;white-space:nowrap}.busy{text-align:center;background:var(--panel);border-top:1px solid var(--gold);color:var(--gold);padding:14px;font-weight:600;position:fixed;top:auto;bottom:0;left:0;right:0}
