/* EMI News & Trends — analysis-first page (shell + #ctip + .chip come from china.css) */
.nhead{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:6px 0 2px;}
.nhead h1{font-size:21px;margin:0;letter-spacing:-0.02em;}
.nmeta{font-size:11.5px;color:var(--muted);}
.nmeta b{color:var(--ink-2);font-weight:600;}
.lang-switch{display:flex;gap:2px;background:var(--line-2);border-radius:7px;padding:2px;flex:0 0 auto;}
.lang-btn{font:inherit;font-size:11.5px;font-weight:700;color:var(--muted);background:none;border:none;border-radius:5px;padding:4px 9px;cursor:pointer;transition:background .12s,color .12s;}
.lang-btn:hover{color:var(--ink-2);}
.lang-btn.on{background:var(--card);color:var(--blue);box-shadow:0 1px 2px rgba(15,23,42,.08);}
.sec-title{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:26px 0 4px;}
.sec-sub{font-size:11.5px;color:var(--faint);margin:0 0 12px;}

/* the brief */
.brief{font-size:15px;line-height:1.6;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:0 12px 12px 0;padding:14px 18px;margin:8px 0 2px;}

/* theme cards */
/* view toggle: Feed (Techmeme river) ↔ Analysis */
.view-tabs{display:inline-flex;gap:0;background:var(--line-2);border:1px solid var(--line);border-radius:9px;padding:3px;margin:10px 0 2px;}
.view-tab{font:600 12.5px 'InterVar',sans-serif;color:var(--muted);background:transparent;border:none;border-radius:7px;padding:5px 16px;cursor:pointer;}
.view-tab.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,23,42,.1);}
/* Techmeme-style story river */
.feed{display:flex;flex-direction:column;}
.fd-item{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:12px 2px;border-top:1px solid var(--line-2);}
.fd-item:first-child{border-top:none;}
.fd-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);margin-top:6px;}
.fd-head{font-size:15px;font-weight:700;color:var(--ink);line-height:1.34;text-decoration:none;}
.fd-head:hover{color:var(--blue);text-decoration:underline;}
.fd-meta{font-size:11px;color:var(--faint);margin:3px 0 6px;}
.fd-meta .fd-src{color:var(--muted);font-weight:600;}
.fd-corr{color:#15803d;font-weight:600;}
.fd-read{font-size:12.5px;line-height:1.45;color:var(--ink-2);background:#f6f9ff;border-left:3px solid var(--blue);border-radius:0 7px 7px 0;padding:5px 10px;margin:0 0 7px;}
.fd-read.d-headwind{background:#fdf4f2;border-left-color:#a8472f;}
.fd-read.d-watch{background:#fffaf0;border-left-color:#9c7320;}
.fd-read.d-tailwind{background:#f1faf4;border-left-color:#2f7d5a;}
.fd-read b{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-right:6px;}
.fd-tags{display:flex;flex-wrap:wrap;gap:5px;}
.fd-tags .chip{cursor:pointer;}
.chip.f-company{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;}
.chip.f-theme{background:#fffbeb;color:#92400e;border:1px solid #fcd34d;}
.chip.f-comp{background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe;}
.chip.f-geo{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;}
.chip.f-em{background:#f8fafc;color:#475569;border:1px solid #e2e8f0;}
/* split master-detail: left rail + right stream */
.split{display:grid;grid-template-columns:236px 1fr;gap:18px;align-items:start;}
.rail{position:sticky;top:60px;align-self:start;max-height:calc(100vh - 80px);overflow:auto;padding-right:4px;}
.rail-grp{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:14px 0 6px;}
.rail-grp:first-child{margin-top:2px;}
.rail-list{display:flex;flex-direction:column;gap:3px;}
.rail-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;font:600 13px 'InterVar',sans-serif;color:var(--ink-2);background:transparent;border:1px solid transparent;border-radius:8px;padding:7px 10px;cursor:pointer;}
.rail-item:hover{background:var(--line-2);}
.rail-item.on{background:var(--ink);color:#fff;}
.rail-item .ri-n{font-size:11px;font-weight:400;opacity:.6;}
.rail-tree{display:flex;flex-direction:column;gap:2px;}
.rt-head{display:flex;align-items:center;gap:6px;width:100%;text-align:left;font:600 12.5px 'InterVar',sans-serif;color:var(--ink-2);background:transparent;border:none;border-radius:7px;padding:6px 8px;cursor:pointer;}
.rt-head:hover{background:var(--line-2);}
.rt-chev{font-size:10px;color:var(--muted);width:10px;}
.rt-name{font-weight:700;color:var(--ink);}
.rt-kick{display:none;}
.rt-n{margin-left:auto;font-size:10px;font-weight:700;color:var(--muted);background:var(--line-2);border-radius:20px;padding:0 8px;}
.rt-body{display:flex;flex-direction:column;gap:4px;padding:2px 0 6px 10px;}
.rt-grp-spacer{height:0;}
.rt-glabel{font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);padding:4px 8px 1px;}
.rt-glabel i{display:none;}
.rt-gleaves{display:flex;flex-direction:column;gap:1px;}
.rt-leaf{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;font:500 12px 'InterVar',sans-serif;color:var(--muted);background:transparent;border:none;border-radius:6px;padding:4px 8px;cursor:pointer;}
.rt-leaf:hover{background:var(--line-2);color:var(--blue);}
.rt-leaf.on{background:#eff6ff;color:var(--blue);font-weight:700;}
.rt-leaf.muted{opacity:.4;}
.rt-leaf span{font-size:10.5px;opacity:.6;}
.fd-item{cursor:pointer;}
.fd-item:hover .fd-head{color:var(--blue);}
.fd-head{cursor:pointer;}
@media(max-width:780px){.split{grid-template-columns:1fr;}.rail{position:static;max-height:none;}.rail-list{flex-direction:row;flex-wrap:wrap;}.rail-tree{display:none;}}
/* news detail modal (overlay; page stays underneath) */
.modal-ov{position:fixed;inset:0;background:rgba(15,23,42,.5);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;z-index:300;overflow:auto;animation:ovf .14s ease-out;}
.modal{background:#fff;border-radius:16px;max-width:600px;width:100%;padding:22px 24px 20px;box-shadow:0 24px 60px rgba(15,23,42,.28);position:relative;animation:mup .16s ease-out;}
/* hovercard: the real dossier, opened on hover (no backdrop, positioned near the chip) */
#dosscard{position:fixed;z-index:500;display:none;width:468px;max-width:94vw;max-height:84vh;overflow-y:auto;overflow-x:hidden;border-radius:16px;scrollbar-width:none;-ms-overflow-style:none;}
#dosscard::-webkit-scrollbar{width:0;height:0;display:none;}   /* the card is the ONLY scroller; no visible bar */
#dosscard .ds-card{max-width:none;width:100%;max-height:none;overflow:visible;margin:0;padding:17px 20px 18px;animation:none;box-shadow:0 20px 54px rgba(15,23,42,.22),0 3px 10px rgba(15,23,42,.07);}
#dosscard .ds-cols{grid-template-columns:1fr;gap:12px;}   /* single column in the hovercard — company/em stack */
.modal-x{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:14px;cursor:pointer;}
.modal-x:hover{background:var(--line-2);color:var(--ink);}
.modal-meta{font-size:11.5px;color:var(--faint);margin:2px 40px 8px 0;}
.modal-meta .fd-src{color:var(--muted);font-weight:600;}.modal-meta .fd-corr{color:#15803d;font-weight:600;}
.modal-head{display:block;font-size:19px;font-weight:700;line-height:1.32;color:var(--ink);text-decoration:none;margin-bottom:12px;}
.modal-head:hover{color:var(--blue);text-decoration:underline;}
.modal-read{border-radius:10px;padding:11px 13px;margin-bottom:12px;background:#f6f9ff;border-left:3px solid var(--blue);}
.modal-read.d-headwind{background:#fdf4f2;border-left-color:#a8472f;}.modal-read.d-watch{background:#fffaf0;border-left-color:#9c7320;}.modal-read.d-tailwind{background:#f1faf4;border-left-color:#2f7d5a;}
.mr-k{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--blue);}
.modal-read p{font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:5px 0 8px;}
.mr-line{font-size:12.5px;line-height:1.45;color:var(--ink-2);margin:5px 0;}
.mr-line b{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#e0edff;color:#1d4ed8;padding:1px 6px;border-radius:5px;margin-right:6px;}
.modal-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px;}.modal-tags .chip{cursor:pointer;}
.modal-factsh{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--blue);margin:2px 0 6px;}
.modal-facts{margin:0 0 14px;padding-left:18px;}
.modal-facts li{font-size:13.5px;line-height:1.5;color:var(--ink);margin:4px 0;}
.fd-merged{color:#6d28d9;font-weight:600;}
/* feed item — English headline + event type + metric + digest */
.fd-headrow{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.fd-type{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569;background:#eef2f7;border:1px solid #e2e8f0;border-radius:4px;padding:1px 6px;white-space:nowrap;}
.fd-metric{font-size:11.5px;font-weight:800;white-space:nowrap;}
.fd-metric.up{color:#15803d;}.fd-metric.down{color:#b91c1c;}
.fd-dig{font-size:12px;line-height:1.5;color:#475569;margin:4px 0 2px;}
/* modal — digest + structured signal record */
.modal-digest{font-size:14px;line-height:1.55;color:#0f172a;margin:8px 0 10px;font-weight:500;}
.modal-sig{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;}
.msig-type{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#334155;border-radius:5px;padding:2px 8px;}
.msig-met{font-size:12px;font-weight:800;padding:2px 8px;border-radius:5px;}
.msig-met.up{color:#15803d;background:#dcfce7;}.msig-met.down{color:#b91c1c;background:#fee2e2;}
.msig-e{font-size:11px;color:#1e3a8a;background:#eff6ff;border:1px solid #dbeafe;border-radius:5px;padding:2px 8px;}
.msig-e.obj{color:#7c2d12;background:#fff7ed;border-color:#fed7aa;}
/* key points — combined daily summary leading the feed */
.kp-bluf{font-size:13.5px;line-height:1.6;color:#0f172a;background:#f8fafc;border-left:3px solid #2563eb;border-radius:0 8px 8px 0;padding:10px 14px;margin:0 0 16px;}
.kp-bluf-k{display:block;font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#2563eb;margin-bottom:3px;}
.kp{margin:0 0 20px;}
.kp-h{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0f172a;margin:0 0 8px;}
.kp-row{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-top:1px solid #eef1f5;}
.kp-row:first-of-type{border-top:none;padding-top:2px;}
.kp-dir{flex:none;font-size:12px;font-weight:800;width:20px;height:20px;line-height:20px;text-align:center;border-radius:5px;}
.kp-b{min-width:0;}
.kp-hl{font-size:13px;font-weight:600;color:#0f172a;line-height:1.45;}
.kp-so{font-size:12px;color:#64748b;line-height:1.5;margin-top:2px;}
.dim{color:#94a3b8;font-weight:400;font-size:.85em;}
/* highlight strip — the most important STORIES (clickable executive cards) */
.hl2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin:0 0 16px;}
@media(max-width:640px){.hl2{grid-template-columns:1fr;}}
.hl2-card{display:block;width:100%;text-align:left;font:inherit;background:#fff;border:1px solid #e5e9f0;border-left:4px solid #94a3b8;border-radius:10px;padding:12px 15px;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;}
.hl2-card:hover{box-shadow:0 4px 16px rgba(15,23,42,.08);transform:translateY(-1px);border-color:#cbd5e1;}
.hl2-card:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}
.hl2-card.d-tailwind{border-left-color:#15803d;}
.hl2-card.d-headwind{border-left-color:#b91c1c;}
.hl2-card.d-watch{border-left-color:#b45309;}
.hl2-kick{display:flex;align-items:center;gap:6px;margin-bottom:7px;flex-wrap:wrap;}
.hl2-cat{font-size:9.5px;font-weight:700;color:#1e3a8a;background:#eff6ff;border:1px solid #dbeafe;border-radius:4px;padding:1px 7px;}
.hl2-new{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#b91c1c;background:#fee2e2;border-radius:4px;padding:1px 6px;}
.hl2-track{font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#475569;background:#f1f5f9;border-radius:4px;padding:1px 6px;}
.hl2-hl{font-size:14.5px;font-weight:600;line-height:1.35;color:#0f172a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.hl2-ins{font-size:12px;line-height:1.5;color:#64748b;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.hl2-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;}
.hl2-type{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569;background:#eef2f7;border:1px solid #e2e8f0;border-radius:4px;padding:1px 6px;}
.hl2-met{font-size:12px;font-weight:800;}
.hl2-met.up{color:#15803d;}.hl2-met.down{color:#b91c1c;}
.hl2-x{font-size:11px;color:#64748b;}
.hl2-spark{display:inline-flex;align-items:center;}
.hl2-spark svg{width:58px;height:18px;display:block;}
.hl2-read{margin-left:auto;font-size:10px;font-weight:700;border-radius:5px;padding:1px 8px;}
@media(prefers-reduced-motion:reduce){.hl2-card{transition:none;}.hl2-card:hover{transform:none;}}
/* insight cards — the PRIMARY per-desk unit: a synthesis (not a single article), opens its evidence */
.ic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin:0 0 18px;}
@media(max-width:640px){.ic-grid{grid-template-columns:1fr;}}
.ic-card{display:block;width:100%;text-align:left;font:inherit;background:#fff;border:1px solid #e5e9f0;border-left:4px solid #94a3b8;border-radius:10px;padding:11px 14px;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;}
.ic-card:hover{box-shadow:0 4px 16px rgba(15,23,42,.08);transform:translateY(-1px);border-color:#cbd5e1;}
.ic-card:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}
.ic-card.d-tailwind{border-left-color:#15803d;}
.ic-card.d-headwind{border-left-color:#b91c1c;}
.ic-card.d-watch{border-left-color:#b45309;}
.ic-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;}
.ic-tags{display:flex;align-items:center;gap:6px;min-width:0;}
.ic-dir{font-size:9.5px;font-weight:800;border-radius:5px;padding:1px 8px;white-space:nowrap;}
.ic-cat{font-size:9.5px;font-weight:700;color:#1e3a8a;background:#eff6ff;border:1px solid #dbeafe;border-radius:4px;padding:1px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ic-right{display:flex;align-items:center;gap:8px;flex:none;}
.ic-spark{display:inline-flex;align-items:center;}
.ic-spark svg{width:46px;height:16px;display:block;}
.ic-ev{font-size:11px;font-weight:600;color:#2563eb;white-space:nowrap;}
.ic-hl{font-size:13px;font-weight:600;line-height:1.35;color:#0f172a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ic-so{font-size:12px;line-height:1.5;color:#64748b;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
/* evidence modal — the synthesis + the decomposed stories behind it */
.ev-dir{display:inline-block;font-size:10px;font-weight:800;border-radius:5px;padding:2px 9px;margin-bottom:8px;}
.ev-title{font-size:18px;font-weight:700;line-height:1.3;color:var(--ink);margin:0 0 8px;}
.ev-so{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:0 0 14px;}
.ev-list{display:flex;flex-direction:column;}
.ev-row{display:block;width:100%;text-align:left;font:inherit;background:transparent;border:none;border-top:1px solid var(--line-2);padding:9px 2px;cursor:pointer;}
.ev-row:hover .ev-h{color:var(--blue);}
.ev-h{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.4;}
.ev-m{font-size:11.5px;color:var(--faint);margin-top:2px;}
.kp-cbl{font-size:13px;line-height:1.55;color:#0f172a;background:#eef4ff;border:1px solid #dbe6fb;border-radius:9px;padding:9px 13px;margin:0 0 13px;}
.kp-cbl-k{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#2563eb;margin-right:8px;}
.sec-title2{font-size:12.5px;font-weight:700;color:var(--ink);margin:18px 0 8px;}
.modal-relh{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);margin-bottom:4px;}
.modal-rel{display:flex;flex-direction:column;margin-bottom:14px;}
.mrel{display:flex;flex-direction:column;gap:1px;text-align:left;background:transparent;border:none;border-top:1px solid var(--line-2);padding:7px 2px;cursor:pointer;}
.mrel:hover .mrel-t{color:var(--blue);}
.mrel-t{font-size:13px;color:var(--ink);line-height:1.3;}
.mrel-s{font-size:10.5px;color:var(--faint);}
.modal-open{display:inline-block;font-size:13px;font-weight:600;color:#fff;background:var(--blue);border-radius:8px;padding:8px 16px;text-decoration:none;}
.modal-open:hover{filter:brightness(1.06);}
@keyframes ovf{from{opacity:0}to{opacity:1}}
@keyframes mup{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.modal-ov,.modal{animation:none;}}
.fd-more{font-size:11px;color:var(--muted);margin-top:6px;}
.fclear{font-size:12px;font-weight:600;color:var(--blue);background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;padding:4px 10px;cursor:pointer;margin-bottom:8px;}
/* BLUF — bottom line up front (intelligence-brief callout) */
.bluf{background:#0f172a;border-radius:14px;padding:15px 20px;margin:12px 0 4px;}
.bluf-k{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7c8aa0;margin-bottom:5px;}
.bluf-t{font-size:15.5px;line-height:1.55;color:#f1f5f9;}
/* key judgment cards */
.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(370px,1fr));gap:12px;}
.tc-top{display:flex;align-items:center;gap:8px;margin-bottom:7px;}
.tc-conf{font-size:9.5px;font-weight:700;padding:2px 7px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em;}
.cf-high{background:#dcfce7;color:#166534;}
.cf-moderate{background:#fef9c3;color:#854d0e;}
.cf-low{background:#f1f5f9;color:#64748b;}
.tc-corr{font-size:9.5px;font-weight:600;color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:2px 7px;}
.tc-thin{font-size:9.5px;font-weight:700;color:#b45309;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;padding:2px 7px;}
/* signal conflicts panel */
.conflicts{display:flex;flex-direction:column;gap:7px;}
.cf-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--card);border:1px solid var(--line);border-left:3px solid var(--amber);border-radius:10px;padding:9px 13px;cursor:pointer;transition:box-shadow .12s;}
.cf-row:hover{box-shadow:0 2px 10px rgba(15,23,42,.07);}
.cf-lbl{font-size:13.5px;font-weight:700;color:var(--ink);}
.cf-bars{display:flex;gap:14px;font-size:12px;font-weight:600;}
.cf-pos{color:#b91c1c;}
.cf-neg{color:#1d4ed8;}
/* daily 3 highlights (hero) */
.hl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 4px;}
.hl-card{display:flex;gap:12px;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--line);border-radius:12px;padding:13px 15px;cursor:pointer;transition:box-shadow .12s,transform .12s;}
.hl-card:hover{box-shadow:0 4px 16px rgba(15,23,42,.09);transform:translateY(-1px);}
.hl-card.d-tailwind{border-top-color:#2f7d5a;}
.hl-card.d-headwind{border-top-color:#a8472f;}
.hl-card.d-watch{border-top-color:#9c7320;}
.hl-rank{flex:none;font-size:22px;font-weight:800;color:var(--faint);line-height:1.1;width:20px;}
.hl-body{flex:1;min-width:0;}
.hl-dir{display:inline-block;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:6px;}
.hl-headline{font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.32;margin:7px 0 4px;}
.hl-so{font-size:12px;color:var(--muted);line-height:1.45;}
.hl-open{font-size:11px;font-weight:600;color:var(--blue);margin-top:8px;}
@media(max-width:760px){.hl-grid{grid-template-columns:1fr;}}
/* latest trend + emerging — metric cards */
.trend-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;}
.trend-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 13px;cursor:pointer;transition:border-color .12s,box-shadow .12s,transform .12s;}
.trend-card:hover{border-color:var(--blue);box-shadow:0 3px 12px rgba(15,23,42,.07);transform:translateY(-1px);}
.tcw-new{position:absolute;top:10px;right:11px;font-size:9px;font-weight:700;letter-spacing:.04em;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:5px;padding:1px 6px;}
.tcw-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;}
.tcw-name{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.2;}
.tcw-status{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:6px;white-space:nowrap;}
.st-hot{background:#fef2f2;color:#b91c1c;}
.st-mid{background:var(--line-2);color:var(--muted);}
.st-cool{background:#eff6ff;color:#1d4ed8;}
.tcw-metrics{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px;}
.tcw-vol{font-size:11.5px;color:var(--muted);}.tcw-vol b{font-size:17px;font-weight:800;color:var(--ink);}
.tcw-growth{font-size:12px;font-weight:700;}
.tcw-growth.up{color:#15803d;}.tcw-growth.down{color:#1d4ed8;}
.tcw-spark{height:18px;}
.tcw-spark svg{display:block;}
.tcw-flat{font-size:9.5px;color:var(--faint);font-style:italic;}
.trend-emh{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:14px 0 8px;}
.trend-build{font-size:12px;color:var(--faint);font-style:italic;margin-top:10px;}
/* browse by structure (tree) */
.tree{display:flex;flex-direction:column;gap:8px;}
.tr-branch{background:var(--card);border:1px solid var(--line);border-radius:11px;overflow:hidden;}
.tr-branch.open{border-color:var(--blue);}
.tr-head{display:flex;align-items:center;gap:9px;padding:11px 14px;cursor:pointer;}
.tr-head:hover{background:var(--line-2);}
.tr-chev{font-size:11px;color:var(--muted);width:12px;}
.tr-name{font-size:14px;font-weight:700;color:var(--ink);}
.tr-kick{font-size:11px;color:var(--faint);}
.tr-n{margin-left:auto;font-size:11px;font-weight:700;color:var(--muted);background:var(--line-2);border-radius:20px;padding:1px 10px;}
.tr-body{display:flex;flex-direction:column;gap:11px;padding:4px 14px 14px;}
.tr-grp{display:flex;flex-direction:column;gap:6px;}
.tr-glabel{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);}
.tr-glabel i{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0;color:var(--muted);margin-left:7px;}
.tr-gleaves{display:flex;flex-wrap:wrap;gap:6px;}
.tr-leaf{font-size:12px;color:var(--ink-2);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:3px 9px;cursor:pointer;}
.tr-leaf b{color:var(--ink);font-weight:700;margin-left:5px;}
.tr-leaf:hover{border-color:var(--blue);color:var(--blue);}
.tr-leaf.on{border-color:var(--blue);background:#eff6ff;color:var(--blue);font-weight:600;}
.tr-leaf.muted{opacity:.45;}
/* signal board — the news aggregated as structured data (step 3) */
.sgboard{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:2px 0 6px;}
@media(max-width:900px){.sgboard{grid-template-columns:1fr;}}
.sg-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 15px;display:flex;flex-direction:column;}
.sg-h{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:10px;}
.sg-h .dim{font-weight:500;}
.sg-body{display:flex;flex-direction:column;gap:7px;}
.sg-trow{display:grid;grid-template-columns:1fr 64px auto auto;align-items:center;gap:8px;}
.sg-tlbl{font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sg-bar{height:7px;background:var(--line-2);border-radius:5px;overflow:hidden;}
.sg-fill{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:5px;}
.sg-fill.cx{background:linear-gradient(90deg,#a78bfa,#7c3aed);}
.sg-tn{font-size:12px;font-weight:700;color:var(--ink);min-width:16px;text-align:right;}
.sg-split{font-size:10.5px;font-weight:700;white-space:nowrap;}
.sg-up{color:#15803d;}.sg-dn{color:#b91c1c;}.sg-fl{color:var(--muted);}
.sg-prow,.sg-crow{display:grid;align-items:center;gap:9px;width:100%;text-align:left;background:transparent;border:none;border-radius:7px;padding:5px 7px;cursor:pointer;}
.sg-prow{grid-template-columns:1fr 54px auto auto;}
.sg-crow{grid-template-columns:1fr 1fr auto;}
.sg-prow:hover,.sg-crow:hover{background:var(--line-2);}
.sg-plbl,.sg-clbl{font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sg-spark{height:18px;display:flex;align-items:center;}
.sg-spark svg{width:54px;height:18px;}
.sg-dir{font-size:11px;font-weight:800;letter-spacing:-1px;text-align:right;}
.sg-pn{font-size:10.5px;font-weight:700;color:var(--muted);min-width:42px;text-align:right;}
.sg-cn{font-size:12px;font-weight:700;color:var(--ink);min-width:16px;text-align:right;}
.sg-empty{font-size:12px;color:var(--faint);padding:6px 2px;}
.sg-kpi{display:flex;align-items:baseline;gap:8px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line);}
.sg-kn{font-size:22px;font-weight:800;color:var(--ink);line-height:1;}
.sg-kl{font-size:11px;color:var(--faint);}
@media(prefers-reduced-motion:reduce){.hl-card,.trend-chip,.tr-head,.tcard,.trend-card{transition:none;}.hl-card:hover{transform:none;}}
.tc-sowhat{font-size:13px;line-height:1.5;color:var(--ink-2);margin:3px 0 10px;}
.tc-line{font-size:12.5px;line-height:1.5;margin:6px 0;color:var(--ink-2);}
.tc-line b{display:inline-block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1.5px 6px;border-radius:5px;margin-right:7px;vertical-align:1.5px;}
.tc-act b{background:#e0edff;color:#1d4ed8;}
.tc-watch b{background:#f3e9ff;color:#7c3aed;}
.tc-watch{color:var(--muted);}
/* corners — focused desks by domain */
.corners{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px;}
.corner{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 13px;cursor:pointer;font:inherit;transition:border-color .12s,box-shadow .12s,transform .12s;}
.corner:hover{border-color:var(--blue);box-shadow:0 3px 12px rgba(15,23,42,.07);transform:translateY(-1px);}
.corner.on{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue);background:#f5f9ff;}
.corner.quiet{opacity:.62;}
.cr-kick{font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);}
.cr-label{font-size:15px;font-weight:700;color:var(--ink);line-height:1.15;}
.cr-n{font-size:11px;color:var(--muted);margin-top:3px;}
.kj-corner{font-size:13px;font-weight:600;color:var(--blue);text-transform:none;letter-spacing:0;}
.corner-empty{font-size:12.5px;color:var(--muted);margin:4px 0 8px;}
/* angle filter bar (the 360 lenses) */
.angle-bar{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 12px;}
.angle-chip{font:600 12px 'InterVar',sans-serif;color:var(--ink-2);background:#fff;border:1px solid var(--line);border-radius:8px;padding:5px 11px;cursor:pointer;transition:all .1s;}
.angle-chip:hover{border-color:var(--blue);color:var(--blue);}
.angle-chip.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.angle-chip span{font-weight:400;opacity:.6;margin-left:3px;}
.tc-angs{display:inline-flex;gap:4px;flex-wrap:wrap;margin-left:auto;}
.tc-ang{font-size:9.5px;font-weight:600;color:var(--muted);background:var(--line-2);border-radius:5px;padding:1px 6px;letter-spacing:.02em;}
/* talk tracks */
.tc-track{font-size:12.5px;line-height:1.5;border-radius:8px;padding:7px 10px;margin:4px 0;}
.tc-track b{display:block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;}
.tt-cust{background:#eef6ff;color:#1e3a5f;}.tt-cust b{color:#1d4ed8;}
.tt-sup{background:#f3f0ff;color:#3b2f6b;}.tt-sup b{color:#6d28d9;}
/* coverage check panel */
.cov-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 15px;display:flex;flex-direction:column;gap:9px;}
.cov-row{display:flex;align-items:flex-start;gap:12px;}
.cov-rlbl{flex:none;width:92px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding-top:4px;}
.cov-chips{display:flex;flex-wrap:wrap;gap:6px;}
.cov-chip{font-size:11.5px;color:var(--ink-2);background:var(--line-2);border:1px solid transparent;border-radius:7px;padding:3px 8px;cursor:pointer;transition:all .1s;}
.cov-chip b{font-weight:700;margin-left:5px;color:var(--ink);}
.cov-chip:hover{border-color:var(--blue);color:var(--blue);}
.cov-chip.gap{background:transparent;border:1px dashed var(--line);color:var(--faint);cursor:default;}
.cov-chip.gap b{color:var(--faint);}
.tcard{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:12px;padding:13px 15px;cursor:pointer;transition:border-color .12s,box-shadow .12s;}
.tcard.d-tailwind{border-left-color:#2f7d5a;}
.tcard.d-headwind{border-left-color:#a8472f;}
.tcard.d-watch{border-left-color:#9c7320;}
.tcard:hover{border-color:var(--blue);box-shadow:0 2px 10px rgba(15,23,42,.06);}
.tcard.open{cursor:default;box-shadow:0 0 0 1px var(--blue);border-color:var(--blue);}
.tc-dir{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:6px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em;}
.dir-tailwind{background:#ecfdf5;color:#047857;}
.dir-headwind{background:#fef2f2;color:#b91c1c;}
.dir-watch{background:#fffbeb;color:#b45309;}
.tc-headline{font-size:15px;font-weight:700;color:var(--ink);line-height:1.3;margin-bottom:4px;}
.tc-why{font-size:12.5px;color:var(--muted);line-height:1.45;}
.tc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;}
.tc-vol{font-size:11px;color:var(--faint);}
.tc-vol b{color:var(--ink-2);}
.tc-expand{font-size:11px;color:var(--blue);font-weight:600;}
/* expanded body */
.tc-body{margin-top:11px;padding-top:11px;border-top:1px solid var(--line-2);}
.tc-sum{font-size:13px;line-height:1.5;color:var(--ink-2);margin-bottom:10px;}
.tc-lbl{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);margin:8px 0 4px;}
.tc-drv{margin:0;padding-left:16px;font-size:12.5px;color:var(--ink-2);line-height:1.5;}
.tc-risk{font-size:12.5px;line-height:1.45;background:#fff7ed;border:1px solid #fed7aa;border-radius:7px;padding:6px 9px;color:#7c2d12;margin:4px 0 2px;}
.tc-aff{display:flex;gap:5px;flex-wrap:wrap;margin-top:3px;}
.tc-evid{margin-top:8px;}
.evrow{display:flex;align-items:baseline;gap:8px;padding:4px 0;text-decoration:none;border-top:1px solid var(--line-2);}
.evrow:first-child{border-top:none;}
.ev-dot{flex:none;width:5px;height:5px;border-radius:50%;background:var(--faint);transform:translateY(-2px);}
.ev-tt{flex:1;font-size:12.5px;color:var(--ink);line-height:1.35;}
.evrow:hover .ev-tt{color:var(--blue);text-decoration:underline;}
.ev-src{flex:none;font-size:10px;color:var(--faint);font-weight:600;white-space:nowrap;}
.ev-src .undated{font-style:italic;color:#b45309;font-weight:600;}
.ev-track{color:var(--blue);font-weight:600;}

/* hot-concept treemap + themeriver */
/* consulting-exhibit frame for the heat map */
.exhibit{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px 14px;}
.ex-kick{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);}
.ex-title{font-size:16.5px;font-weight:600;color:#0f172a;line-height:1.35;letter-spacing:-0.01em;margin:5px 0 3px;}
.ex-sub{font-size:11.5px;color:var(--muted);margin-bottom:14px;}
.ex-source{font-size:10.5px;color:var(--faint);font-style:italic;border-top:1px solid var(--line-2);margin-top:12px;padding-top:9px;}
.tmap{width:100%;}
.tmap svg{display:block;width:100%;height:auto;}
.tmap .tile rect{transition:stroke .1s,filter .1s;}
.tmap .tile:hover rect{stroke:#0f172a;stroke-width:1.4;filter:brightness(.975);}
.river-wrap{margin-top:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;}
.river-wrap svg{display:block;width:100%;height:auto;}
.tile-tt{font-weight:700;}
.viz-legend{display:flex;align-items:center;font-size:11px;color:var(--muted);margin-top:11px;}
.viz-legend .sw{width:11px;height:11px;border-radius:3px;display:inline-block;margin:0 5px 0 14px;border:1px solid rgba(15,23,42,.06);}
.viz-legend .sw:first-child{margin-left:0;}
.sw-tw{background:#d4e7dd;}.sw-hw{background:#ecd9d2;}.sw-wa{background:#ece3cc;}.sw-ne{background:#e8eaee;}
.river-note{font-size:12px;color:var(--muted);padding:18px;text-align:center;}
.conc-evid{margin-top:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 15px;}
.conc-evid .ce-h{font-size:12px;font-weight:700;color:var(--ink-2);margin-bottom:6px;}
.conc-evid .ce-h b{color:var(--blue);}
.nempty{padding:14px;text-align:center;color:var(--muted);font-size:12.5px;}
@media(max-width:560px){.themes{grid-template-columns:1fr;}}

/* ---- event lifecycle status chips (canonical events) ---- */
.st-chip{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;white-space:nowrap;}
.st-new{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;}
.st-developing{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;}
.st-persisting{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;}
.st-fading{background:#f8fafc;color:#94a3b8;border:1px solid #eef2f6;}
/* theme lifecycle reuses the same chip look */
.st-rising{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;}
.st-steady{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;}

/* ---- key market themes board (persistent registry) ---- */
.tboard{display:flex;flex-direction:column;gap:8px;margin:10px 0 4px;}
.tb-row{display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:12px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px 14px;cursor:pointer;font:inherit;transition:border-color .12s, box-shadow .12s;}
.tb-row:hover{border-color:var(--blue);box-shadow:0 3px 12px rgba(15,23,42,.07);}
.tb-rank{font-size:15px;font-weight:700;color:var(--faint);font-variant-numeric:tabular-nums;}
.tb-main{min-width:0;display:flex;flex-direction:column;gap:3px;}
.tb-head{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
.tb-name{font-size:13.5px;font-weight:700;color:var(--ink);}
.tb-chip{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;white-space:nowrap;}
.tb-dim{font-size:9.5px;font-weight:600;color:#475569;background:#eef2f7;border-radius:4px;padding:1px 7px;white-space:nowrap;}
.tb-thesis{font-size:12px;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tb-right{display:flex;align-items:center;gap:10px;flex:none;}
.tb-bar{width:86px;height:7px;background:#eef2f6;border-radius:4px;overflow:hidden;display:inline-block;}
.tb-bar i{display:block;height:100%;background:var(--blue);border-radius:4px;}
.tb-delta{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;min-width:44px;text-align:right;}
.tb-delta.up{color:#047857;} .tb-delta.dn{color:#b91c1c;} .tb-delta.fl{color:var(--faint);}
.tb-spark{display:inline-flex;align-items:center;}
.tb-n{font-size:10.5px;color:var(--faint);white-space:nowrap;}
@media(max-width:760px){.tb-right .tb-spark{display:none;}.tb-bar{width:56px;}}

/* ---- daily intelligence brief (analysis lead) ---- */
.dbrief{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:0 12px 12px 0;padding:14px 18px;margin:12px 0 4px;}
.db-k{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:6px;}
.db-t{font-size:14.5px;line-height:1.6;color:var(--ink-2);}
/* point-form brief: bold one-line thesis + scannable bullets */
.db-lead{font-size:15.5px;font-weight:650;line-height:1.5;color:var(--ink);margin-bottom:9px;}
.db-pts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;}
.db-pts li{position:relative;padding-left:16px;font-size:13.5px;line-height:1.55;color:var(--ink-2);}
.db-pts li::before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--blue);}
.db-pt-k{color:var(--ink);font-weight:700;}
.db-pt-s{color:var(--faint);}
/* glossary term — dotted underline + hover definition (reuses #ctip) */
.gl{border-bottom:1px dotted var(--faint);cursor:help;}
#ctip .gl-t{font-size:12.5px;font-weight:700;} #ctip .gl-d{font-size:11.5px;line-height:1.5;opacity:.85;margin-top:3px;max-width:280px;}
/* digestion scale strip — how much raw intel this dashboard is distilled from */
.digest{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0 2px;}
.dg-lead{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin-right:2px;}
.dg-tile{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:5px 11px;}
.dg-tile[data-tip]{cursor:help;} .dg-tile[data-tip]:hover{border-color:var(--blue);}
.dg-n{font-size:15px;font-weight:750;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.1;}
.dg-l{font-size:10px;color:var(--muted);}
.db-score{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:10px;}
.db-sd{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;border-radius:5px;padding:2px 8px;}
.db-sd.fm-up{background:#ecfdf5;color:#047857;} .db-sd.fm-dn{background:#fef2f2;color:#b91c1c;} .db-sd.fm-fl{background:#f1f5f9;color:#475569;}
.db-sc-n{font-size:11px;color:var(--faint);font-variant-numeric:tabular-nums;margin-left:auto;}
/* live-entity chips — keywords in the prose, linked into the knowledge-layer dossier */
.ent-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px;padding-top:10px;border-top:1px dashed var(--line-2);}
.ent-tags::before{content:"◧";color:var(--faint);font-size:12px;margin-right:2px;align-self:center;}
.ent-chip{font:inherit;font-size:11.5px;font-weight:600;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:3px 9px;cursor:pointer;transition:background .12s,border-color .12s;}
.ent-chip:hover{background:#dbeafe;border-color:#93c5fd;}
.ent-chip::after{content:"›";margin-left:5px;opacity:.5;font-weight:700;}
/* entity hover preview (in #ctip) — a compact full read of the dossier, on hover */
#ctip{max-width:430px;width:410px;max-height:86vh;overflow-y:auto;}
.etip{max-width:410px;}
.etip-h{font-size:13px;font-weight:750;color:#fff;margin-bottom:5px;}
.etip-k{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin-left:5px;}
.etip-r{font-size:11.5px;line-height:1.55;color:#dbe4f0;font-variant-numeric:tabular-nums;}
.etip-sub{font-size:10.5px;color:#9fb4d6;padding-left:10px;}
.etip-lbl{font-size:9px;color:#8ea3c0;text-transform:uppercase;letter-spacing:.04em;margin-top:3px;display:block;}
.etip-story{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#cbd5e1;padding-left:2px;}
.etip-r .mv-pos{color:#6ee7a8;} .etip-r .mv-neg{color:#fca5a5;}
.etip-cor{padding:1px 6px;border-radius:4px;font-size:10px;}
.etip-c{font-size:10px;color:#93c5fd;margin-top:6px;border-top:1px solid rgba(255,255,255,.15);padding-top:5px;}
.etip-dim{opacity:.6;font-style:italic;}
.etip-x{color:#c4b5fd;}
.ds-parent{cursor:pointer;color:#7c3aed !important;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:5px;padding:1px 8px;}
.ds-parent:hover{background:#ede9fe;}
.ds-xref{font-size:11.5px;color:#6d28d9;background:#f5f3ff;border:1px solid #ede9fe;border-radius:6px;padding:5px 11px;margin:-6px 0 12px;}
.db-movers{margin-top:9px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.db-ml{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);}
.db-mover{font-size:11.5px;font-weight:600;background:#f1f5f9;border-radius:6px;padding:2px 9px;color:var(--ink-2);}
.db-mover.up{color:#047857;background:#ecfdf5;} .db-mover.dn{color:#b91c1c;background:#fef2f2;}

/* ---- business impact matrix (theme x dimension, depth = materiality) ---- */
.mx-wrap{overflow-x:auto;margin:10px 0 4px;background:var(--card);border:1px solid var(--line);border-radius:10px;}
.mx{border-collapse:collapse;width:100%;min-width:720px;}
.mx-th{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:9px 8px;border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;}
.mx-th.mx-first{text-align:left;padding-left:14px;}
.mx-name{font-size:12px;font-weight:600;color:var(--ink);padding:9px 8px 9px 14px;border-top:1px solid var(--line-2);cursor:pointer;max-width:230px;}
.mx-name:hover{color:var(--blue);}
.mx-cell{border-top:1px solid var(--line-2);border-left:1px solid var(--line-2);text-align:center;padding:7px 6px;cursor:pointer;transition:filter .12s;}
.mx-cell:hover{filter:brightness(.94);}
.mx-none{cursor:default;background:#fafbfd;}
.mx-none:hover{filter:none;}
.mx-high{background:#1d4ed8;} .mx-high .mx-act{color:#fff;}
.mx-med{background:#bfdbfe;} .mx-med .mx-act{color:#1e3a8a;}
.mx-low{background:#eef2f6;} .mx-low .mx-act{color:#64748b;}
.mx-act{font-size:10px;font-weight:700;letter-spacing:.02em;white-space:nowrap;}

/* materiality chips (modal header via stagechip) */
.st-high{background:#1d4ed8;color:#fff;border:1px solid #1d4ed8;}
.st-med{background:#dbeafe;color:#1e3a8a;border:1px solid #bfdbfe;}
.st-low{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;}

/* decomposition badge on evidence rows — signals "click for entities/metric/facts, not just a headline" */
.ev-atoms{display:inline-block;margin-left:7px;font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;padding:1px 6px;white-space:nowrap;vertical-align:1px;}

/* ---- Companies view (entity knowledge layer) ---- */
.co-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:10px;}
.co-card{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 13px;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:8px;transition:border-color .12s,box-shadow .12s;}
.co-card:hover{border-color:var(--blue);box-shadow:0 3px 12px rgba(15,23,42,.07);}
.co-card.has-x{border-left:3px solid #6d28d9;}
.co-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
.co-name{font-size:14px;font-weight:700;color:var(--ink);}
.co-fr{font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;padding:1px 6px;}
.co-layer{font-size:9.5px;font-weight:700;color:var(--faint);font-family:ui-monospace,monospace;margin-left:auto;}
.co-sig{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted);}
.co-nev{font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums;}
.cs-up{color:#15803d;font-weight:700;} .cs-dn{color:#b91c1c;font-weight:700;} .cs-fl{color:var(--faint);}
.co-spark{margin-left:auto;display:inline-flex;}
.co-foot{display:flex;}
.co-noearn{font-size:10px;color:var(--faint);font-style:italic;}
.cor{font-size:9.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;border-radius:5px;padding:2px 8px;}
.cor-al{background:#ecfdf5;color:#047857;} .cor-dv{background:#fef2f2;color:#b91c1c;}
.cor-el{background:#f5f3ff;color:#6d28d9;} .cor-nl{background:#eff6ff;color:#1d4ed8;} .cor-q{background:#f1f5f9;color:#64748b;}

/* dossier modal — two lenses side by side */
.ds-modal{max-width:760px;max-height:86vh;border:1px solid #e5e9f0;border-top:3px solid #cbd5e1;}   /* subtle frame + verdict-coloured cap; 86vh (< overlay 6vh*2 padding) keeps the click-modal a single scroller. hovercard inner gets overflow:visible via #dosscard .ds-card */
.ds-modal.v-tailwind{border-top-color:#10b981;}
.ds-modal.v-watch{border-top-color:#f59e0b;}
.ds-modal.v-headwind{border-top-color:#ef4444;}
.ds-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:14px;}
.ds-name{font-size:19px;font-weight:750;letter-spacing:-0.01em;}
.ds-meta{font-size:12px;color:var(--muted);font-family:ui-monospace,monospace;}
.ds-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:620px){.ds-cols{grid-template-columns:1fr;} .co-layer{margin-left:0;}}
.ds-col{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:13px 14px;}
.ds-col.ds-empty{display:flex;flex-direction:column;}
.ds-h{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin-bottom:9px;display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.ds-hn{font-size:10.5px;font-weight:500;color:var(--faint);font-family:ui-monospace,monospace;text-transform:none;letter-spacing:0;}
.ds-spark{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.ds-tally{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;}
.ds-sub{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin:10px 0 5px;}
.ds-chips{display:flex;flex-wrap:wrap;gap:5px;}
.ds-chip{font-size:11px;background:var(--card);border:1px solid var(--line);border-radius:5px;padding:2px 8px;color:var(--ink-2);}
.ds-chip b{color:var(--faint);font-variant-numeric:tabular-nums;}
.ds-log{font-size:11.5px;color:var(--ink-2);line-height:1.4;padding:5px 0;border-top:1px solid var(--line-2);}
.ds-log:first-of-type{border-top:none;}
.ds-lt{font-size:9px;font-weight:700;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border-radius:3px;padding:1px 5px;margin-right:5px;}
.ds-ld{font-family:ui-monospace,monospace;font-size:10px;color:var(--faint);margin-left:6px;}
.ds-dim{font-size:12px;color:var(--faint);font-style:italic;}
.ds-corr{font-size:12px;line-height:1.5;border-radius:7px;padding:8px 11px;margin-bottom:6px;}
.ds-corr b{font-weight:700;}
.ds-corr.cor-al{background:#ecfdf5;color:#065f46;} .ds-corr.cor-dv{background:#fef2f2;color:#991b1b;}
.ds-corr.cor-el{background:#f5f3ff;color:#5b21b6;} .ds-corr.cor-nl{background:#eff6ff;color:#1e40af;} .ds-corr.cor-q{background:#f1f5f9;color:#475569;}
.ds-matrix{display:flex;flex-direction:column;gap:4px;}
.ds-mrow{display:flex;justify-content:space-between;align-items:center;font-size:12px;}
.ds-mk{color:var(--ink-2);text-transform:capitalize;}
.ds-mv{font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;border-radius:4px;padding:1px 8px;text-transform:capitalize;}
.mv-pos{background:#ecfdf5;color:#047857;} .mv-mid{background:#fffbeb;color:#b45309;} .mv-neg{background:#fef2f2;color:#b91c1c;} .mv-na{background:#f1f5f9;color:#94a3b8;}

/* ---- components strip + component dossier ---- */
.comp-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:10px;}
.comp-card{text-align:left;background:var(--card);border:1px solid var(--line);border-left:3px solid var(--amber);border-radius:9px;padding:9px 12px;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:2px;transition:border-color .12s,box-shadow .12s;}
.comp-card:hover{border-color:var(--amber);box-shadow:0 3px 12px rgba(217,119,6,.1);}
.comp-name{font-size:13px;font-weight:700;color:var(--ink);}
.comp-n{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;}
.ds-kind{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#b45309;background:#fffbeb;border:1px solid #fcd34d;border-radius:4px;padding:1px 7px;}
.ds-note{font-weight:400;text-transform:none;letter-spacing:0;color:var(--faint);}
.ds-chip.co-link,.ds-chip.comp-link{cursor:pointer;}
.ds-chip.co-link:hover{border-color:var(--blue);color:var(--blue);}
.ds-chip.comp-link:hover{border-color:var(--amber);color:#b45309;}
.ds-chip.ds-fr{border-color:#ddd6fe;background:#faf8ff;}
.ds-lc{font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:#7c3aed;margin:0 2px;}
.ds-edges{display:flex;flex-direction:column;gap:3px;}
.ds-edge{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:4px 8px;background:var(--card);border:1px solid var(--line-2);border-radius:6px;}
.ds-edge[data-comp]{cursor:pointer;} .ds-edge[data-comp]:hover{border-color:var(--amber);}
.ds-el{color:var(--ink-2);} .ds-en{font-family:ui-monospace,monospace;font-size:11px;font-weight:700;color:var(--faint);}
.ds-evlist{display:flex;flex-direction:column;}
.ds-evlist .ev-row{border-top:1px solid var(--line-2);padding:6px 0;}
.ds-evlist .ev-row:first-child{border-top:none;}

/* ---- answer-first dossier (verdict + freshness → read → action → line card → watch → evidence) ---- */
.ds-vpill{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-radius:5px;padding:2px 8px;white-space:nowrap;}
.v-tailwind.ds-vpill{background:#ecfdf5;color:#047857;} .v-headwind.ds-vpill{background:#fef2f2;color:#b91c1c;} .v-watch.ds-vpill{background:#fffbeb;color:#b45309;}
.fresh{font-size:10px;font-weight:700;font-family:ui-monospace,monospace;border-radius:5px;padding:2px 7px;white-space:nowrap;}
.fresh.f-ok{background:#ecfdf5;color:#047857;} .fresh.f-mid{background:#f1f5f9;color:#475569;} .fresh.f-old{background:#fffbeb;color:#b45309;}
.fresh.f-lag{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-weight:600;}
.ds-meta2{font-size:11px;color:var(--muted);font-family:ui-monospace,monospace;display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:-6px 0 12px;}
.ds-read{font-size:14px;line-height:1.55;color:var(--ink);margin-bottom:12px;}
.ds-act{font-size:13px;line-height:1.5;color:#1e3a5f;background:#eff6ff;border-left:3px solid var(--blue);border-radius:0 8px 8px 0;padding:9px 13px;margin-bottom:14px;display:flex;gap:9px;align-items:baseline;}
.ds-actk{font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--blue);white-space:nowrap;flex:none;}
.ds-watch{font-size:12.5px;line-height:1.5;color:#78350f;background:#fffbeb;border-radius:8px;padding:8px 12px;margin:14px 0;display:flex;gap:9px;align-items:baseline;}
.ds-wk{font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#b45309;white-space:nowrap;flex:none;}
.ds-note.ds-gap{color:#b45309;font-weight:600;}
.ds-read b{font-weight:700;} .ds-read .mv-pos{color:#047857;} .ds-read .mv-neg{color:#b91c1c;} .ds-read .mv-mid{color:#b45309;}
.ds-quiet{color:var(--faint);font-style:italic;font-size:12.5px;}
/* knowledge-graph exposure path in the component dossier */
.kge{margin:2px 0 4px;}
.kge-chain{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:5px;}
.kge-n{font-weight:600;font-size:11.5px;border-radius:6px;padding:2px 9px;white-space:nowrap;}
.kge-d{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;}
.kge-c{background:#f1f5f9;color:var(--ink);}
.kge-s{background:#eff6ff;color:#1d4ed8;font-weight:700;}
.kge-a{color:var(--faint);font-style:normal;font-size:12px;}
.kge-r{font-size:12px;line-height:1.5;color:var(--ink-2);}
.kge-trace{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:600;color:var(--blue);text-decoration:none;}
.kge-trace:hover{text-decoration:underline;}
/* super-user feedback (Phase 0) — floating, gated by a ?u= link */
.fbw{position:fixed;right:18px;bottom:18px;z-index:600;display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.fb-open{background:var(--blue);color:#fff;border:none;border-radius:20px;padding:8px 16px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;box-shadow:0 6px 20px rgba(37,99,235,.32);}
.fb-open:hover{background:#1d4ed8;}
.fb-panel{width:300px;max-width:88vw;background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:12px;padding:13px 14px;box-shadow:0 18px 50px rgba(15,23,42,.22);}
.fb-h{font-size:12px;font-weight:700;color:var(--ink-2);margin-bottom:9px;display:flex;justify-content:space-between;align-items:center;gap:8px;}
.fb-who{font-size:10px;font-weight:600;color:var(--blue);background:#eff6ff;border-radius:5px;padding:1px 7px;}
.fb-stances{display:flex;gap:6px;margin-bottom:9px;}
.fb-st{flex:1;font:inherit;font-size:12px;background:var(--card);border:1px solid var(--line);border-radius:7px;padding:5px 0;cursor:pointer;color:var(--ink-2);}
.fb-st:hover{border-color:var(--blue);}
.fb-st.on{background:#eff6ff;border-color:var(--blue);color:var(--blue);font-weight:700;}
.fb-note{width:100%;box-sizing:border-box;font:inherit;font-size:12.5px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;resize:vertical;}
.fb-actions{display:flex;justify-content:space-between;align-items:center;margin-top:9px;gap:8px;}
.fb-msg{font-size:11px;color:var(--muted);}
.fb-send{background:var(--blue);color:#fff;border:none;border-radius:7px;padding:6px 15px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;}
.fb-send:hover{background:#1d4ed8;}
.ds-foot{font-size:11.5px;color:var(--muted);line-height:1.6;padding-top:10px;margin-top:12px;border-top:1px solid var(--line-2);display:flex;align-items:center;flex-wrap:wrap;gap:7px;}
.ds-fl{font-weight:700;color:var(--ink-2);}
.ds-foot.ds-also{border-top:none;padding-top:2px;margin-top:4px;}
.ds-alsoc{cursor:pointer;color:var(--ink-2);} .ds-alsoc:hover{color:var(--blue);text-decoration:underline;}
.ds-more{margin-top:12px;font-size:12px;}
.ds-more>summary{cursor:pointer;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);list-style:none;padding:4px 0;}
.ds-more>summary::-webkit-details-marker{display:none;}
.ds-more>summary::before{content:"▸ ";color:var(--faint);} .ds-more[open]>summary::before{content:"▾ ";}
.nm-earn{color:#b45309;}

/* ---- market state strip (the register) ---- */
.ms-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;}
.ms-chip{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:12px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 11px;cursor:default;transition:border-color .12s;}
.ms-chip:hover{border-color:var(--blue);}
.ms-l{font-weight:700;color:var(--ink);white-space:nowrap;}
.ms-k{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--faint);}
.ms-dir{font-family:ui-monospace,monospace;font-size:11px;font-weight:700;white-space:nowrap;}
.ms-dir.u{color:#15803d;} .ms-dir.d{color:#b91c1c;} .ms-dir.n{color:#64748b;}
.ms-age{font-family:ui-monospace,monospace;font-size:9px;font-weight:700;border-radius:4px;padding:1px 6px;white-space:nowrap;}
.ms-f{background:#ecfdf5;color:#047857;} .ms-a{background:#fffbeb;color:#b45309;}
.ms-s{background:#f1f5f9;color:#94a3b8;} .ms-q{background:#eef2ff;color:#4f46e5;}
/* state tooltip body (rendered into the shared #ctip) */
.mst{max-width:300px;}
.mst-h{font-weight:700;font-size:12px;margin-bottom:5px;}
.mst-r{font-size:11.5px;color:var(--ink-2);padding:2.5px 0;border-top:1px solid var(--line-2);line-height:1.45;}
.mst-r:first-of-type{border-top:none;}
.mst-d{font-family:ui-monospace,monospace;font-size:10px;color:var(--faint);}

/* ---- Morning Brief (v2 leader page) ---- */
.mb-h2{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--ink);margin:0 0 8px;padding-bottom:5px;border-bottom:2px solid var(--line);}
.mb-h2 .dim{font-weight:400;font-size:11.5px;color:var(--faint);letter-spacing:0;}
.mb-lead{margin-top:6px;}
.wc{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;}
.wc-row{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:9px;transition:border-color .12s,box-shadow .12s;}
.wc-row:hover{border-color:var(--blue);box-shadow:0 2px 10px rgba(15,23,42,.06);}
.wc-main{display:flex;gap:11px;align-items:flex-start;text-align:left;font:inherit;background:none;border:0;padding:11px 14px 9px;cursor:pointer;width:100%;}
.wc-head{display:flex;align-items:baseline;gap:8px;}
.wc-tag{font-family:ui-monospace,monospace;font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:5px;padding:2px 8px;white-space:nowrap;flex:none;position:relative;top:-1px;}
.t-esc{background:#fef2f2;color:#b91c1c;} .t-risk{background:#fffbeb;color:#b45309;} .t-dir{background:#ecfdf5;color:#047857;} .t-new{background:#eff6ff;color:#1d4ed8;} .t-upd{background:#f1f5f9;color:#64748b;}
.wc-b{min-width:0;display:flex;flex-direction:column;gap:4px;flex:1;}
.wc-t{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.35;}
.wc-so{font-size:12px;color:var(--muted);line-height:1.45;}
.wc-sowhat{font-size:11.5px;color:#334155;line-height:1.45;background:#f6f9ff;border-left:2px solid var(--blue);padding:4px 9px;border-radius:0 5px 5px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.wc-read{display:block;width:calc(100% - 28px);margin:0 14px 8px 47px;text-align:left;font:inherit;font-size:11.5px;color:#334155;line-height:1.45;background:#f6f9ff;border:1px solid #e0eaff;border-left:2px solid var(--blue);border-radius:0 6px 6px 0;padding:6px 10px;cursor:pointer;transition:background .12s,border-color .12s;}
.wc-read:hover{background:#eaf1ff;border-color:var(--blue);}
.wc-trace{display:inline-block;margin-left:6px;color:var(--blue);font-weight:700;font-size:10.5px;white-space:nowrap;}
.wc-sk{color:var(--blue);font-weight:800;font-size:9.5px;text-transform:uppercase;letter-spacing:.03em;margin-right:4px;}
/* theme-first highlight tile — one named storyline per row */
.wc-thead{display:flex;align-items:center;gap:9px;padding:11px 14px 6px;flex-wrap:wrap;}
.wc-dir{font-size:10.5px;font-weight:800;white-space:nowrap;flex:none;}
.wc-dir.dir-tailwind{color:#047857;} .wc-dir.dir-headwind{color:#b91c1c;} .wc-dir.dir-watch{color:#b45309;}
.wc-theme{font-size:14px;font-weight:700;color:var(--ink);line-height:1.35;flex:1;min-width:220px;}
.wc-tread{font-size:12px;color:#334155;line-height:1.5;padding:0 14px 9px 46px;}
.wc-evs{display:flex;flex-direction:column;gap:5px;padding:0 14px 9px 46px;}
.wc-ev{display:flex;flex-direction:column;gap:1px;text-align:left;font:inherit;background:none;border:0;border-left:2px solid var(--line-2);padding:1px 0 1px 9px;cursor:pointer;transition:border-color .12s;}
.wc-ev:hover{border-color:var(--blue);}
.wc-ev-t{font-size:12px;color:var(--ink);line-height:1.35;}
.wc-ev:hover .wc-ev-t{color:var(--blue);}
.wc-ev-s{font-size:10.5px;color:var(--faint);}
.wc-tfoot{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0 14px 11px 46px;font-size:11px;color:var(--faint);}
.wc-tfoot b{color:var(--muted);font-weight:700;}
.wc-conf{color:#047857;font-weight:700;}
.wc-read{display:inline-block;width:auto;margin:0;padding:2px 9px;background:#eff6ff;border:1px solid #dbeafe;border-radius:6px;color:var(--blue);font:inherit;font-size:10.5px;font-weight:700;line-height:1.5;cursor:pointer;white-space:nowrap;}
.wc-read:hover{background:#dbeafe;border-color:#93c5fd;}
.wc-chips{padding-left:46px;}
.ev-who{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px;}
.ev-who .co-link{cursor:pointer;}
.ev-wn{margin-left:5px;color:var(--blue);font-weight:800;font-size:10px;}
/* one-line verdict — leads the hover + dossier (insight, not counts) */
.etip-verdict{font-size:12px;line-height:1.42;padding:5px 8px;border-radius:6px;margin:4px 0 5px;}
.etip-verdict b{margin-right:4px;}
/* verdict tint is SCOPED to the little hover tooltip only — must never wash the whole dossier card */
.etip-verdict.v-tailwind{background:#ecfdf5;color:#065f46;} .etip-verdict.v-tailwind b{color:#047857;}
.etip-verdict.v-headwind{background:#fef2f2;color:#7f1d1d;} .etip-verdict.v-headwind b{color:#b91c1c;}
.etip-verdict.v-watch{background:#fffbeb;color:#78350f;} .etip-verdict.v-watch b{color:#b45309;}
.mf-src{font-size:11px;font-weight:600;color:var(--blue);text-decoration:none;margin-left:6px;padding:1px 6px;background:#eff6ff;border:1px solid #dbeafe;border-radius:5px;white-space:nowrap;}
.mf-src:hover{background:#dbeafe;}
.modal-srcs{display:flex;flex-direction:column;gap:5px;margin-bottom:8px;}
.msrc{display:flex;gap:9px;align-items:baseline;text-decoration:none;padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:var(--card);transition:border-color .12s,background .12s;}
.msrc:hover{border-color:var(--blue);background:#f6f9ff;}
.msrc-s{flex:none;font-size:10.5px;font-weight:700;color:var(--blue);background:#eff6ff;border:1px solid #dbeafe;border-radius:5px;padding:1px 7px;white-space:nowrap;}
.msrc-t{font-size:12px;color:var(--ink);line-height:1.4;}
.fct-src{font-size:10px;font-weight:600;color:var(--blue);text-decoration:none;white-space:nowrap;opacity:.75;}
.fct-src:hover{opacity:1;text-decoration:underline;}
.wc-facts{display:flex;flex-direction:column;gap:2px;margin-top:1px;}
.wc-fact{position:relative;padding-left:13px;font-size:11.5px;color:var(--muted);line-height:1.42;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.wc-fact::before{content:"▪";position:absolute;left:2px;color:#93a3b4;font-size:9px;top:1px;}
.wc-meta{font-size:11px;color:var(--faint);display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;}
.wc-meta b{color:var(--muted);font-weight:700;}
.wc-mv{font-weight:800;}
.wc-mv.up{color:#047857;} .wc-mv.down{color:#b91c1c;}
.wc-dot{font-style:normal;color:var(--faint);opacity:.6;}
.wc-chips{padding:0 14px 11px 47px;}
.wc-chips .ent-tags{margin-top:0;padding-top:0;border-top:0;gap:5px;}
.wc-chips .ent-tags::before{display:none;}
.wc-chips .ent-chip{font-size:11px;padding:2px 8px;}
#ctip{z-index:400;}
.lanes{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:8px;}
@media(max-width:680px){.lanes{grid-template-columns:1fr;}}
.lane{padding:13px 16px;}
.lane+.lane{border-left:1px solid var(--line-2);}
@media(max-width:680px){.lane+.lane{border-left:none;border-top:1px solid var(--line-2);}}
.mb-h{font-family:ui-monospace,monospace;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;}
.mb-h .dim{font-weight:400;color:var(--faint);letter-spacing:0;}
.ln-i{font-size:12.5px;color:var(--ink-2);padding:5px 0;line-height:1.5;border-top:1px solid var(--line-2);}
.ln-i:first-of-type{border-top:none;}
.ln-i b{color:var(--ink);}
.ln-age{font-family:ui-monospace,monospace;font-size:10px;color:var(--faint);}
.ln-dim{color:var(--faint);font-style:italic;}
.watch{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px 16px;}
.wl-i{font-size:12.5px;color:var(--muted);padding:4px 0;line-height:1.5;}
.wl-i b{color:var(--warn,#b45309);font-weight:700;}
.wl-div{color:#b91c1c !important;}

/* ---- end-market (demand-side) dossier + strip ---- */
.em-card{border-left-color:#0891b2;}
.em-card:hover{border-color:#0891b2;box-shadow:0 3px 12px rgba(8,145,178,.1);}
.ds-kmkt{color:#0e7490;background:#ecfeff;border-color:#a5f0fc;}

/* ---- intake / freshness strip (news + earnings digested, with honest cadence) ---- */
.fr-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 16px;}
@media(max-width:620px){.fr-strip{grid-template-columns:1fr;}}
.fr-seg{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 15px 12px;cursor:default;position:relative;overflow:hidden;}
.fr-seg::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;}
.fr-seg.fr-n::before{background:var(--blue);} .fr-seg.fr-e::before{background:var(--amber);}
.fr-kick{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);}
.fr-dot{width:7px;height:7px;border-radius:50%;display:inline-block;}
.fr-dot.ok{background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.14);}
.fr-dot.per{background:var(--amber);box-shadow:0 0 0 3px rgba(217,119,6,.14);}
.fr-dot.stale{background:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.14);}
.fr-big{display:block;font-size:13.5px;color:var(--ink-2);margin-top:5px;font-variant-numeric:tabular-nums;}
.fr-big b{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-right:4px;}
.fr-sub{display:block;font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.45;font-variant-numeric:tabular-nums;}
.fr-sub b{color:var(--ink-2);font-weight:700;}
.fr-sub b.fr-warn{color:#b45309;}
.fr-seg:hover{border-color:var(--line-2);}

/* dossier: quant-read extras */
.ds-basis{display:block;font-size:10px;color:var(--faint);font-style:italic;margin-top:3px;}
.ds-qn{font-style:normal;font-weight:700;font-size:9px;text-transform:uppercase;letter-spacing:.02em;opacity:.9;margin-left:3px;}
.dm-nm{color:var(--ink-2);}
.ds-chip b.mv-pos{color:#047857;} .ds-chip b.mv-neg{color:#b91c1c;} .ds-chip b.mv-mid{color:#b45309;} .ds-chip b.mv-na{color:var(--faint);}

/* corroboration confidence pip (evidence-weighted, honest) */
.cpip{display:inline-block;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-radius:3px;padding:1px 5px;margin-left:5px;vertical-align:middle;}
.cp-high{background:#dcfce7;color:#166534;} .cp-medium{background:#fef9c3;color:#854d0e;} .cp-low{background:#f1f5f9;color:#64748b;}

/* ---- three-intent IA (2026-07-04 redesign): tab accents · legend · sysline · trust · archive ---- */
.view-tabs.vt-today .view-tab.on{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe;}
.view-tabs.vt-state .view-tab.on{background:#ecfdf5;color:#047857;border-color:#a7f3d0;}
.view-tabs.vt-explore .view-tab.on{background:#f1f5f9;color:#334155;border-color:#cbd5e1;}
.wc-num{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#1d4ed8;color:#fff;font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:2px;}
.sysline{font-size:11px;color:var(--faint);margin-top:22px;padding-top:10px;border-top:1px solid var(--line-2);font-variant-numeric:tabular-nums;}
.sysline b{color:var(--muted);font-weight:700;}
.lgd-link{font:inherit;font-size:11px;color:var(--blue);background:none;border:none;cursor:pointer;padding:0;text-decoration:underline;}
.legend{position:relative;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:11px;padding:12px 38px 12px 16px;margin:4px 0 14px;}
.lgd-h{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px;}
.lgd-rows{display:flex;flex-direction:column;gap:4px;}
.lgd-r{font-size:12px;color:var(--muted);line-height:1.55;}
.lgd-r i{font-style:normal;font-weight:700;color:var(--ink-2);}
.lgd-x{position:absolute;top:8px;right:10px;background:none;border:none;font-size:13px;color:var(--faint);cursor:pointer;}
.trust{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.tr-row{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 14px;}
.tr-k{flex:0 0 150px;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding-top:3px;}
.tr-k.tr-ok{color:#166534;} .tr-k.tr-one{color:#854d0e;}
@media(max-width:620px){.tr-row{flex-direction:column;gap:6px;}.tr-k{flex:none;}}
.arch-toggle{display:block;width:100%;text-align:left;font:inherit;font-size:13px;font-weight:700;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px 15px;cursor:pointer;margin-top:26px;}
.arch-toggle:hover{border-color:var(--blue);}
.arch-toggle .dim{font-weight:400;font-size:11.5px;color:var(--faint);}
.arch{border-left:2px solid var(--line);padding-left:14px;margin-top:10px;}

/* forward view (axis 2) — next-quarter consensus of the line card */
.fm{display:inline-block;font-size:10.5px;font-weight:800;border-radius:5px;padding:2px 8px;text-transform:capitalize;white-space:nowrap;}
.fm.fm-up{background:#ecfdf5;color:#047857;} .fm.fm-dn{background:#fef2f2;color:#b91c1c;} .fm.fm-fl{background:#f1f5f9;color:#475569;}
.fw-lc{background:var(--card);border:1px solid var(--line);border-left:3px solid #7c3aed;border-radius:0 12px 12px 0;padding:13px 18px;margin:4px 0 12px;}
.fw-lc-k{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#7c3aed;margin-bottom:8px;}
.fw-lc-k .dim{font-weight:400;letter-spacing:0;text-transform:none;color:var(--faint);}
.fw-lc-body{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.fw-big{font-size:14px;color:var(--ink-2);font-variant-numeric:tabular-nums;}
.fw-big b{font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-right:4px;}
.fw-split{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;}
.fw-board{display:flex;flex-direction:column;gap:4px;margin-top:8px;}
.fw-row{display:grid;grid-template-columns:1.4fr auto 62px auto auto 1.6fr;align-items:center;gap:10px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer;font:inherit;transition:border-color .12s,box-shadow .12s;}
.fw-row:hover{border-color:#7c3aed;box-shadow:0 3px 12px rgba(124,58,237,.1);}
.fw-lbl{font-size:13px;font-weight:700;color:var(--ink);}
.fw-kind{font-size:9.5px;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.03em;margin-left:7px;}
.fw-yoy{font-family:ui-monospace,monospace;font-size:13px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums;}
.fw-yoy.mv-pos{color:#047857;} .fw-yoy.mv-neg{color:#b91c1c;} .fw-yoy.mv-mid{color:#b45309;} .fw-yoy.mv-na{color:var(--faint);}
.fw-ad{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;}
.fw-dr{font-size:11px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media(max-width:640px){.fw-row{grid-template-columns:1fr auto 60px;}.fw-ad,.fw-dr,.fw-row .cpip{display:none;}}

/* live-theme lifecycle marker in the browse tree — a building theme is worth more attention than a
   fading one, and a count alone cannot say which is which */
.rt-leaf .lf-up, .tr-leaf .lf-up { color: #15803d; font-style: normal; font-size: 9px; margin-right: 4px; }
.rt-leaf .lf-dn, .tr-leaf .lf-dn { color: #b45309; font-style: normal; font-size: 9px; margin-right: 4px; }
