:root{--paper: #f7f4ef;--paper-2: #fffdf8;--ink: #14110f;--ink-2: #4a443e;--ink-3: #8b837a;--line: #14110f;--red: #ff2e4d;--yellow: #ffd400;--green: #00a67e;--r-sm: 12px;--r-md: 18px;--r-lg: 26px;--shadow: 4px 4px 0 var(--ink);--shadow-sm: 3px 3px 0 var(--ink);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--font-sans: "PingFang SC", "HarmonyOS Sans SC", "Noto Sans SC", "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Songti SC", "Noto Serif SC", "Source Han Serif SC", Georgia, serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100dvh;overscroll-behavior-y:none}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.055'/%3E%3C/svg%3E")}#root{position:relative;z-index:1}.shell{width:100%;max-width:520px;margin:0 auto;min-height:100dvh;padding:calc(var(--safe-top) + 18px) 20px calc(var(--safe-bottom) + 28px);display:flex;flex-direction:column}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:0 24px;border-radius:999px;border:2px solid var(--ink);background:var(--ink);color:var(--paper-2);font-size:17px;font-weight:700;letter-spacing:.02em;box-shadow:var(--shadow-sm);transition:transform .12s ease,box-shadow .12s ease;width:100%}.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn--ghost{background:var(--paper-2);color:var(--ink)}.btn--accent{background:var(--red);color:#fff}.btn[disabled]{opacity:.45;box-shadow:none}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1.5px solid var(--ink);background:var(--yellow);font-size:12px;font-weight:700;line-height:1.4}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15px;letter-spacing:.02em}.brand__dot{width:22px;height:22px;border-radius:7px;background:var(--ink);display:grid;place-items:center;color:var(--red);font-size:12px;font-weight:900}.iconbtn{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper-2);font-size:16px;flex:0 0 auto}.hero__eyebrow{font-size:13px;font-weight:700;letter-spacing:.22em;color:var(--ink-3);margin:0 0 14px}.hero__title{font-family:var(--font-serif);font-size:clamp(38px,12vw,52px);line-height:1.08;font-weight:900;letter-spacing:-.01em;margin:0 0 16px}.hero__title em{font-style:normal;position:relative;white-space:nowrap}.hero__title em:after{content:"";position:absolute;left:-2px;right:-2px;bottom:4px;height:12px;background:var(--yellow);z-index:-1;transform:rotate(-1deg)}.hero__sub{font-size:16px;line-height:1.7;color:var(--ink-2);margin:0 0 26px}.hero__cta{margin-bottom:12px}.hero__hint{font-size:13px;color:var(--ink-3);text-align:center;margin:0 0 34px}.cards{display:flex;flex-direction:column;gap:14px}.card{animation:card-in .5s cubic-bezier(.22,1,.36,1) both}.card:nth-child(1){animation-delay:.05s}.card:nth-child(2){animation-delay:.13s}.card:nth-child(3){animation-delay:.21s}.card:nth-child(4){animation-delay:.29s}@keyframes card-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.card{position:relative;display:block;width:100%;text-align:left;padding:20px 20px 18px;border-radius:var(--r-lg);border:2px solid var(--ink);background:var(--paper-2);box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease}.card:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px;padding-right:52px}.card__title{font-size:21px;font-weight:800;line-height:1.3;margin:0}.card__hook{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0 0 14px}.card__meta{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:var(--ink-3);padding-top:12px;border-top:1.5px dashed rgba(20,17,15,.22)}.card__go{font-weight:800;color:var(--ink)}.card__corner{position:absolute;top:-2px;right:-2px;width:46px;height:46px;border-bottom-left-radius:22px;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);display:grid;place-items:center;font-size:20px;background:var(--yellow)}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.16em;color:var(--ink-3)}.footnote{margin-top:auto;padding-top:34px;font-size:12px;line-height:1.75;color:var(--ink-3);text-align:center}.intro__tag{margin-bottom:18px}.intro__title{font-family:var(--font-serif);font-size:clamp(30px,9vw,40px);line-height:1.15;font-weight:900;margin:0 0 14px}.intro__lead{font-size:16px;line-height:1.75;color:var(--ink-2);margin:0 0 22px}.intro__list{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:12px}.intro__list li{display:flex;gap:10px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}.intro__list li span{flex:0 0 auto;font-weight:900;color:var(--red)}.intro__meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.chip{font-size:12.5px;font-weight:700;padding:6px 11px;border-radius:999px;border:1.5px solid rgba(20,17,15,.28);color:var(--ink-2)}.quiz{display:flex;flex-direction:column;min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 46px)}.quiz__head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.progress{flex:1;height:8px;border-radius:999px;background:#14110f1a;overflow:hidden}.progress__bar{height:100%;border-radius:999px;background:var(--ink);transition:width .32s cubic-bezier(.22,1,.36,1)}.quiz__count{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ink-2);min-width:34px;text-align:right}.quiz__q{font-family:var(--font-serif);font-size:clamp(23px,6.2vw,29px);line-height:1.42;font-weight:700;margin:0 0 8px;animation:rise .34s cubic-bezier(.22,1,.36,1) both}.quiz__hint{font-size:13px;color:var(--ink-3);margin:0 0 22px}.options{display:flex;flex-direction:column;gap:12px;margin-top:4px}.option{position:relative;display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:17px 18px;border-radius:var(--r-md);border:2px solid var(--ink);background:var(--paper-2);font-size:15.5px;line-height:1.5;font-weight:600;box-shadow:var(--shadow-sm);transition:transform .1s ease,box-shadow .1s ease,background .16s ease;animation:rise .36s cubic-bezier(.22,1,.36,1) both}.option:nth-child(2){animation-delay:45ms}.option:nth-child(3){animation-delay:.09s}.option:nth-child(4){animation-delay:.135s}.option:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.option--picked{background:var(--ink);color:var(--paper-2);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.option__key{flex:0 0 auto;width:26px;height:26px;border-radius:8px;border:1.5px solid currentColor;display:grid;place-items:center;font-size:12px;font-weight:900;opacity:.65}.option--picked .option__key{opacity:1;background:var(--red);border-color:var(--red);color:#fff}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result{animation:rise .4s cubic-bezier(.22,1,.36,1) both}.ring__num{animation:num-pop .5s .35s cubic-bezier(.34,1.56,.64,1) both}@keyframes num-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.report{position:relative;background:var(--paper-2);border:2px solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px 22px 22px;overflow:hidden}.report:before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:var(--accent, var(--red))}.report__head{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;letter-spacing:.2em;font-weight:800;color:var(--ink-3);margin-bottom:18px}.report__code{font-variant-numeric:tabular-nums}.report__emoji{font-size:46px;line-height:1;margin-bottom:12px;display:block}.report__name{font-family:var(--font-serif);font-size:clamp(28px,8.4vw,36px);line-height:1.2;font-weight:900;margin:0 0 10px}.report__tagline{font-size:15px;line-height:1.65;color:var(--ink-2);margin:0 0 22px}.divider{height:0;border-top:2px dashed rgba(20,17,15,.22);margin:20px 0}.indexbox{display:flex;align-items:center;gap:18px;margin-bottom:6px}.ring{position:relative;width:92px;height:92px;flex:0 0 auto}.ring svg{transform:rotate(-90deg)}.ring__num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:1px;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1;padding-bottom:2px}.ring__num small{font-size:10px;font-weight:700;color:var(--ink-3);line-height:1;transform:translateY(4px)}.indexbox__label{font-size:12.5px;font-weight:800;letter-spacing:.14em;color:var(--ink-3);margin:0 0 6px}.indexbox__verdict{font-size:16px;line-height:1.5;font-weight:700;margin:0}.block__label{font-size:12.5px;font-weight:800;letter-spacing:.16em;color:var(--ink-3);margin:0 0 12px}.symptoms{list-style:none;padding:0;margin:0;counter-reset:sym}.symptoms li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.75;color:var(--ink-2);margin-bottom:9px;counter-increment:sym}.symptoms li:before{content:counter(sym,decimal-leading-zero);position:absolute;left:0;top:2px;font-size:11px;font-weight:900;color:var(--accent, var(--red));font-variant-numeric:tabular-nums}.bars{display:flex;flex-direction:column;gap:14px}.bars>div:nth-child(1) .bar__fill{transition-delay:.1s}.bars>div:nth-child(2) .bar__fill{transition-delay:.22s}.bars>div:nth-child(3) .bar__fill{transition-delay:.34s}.bars>div:nth-child(4) .bar__fill{transition-delay:.46s}.bars>div:nth-child(5) .bar__fill{transition-delay:.58s}.bar__top{display:flex;justify-content:space-between;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px}.bar__track{position:relative;height:10px;border-radius:999px;background:#14110f17;overflow:hidden}.bar__fill{position:absolute;top:0;left:0;height:100%;border-radius:999px;background:var(--accent, var(--red));transition:width .7s cubic-bezier(.22,1,.36,1)}.bar__mid{position:absolute;top:-2px;bottom:-2px;left:50%;width:2px;background:#14110f38}.rx{background:var(--ink);color:var(--paper-2);border-radius:var(--r-md);padding:18px;margin-top:20px}.rx__label{font-size:11.5px;letter-spacing:.2em;font-weight:800;opacity:.6;margin:0 0 8px}.rx__text{font-size:15px;line-height:1.72;margin:0;font-weight:600}.stamp{position:absolute;right:16px;bottom:16px;width:84px;height:84px;border:2.5px solid var(--accent, var(--red));border-radius:50%;display:grid;place-items:center;color:var(--accent, var(--red));font-size:11px;font-weight:900;letter-spacing:.08em;text-align:center;line-height:1.3;transform:rotate(-14deg);opacity:.85;padding:6px}.actions{display:flex;flex-direction:column;gap:10px;margin-top:22px}.actions__row{display:flex;gap:10px}.actions__row .btn{flex:1}.toast{position:fixed;left:50%;bottom:calc(var(--safe-bottom) + 28px);transform:translate(-50%) translateY(12px);background:var(--ink);color:var(--paper-2);font-size:13.5px;font-weight:700;padding:11px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease;z-index:50;max-width:78vw;text-align:center}.toast--on{opacity:1;transform:translate(-50%) translateY(0)}.preview{margin-top:18px;border:2px solid var(--ink);border-radius:var(--r-md);overflow:hidden;background:var(--paper-2)}.preview img{display:block;width:100%;height:auto}.preview__cap{font-size:12px;color:var(--ink-3);text-align:center;padding:9px;border-top:1.5px dashed rgba(20,17,15,.2)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
