*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;color:#e5e7eb;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","PingFang SC","Microsoft YaHei",Roboto,Arial,sans-serif;
 background:#0f172a radial-gradient(1200px 600px at 50% -10%,#24325a 0,transparent 60%);background-attachment:fixed;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}
.top{position:relative;max-width:520px;margin:0 auto;padding:max(14px,env(safe-area-inset-top)) 18px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.18em;font-weight:700;color:#94a3b8}
#lang{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#e2e8f0;border-radius:99px;padding:6px 14px;font-size:13px;cursor:pointer;letter-spacing:0}
main{position:relative;max-width:520px;margin:0 auto;padding:10px 18px 150px}
[hidden]{display:none!important}
.badge{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.badge span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);padding:6px 14px;border-radius:99px;font-size:13px;font-weight:700;letter-spacing:.08em}
.badge span:empty{display:none}
.hero{text-align:center;padding:34px 0 20px}
.mark{display:inline-block;font-family:Impact,"Arial Black",sans-serif;font-size:30px;letter-spacing:6px;color:#f87171;border:5px solid #f87171;border-radius:12px;padding:6px 18px;transform:rotate(-6deg);opacity:.92}
h1{font-family:Impact,"Arial Black","Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-weight:900;font-size:clamp(46px,14vw,70px);line-height:.98;margin:26px 0 14px;text-transform:uppercase;letter-spacing:-.5px;color:#fff;text-shadow:0 6px 30px rgba(0,0,0,.45)}
.tag{font-size:21px;line-height:1.35;color:#f1f5f9;margin:0 auto 12px;max-width:380px;font-weight:600}
.how{font-size:16px;color:#94a3b8;margin:0 auto;max-width:360px;line-height:1.45}
.ctas{display:flex;flex-direction:column;gap:12px;margin-top:22px}
.btn{font-family:inherit;font-size:19px;font-weight:800;padding:17px 20px;border-radius:16px;border:0;cursor:pointer;color:#fff;transition:transform .12s}
.btn:active{transform:scale(.97)}
.btn.red{background:#dc2626;box-shadow:0 8px 0 #7f1d1d,0 14px 30px rgba(220,38,38,.35)}
.btn.red:active{box-shadow:0 3px 0 #7f1d1d;transform:translateY(5px)}
.btn.ghost{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);font-size:17px;font-weight:700}
.warn{text-align:center;color:#64748b;font-size:14px;margin:28px 0 0;font-style:italic}
.foot{text-align:center;color:#64748b;font-size:12.5px;margin:18px 0 0}
.phead{display:flex;align-items:center;gap:12px;margin:14px 0 14px}
.x{background:rgba(255,255,255,.08);border:0;color:#e5e7eb;width:36px;height:36px;border-radius:50%;font-size:18px;cursor:pointer}
.progress{flex:1;display:flex;gap:6px}.progress i{flex:1;height:8px;border-radius:5px;background:rgba(255,255,255,.12)}
.progress i.cur{background:#fbbf24}.progress i.d.catch,.progress i.d.clear{background:#22c55e}.progress i.d.miss{background:#ef4444}.progress i.d.false{background:#f59e0b}
#cno{font-size:12px;letter-spacing:.12em;color:#94a3b8;font-weight:700;white-space:nowrap}
.note{background:#fde68a;color:#451a03;border-radius:6px;padding:14px 16px 16px;margin:0 6px 18px;transform:rotate(-1.2deg);box-shadow:0 10px 24px rgba(0,0,0,.35);font-size:17px;line-height:1.4;font-weight:600;position:relative}
.note b{display:block;font-size:11px;letter-spacing:.2em;color:#92400e;margin-bottom:6px}
.note:before{content:"";position:absolute;left:50%;top:-9px;width:60px;height:18px;margin-left:-30px;background:rgba(255,255,255,.45);transform:rotate(2deg)}
.doc{position:relative;background:#fbf8f0;color:#1f2937;border-radius:6px;box-shadow:0 18px 40px rgba(0,0,0,.45);border-top:12px solid #c0392b;overflow:hidden;font-family:"Courier New",Courier,"PingFang SC","Microsoft YaHei",monospace}
.doc.in{animation:slide .38s cubic-bezier(.2,.8,.2,1)}
@keyframes slide{from{opacity:0;transform:translateY(26px) rotate(.8deg)}to{opacity:1;transform:none}}
.dh{display:flex;gap:12px;align-items:center;padding:16px 18px 12px;border-bottom:2px dashed #d6d3c8;font-family:-apple-system,"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif}
.dh .ico{font-size:30px}.dh b{display:block;font-size:15px;letter-spacing:.08em}.dh small{color:#9ca3af;font-size:11px;letter-spacing:.1em;font-weight:600}
.db{padding:14px 18px 6px;font-size:16.5px;line-height:1.5;min-height:120px}
.db p{margin:0 0 12px}
.row{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid #ece8da}
.lb{flex:0 0 36%;color:#6b7280;font-size:13px;text-transform:uppercase;letter-spacing:.04em;padding-top:2px}
.vl{flex:1;font-weight:700;word-break:break-word}
.sub{font-weight:800;font-size:17px;margin:4px 0 8px}
.df{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:flex-end;padding:18px 18px 16px;color:#9ca3af;font-size:12px;font-family:-apple-system,"Helvetica Neue",Arial,sans-serif}
.sigline i{display:inline-block;width:70px;border-bottom:1.5px solid #9ca3af}
.stamp{position:absolute;left:50%;top:52%;font-family:Impact,"Arial Black","Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-weight:900;font-size:46px;letter-spacing:4px;padding:6px 20px;border:7px solid;border-radius:12px;opacity:0;pointer-events:none;white-space:nowrap;transform:translate(-50%,-50%) rotate(-14deg) scale(3)}
.stamp.ap{color:#15803d}.stamp.rj{color:#b91c1c}
.stamp.hit{animation:thud .42s cubic-bezier(.3,1.4,.5,1) forwards}
@keyframes thud{0%{opacity:0;transform:translate(-50%,-50%) rotate(-24deg) scale(3.2)}55%{opacity:.95;transform:translate(-50%,-50%) rotate(-14deg) scale(.94)}75%{transform:translate(-50%,-50%) rotate(-14deg) scale(1.04)}100%{opacity:.9;transform:translate(-50%,-50%) rotate(-14deg) scale(1)}}
.verdict{margin-top:18px;border-radius:14px;padding:16px 18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);line-height:1.5}
.verdict h3{margin:0 0 8px;font-size:20px;letter-spacing:.04em;font-family:Impact,"Arial Black","Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-weight:900}
.verdict p{margin:0 0 8px;font-size:16.5px}.verdict .mut{color:#94a3b8;font-size:15px}.verdict .bad{color:#fca5a5}
.verdict.catch,.verdict.clear{border-color:#22c55e;background:rgba(34,197,94,.1)}.verdict.catch h3,.verdict.clear h3{color:#4ade80}
.verdict.miss{border-color:#ef4444;background:rgba(239,68,68,.12)}.verdict.miss h3{color:#f87171}
.verdict.false{border-color:#f59e0b;background:rgba(245,158,11,.1)}.verdict.false h3{color:#fbbf24}
.verdict.pop{animation:slide .3s ease-out}
.spacer{height:20px}
.bar{position:fixed;left:0;right:0;bottom:0;display:flex;gap:12px;padding:14px 18px max(18px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto;background:linear-gradient(transparent,#0f172a 38%);z-index:5}
.bar.nxt{display:block}.bar.nxt .btn{width:100%}.bar.nxt:has(#nx[hidden]){display:none}
.act{flex:1;font-family:Impact,"Arial Black","Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-weight:900;font-size:26px;letter-spacing:3px;padding:20px 8px;border-radius:16px;border:0;color:#fff;cursor:pointer;transition:transform .1s}
.act.rj{background:#dc2626;box-shadow:0 7px 0 #7f1d1d}.act.ap{background:#16a34a;box-shadow:0 7px 0 #14532d}
.act:active{transform:translateY(5px);box-shadow:0 2px 0 rgba(0,0,0,.4)}
#card{display:block;width:100%;max-width:420px;margin:22px auto 0;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
#card.print{animation:slide .6s cubic-bezier(.2,.8,.2,1)}
.acts{display:flex;gap:10px;max-width:420px;margin:20px auto 0}.acts .btn{flex:1;padding:15px 6px;font-size:16px}.acts .btn.red{box-shadow:0 5px 0 #7f1d1d}
.acts.one{margin-top:10px}.acts.one .btn{width:100%}
.pill{text-align:center;margin:20px auto 0;color:#fbbf24;font-weight:800;font-size:15px}.pill:empty{display:none}
.cd{text-align:center;color:#94a3b8;font-size:14px;margin-top:6px;font-variant-numeric:tabular-nums}
.link{display:block;margin:12px auto 0;background:none;border:0;color:#94a3b8;font-size:14px;text-decoration:underline;cursor:pointer}
#toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,30px);background:#fff;color:#111;padding:11px 20px;border-radius:99px;font-weight:700;font-size:15px;opacity:0;pointer-events:none;transition:.25s;z-index:20}#toast.on{opacity:1;transform:translate(-50%,0)}
body[data-screen=intro] .top,body[data-screen=result] .top{}
@media(min-width:700px){main{padding-top:30px}.hero{padding-top:50px}}
#about{color:#94a3b8;font-size:13px;letter-spacing:0;text-decoration:none;border-bottom:1px solid rgba(148,163,184,.4);font-weight:600}
.aboutp{padding-top:30px;font-size:18px;line-height:1.55;color:#cbd5e1}.aboutp a{color:#fbbf24}
.made{text-align:center;color:#64748b;font-size:12.5px;margin:6px 0 0}
