:root { --ink:#18302d; --teal:#16645b; --cream:#f6f4ee; --line:#d7ded9; --gold:#b87220; --danger:#9f3b30; }
* { box-sizing:border-box; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:Arial,"Microsoft YaHei",sans-serif; font-size:17px; line-height:1.6; }
.site-header { background:#fff; border-bottom:1px solid var(--line); padding:18px max(20px, calc((100% - 960px)/2)); font-size:20px; font-weight:700; }
.site-header a { color:var(--ink); text-decoration:none; }.page-shell { max-width:960px; margin:0 auto; padding:38px 20px 54px; }.hero,.report-heading { max-width:740px; }.eyebrow { color:var(--teal); font-weight:700; letter-spacing:.04em; font-size:.9rem; }.quiet { color:#52615e; font-size:.95rem; }
h1 { font-size:clamp(2rem,5vw,3.2rem); line-height:1.2; margin:.2em 0 .5em; } h2 { font-size:1.55rem; line-height:1.3; } h3 { font-size:1.15rem; margin-bottom:.3em; }
.questionnaire { margin-top:28px; }.questionnaire fieldset,.report-section,.preview-panel { background:#fff; border:1px solid var(--line); border-radius:12px; padding:24px; margin:18px 0; }.questionnaire legend { font-size:1.2rem; font-weight:700; padding:0 6px; }.questionnaire label { display:block; font-weight:600; margin:18px 0 5px; }.questionnaire input,.questionnaire select { width:100%; display:block; margin-top:6px; min-height:46px; padding:9px 11px; border:1px solid #8a9994; border-radius:6px; font:inherit; background:#fff; }.field-help { margin:5px 0 15px; color:#52615e; font-size:.92rem; line-height:1.5; }.field-help.callout { color:#244e48; background:#edf4f1; border-left:4px solid var(--teal); border-radius:4px; padding:10px 12px; }
.button { display:inline-block; border-radius:7px; padding:12px 18px; border:1px solid transparent; font:inherit; font-weight:700; text-decoration:none; cursor:pointer; margin:7px 7px 0 0; }.primary { color:#fff; background:var(--teal); }.secondary { color:var(--teal); background:#fff; border-color:var(--teal); }.score-card { background:var(--ink); color:#fff; border-radius:14px; padding:28px 38px; display:grid; grid-template-columns:minmax(280px,1fr) minmax(310px,auto); align-items:center; gap:34px; margin:25px 0 14px; }.score-label { display:block; font-size:1.15rem; font-weight:700; }.score-line { display:flex; align-items:baseline; gap:14px; margin-top:5px; }.score-line strong { font-size:4.2rem; line-height:1; }.score-out-of { font-weight:700; font-size:1.3rem; }.risk-pill { color:#18302d; background:#f1cf83; border-radius:999px; padding:3px 14px; font-size:1.05rem; line-height:1.4; }.subscores { display:grid; gap:12px; }.subscore-row { display:grid; grid-template-columns:34px 80px 1fr; align-items:center; column-gap:12px; white-space:nowrap; }.subscore-row .category { font-size:1.45rem; font-weight:700; }.subscore-row strong { font-size:1.08rem; }.stars { color:#f1cf83; font-size:1.45rem; letter-spacing:2px; line-height:1; }.premium-note { background:#e7efec; border-radius:8px; padding:12px; }.demo-banner { background:#edf4f1; border-left:4px solid var(--teal); border-radius:4px; color:#244e48; padding:11px 14px; }.risk-source-list,.value-list { padding-left:1.35em; }.risk-source-list li,.value-list li { margin:.38em 0; }.risk-source-list li::marker,.value-list li::marker { color:var(--teal); }.unlock-card,.payment-simulator { background:#fff4dc; border:2px solid #d7a44a; border-radius:12px; padding:28px; margin-top:22px; }.unlock-card h2 { margin:0 0 .45em; }.unlock-card .primary { min-width:255px; text-align:center; }.unlock-card .status-check { color:#5b6864; background:transparent; border-color:#b5b9ae; font-size:.88rem; font-weight:500; padding:7px 11px; vertical-align:middle; }.payment-simulator { max-width:620px; }.payment-price { display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid #dec89b; padding-bottom:15px; font-size:1.15rem; }.payment-price strong { font-size:2.15rem; color:#8a5311; }.status-message { min-height:1.5em; color:var(--teal); }.dev-link { border:0; background:none; color:#667570; text-decoration:underline; padding:8px 0; cursor:pointer; font-size:.9rem; }.priority { border-top:1px solid var(--line); padding:8px 0 13px; }.priority:first-of-type { border-top:0; }.stress-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.stress-grid div { background:#edf4f1; border-radius:8px; padding:14px; }.stress-grid strong { display:block; font-size:1.35rem; } .flash { padding:12px 15px; border-radius:7px; margin-bottom:18px; }.flash.error { background:#fbe8e5; color:#792d24; }.flash.success { background:#e6f3e9; color:#245b35; } footer { max-width:960px; margin:0 auto; padding:25px 20px 40px; color:#52615e; font-size:.85rem; border-top:1px solid var(--line); }
.section-heading { display:flex; justify-content:space-between; align-items:start; gap:18px; margin-bottom:18px; }.section-heading h2,.report-section h2 { margin:.1em 0 .45em; }.section-chip,.timing { display:inline-block; border-radius:999px; background:#dcece6; color:#185246; padding:3px 10px; font-size:.82rem; font-weight:700; white-space:nowrap; }.action-plan-section { border-color:#9abdb2; }.action-plan-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.action-card { border:1px solid #d7ded9; border-radius:10px; padding:17px; background:#fbfdfc; }.action-card-top { display:flex; justify-content:space-between; align-items:center; gap:8px; }.step-number { display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; color:#fff; background:var(--teal); font-weight:700; }.action-card h3 { min-height:3.1em; margin:12px 0 9px; }.action-card p { margin:.25em 0 .9em; }.action-label { color:#426661; font-size:.84rem; font-weight:700; }.cost-note { border-top:1px solid #dce7e2; padding-top:10px; color:#315d55; font-size:.92rem; }.not-now-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }.not-now-grid article { background:#f7f8f5; border-radius:8px; padding:14px; border-left:4px solid #aabbb3; }.not-now-grid h3 { font-size:1rem; margin:.1em 0 .4em; }.not-now-grid p { margin:0; }.document-section { background:#f9fbfa; }.checklist { list-style:none; padding:0; margin:14px 0 0; }.checklist li { position:relative; padding:8px 0 8px 32px; border-bottom:1px solid #e1e8e4; }.checklist li::before { content:'✓'; position:absolute; left:0; top:8px; width:20px; height:20px; border-radius:50%; background:#dcece6; color:#185246; text-align:center; line-height:20px; font-weight:700; }.question-cards { list-style:none; padding:0; counter-reset:question; display:grid; gap:10px; }.question-cards li { background:#f7f8f5; border-radius:8px; padding:13px 15px; }.question-cards span { color:#426661; font-size:.84rem; font-weight:700; }.question-cards p { margin:.25em 0 0; font-weight:600; }.stress-grid span,.stress-grid small { display:block; }.stress-grid small { color:#52615e; font-size:.82rem; }.investment-result { background:#edf4f1; border-radius:7px; padding:12px; }.sources-section { background:#f7f8f5; }.sources-section h2 { font-size:1.2rem; }.sources-section li { margin:.45em 0; }.sources-section a { color:#16645b; }
@media (max-width:700px) { body { font-size:16px; }.page-shell { padding:27px 15px 40px; }.score-card { display:block; padding:23px; }.subscores { margin-top:24px; }.score-line strong { font-size:3.5rem; }.subscore-row { grid-template-columns:30px 73px 1fr; column-gap:8px; }.stars { font-size:1.2rem; letter-spacing:0; }.questionnaire fieldset,.report-section,.preview-panel,.unlock-card { padding:18px; }.section-heading { display:block; }.section-chip { margin-top:3px; }.action-plan-grid { grid-template-columns:1fr; }.action-card h3 { min-height:0; }.stress-grid { grid-template-columns:1fr; } }
