:root{--background:#f5f7f4;--surface:#fff;--text:#17211f;--muted:#65716d;--faint:#8a9591;--border:#dce3df;--accent:#173f3a;--accent-hover:#0e302c;--signal:#d5e4a4;--focus:#557e75;--shadow:0 16px 45px #18342f14;--content-width:1120px;--reading-width:760px;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;letter-spacing:0;font-family:Inter,SF Pro Text,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--background);min-width:320px;min-height:100%}body{background:linear-gradient(#173f3a09 1px, transparent 1px), linear-gradient(90deg, #173f3a09 1px, transparent 1px), var(--background);background-size:40px 40px;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible+.consent-box,textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 45%, transparent);outline-offset:3px}.app-shell{min-height:100vh;padding-bottom:80px}.site-header{z-index:10;width:min(calc(100% - 40px), var(--content-width));border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:72px;margin:0 auto;display:flex;position:relative}.brand{align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--accent);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.brand-mark span{background:var(--accent);border-radius:50%;width:7px;height:7px}.privacy-link,.back-link{color:var(--muted);font-size:14px;text-decoration:none}.privacy-link:hover,.back-link:hover{color:var(--text)}.page-content{width:min(calc(100% - 40px), var(--content-width));margin:0 auto}.home-page{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);align-items:center;gap:clamp(36px,7vw,100px);min-height:calc(100vh - 152px);padding:52px 0 64px;display:grid}.home-copy{max-width:620px}.home-copy h1{margin:0;font-family:Georgia,Songti SC,serif;font-size:clamp(56px,8vw,102px);font-weight:400;line-height:.98}.home-lead{color:var(--accent);margin:28px 0 0;font-family:Georgia,Songti SC,serif;font-size:clamp(28px,4vw,46px);line-height:1.2}.home-description{max-width:570px;color:var(--muted);margin:26px 0 0;font-size:17px;line-height:1.9}.assessment-meta{color:var(--muted);flex-wrap:wrap;gap:10px 22px;margin:30px 0;font-size:14px;display:flex}.assessment-meta span{position:relative}.assessment-meta span:not(:last-child):after{content:"";background:var(--faint);border-radius:50%;width:3px;height:3px;position:absolute;top:50%;right:-13px}.primary-action{color:#fff;background:var(--accent);border:1px solid var(--accent);min-height:52px;box-shadow:var(--shadow);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:12px;padding:0 22px;font-weight:650;text-decoration:none;transition:background-color .18s,transform .18s;display:inline-flex}.primary-action:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.primary-action:disabled{color:#9ca7a3;box-shadow:none;cursor:not-allowed;background:#e2e7e4;border-color:#e2e7e4}.secondary-action{min-height:48px;color:var(--accent);cursor:pointer;background:0 0;border:1px solid #b7c4bf;border-radius:6px;justify-content:center;align-items:center;gap:9px;padding:0 18px;font-weight:650;display:inline-flex}.secondary-action:hover{border-color:var(--accent);background:#eef3ef}.boundary-note,.phase-note{color:var(--faint);margin:17px 0 0;font-size:13px;line-height:1.6}.spectrum{width:min(100%,460px);margin:0 auto}.spectrum svg{filter:drop-shadow(0 24px 30px #183f3a14);width:100%;display:block;overflow:visible}.spectrum-track,.spectrum-lines{fill:none;stroke:#b9c6c1;stroke-width:1px}.spectrum-track-inner{stroke-dasharray:3 7}.spectrum-lines{opacity:.72}.spectrum-center{fill:var(--accent)}.spectrum-node circle{fill:var(--surface);stroke:var(--accent);stroke-width:1.4px}.spectrum-node text{fill:var(--accent);text-anchor:middle;dominant-baseline:middle;font-size:12px;font-weight:700}.reading-page{width:min(100%, var(--reading-width));margin:0 auto;padding:48px 0 80px}.back-link{align-items:center;gap:8px;margin-bottom:36px;display:inline-flex}.page-heading{border-bottom:1px solid var(--border);padding-bottom:36px}.page-heading h1,.empty-page h1{margin:0;font-family:Georgia,Songti SC,serif;font-size:clamp(38px,6vw,58px);font-weight:400;line-height:1.15}.page-heading p{max-width:640px;color:var(--muted);margin:18px 0 0;font-size:17px;line-height:1.8}.icon-heading>svg{color:var(--accent);margin-bottom:24px}.principle-list article{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr;gap:22px;padding:28px 0;display:grid}.principle-list article>span{color:var(--faint);font-family:Georgia,serif;font-size:18px}.principle-list h2,.method-grid h2,.plain-sections h2{margin:0;font-size:18px;line-height:1.45}.principle-list p,.method-grid p,.plain-sections p{color:var(--muted);margin:8px 0 0;line-height:1.75}.consent-control{color:var(--muted);cursor:pointer;grid-template-columns:24px 1fr;align-items:start;gap:14px;margin:34px 0 24px;font-size:14px;line-height:1.65;display:grid;position:relative}.consent-control input{opacity:0;width:1px;height:1px;position:absolute}.consent-box{color:#0000;background:var(--surface);border:1px solid #aeb9b5;border-radius:4px;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.consent-control input:checked+.consent-box{color:#fff;background:var(--accent);border-color:var(--accent)}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;display:grid}.method-grid article,.plain-sections article{border-bottom:1px solid var(--border);padding:30px 0}.empty-page{text-align:center;place-content:center;justify-items:center;min-height:calc(100vh - 152px);padding:48px 0;display:grid}.empty-page>svg{color:var(--accent);margin-bottom:24px}.empty-page p{max-width:420px;color:var(--muted);margin:16px 0 0;line-height:1.7}.route-loading{color:var(--muted);text-align:center;padding:64px 0}.agent-preview-page{width:min(100%,900px)}.agent-preview-heading{position:relative}.agent-preview-badge{min-height:30px;color:var(--accent);background:#edf2e2;border:1px solid #ced9b4;border-radius:5px;align-items:center;gap:7px;margin-bottom:22px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.agent-preview-notice{border-left:3px solid var(--signal);padding-left:14px;color:var(--accent)!important;font-size:14px!important}.agent-preview-section{border-bottom:1px solid var(--border);padding:34px 0}.section-heading h2{margin:0;font-size:20px;line-height:1.4}.section-heading p{max-width:680px;color:var(--muted);margin:8px 0 0;line-height:1.7}.agent-goal-options{background:var(--surface);border:1px solid var(--border);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px;display:grid;overflow:hidden}.agent-goal-options label{cursor:pointer;min-width:0;position:relative}.agent-goal-options label:not(:last-child){border-right:1px solid var(--border)}.agent-goal-options input{opacity:0;width:1px;height:1px;position:absolute}.agent-goal-options span{background:var(--surface);flex-direction:column;gap:7px;min-height:118px;padding:17px 15px;display:flex}.agent-goal-options strong{font-size:14px}.agent-goal-options small{color:var(--muted);font-size:12px;line-height:1.55}.agent-goal-options input:checked+span{color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent);background:#eef3ef}.agent-goal-options input:focus-visible+span{outline:3px solid color-mix(in srgb, var(--focus) 45%, transparent);outline-offset:-3px}.agent-preview-candidates{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;min-height:50px;margin-top:22px;padding:12px 0;display:flex}.agent-preview-candidates>span{color:var(--muted);font-size:13px}.agent-preview-candidates div{gap:8px;display:flex}.agent-preview-candidates strong{color:var(--accent);background:#edf2e2;border-radius:4px;padding:5px 9px;font-size:13px}.agent-data-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:26px;display:grid}.agent-data-preview-grid h3,.agent-response-block h3,.agent-save-proposal h3{margin:0;font-size:15px}.agent-data-preview-grid h3{color:var(--accent);align-items:center;gap:8px;display:flex}.agent-data-preview-grid ul{border-top:1px solid var(--border);margin:14px 0 0;padding:0;list-style:none}.agent-data-preview-grid li{min-height:44px;color:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;font-size:13px;display:flex}.agent-data-preview-grid li strong{color:var(--text);flex:none;font-size:12px}.agent-context-field{color:var(--text);gap:9px;margin-top:22px;font-size:14px;font-weight:650;display:grid}.agent-context-field textarea{resize:vertical;width:100%;min-height:116px;color:var(--text);background:var(--surface);border:1px solid #b9c4c0;border-radius:6px;padding:14px 15px;font-weight:400;line-height:1.65}.agent-context-field textarea::placeholder{color:var(--faint)}.agent-preview-consent{margin:20px 0 0}.agent-preview-runner{gap:22px;display:grid}.agent-preview-runner .agent-preview-consent{margin:0}.agent-preview-actions{flex-wrap:wrap;gap:10px;display:flex}.agent-response{padding:36px 0 12px}.agent-response>.section-heading{border-bottom:1px solid var(--border);padding-bottom:26px}.agent-response-block{border-bottom:1px solid var(--border);padding:24px 0}.agent-response-block article{margin-top:15px}.agent-response-block p,.agent-save-proposal p{color:var(--muted);margin:8px 0 0;line-height:1.72}.agent-response-block strong{font-size:14px;display:block}.evidence-reference-list{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.evidence-reference-list code{color:var(--accent);overflow-wrap:anywhere;background:#edf2e2;border-radius:4px;padding:5px 8px;font-size:11px}.agent-save-proposal{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;padding:26px 0;display:grid}.agent-save-proposal>div:first-child>span{color:var(--faint);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.agent-preview-status,.agent-preview-feedback{color:var(--accent);align-items:center;gap:10px;font-size:13px;line-height:1.6;display:flex}.agent-preview-status{margin:20px 0 0}.agent-preview-feedback{border-bottom:1px solid var(--border);flex-wrap:wrap;padding:24px 0}.agent-preview-feedback p{color:var(--muted);flex:300px;margin:0}.bottom-navigation{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border:1px solid #d2dcd8e6;border-radius:8px;width:min(100% - 32px,420px);min-height:62px;padding:6px;display:flex;position:fixed;bottom:14px;right:50%;transform:translate(50%);box-shadow:0 14px 40px #162f2b24}.bottom-navigation a{min-width:0;color:var(--faint);border-radius:5px;flex:1 1 0;justify-content:center;align-items:center;gap:7px;font-size:13px;text-decoration:none;display:flex}.bottom-navigation a[aria-current=page]{color:var(--accent);background:#eef3ef}@media (width<=760px){.site-header,.page-content{width:min(calc(100% - 32px), var(--content-width))}.site-header{min-height:64px}.home-page{grid-template-columns:1fr;gap:8px;min-height:auto;padding:24px 0 42px}.home-copy h1{font-size:50px}.home-lead{margin-top:16px;font-size:28px}.home-description{margin-top:16px;font-size:16px;line-height:1.72}.assessment-meta{margin:20px 0}.spectrum{order:-1;width:min(74vw,290px)}.reading-page{padding-top:34px}.method-grid{grid-template-columns:1fr}.agent-goal-options{grid-template-columns:repeat(2,minmax(0,1fr))}.agent-goal-options label:nth-child(2){border-right:0}.agent-goal-options label:nth-child(-n+2){border-bottom:1px solid var(--border)}.agent-goal-options span{min-height:112px}.agent-data-preview-grid{grid-template-columns:1fr;gap:26px}.agent-save-proposal{grid-template-columns:1fr;align-items:start}.agent-preview-actions .primary-action,.agent-preview-actions .secondary-action{flex:220px}.bottom-navigation a{flex-direction:column;gap:3px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
