:root { --ink:#172b4d; --muted:#718198; --line:#dce6f3; --blue:#236aca; --blue-deep:#144e9c; --blue-pale:#f1f7ff; --surface:#fff; --page:#f7faff; --green:#21815f; --amber:#a96900; }
* { box-sizing:border-box; }
html { min-width:320px; background:var(--page); scroll-behavior:smooth; }
body { min-width:320px; margin:0; color:var(--ink); background:var(--page); font-family:"Noto Sans SC",system-ui,sans-serif; font-size:14px; line-height:1.55; }
button,input,textarea,select { font:inherit; }
button { cursor:pointer; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid #9cc7ff; outline-offset:2px; }
a { color:inherit; text-decoration:none; }
[hidden] { display:none!important; }
.app-header { position:sticky; top:0; z-index:10; display:flex; align-items:center; min-height:72px; padding:0 max(24px,calc((100vw - 1280px)/2)); border-bottom:1px solid var(--line); background:#fffffff2; backdrop-filter:blur(14px); }
.brand { display:flex; align-items:center; gap:10px; min-width:245px; color:#163d77; font-weight:700; letter-spacing:-.02em; }
.brand-mark { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; color:#fff; background:var(--blue); box-shadow:0 5px 11px #236aca2d; font-size:17px; font-family:Georgia,serif; }
.brand small { display:block; margin-top:1px; color:#8a9ab1; font:500 9px/1.4 "DM Mono",monospace; letter-spacing:.11em; text-transform:uppercase; }
.primary-nav { display:flex; align-self:stretch; gap:4px; }
.primary-nav a { display:flex; align-items:center; gap:6px; padding:0 16px; border-bottom:2px solid transparent; color:#728298; font-size:13px; font-weight:600; transition:color .16s,border-color .16s,background .16s; }
.primary-nav a:hover { color:var(--blue); background:#f8fbff; }
.primary-nav a.active { border-color:var(--blue); color:var(--blue-deep); }
.primary-nav i { display:grid; place-items:center; min-width:18px; height:18px; padding:0 5px; border-radius:99px; color:var(--blue); background:#e4f0ff; font:500 10px/1 "DM Mono",monospace; font-style:normal; }
.header-actions { display:flex; align-items:center; gap:15px; margin-left:auto; }
.save-status { color:#8b99ad; font-size:11px; }
.save-status:before { content:"•"; margin-right:4px; color:#689fe5; font-size:17px; vertical-align:-1px; }
.save-status.saved { color:var(--green); }.save-status.saved:before{color:#2daf83}
.text-button { padding:0; border:0; color:var(--blue); background:transparent; font-size:12px; font-weight:700; }
main { width:min(1280px,calc(100% - 48px)); margin:0 auto; }
.page { padding:54px 0 70px; }
.page-intro { max-width:660px; margin-bottom:34px; }
.eyebrow { margin:0 0 8px; color:#8192aa; font:500 10px/1.2 "DM Mono",monospace; letter-spacing:.13em; }
h1,h2,h3,p { margin-top:0; } h1 { margin-bottom:13px; color:#14396f; font-size:clamp(32px,4.2vw,52px); letter-spacing:-.065em; line-height:1.12; } h2 { margin:0; color:#1a3760; font-size:19px; letter-spacing:-.035em; } h3 { margin:0; font-size:13px; }
.page-intro>p,.page-heading>div>p:last-child { max-width:360px; margin:0 0 7px; color:var(--muted); font-size:14px; line-height:1.8; }
.analysis-workspace { display:grid; grid-template-columns:420px minmax(0,1fr); overflow:hidden; border:1px solid #d7e4f4; border-radius:14px; background:#fff; box-shadow:0 14px 38px #123c7209; }
.intake-card { padding:27px; border-right:1px solid var(--line); background:#fbfdff; }
.card-heading,.result-top,.section-mini-heading,.script-box>div,.page-heading,.result-actions { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.card-heading>span { padding:4px 7px; border-radius:5px; color:#5881b6; background:#eaf3ff; font-size:10px; }
.intake-card>label { display:block; margin:19px 0 7px; color:#48617f; font-size:12px; font-weight:700; }.intake-card label small { color:#95a2b3; font-size:10px; font-weight:500; }
input,textarea,select { width:100%; border:1px solid #d4e1f0; border-radius:8px; color:#304866; background:#fff; transition:border-color .16s,box-shadow .16s; }
input,select { min-height:39px; padding:8px 10px; } textarea { padding:10px 11px; resize:vertical; line-height:1.7; }
input:focus,textarea:focus,select:focus { border-color:#75a9e8; box-shadow:0 0 0 3px #ddecff; outline:0; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }.field-grid label { margin-bottom:0!important; }.field-grid select{margin-top:7px}
.form-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:20px; }.form-footer p { max-width:130px; margin:0; color:#95a1b2; font-size:10px; line-height:1.6; }
.primary-button,.secondary-button { min-height:38px; padding:8px 12px; border-radius:8px; font-size:12px; font-weight:700; transition:transform .16s,background .16s,border-color .16s; }.primary-button { border:1px solid var(--blue); color:#fff; background:var(--blue); box-shadow:0 4px 9px #236aca26; }.primary-button:hover { background:var(--blue-deep); transform:translateY(-1px); }.secondary-button { border:1px solid #cbdced; color:#45698f; background:#fff; }.secondary-button:hover { border-color:#8eb5e7; color:var(--blue); background:#f7fbff; }
.result-card { padding:30px 32px; }.result-top { align-items:center; }.intent-badge { padding:5px 9px; border-radius:99px; color:#18725b; background:#e8f7f1; font-size:11px; font-weight:700; }.intent-badge[data-intent="高意向"] { color:#1860b8;background:#e8f2ff}.intent-badge[data-intent="需了解"]{color:var(--amber);background:#fff5df}
.diagnosis { margin-top:22px; padding:15px 17px; border-left:3px solid #78aae7; background:var(--blue-pale); }.diagnosis span,.section-label { color:#7489a4; font-size:10px; font-weight:700; }.diagnosis p { margin:5px 0 0; color:#27486f; font-size:15px; font-weight:600; letter-spacing:-.02em; line-height:1.65; }
.objective { display:grid; gap:4px; padding:18px 0; border-bottom:1px solid var(--line); }.objective span{color:#8a9aaf;font-size:10px}.objective strong{color:#1b5db4;font-size:14px;line-height:1.6}.path-section { padding:20px 0; border-bottom:1px solid var(--line); }.section-mini-heading { align-items:center; }.section-mini-heading h3 { color:#34506f; }.section-mini-heading span { color:#8a9bb0; font-size:10px; }
.conversation-path { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:14px 0 0; padding:0; list-style:none; }.conversation-path li { min-width:0; padding:13px; border:1px solid #e0e9f3; border-radius:9px; background:#fbfdff; }.conversation-path li>span { display:grid; place-items:center; width:22px;height:22px;margin-bottom:9px;border-radius:50%;color:var(--blue);background:#e7f1ff;font:500 9px/1 "DM Mono",monospace; }.conversation-path b { color:#37516f; font-size:12px; }.conversation-path p { margin:6px 0 0; color:#61758f; font-size:11px; line-height:1.75; }
.two-column-result { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:17px 0; border-bottom:1px solid var(--line); }.two-column-result section+section{padding-left:18px;border-left:1px solid var(--line)}.two-column-result p:not(.section-label){margin:5px 0 0;color:#526981;font-size:11px;line-height:1.7}.next-step-copy{color:#1c63bb!important;font-weight:700}
.script-box { margin-top:18px;padding:15px 16px;border-radius:9px;background:#f3f8ff; }.script-box button { padding:0;border:0;color:var(--blue);background:transparent;font-size:11px;font-weight:700; }.script-box>p { margin:9px 0 0;color:#405b7c;font-size:12px;line-height:1.8; }.result-actions { justify-content:flex-end; align-items:center; margin-top:18px; }
.page-heading { align-items:end; margin-bottom:28px; }.page-heading h1{margin-bottom:8px;font-size:37px}.page-heading>div>p:last-child{max-width:none;margin-bottom:0}.empty-state { display:grid; justify-items:center; padding:75px 24px; border:1px dashed #cbdced; border-radius:12px; color:#7890aa; text-align:center; }.empty-state>span { display:grid;place-items:center;width:42px;height:42px;margin-bottom:14px;border-radius:50%;color:var(--blue);background:#e8f2ff;font-size:18px}.empty-state h2{color:#38516f;font-size:16px}.empty-state p{margin:7px 0 19px;font-size:12px}
.profile-list { display:grid; gap:12px; }.profile-item { display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; padding:17px 18px; border:1px solid var(--line); border-radius:11px; background:#fff; }.profile-avatar { display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:var(--blue);background:#e8f2ff;font-weight:700; }.profile-item h2{font-size:15px}.profile-meta{margin:3px 0 0;color:#8190a4;font-size:11px}.profile-next{margin:5px 0 0;color:#41658c;font-size:12px}.profile-item .intent-badge{justify-self:end}.profile-item button{margin-top:7px}
.followup-summary { display:flex; align-items:center; gap:12px; margin-bottom:15px; color:#5b728e; font-size:12px; }.followup-summary strong{color:var(--blue);font-size:20px}.followup-list { display:grid; gap:9px; margin:0;padding:0;list-style:none; }.followup-item { display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:15px 17px;border:1px solid var(--line);border-radius:10px;background:#fff; }.followup-item.done{opacity:.58}.followup-item input{width:18px;height:18px;accent-color:var(--blue)}.followup-item h2{font-size:14px}.followup-item p{margin:3px 0 0;color:#708299;font-size:11px}.followup-item time{color:#647b95;font-size:11px;font-weight:700}.followup-item button{margin-top:5px}
.toast { position:fixed;right:24px;bottom:24px;z-index:20;max-width:340px;padding:12px 15px;border-radius:8px;transform:translateY(16px);opacity:0;color:#fff;background:#17365f;box-shadow:0 12px 30px #102b5430;transition:.2s;font-size:12px;pointer-events:none }.toast.show{transform:translateY(0);opacity:1}
@media (max-width:900px){.app-header{padding:0 24px}.brand{min-width:auto}.primary-nav{margin-left:25px}.page-intro>p{margin-bottom:0}.analysis-workspace{grid-template-columns:1fr}.intake-card{border-right:0;border-bottom:1px solid var(--line)}.conversation-path{grid-template-columns:1fr}.conversation-path li{display:grid;grid-template-columns:24px 1fr;gap:9px}.conversation-path li>span{margin:0}.conversation-path p{grid-column:2}.conversation-path b{align-self:end}}
@media (max-width:620px){.app-header{min-height:62px;padding:0 16px}.brand small,.save-status{display:none}.primary-nav{margin-left:auto;gap:0}.primary-nav a{padding:0 7px;font-size:11px}.primary-nav i{display:none}.header-actions{margin-left:9px}.page{padding:37px 0 48px}main{width:min(100% - 32px,1280px)}.page-intro{margin-bottom:24px}.analysis-workspace{border-radius:10px}.intake-card,.result-card{padding:20px}.field-grid,.two-column-result{grid-template-columns:1fr}.two-column-result section+section{padding-top:13px;padding-left:0;border-top:1px solid var(--line);border-left:0}.form-footer,.result-actions{align-items:stretch;flex-direction:column}.form-footer .primary-button,.result-actions .primary-button,.result-actions .secondary-button{width:100%}.page-heading{align-items:start;flex-direction:column}.profile-item{grid-template-columns:auto 1fr}.profile-item>.intent-badge{display:none}.followup-item{grid-template-columns:auto 1fr}.followup-item time{grid-column:2}.followup-item .text-button{grid-column:2;justify-self:start}.header-actions .text-button{font-size:11px}}
