/* On-chain certificate card + scratch-to-claim (2026-09-30). Mobile first, printable. */
.certwrap{max-width:420px;margin:0 auto;padding:4px 0 10px}
.ccard{--c1:#f5c542;--c2:#ff8a3d;--c3:#ffd86b;--bg1:#2a2110;--bg2:#120e06;position:relative;border-radius:22px;padding:7px;background:conic-gradient(from 200deg,var(--c1),var(--c2),#ff7ab6,#7aa7ff,#6bffd8,var(--c3),var(--c1));box-shadow:0 18px 50px #000a,0 0 0 1px #ffffff14 inset;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.ccard.t-transfer{--c1:#58a6ff;--c2:#7aa7ff;--c3:#a5d6ff;--bg1:#0f2340;--bg2:#08111f}
.ccard.t-kyc{--c1:#3fb950;--c2:#56d364;--c3:#a5f3b5;--bg1:#0f2a18;--bg2:#07140c}
.ccard.t-created{--c1:#a371f7;--c2:#d2a8ff;--c3:#8957e5;--bg1:#22163d;--bg2:#100a1f}
.ccard.t-refused{--c1:#f85149;--c2:#8b949e;--c3:#ffa198;--bg1:#2d1414;--bg2:#140909}
.ccard.t-claim{--c1:#f5c542;--c2:#3fb950;--c3:#58a6ff;--bg1:#1c2410;--bg2:#0b0f08}
.cin{position:relative;overflow:hidden;border-radius:16px;background:linear-gradient(170deg,var(--bg1),var(--bg2) 70%);color:#f0f3f6;padding:14px 14px 10px}
.cin:before{content:"";position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 40%,#ffffff1c 48%,#ffffff05 52%,transparent 60%);transform:translateX(-30%);animation:shine 6s ease-in-out infinite;pointer-events:none}
@keyframes shine{0%,60%{transform:translateX(-40%)}100%{transform:translateX(40%)}}
@media(prefers-reduced-motion:reduce){.cin:before{animation:none}}
.ctop{display:flex;align-items:center;gap:10px}
.mono-logo{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:800 15px/1 -apple-system,"Segoe UI",Roboto,sans-serif;letter-spacing:-.3px;color:#fff;border:2px solid #ffffffcc;box-shadow:0 2px 8px #0008}
.cbrand{min-width:0;flex:1}.cbrand b{display:block;font-size:16px;line-height:1.2;overflow-wrap:anywhere}.cbrand small{display:block;font-size:11.5px;color:#c9d1d9cc}
.ctype{flex:none;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 9px;border-radius:999px;background:#0008;border:1px solid var(--c1);color:var(--c3)}
.cart{margin:12px 0 10px;border-radius:12px;border:2px solid var(--c1);background:radial-gradient(120% 90% at 50% 0%,#ffffff22,transparent 60%),radial-gradient(80% 80% at 50% 110%,var(--c1),transparent 70%),#0006;padding:18px 12px 16px;text-align:center}
.emb{width:74px;height:74px;margin:0 auto 10px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:conic-gradient(var(--c1),var(--c3),var(--c2),var(--c1));box-shadow:0 0 24px var(--c1);font:800 17px/1 -apple-system,"Segoe UI",Roboto,sans-serif;color:#111;border:3px solid #fff}
.cname{font-size:15px;font-weight:600;color:#e6edf3;overflow-wrap:anywhere}.camt{font-size:34px;font-weight:800;letter-spacing:-.5px;line-height:1.15;margin-top:4px;overflow-wrap:anywhere}.camt small{font-size:16px;font-weight:700;color:var(--c3);margin-left:6px}
.cstats{display:grid;gap:6px;margin:0 0 10px}.cstat{background:#0007;border:1px solid #ffffff1f;border-radius:10px;padding:8px 10px}.cstat .k{font-size:11px;color:#c9d1d9aa;text-transform:uppercase;letter-spacing:.4px}.cstat .v{font-size:14.5px;font-weight:600;margin-top:2px;line-height:1.35;overflow-wrap:anywhere}
.cver{display:flex;align-items:center;gap:8px;background:#3fb95026;border:1px solid #3fb950aa;border-radius:10px;padding:9px 10px;font-weight:700;font-size:14.5px;margin-bottom:10px}.t-refused .cver{background:#f8514922;border-color:#f85149aa}
.cfoot{display:flex;gap:12px;align-items:center}.cqr{flex:none;width:136px;height:136px;background:#fff;border-radius:8px;padding:6px}.cqr svg{display:block;width:100%;height:100%}
.cfoot .cq{font-size:12px;color:#c9d1d9;line-height:1.4}.cfoot .cq b{display:block;color:#fff;font-size:13px;margin-bottom:2px}
.cfine{margin-top:9px;padding-top:7px;border-top:1px dashed #ffffff33;font:10px/1.4 ui-monospace,Menlo,Consolas,monospace;color:#c9d1d999;overflow-wrap:anywhere;word-break:break-all}
.cactions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:16px 0 6px}.cactions .btn,.cactions button{margin:0}
.cnote{font-size:13px;color:var(--mut);text-align:center;margin:6px 0}
.cskel{height:520px;border-radius:22px;background:linear-gradient(90deg,#161b22,#1f2630,#161b22);background-size:200% 100%;animation:sk 1.4s linear infinite}@keyframes sk{to{background-position:-200% 0}}
/* scratch-to-claim */
.clm-steps{counter-reset:c;list-style:none;padding:0;margin:0;display:grid;gap:10px}.clm-steps li{position:relative;padding:12px 14px 12px 50px;background:var(--card);border:1px solid var(--line);border-radius:12px}.clm-steps li:before{counter-increment:c;content:counter(c);position:absolute;left:14px;top:12px;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#2f81f7,#8957e5);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}
.clm-steps li.done{border-color:var(--ok)}.clm-steps li.bad{border-color:var(--bad)}.clm-steps b{display:block;margin-bottom:3px}
.fixed{display:flex;gap:8px;align-items:flex-start;background:#1f6feb14;border:1px solid #1f6feb66;border-radius:10px;padding:10px 12px;font-size:14px;margin:12px 0}
.sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.pcard{border:2px solid #30363d;border-radius:14px;padding:12px;background:linear-gradient(170deg,#1c2410,#0b0f08);color:#f0f3f6;-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid;page-break-inside:avoid}
.pcard .ph{display:flex;align-items:center;gap:8px}.pcard .ph b{font-size:14px}.pcard .pt{margin:8px 0;font-size:20px;font-weight:800}.pcard .pv{font-size:13px;color:#c9d1d9}
.scratch{position:relative;margin-top:10px;border-radius:10px;overflow:hidden;border:2px dashed #8b949e;display:flex;gap:10px;align-items:center;padding:8px;background:#fff;color:#111}
.scratch .cqr{width:92px;height:92px;padding:0}.scratch .code{font:700 15px/1.3 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.5px}
.scratch .foil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:15px;color:#333;background:repeating-linear-gradient(45deg,#c0c4c8,#c0c4c8 8px,#d9dde1 8px,#d9dde1 16px);cursor:pointer;transition:opacity .4s}
.scratch.open .foil{opacity:0;pointer-events:none}
.pcard .pf{font-size:11px;color:#c9d1d9aa;margin-top:8px;line-height:1.4}
@media print{
 body{background:#fff!important}main{max-width:none;padding:0}.noprint,.cactions,details.tech,.cnote.noprint{display:none!important}
 .certwrap{max-width:92mm;margin:0 auto}.ccard{box-shadow:none}.cin:before{display:none}
 .sheet{grid-template-columns:1fr 1fr;gap:6mm}.scratch .foil{display:none}.pcard{border-color:#999}
}
/* v4 (2026-09-30): card photo in the hero area (per-item / per-token, from items.json); replaces the round token badge when set */
.cart.has-photo{padding:12px 12px 14px}
.cphoto{margin:0 0 10px}
.cphoto img{display:block;width:100%;height:auto;aspect-ratio:800/457;object-fit:cover;border-radius:8px;border:3px solid #fff;background:#0006;box-shadow:0 0 18px var(--c1),0 4px 14px #000a}
.cphoto figcaption{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 8px;margin-top:9px}
.cphoto .plabel{font-size:12.5px;font-weight:700;letter-spacing:.3px;padding:3px 11px;border-radius:999px;background:#0008;border:1px solid var(--c1);color:var(--c3)}
.cphoto .psample{font-size:11px;color:#c9d1d9aa}
@media print{.cphoto img{box-shadow:none}}
