:root{--teal:#087f7e;--ink:#182b38;--muted:#819099;--border:#e1e8ec;--bg:#f5f8fa}*{box-sizing:border-box}body{margin:0;font:14px/1.65 'Segoe UI','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--teal);background:var(--teal);color:white;border-radius:7px;padding:11px 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600}button:hover{filter:brightness(.96)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #68c6bd;outline-offset:3px}svg{width:19px;height:19px;stroke-width:1.7;flex-shrink:0}.secondary{background:white;color:#526a77;border-color:#d6e0e5}.text{background:none;border:0;color:var(--teal);padding:4px;font-weight:500}.sidebar{width:204px;position:fixed;inset:0 auto 0 0;background:#f0f5f7;border-right:1px solid var(--border);padding:26px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-weight:750;font-size:21px;margin-bottom:38px}.brand svg{color:var(--teal);height:27px;width:27px}.sidebar nav,.nav-bottom{display:grid;gap:9px}.sidebar button{justify-content:flex-start;background:none;color:#4b606d;border:0;font-weight:500;padding:13px 15px}.sidebar button.active{background:#ddefed;color:var(--teal);font-weight:650}.nav-bottom{margin-top:auto}.nav-bottom p{display:flex;gap:12px;border-top:1px solid var(--border);padding:20px 8px 0;margin-bottom:0;font-size:12px}.app{margin-left:204px}header{height:68px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:20px;color:#5e717c;font-size:12px}.workspace-tag{font-size:11px;color:#9aa6ae}#reportActions{display:flex;gap:8px;margin-left:auto}#reportActions button{padding:7px 12px;font-size:12px}.steps{display:flex;align-items:center;justify-content:center;gap:26px;padding:30px 45px;max-width:1150px;margin:auto}.steps span{display:flex;align-items:center;gap:12px;color:#99a5ae;white-space:nowrap}.steps b{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#e7edf1;font-size:13px}.steps span.active{color:var(--teal);font-weight:650}.steps span.active b{background:var(--teal);color:#fff}.steps em{height:1px;background:#d8e2e7;max-width:160px;flex:1}.page{max-width:1180px;margin:0 auto;padding:12px 38px 40px}.page.narrow{max-width:900px;padding-top:38px}.page-title{margin:25px 0}section{background:white;border:1px solid var(--border);border-radius:10px;padding:25px;margin:20px 0}.search-panel{padding:34px;margin:5px 0 18px;min-height:620px}h1{font-size:30px;letter-spacing:-.8px;line-height:1.4;margin:16px 0 10px}h2{font-size:18px;margin:0 0 18px}h3{font-size:15px;margin:0 0 10px}p{margin:8px 0}.sub{color:#788b96;font-size:13px}.eyebrow{color:var(--teal);font-size:11px;font-weight:650;letter-spacing:1.3px}.searchbar{display:flex;align-items:center;gap:13px;border:1px solid #b6cecf;border-radius:8px;margin-top:32px;padding:7px 8px 7px 16px}.searchbar svg{color:#83959e}.searchbar input{border:0;margin:0;padding:9px 0;min-width:0;outline:none}.searchbar button{white-space:nowrap}.hint{font-size:11px;color:#91a0a8;line-height:1.8}.empty{text-align:center;padding:65px 20px;color:#93a2ac}.empty svg{width:36px;height:36px;color:#aac4c6;margin-bottom:16px}.empty h3{color:#657c89}.empty p{font-size:12px}.quiet-note{text-align:center;color:#9aabb4;font-size:11px}.result-heading{display:flex;justify-content:space-between;margin:30px 0 15px}.result-heading small{color:#8a9aa3}.candidate{width:100%;background:#fff;color:var(--ink);border:1px solid var(--border);border-radius:0;padding:20px;text-align:left;justify-content:flex-start;font-weight:400}.candidate+ .candidate{border-top:0}.candidate.selected{background:#f0f9f7;border-color:#82bfb4;box-shadow:inset 3px 0 var(--teal)}.candidate strong{display:block;font-size:14px}.candidate small{display:block;color:#92a0a9;font-size:11px;margin-top:4px}.candidate>.badge{margin-left:auto}.badge{color:#268567;background:#e7f5e9;padding:3px 8px;border-radius:4px;font-size:10px;white-space:nowrap}.candidate>svg:first-child{margin-right:10px;color:#7b959d}#selection{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:25px}#selectedText{font-size:12px;color:var(--teal)}.identity{display:flex;align-items:center;gap:13px;background:#edf7f5;border:1px solid #d4e5e3;border-radius:8px;padding:18px}.identity svg{color:var(--teal)}.identity small{display:block;color:#94a5ac;font-size:10px}.identity .text{margin-left:auto}.identity+h1{margin-top:28px}.purposes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0 4px}.purpose{background:#fff;border:1px solid var(--border);color:var(--ink);text-align:left;justify-content:flex-start;padding:20px;gap:14px}.purpose.selected{background:#edf8f6;border-color:var(--teal)}.purpose svg{width:25px;height:25px;color:#5f9292}.purpose strong{display:block;font-size:15px}.purpose small{display:block;color:#82949e;font-size:11px;font-weight:400;margin-top:5px}.config-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.config-grid section{margin:16px 0}.config-grid h2 small{font-size:11px;font-weight:400;color:#97a6ad;margin-left:8px}label{display:block;font-size:12px;color:#566e7b}input,textarea,select{display:block;width:100%;border:1px solid #d5dfe5;background:#fff;color:var(--ink);border-radius:6px;padding:10px 12px;margin:8px 0 19px}input:focus,textarea:focus,select:focus{outline:2px solid #add9d2;outline-offset:0}textarea{min-height:105px;resize:vertical;line-height:1.8}#requestSolution{min-height:80px;font-size:12px}.scope h2{margin-bottom:5px}#modules{margin-top:23px;border:1px solid var(--border);border-radius:7px;overflow:hidden}#modules label{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #eef2f4;color:#4e6471}#modules label:last-child{border:0}input[type=checkbox]{accent-color:var(--teal);width:15px;height:15px;margin:0}.scope-note{display:flex;align-items:flex-start;gap:8px;color:#93a3ac;margin-top:22px;font-size:11px}.scope-note svg{width:14px;margin-top:7px}.actionbar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px 0}.actionbar>div{display:flex;align-items:center;gap:16px}.actionbar small{font-size:10px;color:#92a2ad}.job{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid var(--border)}.job small{color:#90a0aa;font-size:11px}.job button{font-size:12px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.connection-state{padding:14px;background:#edf7f3;border-radius:5px;margin-bottom:24px;font-size:12px;color:#518578}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:13px 22px;background:#173f3c;color:#fff;z-index:50;border-radius:8px;box-shadow:0 8px 30px #233e4520;font-size:12px;max-width:90vw}.activity{display:flex;align-items:center;gap:12px;padding:25px;background:#f2f8f7;border-radius:8px;margin:22px 0;color:#7c9b96}.activity svg{animation:spin 2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#reader{display:flex;align-items:stretch;min-height:calc(100vh - 68px);background:#fff}#toc{flex:0 0 175px;padding:30px 16px;border-right:1px solid var(--border);position:sticky;top:0;align-self:flex-start;max-height:100vh;overflow:auto}#toc h3{padding:0 12px;margin-bottom:20px}#chapters{display:grid;gap:4px}#chapters a{color:#6c808b;text-decoration:none;font-size:12px;padding:9px 12px;border-radius:4px}#chapters a:hover,#chapters a.active{color:var(--teal);background:#e8f4f2}#reportPaper{padding:34px 35px;max-width:950px;min-width:0;flex:1}#reportTitle{font-size:27px;overflow-wrap:anywhere}.report-heading{border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:26px}#reportMeta{font-size:11px;color:#92a0aa}#reportBody{font-size:13px;color:#425a67;line-height:1.95;overflow-wrap:anywhere}#reportBody h1{font-size:23px}#reportBody h2{font-size:21px;color:var(--ink);margin:30px 0 13px;scroll-margin-top:20px;border-bottom:1px solid #edf1f3;padding-bottom:10px}#reportBody h3{font-size:16px;color:#244955;margin:23px 0 9px}#reportBody strong{color:#234453}#reportBody table{border-collapse:collapse;width:100%;margin:20px 0;font-size:12px}#reportBody td,#reportBody th{border:1px solid var(--border);padding:11px 12px;text-align:left}#reportBody th{background:#f1f6f7;color:#435f6d}#reportBody blockquote{margin:18px 0;background:#f0f7f5;border-left:3px solid #77b2a6;padding:13px 18px}#reportBody a{color:var(--teal)}.citation{padding:1px 4px;background:#eaf5f3;border:0;color:var(--teal);font-size:11px;display:inline;vertical-align:baseline}.citation:hover{background:#cde8e2}#sourceList{border:0;border-top:1px solid var(--border);padding:20px 0;border-radius:0}.source-item{display:block;background:transparent;border:0;color:#64838d;text-align:left;font-size:11px;padding:8px 0;font-weight:400}#reportPaper footer{color:#9aabb2;font-size:10px;margin-top:30px}#evidence{width:300px;flex-shrink:0;border-left:1px solid var(--border);padding:25px 22px;position:sticky;top:0;height:100vh;overflow:auto;background:#fff}.evidence-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:25px}.icon{padding:5px;border:0}#sourceTitle{font-size:14px;line-height:1.7}.muted-badge{background:#edf1f3;color:#84949e}#sourceContent{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f7f6;padding:16px;border-radius:6px;font-size:12px;line-height:1.9;color:#54716e;max-height:58vh;overflow:auto;margin:20px 0}.link-button{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--teal);border:1px solid var(--teal);padding:10px;border-radius:5px;text-decoration:none;font-size:12px}[hidden]{display:none!important}@media(max-width:1250px){.sidebar{width:180px;padding:24px 12px}.brand{font-size:18px}.app{margin-left:180px}.page{padding:10px 25px 30px}#toc{flex-basis:145px}#reportPaper{padding:28px 24px}#evidence{width:265px}.purpose{padding:16px 12px}.purpose small{font-size:10px}}@media(max-width:950px){.sidebar{width:70px;padding:22px 8px}.brand{font-size:0;justify-content:center}.brand svg{width:30px}.sidebar button{font-size:0;justify-content:center;padding:15px}.nav-bottom p{font-size:0;justify-content:center}.app{margin-left:70px}.workspace-tag{display:none}.config-grid{grid-template-columns:1fr}.purposes{gap:8px}.purpose{gap:7px}.purpose strong{font-size:13px}.steps{gap:15px;padding:25px}.steps span{font-size:12px}.search-panel{min-height:540px}#toc{flex-basis:130px}#evidence{position:fixed;right:0;top:68px;width:340px;max-width:85vw;height:calc(100vh - 68px);box-shadow:-15px 0 45px #1d35351a;z-index:20}.actionbar small{display:none}}@media(max-width:650px){header{padding:0 16px}.page{padding:15px}.search-panel{padding:22px;min-height:500px}h1{font-size:24px}.steps{gap:8px;padding:20px 12px}.steps b{width:27px;height:27px;font-size:10px}.steps span{gap:6px;font-size:10px}.steps em{min-width:5px}.searchbar{flex-wrap:wrap}.searchbar input{width:calc(100% - 35px);flex:1}.searchbar button{width:100%;padding:9px}.candidate{padding:13px;gap:8px}.candidate strong{font-size:12px}.candidate small{font-size:9px}.candidate>.badge{display:none}#selection{align-items:stretch;flex-direction:column}.purposes{grid-template-columns:1fr}.purpose{padding:12px}.purpose small{display:inline;margin-left:10px}.purpose svg{width:19px;height:19px}.identity{flex-wrap:wrap}.identity strong{font-size:12px}.identity .badge{display:none}section{padding:20px}.two-cols{grid-template-columns:1fr}#reader{display:block}#toc{position:static;border-right:0;border-bottom:1px solid var(--border);padding:15px}#toc h3{display:none}#chapters{display:flex;overflow:auto;white-space:nowrap}#reportPaper{padding:22px}#reportActions button{font-size:10px;padding:6px}.job{align-items:flex-start}.job strong{font-size:12px}.job button{white-space:nowrap;font-size:10px}.page.narrow{padding:25px 18px}#reportTitle{font-size:22px}}@media print{body{background:white}.sidebar,header,.steps,#toc,#evidence,#toast{display:none!important}.app{margin:0}#reportPaper{padding:0;max-width:none}#reader{display:block}a{color:inherit;text-decoration:none}table{break-inside:avoid}h2,h3{break-after:avoid}.citation{color:#222;background:none}.source-item{color:#222}#reportBody{font-size:11pt}@page{margin:18mm}}@media(prefers-reduced-motion:reduce){.activity svg{animation:none}}
/* Report modules retain source content while presenting concise summaries and opportunity cards. */
#reportBody{font-size:14px;line-height:1.9}.executive-summary{background:#f2f8f7;border:1px solid #dceae7;border-radius:9px;padding:20px 23px;margin-bottom:30px}#reportBody .executive-summary h2{margin-top:0;border:0;padding:0}.executive-summary summary{cursor:pointer;color:var(--teal);font-size:12px;padding-top:10px}.opportunity-cards{display:grid;gap:18px;margin:20px 0}.opportunity-card{border:1px solid #d8e4e5;border-radius:8px;padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:15px 22px;background:#fff}.opportunity-top{grid-column:1/-1;display:flex;align-items:center;gap:12px}.opportunity-number{background:var(--teal);color:white;border-radius:6px;padding:4px 10px;font-weight:650}.hypothesis{color:#92621e;background:#fff4d8;border-radius:4px;padding:2px 8px;font-size:11px}.opportunity-field>span{display:block;font-size:11px;color:#82959d;margin-bottom:5px}.opportunity-field>div{font-size:13px;color:#294752}.opportunity-field:last-child{grid-column:1/-1}#sourceContent{white-space:normal}#sourceContent dl{margin:0}#sourceContent dt{font-size:10px;color:#829790;margin-top:13px}#sourceContent dt:first-child{margin-top:0}#sourceContent dd{margin:3px 0 0;color:#314e4a}#reportBody table{display:block;overflow-x:auto}#chapters a:first-child{color:var(--teal)}@media(max-width:650px){.opportunity-card{grid-template-columns:1fr}.executive-summary{padding:17px}}@media print{.executive-summary{background:none;border:0;padding:0}.opportunity-card{break-inside:avoid}details::details-content{display:block!important}#reportBody table{display:table}}

.key-field{display:grid;grid-template-columns:1fr auto;align-items:start;column-gap:14px}.key-field>input{grid-column:1/-1}.key-help{font-size:12px;max-width:350px}.key-help summary{cursor:pointer;color:#73828b;text-align:right;text-decoration:underline;text-underline-offset:3px}.key-help p{color:#526a77;background:#f2f6f7;padding:12px;border-radius:6px;line-height:1.8}.key-help a{color:var(--teal)}.key-help summary:focus-visible{outline:2px solid var(--teal);outline-offset:3px}@media(max-width:650px){.key-help{max-width:180px}}

.auth-gate{min-height:100vh;display:grid;grid-template-columns:1fr 430px;gap:70px;align-items:center;max-width:1160px;margin:auto;padding:60px}.auth-intro h1{font-size:46px;line-height:1.4;margin:25px 0}.auth-intro p{color:#68818b;font-size:15px;line-height:2}.auth-features{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.auth-features span{color:#347a75;background:#e5f2ef;padding:8px 12px;border-radius:5px;font-size:12px}.auth-card{padding:35px;margin:0;box-shadow:0 14px 50px #173e3e08}.auth-card h2{font-size:25px;margin-bottom:5px}.auth-card form{margin-top:25px}.auth-card form>button{width:100%}.auth-card>button{margin:18px 0 5px}.form-error{color:#b24242;font-size:12px;min-height:20px}.password-gate{display:flex;justify-content:center}.password-gate .auth-card{width:430px}.usage-row{padding:15px 0;border-bottom:1px solid var(--border);font-size:12px;overflow-wrap:anywhere}.usage-row small{display:block;color:#81919b;margin-top:5px}.user-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--border)}.user-row small{color:#8b9ca5}.user-row button{padding:7px 12px;font-size:12px}.workspace-tag{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:850px){.auth-gate{grid-template-columns:1fr;max-width:540px;padding:30px;gap:28px}.auth-intro h1{font-size:32px}.auth-intro p{font-size:13px}.auth-features{display:none}.auth-card{padding:25px}}@media print{#authGate,#passwordGate{display:none!important}}
