:root{font-family:'PingFang SC','Microsoft YaHei',sans-serif;color:#53475f;background:#f2eef5;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding:32px 16px 20px;background:radial-gradient(ellipse at 10% 10%,#e9dff8,transparent 55%),radial-gradient(ellipse at 90% 80%,#fae1e7,transparent 60%);min-height:100vh}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #7755a8;outline-offset:4px}main{max-width:490px;margin:auto;border-radius:30px;background:radial-gradient(ellipse at 0 8%,#eee4fc,transparent 36%),radial-gradient(ellipse at 100% 25%,#ffe7ef,transparent 42%),#fffcf7;box-shadow:0 18px 65px #78658018;overflow:hidden;border:1px solid #fff}.top{display:flex;align-items:center;gap:9px;padding:23px 25px;font-size:13px}.top b{font-weight:600}.logo{font-size:22px;color:#a48cc7}.edition{margin-left:auto;border:1px solid #e5d9ef;padding:5px 9px;border-radius:20px;font-size:10px;color:#9982ae;background:#fff9}.welcome{text-align:center;padding:5px 26px 30px}.stars{color:#baa4d5;font-size:21px;padding:12px 0}.stars span{font-size:11px;letter-spacing:2px;margin:0 8px}.friends{height:210px;display:flex;align-items:center;justify-content:center;padding:5px 0}.mascot{background-image:url('characters.png');background-size:400% 200%;background-position:var(--x) var(--y);aspect-ratio:1;width:100%;background-repeat:no-repeat;mix-blend-mode:multiply}.friends .mascot{width:34%;flex-shrink:0;transform:rotate(-8deg)}.friends .mascot:nth-child(2){width:48%;margin:0 -8%;transform:translateY(-9px);z-index:1}.friends .mascot:last-child{transform:rotate(8deg)}.kicker{font-size:12px;letter-spacing:3px;color:#a18caf;margin:12px 0}.welcome h1{font-family:'Songti SC','STSong',serif;font-weight:500;font-size:49px;letter-spacing:-2px;margin:17px 0 18px;line-height:1.22}.welcome em{font-family:Georgia,serif;color:#a17bc6;font-style:normal;font-size:67px}.intro{font-size:15px;line-height:1.9;color:#8c7f95}.badges{display:flex;justify-content:center;gap:7px;margin:25px 0}.badges span{font-size:11px;border:1px solid #ebe3ef;background:#ffffff99;border-radius:24px;padding:8px 10px;color:#92839d}.primary{width:100%;display:flex;align-items:center;justify-content:center;position:relative;gap:15px;background:linear-gradient(110deg,#ac8bd0,#d795b9);color:white;border:0;border-radius:19px;min-height:59px;padding:16px 20px;box-shadow:0 9px 24px #b68fc92b;font-weight:600;font-size:16px}.primary>span{position:absolute;right:23px;font-size:24px;font-weight:400}.primary:hover{filter:brightness(1.04)}.primary:disabled{background:#d9d1de;color:#fff;box-shadow:none;cursor:default}.privacy{font-size:10px;color:#a79bab;margin:17px 0}.fine{font-size:11px;color:#a396ab;line-height:1.8}.text{font-size:12px;color:#a086b8;background:none;border:0;padding:12px}.back{background:none;border:0;color:#8d789f;font-size:23px;padding:0 8px 0 0}.question{padding:12px 26px 30px}.progress-line{display:flex;align-items:center;justify-content:space-between;color:#a392ad;font-size:12px}.progress-line b{font-size:19px;color:#9875b6}.progress-line small{font-size:12px;color:#b2a7ba;font-weight:400}progress{appearance:none;width:100%;height:5px;border:0;overflow:hidden;border-radius:5px;margin:12px 0}progress::-webkit-progress-bar{background:#ede5f0}progress::-webkit-progress-value{background:#b292ce}.q-icon{width:54px;height:54px;border-radius:18px;background:#ede2f5;color:#b08ccd;font-size:30px;display:grid;place-items:center;margin:22px 0}.question h1{font-size:26px;font-weight:600;line-height:1.55;letter-spacing:.3px;margin:15px 0}.prompt{font-size:14px;line-height:1.8;color:#91849d;margin:8px 0 26px}.options{display:grid;gap:13px;margin-bottom:26px}.option{border:1px solid #e8dfee;border-radius:17px;background:#ffffffb0;display:flex;align-items:center;text-align:left;gap:13px;padding:17px 14px;color:#756780;font-size:14px;line-height:1.6;min-height:67px}.option:hover{border-color:#bfa2d8}.letter{background:#f0e8f7;color:#ac90c5;border-radius:10px;min-width:29px;height:29px;display:grid;place-items:center;font-size:12px}.check{margin-left:auto;color:#b5a2c6}.option.selected{border-color:#b494cc;background:#efe4f8;box-shadow:0 0 0 1px #b494cc}.question>.fine{text-align:center;margin-top:20px}.result{text-align:center;padding:6px 25px 28px}.reveal{max-width:280px;margin:8px auto 10px;animation:appear .6s ease-out}.type{font-size:11px;background:#eee4f6;color:#9a7eae;padding:7px 12px;border-radius:30px}.result h1{font-size:34px;color:#9170b3;margin:20px 0 12px}.quote{font-size:16px;color:#897594;line-height:1.7}.tags{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;font-size:10px;color:#ac8fb9;padding:8px 0 25px}.report{text-align:left;background:#ffffffb0;border:1px solid #eee3f1;padding:21px;border-radius:22px;margin:0 0 25px}.report h2{font-size:18px;font-weight:600;margin:0 0 15px}.report p{font-size:13px;color:#97879f;line-height:1.9}.dimension{margin:25px 0}.dimension>div{display:flex;justify-content:space-between;font-size:12px}.dimension b{font-weight:500}.dimension>div>span{color:#ad96bb;font-size:11px}meter{display:block;width:100%;height:17px}meter::-webkit-meter-bar{background:#f0e9f3;border:0}meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,#beabd8,#dfa9c4)}.ends{font-size:10px}.note{padding-top:17px;border-top:1px dashed #e5dbea;margin-top:17px}.note b{font-size:12px;color:#a183b5}.note p{margin:7px 0 0}.secondary{border:1px solid #dccbe8;background:transparent;color:#a081b7;min-height:52px;border-radius:17px;width:100%;margin-top:13px;font-size:14px}#status{font-size:12px;color:#9274a6;line-height:1.7}#cast:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}#cast article{border:1px solid #eae0ed;background:#fff9;border-radius:18px;padding:7px 9px 15px}#cast b{display:block;font-size:12px;color:#90779f}#cast small{display:block;font-size:10px;color:#ad9bb5;line-height:1.6;margin-top:6px}footer{text-align:center;font-size:10px;color:#b4a8b9;line-height:1.8;margin:21px auto}footer button{background:none;border:0;color:inherit;font-size:10px;padding:7px}dialog{max-width:440px;width:90%;border:1px solid #e7dced;border-radius:24px;padding:28px;color:#756580;background:#fffafc}dialog h2{font-size:20px}dialog p{font-size:14px;line-height:1.8}dialog::backdrop{background:#41314f66}@keyframes appear{from{opacity:0;transform:scale(.9) translateY(12px)}to{opacity:1;transform:none}}@media(max-width:520px){body{padding:0;background:#fffcf7}main{border-radius:0;border:0;box-shadow:none;min-height:calc(100svh - 83px)}.top{padding:22px}.welcome{padding-inline:23px}.friends{height:195px}.welcome h1{font-size:44px}.welcome em{font-size:61px}.question{padding-inline:23px}.question h1{font-size:25px}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
h1:focus{outline:none}.mascot{mask-image:radial-gradient(ellipse at center,#000 53%,transparent 74%);-webkit-mask-image:radial-gradient(ellipse at center,#000 53%,transparent 74%)}
.payment-qr{display:block;width:100%;max-width:270px;margin:18px auto;border-radius:14px}.payment-warning{background:#fff0dc;color:#866142;padding:14px;border-radius:14px;font-size:13px;line-height:1.8;margin:18px 0}.code-input{display:block;width:100%;padding:15px 12px;border:1px solid #cdb9de;border-radius:12px;margin:9px 0 15px;font:16px monospace;box-sizing:border-box}.code-input:focus{outline:2px solid #a687c0;outline-offset:2px}details{padding:15px 0;margin-bottom:20px;border-block:1px dashed #e5d8ec}summary{cursor:pointer;font-size:13px;color:#90719f;line-height:1.7}.report label{font-size:14px;font-weight:600}
