:root{--paper:#f5f6f2;--ink:#203c37;--muted:#62736c;--line:#dce2da;--lime:#ddf58c;--white:#fff;--accent:#315e50}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.6}button,input{font:inherit}button,a,input,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #648338;outline-offset:4px}a{color:inherit}.site-header{max-width:1320px;margin:auto;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;gap:10px;align-items:center;font-size:24px;font-weight:700;letter-spacing:2px}.brand-mark{font-size:36px;line-height:1}.brand-en{font-size:12px;letter-spacing:2px;font-weight:500;margin-left:12px}.header-note{font-size:14px;color:var(--muted)}main{max-width:1240px;margin:auto;padding:66px 40px 44px}.quiz-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:70px}.eyebrow{font-size:12px;letter-spacing:2.4px;font-weight:600;margin:8px 0 26px}h1{font-family:"Songti SC","STSong",serif;font-size:clamp(36px,4vw,52px);font-weight:500;letter-spacing:1px;line-height:1.45;margin:0 0 20px}.intro-copy{font-size:17px;line-height:1.9;color:var(--muted)}.meta{display:flex;gap:12px;margin:22px 0 30px}.meta span{font-size:13px;padding:5px 13px;border:1px solid #cad4c9;border-radius:30px}.dimension-index{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;max-width:300px}.dimension-item{font-size:14px;color:#6a7973;padding:6px 0}.dimension-item b{font-family:Georgia,serif;font-weight:400;margin-right:13px;color:#718173}.dimension-item.active{color:var(--ink);font-weight:600}.dimension-item.active b{background:var(--lime);border-radius:50%;padding:5px}.privacy{margin:32px 0 0;font-size:12px;line-height:1.9;color:var(--muted)}.question-panel{background:white;border:1px solid var(--line);border-radius:24px;padding:30px 36px;box-shadow:0 14px 50px #1b392507;min-width:0}.panel-top{display:flex;justify-content:space-between;font-size:14px;font-weight:500;letter-spacing:1px}.panel-top span:last-child{font-family:Georgia,serif;font-size:17px;color:var(--muted)}.progress-track{height:4px;border-radius:10px;background:#edf0e9;margin-top:18px;overflow:hidden}.progress-track div{height:100%;background:var(--accent);width:0;transition:width .3s}.question-content{padding:28px 0 25px}.question-kicker{font-size:13px;color:var(--muted);margin:0 0 13px}h2{font-size:26px;font-weight:550;line-height:1.6;margin:0 0 12px;letter-spacing:.4px}h2:focus{outline:none}.question-help{color:var(--muted);font-size:14px;margin:0 0 26px}fieldset{margin:0;padding:0;border:0;display:grid;gap:10px}.answer{display:flex;align-items:center;gap:14px;cursor:pointer;border:1px solid #e0e5dd;border-radius:12px;padding:13px 18px;transition:background .15s,border-color .15s}.answer:hover{background:#f6f8f1;border-color:#9aa98d}.answer:has(input:checked){background:#f0f6dc;border-color:#75914e}.answer input{accent-color:var(--accent);width:19px;height:19px;margin:0}.answer .answer-no{margin-left:auto;color:#8a958c;font-size:12px}.question-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;gap:10px;justify-content:space-between}.primary,.secondary{border:0;border-radius:10px;background:var(--ink);color:white;padding:13px 22px;font-size:15px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:24px;text-decoration:none}.primary:hover{background:#34564b}.primary:disabled{background:#7e8b80}.secondary{background:#e8edde;color:var(--ink)}.text-button{border:0;background:transparent;color:var(--ink);padding:9px 0;font-size:14px}.small-hint{font-size:12px;color:var(--muted)}footer{max-width:1240px;margin:auto;padding:20px 40px 28px;display:flex;justify-content:space-between;color:var(--muted);font-size:12px;gap:20px}.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}.result-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.result-intro{position:sticky;top:30px}.result-intro h1{font-size:42px}.result-intro p{color:var(--muted)}.result-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 16px}.name-field{display:grid;gap:6px;font-size:14px;max-width:320px;margin:28px 0 0}.name-field input{border:1px solid #c8d2c8;border-radius:8px;padding:12px 14px;color:var(--ink);background:white;width:100%}.fine-print{font-size:13px;line-height:1.9}.portrait{border-radius:8px;overflow:hidden;box-shadow:0 15px 48px #17352618;background:var(--ink);width:100%;display:block}.portrait canvas{display:block;width:100%;height:auto}.result-explanation{font-size:14px;line-height:1.9;margin-top:26px;border-top:1px solid var(--line);padding-top:20px}.result-explanation summary{cursor:pointer;color:var(--ink)}.result-explanation p{margin:10px 0}.export-status{min-height:24px;font-size:14px;color:var(--accent)!important}.screen-summary{position:absolute;left:-10000px}.mobile-chapter{display:none}@media(max-width:1000px){.quiz-layout{gap:30px;grid-template-columns:.75fr 1.3fr}main{padding:42px 28px}.question-panel{padding:26px}.small-hint{display:none}.result-layout{gap:30px}}@media(max-width:700px){.site-header{padding:18px 22px}.brand{font-size:21px}.brand-en{font-size:10px;margin-left:5px}.header-note{display:none}main{padding:25px 18px}.quiz-layout,.result-layout{display:block}.eyebrow{margin:0 0 12px;font-size:10px}h1{font-size:32px;line-height:1.4;margin-bottom:12px}h1 br{display:block}.intro-copy,.dimension-index{display:none}.meta{margin:12px 0 20px}.privacy{margin:0 0 18px;font-size:12px}.privacy br{display:none}.question-panel{padding:24px 20px;border-radius:18px}.question-content{padding:24px 0}h2{font-size:23px}.question-help{font-size:13px}.answer{padding:14px}.question-bottom{gap:10px}.primary{padding:13px 20px}.result-intro{position:static}.result-intro h1{font-size:34px}.result-layout .portrait{margin-top:28px}.result-explanation{margin:16px 0}footer{padding:12px 22px 24px;display:block}footer span{display:block;font-size:12px}.result-intro .intro-copy{display:block}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
