:root{--navy: #0f1e3d;--navy-2: #16264a;--navy-3: #1d3159;--orange: #e75425;--orange-2: #f2751f;--ink: #16264a;--paper: #ffffff;--wash: #f5f7fa;--muted: #5d6d88;--line: #dde4ee;--ok-green: #1f8a5b;--danger: #c0392b;--radius: 18px;--font: Lato, "Segoe UI", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--vg-blue: var(--navy);--vg-orange: var(--orange);--bg: var(--wash);--card: var(--paper)}*{box-sizing:border-box}body{margin:0;font-family:var(--font);line-height:1.62;background:var(--wash);color:var(--ink);-webkit-font-smoothing:antialiased}img,svg{max-width:100%}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--orange-2);outline-offset:2px}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 24px;background:var(--navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.09)}.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.01em}.brand .mark{width:36px;height:36px;border-radius:9px;background:#fff;flex:none;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;line-height:1;letter-spacing:-.03em;color:var(--navy)}.brand .v{color:var(--navy)}.brand .g{color:var(--orange)}.brand-sub{color:#9fb0cc;font-weight:500;font-size:13px}.center{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 20px}.card{width:100%;max-width:460px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 10px 40px #0f1e3d0f}.card.wide{max-width:780px}h1{font-size:24px;font-weight:900;letter-spacing:-.02em;margin:0 0 6px}h2{font-size:17px;font-weight:900;letter-spacing:-.01em;margin:0 0 12px}.sub{color:var(--muted);margin:0 0 20px;font-size:14.5px}label{display:block;font-size:13px;font-weight:700;margin:14px 0 6px}input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;font-size:15px;font-family:inherit;outline:none;background:var(--paper);color:var(--ink)}input:focus{border-color:var(--orange)}button{width:100%;margin-top:18px;padding:12px 19px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-size:15px;font-weight:800;font-family:inherit;cursor:pointer;transition:.18s ease;box-shadow:0 8px 22px #e7542547}button:hover:not(:disabled){background:var(--orange-2);transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}button.ghost{background:transparent;color:var(--navy);border:2px solid var(--line);box-shadow:none}button.ghost:hover:not(:disabled){border-color:var(--orange);color:var(--orange);background:transparent}button.orange{background:var(--orange)}.link{color:var(--orange);cursor:pointer;font-weight:700}.error{color:var(--danger);font-size:13px;margin-top:12px}.ok{color:var(--ok-green);font-size:13px;margin-top:12px;font-weight:700}.steps{display:flex;gap:6px;margin-bottom:18px}.dot{height:6px;flex:1;border-radius:4px;background:var(--line)}.dot.on{background:var(--orange)}.kv{display:flex;flex-direction:column;gap:2px;padding:12px 0;border-bottom:1px solid var(--line)}.kv .k{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.kv .val{font-family:var(--mono);font-size:13px;word-break:break-all}.phrase{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:var(--navy);color:#fff;border-radius:14px;padding:16px;margin:14px 0}.phrase span{font-family:var(--mono);font-size:13px}.phrase b{color:var(--orange-2);margin-right:6px}.warn{background:#fff6f3;border:1px solid #ffd9cf;border-left:3px solid var(--orange);color:#8a2c17;padding:12px 14px;border-radius:10px;font-size:13px}.row{display:flex;gap:10px}.row>*{flex:1}.badge{display:inline-block;background:#e754251f;color:var(--orange);border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.claim{display:flex;gap:20px;align-items:flex-start;margin-top:12px;border:1px solid var(--line);border-radius:14px;padding:18px;background:linear-gradient(180deg,var(--wash),var(--paper))}.claim-body{flex:1;min-width:0}.claim-addr{font-family:var(--mono);font-size:13px;word-break:break-all;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:4px}.claim-qr{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px}.claim-qr img{display:block;border-radius:4px}.claim-qr .sub{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.12em}@media(max-width:520px){.claim{flex-direction:column-reverse;align-items:stretch}.claim-qr{align-self:center}}.twins{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(160px,100%),1fr));gap:12px;margin-top:12px}.twin{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);transition:.18s ease}.twin:hover{border-color:#e7542566;box-shadow:0 8px 22px #0f1e3d14}.twin img{width:100%;height:150px;object-fit:contain;background:var(--navy);display:block}.twin-body{padding:12px}.twin-name{font-weight:800;font-size:14px;margin-bottom:6px;letter-spacing:-.01em}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.section-head button{width:auto;margin-top:0;padding:8px 15px;font-size:13px}.twin-img-ph{width:100%;height:150px;background:var(--navy);display:block}.twin-img-fallback{display:flex;align-items:center;justify-content:center;color:var(--orange-2);font-weight:900;font-size:16px;letter-spacing:.06em}.skeleton .twin-img-ph,.skeleton .sk-line{background:linear-gradient(90deg,#eef1f6 25%,#e2e7f0 37%,#eef1f6 63%);background-size:400% 100%;animation:sk-shimmer 1.4s ease infinite}.skeleton .sk-line{height:10px;border-radius:6px;margin-top:8px}.skeleton .sk-line.sk-short{width:55%}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.skeleton .twin-img-ph,.skeleton .sk-line{animation:none}button:hover:not(:disabled){transform:none}}.redeem{margin-top:14px;border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--paper)}.redeem .row{align-items:center}.redeem .row>button,.redeem .row>.button-like{flex:0 0 auto;width:auto}.claim-code-input{font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;font-size:16px;font-weight:700}.claim-found{display:flex;gap:16px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.claim-found-body{flex:1;min-width:0}.claim-found-img{flex:0 0 auto;width:100px;height:140px;object-fit:contain;border-radius:10px;background:var(--navy);display:block}.claim-done{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.claim-history{margin-top:16px}.claim-history summary{cursor:pointer;font-size:13px;color:var(--muted)}.button-like{display:inline-flex;align-items:center;justify-content:center;padding:12px 19px;border-radius:999px;font-size:15px;font-weight:800;text-decoration:none;color:var(--navy);border:2px solid var(--line)}.button-like:hover{border-color:var(--orange);color:var(--orange)}@media(max-width:520px){.redeem .row{flex-direction:column;align-items:stretch}.redeem .row>button,.redeem .row>.button-like{width:100%;justify-content:center}.claim-found{flex-direction:column}.claim-found-img{width:100%;height:200px}}
