:root{--paper:#f3efe6;--ink:#183c3a;--muted:#69706b;--line:#d8d0c1;--red:#b94f3d;--mustard:#d1a23a;--white:#fffdf8;--shadow:0 18px 55px rgba(35,49,43,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;min-height:100vh;background-image:radial-gradient(circle at 15% 5%,rgba(209,162,58,.09),transparent 27%),radial-gradient(circle at 92% 84%,rgba(24,60,58,.08),transparent 29%)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E")}
.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:auto;padding:0 28px;border-bottom:1px solid rgba(24,60,58,.15)}.brand{color:var(--ink);text-decoration:none;font-family:"Songti SC","Noto Serif SC",serif;font-weight:700;letter-spacing:.12em}.edition{font-size:12px;letter-spacing:.18em;color:var(--muted)}
main{position:relative}.screen{width:min(100% - 40px,1000px);margin:0 auto}.intro-screen{padding:76px 0 70px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.26em;color:var(--red);margin-bottom:20px}.intro-screen h1,.result-heading h1{font-family:"Songti SC","Noto Serif SC",serif;font-size:clamp(50px,8vw,88px);font-weight:500;letter-spacing:-.06em;line-height:1.02;margin:0}.intro-screen h1 em,.result-heading h1 em{font-style:normal;color:var(--red)}.lede{max-width:660px;font-size:18px;line-height:1.9;color:#4e5d58;margin:30px 0}
.dimension-strip{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0}.dimension-strip span{border:1px solid var(--line);border-radius:99px;padding:9px 14px;background:rgba(255,253,248,.55);font-size:13px}.dimension-strip b{color:var(--red);margin-right:5px}.facts{display:flex;gap:42px;margin:44px 0}.facts div{display:flex;flex-direction:column}.facts strong{font-family:Georgia,serif;font-size:34px;font-weight:400}.facts span{color:var(--muted);font-size:12px;margin-top:4px}.primary,.secondary{appearance:none;border:0;border-radius:3px;padding:16px 24px;font:700 15px inherit;cursor:pointer;transition:.2s transform,.2s box-shadow}.primary{background:var(--ink);color:#fff;box-shadow:0 8px 20px rgba(24,60,58,.18)}.primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(24,60,58,.22)}.primary span{margin-left:40px}.secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.method-note{max-width:720px;margin-top:34px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:13px;line-height:1.75}.method-note summary{cursor:pointer;color:var(--ink);font-weight:700}
.test-screen{max-width:760px;padding:48px 0 80px}.progress-head>div:first-child{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.progress-head b{color:var(--ink)}.progress-track{height:3px;background:#d9d2c6;margin-top:12px}.progress-track div{height:100%;width:0;background:var(--red);transition:width .35s ease}.question-card{background:rgba(255,253,248,.82);box-shadow:var(--shadow);padding:52px;margin-top:38px;min-height:475px;border:1px solid rgba(216,208,193,.75)}.question-number{font-family:Georgia,serif;font-size:14px;color:var(--red)}.question-card h2{font-family:"Songti SC","Noto Serif SC",serif;font-size:clamp(26px,4vw,38px);font-weight:500;line-height:1.45;margin:24px 0 40px}fieldset{border:0;padding:0;margin:0;display:grid;gap:10px}.option{position:relative;display:flex;align-items:center;gap:15px;padding:14px 16px;border:1px solid var(--line);cursor:pointer;transition:.15s;background:rgba(255,255,255,.42)}.option:hover,.option:focus-within{border-color:var(--ink);background:#fff}.option.selected{border-color:var(--red);box-shadow:inset 3px 0 var(--red);background:#fff9f3}.option input{position:absolute;opacity:0}.option .dot{width:18px;height:18px;border:1px solid #9d9d94;border-radius:50%;display:grid;place-items:center}.option.selected .dot:after{content:"";width:9px;height:9px;background:var(--red);border-radius:50%}.option b{font-size:14px}.option small{margin-left:auto;color:var(--muted)}.test-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px;color:var(--muted);font-size:12px}.text-button{border:0;background:none;color:var(--ink);padding:9px 0;cursor:pointer}.text-button:disabled{opacity:.3}
.result-screen{padding:70px 0}.result-heading{max-width:780px}.result-heading h1{font-size:clamp(42px,7vw,74px)}.result-heading p{color:var(--muted);line-height:1.8;max-width:650px}.result-cards{display:grid;gap:16px;margin:48px 0}.result-card{background:rgba(255,253,248,.85);border:1px solid var(--line);padding:26px 30px;display:grid;grid-template-columns:180px 1fr 160px;gap:28px;align-items:center}.domain-name{display:flex;align-items:baseline;gap:10px}.domain-name b{font:400 36px Georgia,serif;color:var(--red)}.domain-name h2{font:600 20px "Songti SC","Noto Serif SC",serif;margin:0}.domain-name small{display:block;color:var(--muted);margin-top:7px}.score-line{height:8px;background:#ddd7cc;position:relative}.score-line:before{content:"";position:absolute;left:15.87%;right:15.87%;top:-5px;bottom:-5px;background:rgba(209,162,58,.18);border-left:1px dashed var(--mustard);border-right:1px dashed var(--mustard)}.score-line .center{position:absolute;left:50%;height:18px;top:-5px;border-left:1px solid var(--ink);opacity:.4}.score-line .marker{position:absolute;top:50%;width:16px;height:16px;background:var(--red);border:3px solid var(--white);border-radius:50%;box-shadow:0 1px 5px #777;transform:translate(-50%,-50%)}.line-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:8px}.metric{text-align:right}.metric strong{display:block;font:400 31px Georgia,serif}.metric span{font-size:12px;color:var(--muted)}.metric .tag{display:inline-block;margin-top:8px;padding:5px 8px;border-radius:2px;background:#eee7d9;color:var(--ink);font-weight:700}.norm-panel{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:30px 0;margin:42px 0;line-height:1.8;color:var(--muted);font-size:13px}.norm-panel h2{color:var(--ink);font-family:"Songti SC",serif}.legend{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0}.legend span{display:flex;align-items:center;gap:7px}.legend i{width:9px;height:9px;border-radius:50%}.legend .low{background:#7f9da0}.legend .mid{background:var(--mustard)}.legend .high{background:var(--red)}.result-actions{display:flex;gap:12px}.boundary{font-size:12px;color:var(--muted);margin-top:28px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.score-line{background:linear-gradient(90deg,#78999b 0%,#b5c4ba 32%,#d1a23a 50%,#d39a76 68%,#b94f3d 100%)}
.score-line:before,.score-line .center{display:none}
.score-line .tick{position:absolute;top:-4px;height:16px;border-left:1px solid rgba(24,60,58,.35)}
.score-line .marker{width:17px;height:17px;background:var(--ink);z-index:2}
.line-labels{display:grid;grid-template-columns:repeat(7,1fr);font-size:9px}
.line-labels span{text-align:center}.line-labels span:first-child{text-align:left}.line-labels span:last-child{text-align:right}
.sd-reference{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);margin:18px 0;background:rgba(255,253,248,.65)}
.sd-reference span{display:flex;flex-direction:column;padding:10px 8px;border-right:1px solid var(--line);text-align:center;font-size:11px}
.sd-reference span:last-child{border-right:0}.sd-reference b{color:var(--ink);font-family:Georgia,serif;font-size:13px}
@media(max-width:700px){.topbar{height:60px;padding:0 20px}.screen{width:min(100% - 28px,1000px)}.intro-screen{padding:48px 0}.facts{gap:25px}.facts strong{font-size:27px}.question-card{padding:30px 22px;min-height:490px;margin-top:24px}.option{padding:13px 12px}.option small{display:none}.result-card{grid-template-columns:1fr;gap:20px;padding:24px}.metric{text-align:left;display:flex;align-items:baseline;gap:9px}.metric strong{font-size:26px}.result-actions{flex-direction:column}.result-actions button{width:100%}.sd-reference{grid-template-columns:repeat(4,1fr)}.sd-reference span{border-bottom:1px solid var(--line)}}
@media print{.topbar,.result-actions,.boundary{display:none}.result-screen{padding:10px 0}.result-card{break-inside:avoid;box-shadow:none}.norm-panel{break-inside:avoid}body{background:#fff}.screen{width:100%}}
