:root {
  --bg:#071016; --panel:#0d1820; --panel2:#111f29; --line:#22323d; --text:#ecf4f8; --muted:#8aa0ad;
  --accent:#4fd1c5; --accent2:#8b5cf6; --warn:#f59e0b; --danger:#ef4444; --ok:#22c55e; --info:#38bdf8;
  --shadow:0 18px 50px rgba(0,0,0,.28); --radius:16px;
}
*{box-sizing:border-box} html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:20px 14px;border-right:1px solid var(--line);background:linear-gradient(180deg,#09131a,#071016)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.06em;margin:2px 8px 22px}.brand-mark{width:34px;height:34px;border-radius:11px;background:radial-gradient(circle at 30% 30%,var(--accent),transparent 45%),linear-gradient(135deg,#142a35,#13233a);border:1px solid #2b4450;box-shadow:0 0 22px rgba(79,209,197,.18)}.brand small{display:block;font-weight:500;color:var(--muted);letter-spacing:0;margin-top:2px}
.nav{display:flex;flex-direction:column;gap:6px}.nav a{display:flex;gap:10px;align-items:center;text-decoration:none;padding:11px 12px;border-radius:11px;color:#b9c9d2;font-size:14px}.nav a:hover,.nav a.active{background:#12202a;color:#fff}.nav .group{font-size:11px;text-transform:uppercase;color:#667b87;margin:18px 10px 5px;letter-spacing:.08em}.sidebar-foot{position:absolute;bottom:16px;left:14px;right:14px;font-size:11px;color:#6f8591;line-height:1.5;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b161d}
.main{min-width:0}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(7,16,22,.86);backdrop-filter:blur(12px);position:sticky;top:0;z-index:4}.topbar h1{font-size:17px;margin:0}.top-actions{display:flex;gap:10px;align-items:center}.content{padding:28px;max-width:1500px;margin:auto}
.btn{border:1px solid var(--line);background:#12202a;color:#eaf3f7;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700;font-size:13px}.btn:hover{filter:brightness(1.12)}.btn.primary{background:linear-gradient(135deg,#0f766e,#155e75);border-color:#278b8a}.btn.ghost{background:transparent}.btn.danger{border-color:#6e2830;color:#ffb0b8}.btn.sm{padding:7px 10px;font-size:12px}.btn:disabled{opacity:.45;cursor:not-allowed}
.card{background:linear-gradient(180deg,var(--panel),#0b151c);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card.pad{padding:18px}.card h2,.card h3{margin-top:0}.muted{color:var(--muted)}.tiny{font-size:11px}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.hero{min-height:calc(100vh - 125px);display:grid;place-items:center}.hero-inner{width:min(920px,100%);text-align:center}.hero h2{font-size:42px;line-height:1.08;margin:0 0 12px}.hero p{color:var(--muted);font-size:16px;margin:0 auto 24px;max-width:720px}.searchbox{background:#0c1820;border:1px solid #27404b;border-radius:20px;padding:12px;box-shadow:0 24px 80px rgba(0,0,0,.35)}.searchbox textarea{width:100%;min-height:92px;resize:vertical;background:transparent;border:0;outline:0;color:white;font-size:19px;padding:12px}.searchrow{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:8px 8px 4px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.chip{font-size:11px;padding:5px 8px;border-radius:999px;border:1px solid #2c4350;background:#0f1e27;color:#b8d3df}.chip.good{border-color:#285c4b;color:#8be4b2}.chip.warn{border-color:#6a4c1d;color:#ffd28c}.chip.info{border-color:#285a74;color:#9bdcff}
.grid{display:grid;gap:16px}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.metric{padding:16px}.metric strong{display:block;font-size:27px;margin-top:5px}.metric span{font-size:12px;color:var(--muted)}
.flex{display:flex}.between{justify-content:space-between}.center{align-items:center}.gap{gap:10px}.wrap{flex-wrap:wrap}.section-title{display:flex;justify-content:space-between;align-items:end;margin:0 0 15px}.section-title h2{margin:0;font-size:22px}.section-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.stack{display:flex;flex-direction:column;gap:14px}
input,select,textarea{background:#0a151c;border:1px solid var(--line);color:#eef7fa;border-radius:10px;padding:10px 11px;outline:none}input:focus,select:focus,textarea:focus{border-color:#3f7680}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;color:#94a8b2}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field.full{grid-column:1/-1}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid #1d2b34;vertical-align:top}th{position:sticky;top:0;background:#0e1a22;color:#8da5b1;font-size:11px;text-transform:uppercase;letter-spacing:.05em}tr:hover td{background:#0d1921}.badge{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.04em}.badge.confirmed{background:#103e2c;color:#77e8a6}.badge.probable{background:#143b4d;color:#7dd9ff}.badge.possible{background:#4b3512;color:#ffd178}.badge.weak{background:#3a2529;color:#ff9aa4}.badge.neutral{background:#17252e;color:#a9bdc7}
.progress{height:7px;background:#16242d;border-radius:999px;overflow:hidden}.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:999px}.lead{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px;border-bottom:1px solid var(--line)}.lead:last-child{border-bottom:0}.lead-title{font-weight:700}.lead-meta{font-size:11px;color:var(--muted);margin-top:4px}
.console{height:430px;overflow:auto;background:#050d12;border:1px solid #19303b;border-radius:13px;padding:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.log{padding:5px 0;border-bottom:1px dashed #12242d;color:#abc1cb}.log b{color:#8de7dd}.log.warn{color:#ffce85}.log.ok{color:#91e7ae}.log.err{color:#ff9aa4}
.graph{height:620px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 40%,#0f2029,#071016 60%);border:1px solid var(--line);border-radius:16px}.graph svg{width:100%;height:100%}.node circle{fill:#132932;stroke:#4fd1c5;stroke-width:2}.node text{fill:#dcebf0;font-size:12px}.edge{stroke:#37515d;stroke-width:1.4}.edge-label{fill:#708893;font-size:9px}.node.person circle{stroke:#8b5cf6}.node.organization circle{stroke:#38bdf8}.node.domain circle{stroke:#f59e0b}.node.username circle{stroke:#22c55e}.node.phone circle,.node.email circle{stroke:#ef6b6b}
.timeline{position:relative;margin-left:16px}.timeline:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:#263943}.tl-item{position:relative;padding-left:38px;margin-bottom:18px}.tl-dot{position:absolute;left:4px;top:5px;width:16px;height:16px;border-radius:50%;background:#0f766e;border:3px solid #5eead4}.tl-date{font-size:11px;color:#8aa0ad}.tl-title{font-weight:800;margin:3px 0}.tl-desc{font-size:13px;color:#b6c7cf}.report{max-width:960px;margin:auto;background:#fff;color:#13222a;border-radius:10px;padding:46px;box-shadow:0 20px 70px rgba(0,0,0,.3)}.report h1{font-size:34px}.report h2{border-bottom:1px solid #d8e0e4;padding-bottom:7px;margin-top:32px}.report p,.report li{line-height:1.6}.report .source{font-size:12px;color:#415866}.callout{border:1px solid #2e4752;background:#0d1b23;padding:12px;border-radius:11px;font-size:12px;color:#acc0ca}.danger-callout{border-color:#5c3135;background:#1b1114;color:#e8a7ad}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tab{padding:8px 10px;border-radius:8px;border:1px solid var(--line);font-size:12px;color:#a9bdc7;cursor:pointer}.tab.active{background:#14232d;color:#fff}.divider{height:1px;background:var(--line);margin:15px 0}.hidden{display:none!important}
.toast{position:fixed;right:20px;bottom:20px;background:#13232d;border:1px solid #35505c;color:#fff;padding:12px 15px;border-radius:10px;box-shadow:var(--shadow);z-index:99;font-size:13px;max-width:360px}.modal-back{position:fixed;inset:0;background:rgba(0,0,0,.68);display:grid;place-items:center;z-index:50;padding:20px}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:#0d1820;border:1px solid #29404c;border-radius:16px;padding:20px;box-shadow:var(--shadow)}
@media (max-width:1000px){.app{grid-template-columns:78px 1fr}.sidebar{padding:16px 9px}.brand span,.nav a span,.nav .group,.sidebar-foot{display:none}.brand{justify-content:center;margin-left:0;margin-right:0}.nav a{justify-content:center}.grid.cols-4{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.app{display:block}.sidebar{display:none}.topbar{padding:0 14px}.content{padding:16px}.hero h2{font-size:31px}.searchrow{align-items:stretch;flex-direction:column}.grid.cols-4,.grid.cols-3,.grid.cols-2,.form-grid{grid-template-columns:1fr}.report{padding:22px}.graph{height:480px}.topbar h1{font-size:14px}}
@media print{body{background:white}.sidebar,.topbar,.no-print{display:none!important}.app{display:block}.content{padding:0}.report{box-shadow:none;border-radius:0;max-width:none}}
.connector-list{display:flex;flex-direction:column;gap:9px}.connector-list label{display:grid;grid-template-columns:auto 150px 1fr;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#09151c;font-size:13px}.connector-list label span{color:var(--muted);font-size:12px}.connector-list input{width:auto}
@media(max-width:680px){.connector-list label{grid-template-columns:auto 1fr}.connector-list label span{grid-column:2}}
.btn.big{padding:12px 18px;font-size:14px}.success-callout{border-color:#245d50;background:#0d201b;color:#b8ead8}.engine-ok{color:#75ddb8;font-size:11px}.engine-warn{color:#ffbd70;font-size:11px;text-decoration:none}.settings-simple{max-width:820px;margin:20px auto}.api-card{padding:24px}.api-card .field{margin-top:14px}.api-status{font-size:11px;font-weight:900;letter-spacing:.06em;border-radius:999px;padding:7px 10px}.api-status.on{background:#103e2c;color:#77e8a6}.api-status.off{background:#3a2529;color:#ff9aa4}.or-sep{text-align:center;color:#6e8591;font-size:11px;font-weight:800;margin:12px 0 -2px}.remember-line{display:flex;align-items:center;gap:8px;color:#91a7b2;font-size:12px;margin-top:14px}.remember-line input{width:auto}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.mini-stats>div{background:#09151c;border:1px solid var(--line);border-radius:12px;padding:14px}.mini-stats b{display:block;font-size:22px}.mini-stats span{font-size:11px;color:var(--muted)}
@media(max-width:680px){.mini-stats{grid-template-columns:1fr}.api-card{padding:18px}}
.api-status.warn{background:#3b311a;color:#ffd27a}.key-result{margin:7px 0;padding:9px 10px;border-radius:9px;background:#0a171e;border:1px solid #243944}.key-result.ok{border-color:#245d50;color:#b8ead8}.key-result.warn{border-color:#6a5122;color:#ffd795}.key-result.err{border-color:#6b3037;color:#ffadb5}

/* v2.5 — relevance-first / readable investigation UI */
.content{max-width:1380px;padding:30px 32px 48px}
.eyebrow{font-size:10px;letter-spacing:.13em;font-weight:900;color:#65b8c4;text-transform:uppercase;margin-bottom:7px}
.subject-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:6px 0 20px}.subject-hero h2{font-size:30px;margin:0 0 7px;letter-spacing:-.025em}.subject-hero p{margin:0;color:var(--muted);font-size:13px}.subject-actions{display:flex;gap:10px;align-items:center}.confidence-ring{width:76px;height:76px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #315361;background:radial-gradient(circle,#122a32,#0c1920);box-shadow:inset 0 0 24px rgba(79,209,197,.08)}.confidence-ring strong{font-size:21px}.confidence-ring span{font-size:9px;color:var(--muted);text-transform:uppercase}
.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric-card{background:#0c171e;border:1px solid #1d303a;border-radius:14px;padding:17px 18px}.metric-card strong{display:block;font-size:25px;line-height:1}.metric-card span{display:block;margin-top:7px;color:var(--muted);font-size:11px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:16px}.section-mini{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.section-mini h3{font-size:18px;margin:0}.quality-badge{font-size:10px;padding:6px 9px;border-radius:999px;background:#11342d;color:#89e4bd;border:1px solid #235747;white-space:nowrap}.summary-text{font-size:15px;line-height:1.72;color:#d8e6ec;margin-top:16px}.key-points{margin-top:18px;display:grid;gap:9px}.key-points>div{padding:11px 12px;border-radius:10px;background:#0a151c;border:1px solid #1c303a}.key-points b{display:block;font-size:12px;margin-bottom:3px}.key-points span{font-size:12px;color:var(--muted);line-height:1.5}.snapshot-group{margin-top:16px}.snapshot-group>b{font-size:11px;color:#a8bbc5;text-transform:uppercase;letter-spacing:.05em}.mini-link{display:block;text-decoration:none;padding:9px 0;border-bottom:1px solid #172831;font-size:12px;color:#cfe6ef}.mini-link:hover{color:#fff}.spacious{margin-top:26px}.findings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.finding-card{background:linear-gradient(180deg,#0e1a22,#0a151b);border:1px solid #21343e;border-radius:15px;padding:16px;min-height:178px;display:flex;flex-direction:column}.finding-head{display:flex;justify-content:space-between;align-items:center}.finding-card h3{font-size:15px;line-height:1.35;margin:12px 0 8px}.finding-card p{font-size:12.5px;color:#9eb2bc;line-height:1.55;margin:0 0 14px;flex:1}.finding-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #192a33;padding-top:10px;font-size:11px;color:#78909c}.finding-foot a{text-decoration:none;color:#7dd8d1}.confidence-pill{font-size:10px;color:#aad2dd}.technical-note{margin-top:16px;border:1px dashed #2c4049;border-radius:11px;padding:11px 13px;color:#7f97a2;font-size:11px;background:#09141a}
.source-badge{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.06em;margin-left:7px}.source-badge.direct{background:#113b2d;color:#75e1aa}.source-badge.related{background:#12374a;color:#7cd8fa}.source-badge.background{background:#403314;color:#f5cd77}.source-badge.technical{background:#252d34;color:#9aaab3}.source-badge.noise{background:#32252a;color:#d99aa5}.source-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.source-stats>div{background:#0b171e;border:1px solid #1e3039;border-radius:12px;padding:14px}.source-stats strong{font-size:22px;display:block}.source-stats span{font-size:10px;color:var(--muted);text-transform:uppercase}.source-section{margin-top:20px}.source-section>h3{font-size:16px;margin:0 0 10px}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.source-card{background:#0b171e;border:1px solid #1e3039;border-radius:14px;padding:14px}.source-card-top{display:grid;grid-template-columns:34px 1fr 44px;gap:11px;align-items:start}.source-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#13242d;border:1px solid #2d4652;color:#87dcd6;font-weight:900}.source-meta{font-size:10px;color:#728b96;margin-bottom:5px}.source-title{display:block;font-size:13px;line-height:1.35;font-weight:800;text-decoration:none;color:#e8f2f6}.source-title:hover{color:#8de5dd}.source-main p{font-size:11.5px;line-height:1.48;color:#8fa5af;margin:7px 0 0}.source-score{text-align:center;font-size:17px;font-weight:900;color:#a8cbd3}.source-score small{display:block;font-size:8px;color:#627a85;font-weight:600}.source-foot{display:flex;gap:12px;flex-wrap:wrap;margin-top:11px;padding-top:9px;border-top:1px solid #172831;font-size:9px;color:#637b86}
.progress-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 15px}.stage-card{background:#0b171e;border:1px solid #1f3039;border-radius:13px;padding:13px}.stage-card span{display:block;font-size:11px;color:#a7bbc5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-card strong{font-size:22px;display:block;margin-top:8px}.stage-card small{font-size:9px;color:#687f8a}.clean-run-list{display:grid;gap:0;margin-top:11px}.run-row{display:grid;grid-template-columns:1fr 45px;gap:12px;padding:11px 0;border-top:1px solid #172831}.run-row:first-child{border-top:0}.run-row b{display:block;font-size:12px}.run-row span{display:block;font-size:10px;color:#728b96;margin-top:3px;line-height:1.4}.run-row>strong{text-align:right;font-size:18px;color:#82d9d2}.tech-details{margin-top:14px;overflow:hidden}.tech-details summary{list-style:none;cursor:pointer;padding:14px 16px;font-size:12px;font-weight:800;color:#9cb0b9;display:flex;justify-content:space-between}.tech-details summary::-webkit-details-marker{display:none}.tech-details summary:after{content:'＋';color:#617b86}.tech-details[open] summary:after{content:'−'}.tech-inner{padding:0 14px 14px}.console.compact{height:270px}.legend-line{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:10px;color:#849aa5}.legend-line span{display:flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#4fd1c5}.dot.person{background:#8b5cf6}.dot.organization{background:#38bdf8}.dot.domain{background:#f59e0b}.dot.username{background:#22c55e}.tl-dot.technical{background:#263943;border-color:#70818a}.compact-timeline .tl-item{margin-bottom:10px}.empty-state{display:flex;flex-direction:column;gap:5px;padding:18px;color:#8fa5af}.empty-state b{color:#c4d5dc}
.modern-report{max-width:1020px}.report-kicker{font-size:10px;font-weight:800;letter-spacing:.08em;color:#59717d}.report-title-row{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;border-bottom:1px solid #dbe3e7;padding-bottom:22px}.report-title-row h1{margin-bottom:7px}.report-title-row p{margin:0;color:#657783;font-size:12px}.report-score{text-align:center;border:1px solid #d6e1e4;border-radius:14px;padding:12px 16px;min-width:122px}.report-score strong{display:block;font-size:26px;color:#0f766e}.report-score span{font-size:9px;color:#62737c}.report-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.report-metrics>div{background:#f5f8f9;border-radius:10px;padding:11px}.report-metrics b{font-size:18px;display:block}.report-metrics span{font-size:9px;color:#667a84;text-transform:uppercase}.report-summary{font-size:15px}.report-tags{display:flex;gap:8px;flex-wrap:wrap}.report-tags span{background:#f3f6f7;border:1px solid #e0e7ea;border-radius:999px;padding:7px 10px;font-size:11px}.report-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.report-two h3{font-size:14px;margin-bottom:7px}.report-findings>div{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:15px 0;border-top:1px solid #e1e7ea}.report-index{font-size:11px;font-weight:900;color:#78909b}.report-findings h3{font-size:14px;margin:0 0 5px}.report-findings p{font-size:12px;margin:3px 0}.report-source{color:#607681!important;font-size:10px!important}.report-source a{color:#0f766e}.report-timeline{display:grid;gap:6px}.report-timeline>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid #e5eaed;font-size:12px}.report-timeline span{color:#445963}.report-sources{padding-left:20px}.report-sources li{margin:8px 0;font-size:12px}.report-sources a{color:#0f6671}.report-sources small{display:block;color:#788b94;font-size:9px;margin-top:2px}
@media(max-width:1000px){.dashboard-grid,.findings-grid,.source-grid{grid-template-columns:1fr}.progress-overview{grid-template-columns:repeat(2,1fr)}.metric-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.subject-hero{align-items:flex-start;flex-direction:column}.subject-actions{width:100%;flex-wrap:wrap}.confidence-ring{width:66px;height:66px}.metric-row,.source-stats,.progress-overview,.report-metrics,.report-two{grid-template-columns:1fr 1fr}.source-card-top{grid-template-columns:30px 1fr}.source-score{display:none}.content{padding:18px}.subject-hero h2{font-size:24px}}

/* v2.6 — evidence dossier / source traceability */
.dossier-summary{padding:24px!important}.narrative{font-size:15px;line-height:1.78;color:#d9e7ec;max-width:1100px}.narrative p{margin:0 0 13px}.identity-assessment{margin-top:18px;padding:13px 15px;border:1px solid #28505a;background:#0a171e;border-radius:12px;display:flex;flex-direction:column;gap:5px}.identity-assessment b{font-size:12px;color:#99e8df}.identity-assessment span{font-size:12px;line-height:1.5;color:#94aab4}.dossier-grid{margin-top:16px}.evidence-list{display:grid;gap:0;margin-top:12px}.evidence-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:11px 0;border-bottom:1px solid #172a33}.evidence-row:last-child{border-bottom:0}.evidence-row b{display:block;font-size:12px}.evidence-row span{font-size:11px;color:#86a0ab;margin-top:3px;display:block}.source-ref{display:inline-flex;text-decoration:none;font-size:9px;font-weight:900;padding:4px 6px;border-radius:7px;background:#123845;color:#8de7df;border:1px solid #285663;margin:2px}.source-ref:hover{filter:brightness(1.2)}.source-ref-static{display:inline-flex;padding:3px 5px;border-radius:6px;background:#133a46;color:#88e1dc;font-weight:900}.contact-list{display:grid;gap:9px;margin-top:14px}.contact-card{padding:12px;border:1px solid #24404a;border-radius:11px;background:#09161d}.contact-card>span{display:block;font-size:9px;text-transform:uppercase;color:#6da3ae;letter-spacing:.06em}.contact-card>b{display:block;font-size:14px;margin:4px 0}.contact-card>small{display:block;color:#859ba6;margin-bottom:6px}.fact-list{display:grid;gap:0;margin-top:12px}.fact-row{display:grid;grid-template-columns:110px minmax(0,1fr) 55px 150px;gap:12px;align-items:start;padding:13px 0;border-top:1px solid #172b34}.fact-row:first-child{border-top:0}.fact-cat{font-size:9px;text-transform:uppercase;color:#6fb8c3;letter-spacing:.06em}.fact-row b{font-size:12px;line-height:1.5}.fact-row small{display:block;margin-top:4px;color:#718994}.fact-confidence{text-align:right;font-size:12px;color:#9bcbd3}.uncertainty{padding:10px 0;border-bottom:1px solid #172831}.uncertainty:last-child{border-bottom:0}.uncertainty b{font-size:12px}.uncertainty p{font-size:11px;color:#8ea4ae;margin:5px 0}.coverage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.coverage-card{border:1px solid #20343e;background:#0a171e;border-radius:14px;padding:15px}.coverage-card.done{border-color:#28564e}.coverage-card span{display:block;font-size:11px;color:#9eb3bd}.coverage-card strong{display:block;font-size:24px;margin:7px 0 2px}.coverage-card small{font-size:9px;color:#6f8792}.evidence-source .source-main p{font-size:12px;line-height:1.55}.source-why{font-size:10px;color:#92a9b3;margin-top:10px;padding-top:8px;border-top:1px dashed #1b3038}.source-url{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;color:#58747f;margin-top:7px;overflow-wrap:anywhere}.source-foot a{margin-left:auto;color:#7cddd5;text-decoration:none}.report-callout{background:#f1f7f7;border-left:4px solid #0f766e;padding:13px 16px;margin:18px 0}.report-callout p{margin:5px 0 0}.report-roles{display:grid;grid-template-columns:1fr 1fr;gap:9px}.report-roles>div{border:1px solid #e0e8eb;border-radius:9px;padding:11px}.report-roles h3{font-size:13px;margin:0 0 4px}.report-roles p{font-size:11px;margin:0}.report-facts{display:grid;gap:8px}.report-facts>div{border:1px solid #e0e7ea;border-radius:9px;padding:11px}.report-facts>div>span{font-size:9px;text-transform:uppercase;color:#647a84}.report-facts p{margin:5px 0}.report-facts small{font-size:10px;color:#71858e}
@media(max-width:1000px){.coverage-grid{grid-template-columns:1fr 1fr}.fact-row{grid-template-columns:90px 1fr 50px}.fact-row>div:last-child{grid-column:2/-1}.report-roles{grid-template-columns:1fr}}
@media(max-width:680px){.coverage-grid{grid-template-columns:1fr}.fact-row{grid-template-columns:1fr}.fact-row>div:last-child{grid-column:auto}.evidence-row{grid-template-columns:1fr}.source-foot a{margin-left:0}}

/* v2.7 investigation brief */
.investigation-card{border:1px solid rgba(70,210,205,.18);background:linear-gradient(180deg,rgba(10,27,34,.96),rgba(7,20,27,.98))}
.investigation-brief{display:flex;flex-direction:column;gap:14px;margin-top:16px}
.investigation-opening{font-size:17px;line-height:1.72;color:#d8e9ef;padding:4px 2px 8px}
.investigation-opening p:first-child{font-size:19px;color:#f2fbfd}
.investigation-section{border:1px solid rgba(130,176,194,.14);border-radius:14px;padding:16px 18px;background:rgba(5,17,23,.34)}
.investigation-section-head{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;margin-bottom:8px}
.investigation-section-head>span{font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#67d8df;letter-spacing:.08em}
.investigation-section-head h3{margin:0;font-size:16px;color:#f1fafc}
.investigation-section-head>b{font-size:12px;color:#87cbd1;font-weight:600}
.investigation-section .narrative p{margin:7px 0;color:#bcd1d9;line-height:1.65}
.investigation-evidence{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid rgba(130,176,194,.12)}
.investigation-evidence>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7394a2;margin-right:3px}
.investigation-conclusion{margin-top:4px;border-left:3px solid #26aaa6;padding:14px 16px;background:rgba(38,170,166,.06);border-radius:0 12px 12px 0}
.investigation-conclusion .narrative p{margin:8px 0;color:#d7e8ed;line-height:1.68}
.report-intro{color:#61747e;margin-top:-8px}
.report-investigation-brief{gap:18px;margin:16px 0 24px}
.report-investigation-brief .investigation-opening{color:#243741;font-size:16px;line-height:1.7}
.report-investigation-brief .investigation-opening p:first-child{color:#0f2029;font-size:18px}
.report-investigation-section{background:#f8fbfc;border-color:#dce7eb;padding:18px 20px}
.report-investigation-section .investigation-section-head>span{color:#2a7f87}
.report-investigation-section .investigation-section-head h3{color:#112832;font-size:18px}
.report-investigation-section .investigation-section-head>b{color:#547680}
.report-investigation-section .narrative p{color:#314852;line-height:1.7}
.report-investigation-section .investigation-evidence{border-top-color:#d9e4e8}
.report-investigation-brief .investigation-conclusion{background:#eef8f7;border-left-color:#188f89}
.report-investigation-brief .investigation-conclusion .narrative p{color:#243b43}
@media(max-width:800px){.investigation-section-head{grid-template-columns:26px 1fr}.investigation-section-head>b{grid-column:2}.investigation-opening{font-size:16px}}

/* v2.9 — investigation report: narrative first, summary second, details third */
.investigation-report-view{display:flex;flex-direction:column;gap:22px;margin-top:16px}
.investigation-story{border:1px solid rgba(92,210,204,.18);background:linear-gradient(180deg,rgba(7,25,32,.78),rgba(6,18,24,.58));border-radius:16px;padding:22px 24px}
.investigation-story h3,.investigation-summary-block h3,.investigation-details-block h3{margin:5px 0 14px;color:#f2fbfd;font-size:19px}
.investigation-main-text{font-size:16px;line-height:1.84;color:#dcecf1;max-width:none}
.investigation-main-text p{margin:0 0 16px}
.investigation-main-text p:first-child{font-size:18px;color:#f4fbfd}
.investigation-summary-block{padding:2px 0}
.investigation-key-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.investigation-key-card{border:1px solid #203943;background:#09181f;border-radius:13px;padding:14px 15px;display:flex;flex-direction:column;gap:7px;min-height:104px}
.investigation-key-card>span{font-size:9px;color:#71b9c2;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.investigation-key-card>b{font-size:13px;line-height:1.5;color:#e8f5f7}
.investigation-key-card small{font-size:9px;color:#6f8994}
.investigation-details-block{border-top:1px solid #17303a;padding-top:18px}
.investigation-detail{border:1px solid rgba(130,176,194,.15);background:rgba(4,15,20,.3);border-radius:14px;padding:16px 18px;margin:10px 0}
.investigation-detail-title{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:8px}
.investigation-detail-title>span{font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#62d7db}
.investigation-detail-title h3{font-size:15px;margin:0;color:#f0fafc}
.investigation-detail-title>b{font-size:11px;color:#79b8c0}
.investigation-final{border-left:3px solid #26aaa6;background:rgba(38,170,166,.06);padding:16px 18px;border-radius:0 13px 13px 0}
.investigation-final .narrative{color:#d7e8ed}
.report .investigation-story{background:#f7fbfc;border-color:#dbe7ea;padding:20px 22px}
.report .investigation-story h3,.report .investigation-summary-block h3,.report .investigation-details-block h3{color:#102630}
.report .investigation-main-text,.report .investigation-main-text p{color:#263d46;font-size:15px;line-height:1.76}
.report .investigation-main-text p:first-child{color:#102630;font-size:17px}
.report .investigation-key-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.report .investigation-key-card{background:#f7fafb;border-color:#dce6ea;min-height:90px}
.report .investigation-key-card>span{color:#417783}
.report .investigation-key-card>b{color:#18313b}
.report .investigation-detail{background:#fbfcfd;border-color:#e0e8eb}
.report .investigation-detail-title h3{color:#17303a}
.report .investigation-detail-title>span{color:#2c8187}
.report .investigation-detail .narrative,.report .investigation-detail .narrative p{color:#314a54}
.report .investigation-final{background:#eff8f7;border-left-color:#188f89}
.report .investigation-final .narrative,.report .investigation-final .narrative p{color:#29434b}
@media(max-width:800px){.investigation-key-grid,.report .investigation-key-grid{grid-template-columns:1fr}.investigation-story{padding:17px}.investigation-detail-title{grid-template-columns:26px 1fr}.investigation-detail-title>b{grid-column:2}.investigation-main-text{font-size:15px}}
