:root{--ink:#17332d;--muted:#61746e;--paper:#fffefa;--line:#dce5df;--green:#1e6b58;--green2:#2c8d72;--mint:#e8f3ee;--red:#bd3b3b}*{box-sizing:border-box}html{background:#edf3ef;scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:radial-gradient(circle at 90% -10%,#cfe7da 0,transparent 28rem),linear-gradient(180deg,#eef5f1 0,#f6f3ea 58%,#edf3ef 100%)}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.shell{width:min(100%,1040px);margin:0 auto;min-height:100vh;padding:24px 20px 56px}.hero{padding:14px 0 26px}.brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#fff;background:var(--green);font-family:Georgia,serif;letter-spacing:0;box-shadow:0 8px 18px #1e6b5833}.hero-grid{display:grid;grid-template-columns:1fr 220px;gap:44px;align-items:end;margin-top:58px}.eyebrow{margin:0 0 12px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}h1{max-width:740px;margin:0;font-family:Georgia,"Songti SC",serif;font-size:clamp(34px,6vw,62px);line-height:1.06;letter-spacing:-.035em}.lede{max-width:720px;margin:20px 0 0;color:var(--muted);font-size:16px;line-height:1.85}.meta-card{border-top:3px solid var(--green);padding:18px 4px 4px}.meta-card b,.meta-card span{display:block}.meta-card b{font-family:Georgia,serif;font-size:28px}.meta-card span{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.6}.progress-wrap{position:sticky;top:0;z-index:20;padding:13px 18px 15px;border:1px solid #ffffffaa;border-radius:16px;background:#fffefadd;box-shadow:0 12px 30px #17332d12;backdrop-filter:blur(16px)}.progress-copy{display:flex;justify-content:space-between;margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:700}.progress{height:6px;overflow:hidden;border-radius:99px;background:#dce7e1}.progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#66ae91);transition:width .35s ease}.form-card{margin-top:18px;overflow:hidden;border:1px solid #fff;border-radius:28px;background:var(--paper);box-shadow:0 22px 70px #17332d14}.loading{padding:80px;text-align:center;color:var(--muted)}.section-head{display:flex;gap:18px;align-items:center;padding:28px 34px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f8fbf8,#eef6f1)}.section-head>span{font-family:Georgia,serif;font-size:34px;color:#6b9c8d}.section-head p{margin:0 0 3px;color:#789086;font-size:9px;font-weight:800;letter-spacing:.22em}.section-head h2{margin:0;font-size:21px}.questions{padding:10px 34px 8px}.question{padding:30px 0 34px;border-bottom:1px solid var(--line);scroll-margin-top:90px}.question:last-child{border-bottom:0}.question-title{display:flex;gap:11px;align-items:flex-start}.question-title>span{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--green);background:var(--mint);font-family:Georgia,serif;font-weight:700}.question h3{flex:1;margin:2px 0 0;font-size:17px;line-height:1.65}.question em{margin-top:5px;color:#9c6b34;font-size:10px;font-style:normal;font-weight:700}.hint{margin:8px 0 0 41px;color:#82918c;font-size:12px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 0 41px}.option{width:100%;min-height:48px;display:flex;gap:11px;align-items:center;padding:11px 14px;border:1px solid var(--line);border-radius:12px;color:#40564f;background:#fff;text-align:left;cursor:pointer;transition:.16s ease}.option:hover{border-color:#83aa9b;transform:translateY(-1px)}.option.active{border-color:var(--green2);color:var(--ink);background:#eef8f3;box-shadow:inset 0 0 0 1px #2c8d7230}.radio,.check{flex:0 0 auto;display:grid;place-items:center;width:20px;height:20px;border:1.5px solid #9cada7;color:#fff;font-size:12px;font-weight:900}.radio{border-radius:50%}.check{border-radius:6px}.active .radio,.active .check{border-color:var(--green);background:var(--green)}.other-input,textarea{width:calc(100% - 41px);margin:10px 0 0 41px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;outline:none}textarea{margin-top:18px;min-height:128px;resize:vertical;line-height:1.7}.other-input:focus,textarea:focus{border-color:var(--green2);box-shadow:0 0 0 3px #2c8d7218}.matrix{margin:18px 0 0 41px;display:grid;gap:12px}.matrix-row{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbfcfa}.matrix-row p{margin:0 0 12px;font-size:14px;line-height:1.55}.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.scale button{min-height:54px;padding:6px;border:1px solid var(--line);border-radius:9px;color:#61746e;background:#fff;cursor:pointer}.scale button b{display:block;font-family:Georgia,serif;font-size:17px;color:var(--green)}.scale button span{display:block;margin-top:2px;font-size:9px;line-height:1.2}.scale button.active{border-color:var(--green);color:var(--ink);background:var(--mint)}.error{margin:10px 0 0 41px;color:var(--red);font-size:12px;font-weight:700}.has-error{border-left:3px solid #d86c6c;padding-left:12px}.submit-error{margin:18px 34px 0;padding:13px 15px;border-radius:10px;color:#812f2f;background:#fbe9e7}.actions{display:flex;justify-content:space-between;gap:12px;padding:24px 34px 30px;border-top:1px solid var(--line);background:#fbfcf9}.actions button,.success-card button{min-width:124px;height:48px;padding:0 20px;border-radius:12px;font-weight:750;cursor:pointer}.primary{display:flex;justify-content:center;align-items:center;gap:24px;border:0;color:#fff;background:var(--green);box-shadow:0 8px 20px #1e6b5826}.primary:hover{background:#175847}.primary:disabled{opacity:.55;cursor:wait}.secondary{border:1px solid var(--line);color:#40564f;background:#fff}.secondary:disabled{opacity:.35;cursor:not-allowed}.privacy{margin:20px 0 0;color:#7c8d86;text-align:center;font-size:11px;letter-spacing:.04em}.success-shell{display:grid;place-items:center}.success-card{max-width:600px;padding:58px;border:1px solid #fff;border-radius:28px;background:var(--paper);text-align:center;box-shadow:0 22px 70px #17332d14}.success-mark{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 24px;border-radius:50%;color:#fff;background:var(--green);font-size:34px}.success-card h1{font-size:42px}.success-card p:not(.eyebrow){color:var(--muted);line-height:1.8}.success-card button{margin-top:20px}
.shell>.success-card{margin:15vh auto 0}
@media(max-width:720px){.shell{padding:14px 12px 38px}.hero{padding:10px 8px 22px}.hero-grid{grid-template-columns:1fr;gap:24px;margin-top:38px}.meta-card{display:flex;justify-content:space-between;align-items:end}.meta-card span{max-width:180px;text-align:right}.progress-wrap{border-radius:13px}.form-card{border-radius:20px}.section-head{padding:22px 18px}.section-head>span{font-size:28px}.section-head h2{font-size:18px}.questions{padding:4px 18px}.question{padding:24px 0 28px}.question h3{font-size:15px}.options{grid-template-columns:1fr;margin-left:0}.hint,.matrix,.other-input,textarea,.error{margin-left:0;width:100%}.scale{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.scale button{min-height:48px;padding:4px 2px}.scale button span{display:none}.actions{position:sticky;bottom:0;padding:16px 18px calc(16px + env(safe-area-inset-bottom))}.actions button{flex:1;min-width:0}.success-card{padding:42px 24px}.success-card h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
