:root{--bg:#0f1020;--card:#1b1d33;--card2:#232649;--txt:#f5f6ff;--sub:#9ba0c9;--line:rgba(255,255,255,.08);--a1:#7c5cff;--a2:#4cc3ff;--gold:#ffd66b;--r:20px}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{height:100%}body{font-family:-apple-system,PingFang SC,HarmonyOS Sans SC,Microsoft YaHei,sans-serif;background:radial-gradient(1200px 600px at 20% -10%,#2b1f5e 0%,transparent 60%),radial-gradient(1000px 500px at 90% 110%,#0e3a5c 0%,transparent 55%),var(--bg);color:var(--txt)}#app{width:100%;margin:0 auto;display:flex;justify-content:center}#app>div{width:100%;max-width:460px;min-height:100dvh;padding:0 18px calc(28px + env(safe-area-inset-bottom))}.btn{display:block;width:100%;border:none;border-radius:999px;padding:16px 0;font-size:17px;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(135deg,var(--a1),var(--a2));box-shadow:0 10px 28px #5a5aff59;transition:transform .15s}.btn:active{transform:scale(.97)}.btn.ghost{background:transparent;box-shadow:none;border:1px solid var(--line);color:var(--sub);font-weight:500}.home{padding-top:8dvh;text-align:center}.logo{font-size:15px;letter-spacing:6px;color:var(--sub);margin-bottom:26px}.hero-title{font-size:34px;font-weight:900;line-height:1.35;letter-spacing:1px}.hero-title em{font-style:normal;background:linear-gradient(135deg,var(--a1),var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{margin:18px 0 34px;color:var(--sub);font-size:14px;line-height:2}.hero-card{margin:0 auto 30px;max-width:300px;border-radius:24px;padding:22px 18px;background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);display:flex;justify-content:space-around;align-items:center}.hero-card .p{font-size:40px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4));animation:float 3s ease-in-out infinite}.hero-card .p:nth-child(2){animation-delay:.4s}.hero-card .p:nth-child(3){animation-delay:.8s}.hero-card .p:nth-child(4){animation-delay:1.2s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.meta-row{display:flex;justify-content:center;gap:26px;color:var(--sub);font-size:12px;margin-top:22px}.meta-row b{color:var(--txt)}.quiz{padding-top:34px}.progress-wrap{display:flex;align-items:center;gap:12px;margin-bottom:30px}.progress-bar{flex:1;height:8px;border-radius:99px;background:var(--card);overflow:hidden}.progress-fill{height:100%;width:0%;border-radius:99px;background:linear-gradient(90deg,var(--a1),var(--a2));transition:width .35s ease}.progress-num{font-size:12px;color:var(--sub);min-width:44px;text-align:right}.q-scene{font-size:12px;color:var(--a2);letter-spacing:3px;margin-bottom:14px}.q-title{font-size:22px;font-weight:800;line-height:1.6;margin-bottom:30px}.opt{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:14px;color:var(--txt);font-size:15.5px;line-height:1.55;cursor:pointer;transition:all .18s}.opt:active{border-color:var(--a1);background:var(--card2);transform:scale(.98)}.opt .dot{flex:none;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--sub);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--sub)}.opt:active .dot{border-color:var(--a1);color:#fff;background:var(--a1)}.loading{padding-top:34dvh;text-align:center}.orb{width:84px;height:84px;margin:0 auto 30px;border-radius:50%;background:conic-gradient(var(--a1),var(--a2),var(--a1));animation:spin 1.2s linear infinite;position:relative}.orb:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;background:var(--bg)}@keyframes spin{to{transform:rotate(360deg)}}.load-txt{font-size:15px;letter-spacing:2px}.load-sub{margin-top:12px;font-size:12px;color:var(--sub)}.result{padding-top:26px}.res-hero{border-radius:26px;padding:34px 22px 28px;text-align:center;position:relative;overflow:hidden;border:1px solid var(--line)}.res-hero .type-emoji{font-size:58px}.res-hero h2{font-size:30px;font-weight:900;margin:14px 0 6px}.res-hero .code{font-size:13px;letter-spacing:5px;color:#ffffffbf}.res-hero .tagline{margin-top:16px;font-size:14.5px;line-height:1.8;color:#ffffffeb}.res-hero .rarity{margin-top:18px;display:inline-block;background:#ffffff29;border-radius:999px;padding:6px 16px;font-size:12px}.axes{display:flex;flex-direction:column;gap:10px;margin-top:18px}.axis-row{display:flex;align-items:center;gap:10px;font-size:12px}.axis-row .lab{width:22px;font-weight:800;color:var(--sub)}.axis-row .bar{flex:1;height:7px;border-radius:99px;background:#ffffff26;overflow:hidden;display:flex;flex-direction:row-reverse}.axis-row .seg{height:100%;background:#ffffffd9}.sec{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin-top:16px}.sec h3{font-size:15px;margin-bottom:12px;display:flex;align-items:center;gap:8px}.sec h3 .ic{font-size:18px}.sec p,.sec li{font-size:14px;line-height:1.9;color:#d7daf3}.sec ul{list-style:none}.sec li{padding-left:20px;position:relative}.sec li:before{content:"·";position:absolute;left:6px;color:var(--a2);font-weight:900}.paywall{margin-top:18px;border-radius:26px;padding:30px 22px;text-align:center;position:relative;overflow:hidden;background:linear-gradient(160deg,#3a2f7d,#1c2b52);border:1px solid rgba(255,214,107,.35)}.paywall .lock{font-size:40px}.paywall h3{font-size:20px;font-weight:900;margin:14px 0 8px}.paywall .desc{font-size:13px;color:var(--sub);line-height:1.9;margin-bottom:18px}.pay-list{text-align:left;display:inline-block;margin-bottom:22px}.pay-list li{list-style:none;font-size:14px;line-height:2.2;color:#d7daf3}.pay-list li:before{content:"✦";color:var(--gold);margin-right:8px;font-size:12px}.pay-btn{width:100%;border:none;border-radius:999px;padding:15px 0;font-size:17px;font-weight:800;color:#3a2c00;cursor:pointer;background:linear-gradient(135deg,var(--gold),#ffb84c);box-shadow:0 10px 26px #ffbe5059}.pay-btn:active{transform:scale(.97)}.pay-btn:disabled{opacity:.6}.pay-note{margin-top:10px;font-size:11px;color:var(--sub)}.unlock-banner{margin-top:18px;border-radius:18px;padding:14px;text-align:center;background:#ffd66b1a;border:1px dashed rgba(255,214,107,.4);font-size:13px;color:var(--gold)}.share-row{display:flex;gap:12px;margin-top:22px}.share-row .btn{font-size:15px;padding:14px 0}.retake{margin-top:14px}.mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#060712bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:460px;background:var(--card2);border-radius:24px 24px 0 0;padding:26px 22px calc(26px + env(safe-area-inset-bottom));animation:up .3s ease}@keyframes up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.sheet h3{font-size:18px;font-weight:800;text-align:center;margin-bottom:6px}.sheet .price{text-align:center;font-size:34px;font-weight:900;color:var(--gold);margin:10px 0 4px}.sheet .price small{font-size:14px;font-weight:500;color:var(--sub)}.sheet .mock-btn{margin-top:12px;width:100%;border:1px dashed rgba(255,214,107,.5);border-radius:999px;padding:13px 0;background:transparent;color:var(--gold);font-size:14px;cursor:pointer}.sheet .cancel{margin-top:12px}.sheet .err{margin-top:12px;text-align:center;font-size:12px;color:#ff8f8f}.poster-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#060712f5;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px}.poster-wrap canvas{max-width:82vw;max-height:70vh;border-radius:14px;box-shadow:0 20px 60px #0009}.poster-wrap img{max-width:82vw;max-height:70vh;border-radius:14px;box-shadow:0 20px 60px #0009}.poster-wrap p{margin-top:14px;font-size:13px;color:var(--sub)}.poster-wrap .close{margin-top:16px;width:200px}.toast{position:fixed;left:50%;bottom:12dvh;transform:translate(-50%);z-index:99;background:#000c;color:#fff;font-size:13px;border-radius:10px;padding:10px 18px;animation:fade .25s ease}
