/* CIN research tools — CanIDeal family refinement.
   Applied after the original page styles. Data, filters, chart canvases,
   display states, and numeric meanings remain owned by the existing tools. */

.cin-fresh-report { margin: 0 0 35px; padding: clamp(22px,3vw,36px); border: 1px solid #58d2c74d; border-radius: 22px; background: linear-gradient(140deg,#173647b8,#052534a8); }
.cin-fresh-report h2 { font-size: clamp(26px,3vw,38px); line-height: 1.2; color:#f5fcff; margin:12px 0 20px; letter-spacing:-.035em; }
.cin-research-summary {font-size:18px;line-height:1.75;color:#ccdde7;max-width:88ch;}
.cin-evidence-clock {display:flex;flex-wrap:wrap;gap:14px 30px;padding:20px 0;margin:20px 0;border-block:1px solid #82b3c533;color:#abc5d3;font-size:14px;}
.cin-evidence-clock strong {display:block;color:#5de1d8;font-size:17px;margin-top:5px;}
.cin-evidence-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0;}
.cin-evidence-grid .cin-source-card {margin:0;min-width:0;padding:24px;}
.cin-evidence-grid :is(p,li),.cin-evidence-footnote,.cin-evidence-details {line-height:1.75;font-size:15px;color:#bed1dc;}
.cin-evidence-grid ul {padding-left:20px;}
.cin-evidence-details {padding:20px 0;}
.cin-evidence-details summary {cursor:pointer;color:#65e0dc;font-size:17px;font-weight:650;}
.cin-evidence-table {overflow:auto;margin-top:18px;}
.cin-evidence-table table {width:100%;border-collapse:collapse;white-space:nowrap;}
.cin-evidence-table :is(th,td) {padding:12px 16px;text-align:left;border-bottom:1px solid #91b5ca2b;}
.cin-evidence-footnote a,.cin-filing-list a {color:#66e3dc;}
.cin-filing-list {padding-left:18px;line-height:1.8;color:#c4dbe8;}
.cin-filing-list time {color:#a2bdcb;margin-right:12px;}
.cin-source-observations {list-style:none;padding:0!important;margin:18px 0!important;}
.cin-source-observations li {padding:12px 0;border-bottom:1px solid #82b3c526;line-height:1.5;}
.cin-source-observations strong,.cin-source-observations span {display:block;overflow-wrap:anywhere;}
.cin-source-observations strong {font-size:15px;color:#e5f1f7;}
.cin-source-observations span {font-size:14px;color:#a9c8d5;margin-top:6px;}
.cin-source-limitations {padding-left:17px!important;font-size:13px!important;color:#a4bbc9;line-height:1.7;}
.cin-evidence-section-title {margin:60px 0 24px;font-size:30px;}
#cin-research-directory [hidden] {display:none!important;}
@media(max-width:700px){.cin-evidence-grid{grid-template-columns:1fr;}.cin-fresh-report{padding:20px 16px;}.cin-evidence-clock{gap:16px;}.cin-research-summary{font-size:16px;}}

/* The reporting date stays beside the evidence, rather than behind a disclosure. */
.cin-research-heading {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.cin-research-heading .eyebrow {margin:0;}
.cin-research-status {display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border:1px solid #8bbae348;border-radius:999px;background:#91baff0d;color:#c2d9f7;font-size:12px;line-height:1.45;font-weight:650;}
.cin-research-status[data-evidence-status="historical"],
.cin-research-source[data-source-status="held"] .cin-research-status,
.cin-research-source[data-source-status="unavailable"] .cin-research-status {color:#efd8a5;border-color:#d9b86e5c;background:#cfa45b0c;}
.cin-research-clock-note {max-width:95ch;color:#adc6d6;font-size:14px;line-height:1.75;}
.cin-fresh-report > .cin-research-clock-note {margin-top:-7px;}
.cin-research-retained {padding:14px 18px;border:1px solid #e4bd694d;border-radius:12px;background:#b18b2f0c;color:#efd9ab!important;line-height:1.65;font-size:14px;}
.cin-research-observations,.cin-research-comparisons,.cin-research-disclosures {margin-top:32px;}
.cin-fresh-report :is(.cin-research-observations,.cin-research-comparisons,.cin-research-disclosures) > h3 {font-size:23px;color:#f1f8fd;letter-spacing:-.025em;margin:0 0 12px;}
.cin-research-observations .cin-evidence-table {border:1px solid #8bbac635;border-radius:15px;margin-top:12px;}
.cin-research-observations table {font-size:15px;color:#d7e6ef;background:#041e2c52;}
.cin-research-observations caption {padding:15px 18px;text-align:left;white-space:normal;color:#a9c5d6;font-size:13px;line-height:1.7;background:#a4c8e209;}
.cin-research-observations thead {color:#d0e1f0;background:#b8d9f008;font-size:13px;}
.cin-research-observations th {font-weight:600;}
.cin-research-observations tbody tr:last-child :is(th,td) {border-bottom:0;}
.cin-research-observations tbody tr:hover {background:#6edbde08;}
.cin-research-value {font-size:17px;color:#f4faff;font-weight:650;font-variant-numeric:tabular-nums;}
.cin-research-cell-note {display:block;margin-top:5px;font-size:12px;line-height:1.6;color:#a9c1d0;font-weight:400;}
.cin-research-comparison h4 {font-size:23px;letter-spacing:-.025em;line-height:1.35;color:#edf6ff;margin:13px 0 20px;}
.cin-research-comparison h4 span {color:#aee4e1;white-space:nowrap;}
.cin-research-comparison dl {display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0;}
.cin-research-comparison dt {font-size:12px;line-height:1.6;color:#a3bdce;}
.cin-research-comparison dd {font-size:16px;font-weight:600;line-height:1.6;color:#dae8f2;margin:5px 0 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.cin-research-empty {padding:24px;border:1px solid #91b4d33d;border-radius:16px;background:linear-gradient(130deg,#1834469c,#092534a8);margin:24px 0;color:#bfd3e0;}
.cin-research-empty[hidden] {display:none!important;}
.cin-research-empty :is(h2,h3) {font-size:22px!important;color:#edf6ff;margin:0 0 10px;}
.cin-research-empty p {margin:0;line-height:1.75;}
.cin-research-directory-links {display:flex;flex-wrap:wrap;gap:12px 30px;margin:24px 0 32px;}
.cin-research-directory-links a,.cin-research-open {color:#78e2df;font-size:15px;font-weight:600;line-height:1.6;text-decoration:none;}
.cin-research-filters {display:flex;flex-wrap:wrap;align-items:flex-end;gap:18px;padding:24px;border:1px solid #8eacc73d;border-radius:18px;background:linear-gradient(125deg,#19394d8c,#0827359c);margin-top:32px;}
.cin-research-filters > div:first-child {flex:2 1 280px;}
.cin-research-filters > div:nth-child(2) {flex:1 1 190px;}
.cin-research-filters label {display:block;font-size:14px;color:#d1e1ed;font-weight:600;margin-bottom:10px;}
.cin-research-filters :is(input,select,button) {box-sizing:border-box;min-height:48px;border:1px solid #8eacc74d;border-radius:10px;color:#eaf5fd;background:#082332;font:inherit;font-size:16px;padding:12px 14px;}
.cin-research-filters :is(input,select) {width:100%;}
.cin-research-filters input::placeholder {color:#9bb5c7;}
.cin-research-filters select {color-scheme:dark;}
.cin-research-filters button {cursor:pointer;background:#92bee112;font-size:14px;font-weight:650;}
.cin-research-result-count {color:#aec7d7;font-size:14px;line-height:1.7;margin:20px 0;min-height:24px;}
.cin-research-directory-card {display:flex;flex-direction:column;gap:0;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.cin-research-directory-card .cin-research-ticker {display:block;color:#a2c3f3;font-size:14px;font-weight:650;margin-top:20px;letter-spacing:.04em;}
.cin-research-directory-card h2 {font-size:23px!important;line-height:1.3;letter-spacing:-.025em;margin:8px 0 12px;}
.cin-research-directory-card h2 a {color:#f0f7fe;text-decoration:none;}
.cin-research-directory-card p {font-size:14px!important;line-height:1.7;color:#abc4d5;margin:0 0 24px;}
.cin-research-directory-card .cin-research-open {margin-top:auto;padding-top:17px;border-top:1px solid #85abc22c;}
.cin-research-source-count {font-size:13px!important;color:#b5cdde!important;line-height:1.7;}
.cin-research-source h3 {font-size:24px!important;line-height:1.35;letter-spacing:-.025em;margin:20px 0 12px;color:#f0f7fd;}
.cin-research-source-dates {display:flex;gap:14px 26px;flex-wrap:wrap;margin:18px 0 6px;padding:15px 0;border-block:1px solid #80b2c32b;}
.cin-research-source-dates dt {font-size:11px;line-height:1.6;text-transform:uppercase;letter-spacing:.05em;color:#93b4c8;}
.cin-research-source-dates dd {font-size:13px;line-height:1.7;margin:4px 0 0;color:#c8dce8;font-variant-numeric:tabular-nums;}
.cin-source-observations .cin-research-record-kind {font-size:10px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:#95b9e8;margin:0 0 7px;}
.cin-research-no-records {padding:16px 0;color:#c1cddd!important;font-size:15px!important;line-height:1.7;}
.cin-research-directory-card:is(:hover,:focus-within),.cin-research-source:focus-within {border-color:#63d7d58c;box-shadow:inset 0 1px 0 #def5ff0d,0 0 30px -15px #44d6d74a;}
.cin-research-directory-card:is(:hover,:focus-within) h2 a,.cin-research-directory-links a:hover,.cin-research-open:hover {color:#a2fff4;text-shadow:0 0 18px #58e9dc35;}
.cin-research-filters :is(input,select,button):focus-visible,
.cin-research-directory a:focus-visible,.cin-fresh-report :is(a,.cin-evidence-table):focus-visible,
.cin-research-evidence a:focus-visible {outline:2px solid #79e9dd;outline-offset:4px;}
@media(max-width:700px){
 .cin-research-heading {align-items:flex-start;}
 .cin-research-status {font-size:11px;}
 .cin-research-filters {padding:18px;gap:16px;}
 .cin-research-filters button {width:100%;}
 .cin-research-directory-links {flex-direction:column;gap:16px;}
 .cin-research-comparison dl {gap:10px;}
 .cin-research-comparison dd {font-size:14px;}
 .cin-research-observations .cin-evidence-table {margin-inline:-3px;}
}
@media(prefers-reduced-motion:reduce){.cin-research-directory-card{transition:none;}}

html.cin-family {
  --cin-research-green: #96ddad;
  --cin-research-red: #ffa3af;
  --cin-research-blue: #9abfff;
  --cin-research-violet: #b9aaff;
  --cin-research-gold: #e9ce89;
  --cin-research-shadow: inset 0 1px 0 #d7eeff0b, 0 18px 45px -34px #000b;
}

/* A data workspace stays dense enough to compare, with room to read. */
html.cin-family :is(.tpl-data-region, .company-content, .v2-charts-layout) {
  min-width: 0;
}
html.cin-family :is(.tpl-data-region, .company-content) .content-section {
  padding-top: 12px;
}
html.cin-family :is(.tpl-data-region, .company-content) .section-container {
  min-width: 0;
}
html.cin-family :is(.section-heading, .data-panel-title, .fin-title-main,
  .opp-category-title, .mc-regime-value, .cmhi-method h3) {
  color: var(--cin-text, #f3f8fc);
  letter-spacing: -.025em;
}
html.cin-family :is(.section-header, .cf-timeline-header) {
  gap: 20px;
  margin-bottom: 22px;
}
html.cin-family :is(.page-header-section, .company-hero) {
  background: transparent;
  border-color: var(--cin-line, #8eb4cd29);
}
html.cin-family .page-header-section .section-heading {
  font-size: clamp(32px, 3.4vw, 48px) !important;
  line-height: 1.12;
  font-weight: 700;
}
html.cin-family :is(.cf-page-intro, .ft-page-intro, .opp-page-intro) {
  max-width: 70ch;
  color: var(--cin-muted, #abc1cf);
  font-size: 16px;
  line-height: 1.75;
  margin-top: 15px;
}
html.cin-family :is(.page-timestamp, .fin-title-sub, .fin-sources,
  #page-last-updated, #live-data-timestamp, #deals-count, #insider-count) {
  color: var(--cin-muted, #abc1cf) !important;
  font-size: 12px !important;
  line-height: 1.65;
  letter-spacing: .01em;
}

/* Subtle depth is structural; the common family script adds cursor light. */
html.cin-family :is(.fin-toolbar, .fin-table-wrap, .analyst-table-wrap,
  .deals-table-wrap, .ft-table-wrap, .global-table-wrap, .data-panel,
  .summary-tile, .market-card, .stat-card, .deals-stat-card,
  .insider-stat-card, .cf-kpi-card, .ft-stat-card, .opp-kpi-card,
  .cmhi-comp-card, .cmhi-method, .mc-section, .mc-snap-card,
  .mc-regime-line, .opp-rank-item, .opp-methodology, .v2-chart-stage,
  .v2-ticker-browser, .v2-side-panel, .region-card) {
  border: 1px solid var(--cin-line, #8eb4cd29);
  border-radius: 17px;
  background: linear-gradient(135deg, #163246a6, #092735b8);
  box-shadow: var(--cin-research-shadow);
  transition: border-color .25s, box-shadow .25s, background-color .25s;
}
html.cin-family :is(.summary-tile, .market-card, .stat-card,
  .deals-stat-card, .insider-stat-card, .cf-kpi-card, .ft-stat-card,
  .opp-kpi-card, .cmhi-comp-card, .mc-snap-card, .opp-rank-item,
  .region-card):is(:hover, :focus-within) {
  border-color: #65cbd16b;
  box-shadow: inset 0 1px 0 #d7eeff13, 0 12px 36px -25px #00e5dd42;
  transform: none;
}
html.cin-family :is(.deals-stat-card, .insider-stat-card,
  .cf-kpi-card, .ft-stat-card, .opp-kpi-card, .cmhi-comp-card,
  .stat-card, .market-card, .summary-tile) {
  padding: 22px;
}
html.cin-family :is(.deals-stat-card, .cf-kpi-card,
  .opp-kpi-card):nth-child(4n + 1) { border-top-color: #00e5dd6b; }
html.cin-family :is(.deals-stat-card, .cf-kpi-card,
  .opp-kpi-card):nth-child(4n + 2) { border-top-color: #83b0ff6b; }
html.cin-family :is(.deals-stat-card, .cf-kpi-card,
  .opp-kpi-card):nth-child(4n + 3) { border-top-color: #b6a2ff6b; }
html.cin-family :is(.deals-stat-card, .cf-kpi-card,
  .opp-kpi-card):nth-child(4n + 4) { border-top-color: #96ddad6b; }

/* Tables retain every column. Compact screens scroll the table, not the page. */
html.cin-family :is(.fin-table-wrap, .analyst-table-wrap, .deals-table-wrap,
  .ft-table-wrap, .global-table-wrap, .v2-ticker-table-wrap) {
  overflow-x: auto;
  max-width: 100%;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scrollbar-color: #397080 #082535;
  -webkit-overflow-scrolling: touch;
}
html.cin-family :is(.fin-table, .analyst-table, .deals-table, .ft-table,
  .global-table, .data-table, .mc-corr-table) {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  color: var(--cin-text, #f3f8fc);
  font-variant-numeric: tabular-nums;
  line-height: 1.5;
}
html.cin-family :is(.fin-table, .analyst-table, .deals-table, .ft-table,
  .global-table, .data-table, .mc-corr-table) thead {
  background: #0b2b3c;
}
html.cin-family :is(.fin-table, .analyst-table, .deals-table, .ft-table,
  .global-table, .data-table, .mc-corr-table) th {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 600;
  color: #aac7d8;
  background: #0b2b3c;
  letter-spacing: .055em;
  padding: 16px;
  border-color: var(--cin-line, #8eb4cd29);
  white-space: nowrap;
}
html.cin-family :is(.fin-table, .analyst-table, .deals-table, .ft-table,
  .global-table, .data-table, .mc-corr-table) td {
  padding: 16px;
  border-color: #83b0c51c;
  font-size: 14px;
}
html.cin-family :is(.fin-table, .analyst-table, .deals-table, .ft-table,
  .global-table, .data-table, .mc-corr-table) tbody tr:hover {
  background: #77dce50a;
}
html.cin-family :is(.fin-table, .analyst-table) th[data-sort]:hover,
html.cin-family .ft-table th:hover {
  color: var(--cin-cyan, #00e5dd);
}
html.cin-family .fin-table .th-sticky,
html.cin-family .analyst-table .th-sticky {
  background: #0b2b3c;
}
html.cin-family .fin-table tbody td.fin-ticker {
  background: #092735;
}
html.cin-family .fin-table :is(.fin-company, .fin-region, .muted),
html.cin-family .data-table .label-cell,
html.cin-family :is(.ft-items-desc, .ft-role, .mc-corr-reading) {
  color: var(--cin-muted, #abc1cf);
}
html.cin-family :is(.fin-ticker, .ft-ticker-link, .cf-deal-ticker,
  .opp-rank-ticker a, .deals-ticker, .global-table a) {
  color: #e7f7ff;
  font-weight: 700;
}
html.cin-family :is(.fin-ticker a, .ft-ticker-link, .cf-deal-ticker,
  .opp-rank-ticker a, .global-table a):hover {
  color: var(--cin-cyan, #00e5dd);
  text-shadow: 0 0 16px #00e5dd77;
}
html.cin-family :is(.ft-filing-link, .fin-sources a) {
  color: #83deda;
  font-size: 12px;
}
html.cin-family :is(.loading-cell, .ft-loading, .cf-loading,
  .opp-loading, .fin-empty, .no-data, .mv-empty) {
  color: var(--cin-muted, #abc1cf) !important;
  font-size: 14px !important;
  line-height: 1.7;
  padding: 32px 22px;
}

/* Filters are large enough to use without diluting a comparative table. */
html.cin-family :is(.fin-toolbar, .deals-filters, .ft-filters,
  .analyst-filter-bar, .cf-timeline-filters) {
  gap: 10px;
}
html.cin-family .fin-toolbar {
  padding: 18px 20px;
  margin-bottom: 18px;
}
html.cin-family .fin-title-main { font-size: 16px; text-transform: none; }
html.cin-family .fin-title-sub { margin-top: 6px; }
html.cin-family :is(.fin-chips, .deals-tabs, .ft-tabs, .chart-range-btns,
  .mc-chart-controls, #market-tabs) {
  gap: 7px !important;
  flex-wrap: wrap;
}
html.cin-family :is(.fin-chip, .analyst-chip, .cf-filter-btn,
  .mkt-tab, .mc-series-btn, .v2-range-btn, .chart-range-btn,
  .deals-tab, .ft-tab) {
  appearance: none;
  border: 1px solid #8eb4cd33 !important;
  border-radius: 8px;
  background: #001d2b7a;
  color: #b9d0de !important;
  min-height: 40px;
  padding: 9px 14px;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600;
  letter-spacing: 0 !important;
  line-height: 1.4;
  transition: color .2s, border-color .2s, box-shadow .2s, background-color .2s;
}
html.cin-family :is(.fin-chip, .analyst-chip, .cf-filter-btn,
  .mkt-tab, .mc-series-btn, .v2-range-btn, .chart-range-btn,
  .deals-tab, .ft-tab):hover {
  border-color: #00e5dd7a !important;
  color: #e6fffd !important;
  background: #00e5dd0d;
  box-shadow: 0 0 22px -12px #00e5dd88;
}
html.cin-family :is(.fin-chip.is-active, .analyst-chip.is-active,
  .cf-filter-btn.active, .mkt-tab.active, .mc-series-btn.active,
  .v2-range-btn.is-active, .chart-range-btn.active,
  .deals-tab.active, .ft-tab.active) {
  color: #73fff0 !important;
  background: #00e5dd16 !important;
  border-color: #00e5dd70 !important;
  box-shadow: inset 0 1px #cafff013;
}
html.cin-family :is(.fin-search, .analyst-search) {
  min-height: 44px;
  border: 1px solid #8eb4cd40 !important;
  border-radius: 9px;
  padding: 9px 12px;
  background: #001d2b99 !important;
  color: #9bc6d8;
}
html.cin-family :is(.fin-search, .analyst-search):focus-within {
  border-color: var(--cin-cyan, #00e5dd) !important;
  box-shadow: 0 0 20px -11px #00e5ddaa;
}
html.cin-family :is(.fin-search, .analyst-search) input {
  background: transparent;
  color: #eefbff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
}
html.cin-family :is(.fin-search, .analyst-search) input::placeholder {
  color: #9fb8c8;
}
html.cin-family :is(.deals-filters, .ft-filters) :is(input, select) {
  min-height: 44px;
  padding: 10px 13px;
  color: #eefbff;
  font-size: 14px;
  border: 1px solid #8eb4cd40;
  border-radius: 8px;
  background: #062331;
}
html.cin-family :is(.deals-filter-label, .ft-filter-label) {
  color: #abc9d9;
  font-size: 12px;
  letter-spacing: .025em;
  margin-bottom: 8px;
}
html.cin-family :is(.deals-filters, .ft-filters) :is(input, select):focus {
  border-color: var(--cin-cyan, #00e5dd);
  box-shadow: 0 0 18px -10px #00e5dd88;
}

/* Charts: a single connected research workspace, with all controls retained. */
html.cin-family .v2-charts-layout {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr) 245px;
  align-items: start;
  gap: 18px;
  min-height: 600px;
  height: auto;
}
html.cin-family .v2-ticker-browser {
  padding: 17px 12px;
  max-height: 680px;
}
html.cin-family .v2-tb-search { margin-bottom: 19px; }
html.cin-family .v2-tb-section + .v2-tb-section {
  border-top: 1px solid var(--cin-line, #8eb4cd29);
  margin-top: 17px;
  padding-top: 16px;
}
html.cin-family .v2-tb-item {
  min-height: 43px;
  border-radius: 7px;
  padding: 11px 9px;
  font-size: 13px;
}
html.cin-family .v2-tb-item:is(:hover, .is-active) {
  background: #00e5dd13;
}
html.cin-family .v2-tb-item.is-active .sym { color: #6effed; }
html.cin-family .v2-chart-stage { min-height: 600px; padding: 0; overflow: hidden; }
html.cin-family .v2-chart-header {
  padding: 24px;
  border-color: var(--cin-line, #8eb4cd29);
}
html.cin-family .v2-chart-symbol {
  font-size: 31px;
  font-weight: 700;
  color: #f3faff;
}
html.cin-family .v2-chart-name {
  color: #a7c4d5;
  font-size: 14px;
  line-height: 1.5;
  margin-top: 6px;
}
html.cin-family .v2-chart-price { font-size: 32px; }
html.cin-family .v2-chart-change { font-size: 14px; }
html.cin-family .v2-chart-canvas {
  min-height: 370px;
  padding: 12px 13px 0;
  margin-inline: 18px;
  border-color: #8eb4cd20;
  background: #001e2d66;
}
html.cin-family .v2-chart-ranges {
  flex-wrap: wrap;
  gap: 7px;
  padding: 18px;
  border-color: var(--cin-line, #8eb4cd29);
}
html.cin-family .v2-side-panel {
  display: block;
  padding: 24px 20px;
}
html.cin-family .v2-side-panel .v2-card-title { font-size: 18px; }
html.cin-family #cv-take {
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: #d4e5ef !important;
  margin-bottom: 23px !important;
}
html.cin-family .v2-stat-grid { gap: 16px 12px; }
html.cin-family .v2-stat {
  padding-block: 12px;
  border-top: 1px solid #8eb4cd24;
}
html.cin-family .v2-stat-label { color: #a2bed0; font-size: 11px; }
html.cin-family .v2-stat-value { color: #eefbff; font-size: 16px; margin-top: 7px; }
html.cin-family #cv-stat-cat { font-size: 13px !important; line-height: 1.5; }

/* Company profile: identity first, then comparable evidence. */
html.cin-family .company-hero-inner { padding-block: 24px 12px; }
html.cin-family .company-breadcrumb { font-size: 13px; color: #a0bccd; margin-bottom: 26px; }
html.cin-family .company-top-row { gap: 32px; }
html.cin-family .company-logo-wrap {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  border-color: #73aeca55;
  background: linear-gradient(140deg, #24475c, #103044);
  box-shadow: inset 0 1px #d1f2ff2b, 0 10px 25px -18px #00e5dd66;
  margin-right: 20px;
}
html.cin-family .company-name {
  font-size: clamp(29px, 3vw, 42px);
  line-height: 1.16;
  letter-spacing: -.035em;
}
html.cin-family .company-ticker-symbol { color: #70e9df; font-size: 15px; }
html.cin-family .company-exchange { font-size: 12px; color: #abc5d5; }
html.cin-family .company-desc { font-size: 15px; color: #bdd0dd; line-height: 1.75; max-width: 70ch; }
html.cin-family .company-live-price { font-size: 46px; letter-spacing: -.04em; }
html.cin-family .company-live-change { font-size: 16px; margin-top: 10px; }
html.cin-family .company-live-label { font-size: 12px; color: #9fbbcc; margin-top: 10px; }
html.cin-family .company-summary-grid { gap: 14px; margin-top: 30px; padding-top: 28px; }
html.cin-family .summary-tile { padding: 19px; min-height: 158px; gap: 11px; }
html.cin-family .summary-tile-label { font-size: 11px; color: #a2bed0; line-height: 1.4; letter-spacing: .04em; }
html.cin-family .summary-tile-icon { color: #80b5cc; }
html.cin-family .tile-primary { font-size: 23px; }
html.cin-family :is(.tile-secondary, .tile-row-label, .cin-take-rationale) {
  font-size: 13px;
  color: #b0cad9;
  line-height: 1.65;
}
html.cin-family .tile-row-value { font-size: 14px; }
html.cin-family .cin-take-stance { font-size: 20px; }
html.cin-family :is(.cin-take-badge, .cin-take-score) { font-size: 11px; }
html.cin-family .company-content { gap: 22px; padding-block: 28px 36px; }
html.cin-family .company-content .two-col { gap: 22px; min-width: 0; }
html.cin-family .data-panel { min-width: 0; }
html.cin-family .data-panel-header { padding: 23px 25px; gap: 16px; }
html.cin-family .data-panel-title { font-size: 20px; }
html.cin-family .data-panel-subtitle { color: #a7c0d1; font-size: 12px; line-height: 1.6; }
html.cin-family .data-panel-body { padding: 24px; }
html.cin-family .data-panel .chart-range-btns { margin-bottom: 22px; }
html.cin-family .data-panel .chart-container { height: 340px; }
html.cin-family .data-table .label-cell { font-size: 13px; }
html.cin-family .analyst-consensus-label { font-size: 24px; }
html.cin-family .company-coverage-chip { font-size: 11px; padding: 6px 9px; }
html.cin-family .cp-provenance-strip { padding: 15px 18px; border-radius: 12px; border-color: #8eb4cd33; background: #082c3b; font-size: 12px; line-height: 1.7; color: #b4cddd; }
html.cin-family .cp-provenance-strip .cp-prov-src { color: #a1e4c0; background: #8cd5a80d; border-color: #8cd5a833; font-size: 10px; padding: 4px 7px; }
html.cin-family .cin-rating-band { font-size: 12px; padding: 7px 11px; letter-spacing: .03em; }
html.cin-family .cin-rating-score { font-size: 32px; letter-spacing: -.035em; }
html.cin-family .cin-rating-score small { color: #a2bece; font-size: 14px; }
html.cin-family .cin-rating-target { color: #bad1df; font-size: 14px; line-height: 1.75; }
html.cin-family .cin-dim-row { font-size: 13px; gap: 15px; margin-block: 13px; line-height: 1.5; }
html.cin-family .cin-dim-label { width: 115px; color: #b4cddd; }
html.cin-family .cin-dim-val { color: #d3e6f1; }
html.cin-family .cin-dim-bar { height: 6px; background: #8eb4cd20; }
html.cin-family :is(.cin-dim-excluded, .cin-rating-updated) { color: #9fbccc; font-size: 12px; line-height: 1.65; }

/* The deployed Charts page also carries its original five-part deep dive. */
html.cin-family .cin-dd-dialog { max-width: 860px; background: #082735; border: 1px solid #78b6c64d; border-radius: 21px; box-shadow: 0 25px 100px #0008; }
html.cin-family .cin-dd-header { border-color: #8eb4cd33; gap: 22px; margin-bottom: 24px; padding-bottom: 24px; }
html.cin-family .cin-dd-eyebrow { font-size: 11px; color: #83e7df; letter-spacing: .09em; }
html.cin-family .cin-dd-title { font-size: 32px; letter-spacing: -.035em; line-height: 1.2; margin-block: 10px; }
html.cin-family .cin-dd-price { font-size: 14px; line-height: 1.6; color: #b0cbdc; }
html.cin-family .cin-dd-call { border-radius: 15px; padding: 24px; gap: 22px; margin-block: 23px 26px; }
html.cin-family .cin-dd-call-eyebrow { font-size: 11px; color: #adc8d8; letter-spacing: .07em; margin-bottom: 10px; }
html.cin-family .cin-dd-call-verdict { font-size: 31px; }
html.cin-family .cin-dd-call-stance { font-size: 16px; line-height: 1.55; }
html.cin-family .cin-dd-call-reason { font-size: 14px; color: #b3cddb; line-height: 1.7; }
html.cin-family .cin-dd-call-band { color: #a7c3d5; font-size: 11px; letter-spacing: .03em; margin-top: 10px; }
html.cin-family .cin-dd-pillars { gap: 13px; margin-bottom: 29px; }
html.cin-family .cin-dd-pillar { padding: 18px; border-radius: 12px; border-color: #8eb4cd29; background: #15384a66; gap: 10px; }
html.cin-family .cin-dd-pillar-label { font-size: 10px; line-height: 1.6; color: #b1c9d9; letter-spacing: .06em; }
html.cin-family .cin-dd-pillar-weight { color: #9ebccd; font-size: 10px; }
html.cin-family .cin-dd-pillar-score { font-size: 27px; }
html.cin-family .cin-dd-pillar-bar { height: 4px; background: #8eb4cd20; }
html.cin-family .cin-dd-section { padding-block: 27px 15px; border-color: #8eb4cd29; }
html.cin-family .cin-dd-section h3 { flex-wrap: wrap; font-size: 19px; gap: 12px; margin-bottom: 18px; }
html.cin-family .cin-dd-num { width: 28px; height: 28px; border-radius: 8px; font-size: 12px; background: #00e5dd14; color: #7ceee2; }
html.cin-family .cin-dd-question { color: #adc6d8; font-size: 11px; letter-spacing: .03em; }
html.cin-family .cin-dd-section p { color: #bed7e6; font-size: 15px; line-height: 1.8; }
html.cin-family .cin-dd-section p.lead { color: #f0f8fe; font-size: 16px; }
html.cin-family .cin-dd-chip { font-size: 11px; letter-spacing: .03em; padding: 6px 10px; border-radius: 6px; }
html.cin-family .cin-dd-catalyst { padding-block: 17px; border-color: #8eb4cd26; }
html.cin-family .cin-dd-cat-label { font-size: 15px; color: #e1f0f9; line-height: 1.7; }
html.cin-family .cin-dd-cat-timing { font-size: 12px; color: #a3c0d2; line-height: 1.7; }
html.cin-family .cin-dd-sizing { padding: 18px; border-color: #6ac5b644; border-radius: 11px; font-size: 14px !important; background: #00e5dd09; }
html.cin-family .cin-dd-footer { font-size: 12px; line-height: 1.8; color: #a4c0d2; border-color: #8eb4cd29; padding-top: 23px; margin-top: 26px; }

/* Markets and global coverage. Preserve native values and regional identities. */
html.cin-family #market-pulse { margin-bottom: 18px !important; }
html.cin-family #market-pulse h2 { color: #eff9ff !important; font-size: 23px !important; letter-spacing: -.025em !important; }
html.cin-family #pulse-grid { grid-template-columns: 1fr 1.7fr 1fr 1fr !important; gap: 14px !important; margin-top: 18px; }
html.cin-family #pulse-grid > div {
  padding: 22px !important;
  border-radius: 15px !important;
  border: 1px solid var(--cin-line, #8eb4cd29) !important;
  background: linear-gradient(135deg, #163246a6, #092735b8) !important;
  box-shadow: var(--cin-research-shadow);
  grid-column: auto !important;
}
html.cin-family #pulse-grid > div > div:first-child {
  font-size: 11px !important;
  color: #aac6d5 !important;
  letter-spacing: .045em !important;
}
html.cin-family #pulse-grid > div > div:last-child { line-height: 1.55 !important; margin-top: 10px !important; }
html.cin-family #pulse-driver { font-size: 16px !important; }
html.cin-family #market-drivers-list { gap: 9px !important; }
html.cin-family #market-drivers-list li {
  padding: 9px 12px !important;
  font-size: 13px !important;
  color: #b9d1df !important;
  border-color: #8eb4cd33 !important;
  background: #0b2939 !important;
  border-radius: 8px;
}
html.cin-family .industry-stats { gap: 14px; }
html.cin-family .market-grid { gap: 17px; }
html.cin-family .market-card-header { color: #f1f9ff; font-size: 16px; }
html.cin-family .market-value { font-size: 31px; letter-spacing: -.025em; margin-block: 14px 6px; }
html.cin-family :is(.market-change, .market-meta) { font-size: 13px; line-height: 1.65; }
html.cin-family .market-meta { color: #adc5d5; border-color: #8eb4cd29; }
html.cin-family .sector-perf { border-color: var(--cin-line, #8eb4cd29); padding-block: 23px; }
html.cin-family .sector-perf-label { color: #a9c5d5; font-size: 12px; }
html.cin-family .sector-perf-item { padding: 11px 13px; font-size: 13px; border-radius: 9px; }
html.cin-family .global-prevalence-banner {
  padding: 25px;
  border-radius: 17px;
  border-color: #6fb6cb44;
  background: linear-gradient(120deg, #10384b, #10283b);
  gap: 28px;
}
html.cin-family .global-region-grid { gap: 18px; }
html.cin-family .region-card { padding: 26px; }
html.cin-family .region-name { color: #f1f9ff; font-size: 17px; line-height: 1.5; }
html.cin-family .region-prevalence { color: #7ce7dd; font-size: 28px; margin-top: 12px; }
html.cin-family :is(.prevalence-source, .region-users) { color: #a9c4d3; font-size: 13px; line-height: 1.7; }
html.cin-family .prevalence-label { color: #b2cddd; font-size: 12px; line-height: 1.6; letter-spacing: .04em; }
html.cin-family .global-table { min-width: 720px; }

/* Macro desk: the primary numbers lead, interpretation stays readable. */
html.cin-family .mc-snap-grid { gap: 16px; margin-block: 20px; }
html.cin-family .mc-snap-card { padding: 23px; }
html.cin-family .mc-snap-header { align-items: flex-start; gap: 12px; margin-bottom: 15px; }
html.cin-family .mc-snap-label { font-size: 11px; line-height: 1.5; color: #b2c9d8; letter-spacing: .06em; }
html.cin-family .mc-snap-sub { font-size: 10px; color: #9cb7c9; }
html.cin-family .mc-snap-dir { font-size: 10px; padding: 4px 7px; border-radius: 5px; line-height: 1.4; }
html.cin-family .mc-snap-value { color: #edfaff; font-size: 31px; line-height: 1.25; letter-spacing: -.035em; }
html.cin-family .mc-snap-change { font-size: 13px; margin-top: 7px; }
html.cin-family .mc-snap-spark { height: 38px; margin-top: 16px; }
html.cin-family .mc-regime-line { padding: 22px 25px; margin-bottom: 20px; }
html.cin-family .mc-regime-row { flex-wrap: wrap; gap: 11px; }
html.cin-family .mc-regime-prefix { color: #aac7d8; font-size: 12px; letter-spacing: .045em; }
html.cin-family .mc-regime-value { font-size: 29px; }
html.cin-family .mc-regime-subtext { color: #abc5d5; font-size: 12px; line-height: 1.6; margin-top: 10px; letter-spacing: .02em; }
html.cin-family .mc-regime-bar { height: 5px; margin-top: 18px; background: #90b5ca1f; }
html.cin-family .mc-section { padding: 25px; margin-bottom: 20px; }
html.cin-family .mc-section-head { color: #e5f4fc; font-size: 14px; letter-spacing: .015em; text-transform: none; margin-bottom: 21px; line-height: 1.45; }
html.cin-family .mc-section-head .mc-badge { color: #93e5c1; font-size: 10px; padding: 4px 8px; border-radius: 5px; }
html.cin-family .mc-cin-take {
  padding: 26px;
  border: 1px solid #61bdbb55;
  border-left: 3px solid #00e5dd;
  border-radius: 16px;
  background: linear-gradient(130deg, #163b4488, #0b293c);
  margin-bottom: 20px;
}
html.cin-family .mc-take-bullets { gap: 12px; }
html.cin-family .mc-take-bullets li { font-size: 15px; color: #c5dce9; line-height: 1.75; gap: 11px; }
html.cin-family .mc-take-summary { font-size: 16px; line-height: 1.7; border-color: #8eb4cd29; padding-top: 18px; margin-top: 20px; }
html.cin-family .mc-take-summary-label { font-size: 11px; color: #a4c1d4; }
html.cin-family .mc-take-actions { flex-wrap: wrap; gap: 12px; margin-top: 20px; }
html.cin-family .mc-take-action { min-height: 42px; padding: 11px 15px; font-size: 12px; text-transform: none; letter-spacing: 0; border-radius: 8px; }
html.cin-family .mc-take-action-primary { background: #00e5dd; color: #002430; border-color: #6bfff24d; }
html.cin-family .mc-take-action-secondary { border-color: #8eb4cd55; color: #d0e7f2; }
html.cin-family :is(.mc-transmission-grid, .mc-cat-grid) { gap: 11px; }
html.cin-family :is(.mc-trans-item, .mc-cat-item) {
  padding: 16px;
  border: 1px solid #8eb4cd24;
  border-radius: 10px;
  background: #001e2d66;
}
html.cin-family .mc-trans-trigger { font-size: 12px; color: #e2eff8; line-height: 1.5; margin-bottom: 8px; }
html.cin-family .mc-trans-effect { font-size: 14px; color: #b1c9d8; line-height: 1.65; }
html.cin-family .mc-cat-name { font-size: 13px; color: #e1eff9; line-height: 1.5; }
html.cin-family .mc-cat-date { color: #9fb9cb; font-size: 12px; line-height: 1.6; margin-top: 6px; }
html.cin-family .mc-cat-countdown { font-size: 11px; padding: 5px 7px; }
html.cin-family .mc-cat-countdown.upcoming { color: #bdd3df; background: #8eb4cd13; }
html.cin-family .mc-cat-countdown.passed { color: #9ab4c6; }
html.cin-family .mc-chart-wrap { height: 290px; margin-top: 18px; }
html.cin-family #mc-chart-footnote { font-size: 12px !important; color: #a9c4d5 !important; line-height: 1.65; margin-top: 14px; }
html.cin-family :is(.mc-color-pos, .regime-constructive, .regime-riskon, .mc-corr-val.corr-pos) { color: var(--cin-research-green); }
html.cin-family :is(.mc-color-neg, .regime-riskoff, .mc-corr-val.corr-neg) { color: var(--cin-research-red); }
html.cin-family .mc-corr-val.corr-neutral { color: #b0c7d6; }

/* Market Health: the index and its evidence remain distinct. */
html.cin-family .cmhi-hero { padding-top: 48px; padding-bottom: 42px; background: transparent; }
html.cin-family .cmhi-hero h1 { font-size: clamp(34px, 4vw, 54px); letter-spacing: -.04em; }
html.cin-family .cmhi-hero-sub { color: #abc7d8; font-size: 17px; line-height: 1.75; max-width: 760px; margin-inline: auto; }
html.cin-family .cmhi-hero-badge { color: #8ce7df; border-color: #65c8cd55; background: #00e5dd0b; font-size: 11px; padding: 8px 12px; }
html.cin-family .cmhi-lg-gauge-wrap { margin-top: 32px; margin-bottom: 25px; }
html.cin-family .cmhi-lg-score { font-size: 70px; letter-spacing: -.05em; }
html.cin-family .cmhi-lg-label { font-size: 18px; }
html.cin-family .cmhi-hero-ts { color: #a6c4d6; font-size: 12px; }
html.cin-family .cmhi-breakdown { gap: 16px; }
html.cin-family .cmhi-comp-card { padding: 24px; }
html.cin-family .cmhi-comp-card-header { gap: 12px; color: #f0f9ff; }
html.cin-family .cmhi-comp-icon { width: 39px; height: 39px; border-radius: 11px; }
html.cin-family .cmhi-comp-card-score { font-size: 35px; letter-spacing: -.035em; margin-block: 20px 14px; }
html.cin-family .cmhi-comp-bar { background: #8eb4cd20; height: 5px; border-radius: 5px; }
html.cin-family .cmhi-comp-detail { color: #acc7d8; font-size: 13px; line-height: 1.7; margin-top: 18px; }
html.cin-family .cmhi-method { padding: 30px; }
html.cin-family .cmhi-method h3 { font-size: 24px; margin-bottom: 16px; }
html.cin-family .cmhi-method p { font-size: 15px; color: #bad1df; line-height: 1.8; }
html.cin-family .cmhi-method-grid { gap: 24px; margin-top: 28px; }
html.cin-family .cmhi-method-item h4 { color: #e3f2fa; font-size: 16px; margin-bottom: 10px; }

/* Capital activity and deal records. Color labels keep their original meaning. */
html.cin-family :is(.deals-summary-grid, .insider-summary-grid, .cf-kpi-grid,
  .ft-summary-grid, .opp-kpi-grid) { gap: 16px; margin-bottom: 26px; }
html.cin-family :is(.cf-kpi-value, .ft-stat-value, .opp-kpi-value,
  .deals-stat-value, .insider-stat-value, .stat-value) {
  font-size: 34px;
  line-height: 1.2;
  color: #eff9ff;
  letter-spacing: -.035em;
  font-variant-numeric: tabular-nums;
}
html.cin-family :is(.cf-kpi-label, .ft-stat-label, .opp-kpi-label,
  .deals-stat-label, .insider-stat-label, .stat-label) {
  color: #aec8d7;
  font-size: 12px;
  letter-spacing: .035em;
  line-height: 1.55;
  margin-top: 12px;
}
html.cin-family :is(.deals-tabs, .ft-tabs) {
  border: 0;
  margin-bottom: 23px;
  padding-bottom: 0;
}
html.cin-family .ft-tab-count { color: inherit; border: 1px solid #8eb4cd33; background: #8eb4cd10; font-size: 11px; margin-left: 7px; }
html.cin-family .cf-heatmap-grid { gap: 16px; }
html.cin-family .cf-heatmap-block {
  border: 1px solid #b3daec30;
  border-radius: 17px;
  padding: 24px;
  box-shadow: inset 0 1px #e1faff1c;
  transition: border-color .2s, box-shadow .2s;
}
html.cin-family .cf-heatmap-block:hover { transform: none; border-color: #b8ecff88; box-shadow: inset 0 1px #e1faff2a, 0 12px 30px -24px #93baff88; }
html.cin-family .cf-heatmap-block[data-type="Equity"] { background: linear-gradient(140deg, #176256, #103a42); }
html.cin-family .cf-heatmap-block[data-type="Debt"] { background: linear-gradient(140deg, #24557f, #103b54); }
html.cin-family .cf-heatmap-block[data-type="Convertible"] { background: linear-gradient(140deg, #57447f, #303454); }
html.cin-family .cf-heatmap-block[data-type="Restructuring"] { background: linear-gradient(140deg, #755638, #403c3c); }
html.cin-family .cf-heatmap-block[data-type="M&A"] { background: linear-gradient(140deg, #724957, #3b354b); }
html.cin-family .cf-heatmap-block[data-type="License Transfer"] { background: linear-gradient(140deg, #15666a, #143e4d); }
html.cin-family .cf-heatmap-block[data-type="Other"] { background: linear-gradient(140deg, #345164, #1e3648); }
html.cin-family .cf-heatmap-type { color: #e0eff8; font-size: 13px; letter-spacing: .02em; }
html.cin-family .cf-heatmap-count { font-size: 38px; margin-top: 15px; }
html.cin-family .cf-heatmap-pct { color: #e4f0f8; font-size: 13px; }
html.cin-family .cf-type-bar-wrap { margin-block: 25px; }
html.cin-family .cf-type-bar { height: 12px; border-radius: 9px; }
html.cin-family :is(.cf-type-bar-label, .cf-legend-item, .type-legend) { color: #b9d0de; font-size: 12px; line-height: 1.7; }
html.cin-family .cf-deal-list { border: 1px solid var(--cin-line, #8eb4cd29); border-radius: 16px; overflow: hidden; background: #0a293a88; }
html.cin-family .cf-deal-item { padding: 19px 22px; border-color: #8eb4cd24; gap: 18px; }
html.cin-family .cf-deal-item:hover { background: #00e5dd08; }
html.cin-family .cf-deal-date { color: #a3bfd0; font-size: 12px; }
html.cin-family .cf-deal-desc { color: #c5dbe7; font-size: 14px; line-height: 1.65; }
html.cin-family :is(.cf-deal-type-badge, .ft-type-badge, .ft-signal) { font-size: 11px; padding: 5px 9px; border-radius: 6px; line-height: 1.4; letter-spacing: .015em; }
html.cin-family .ft-amount { font-size: 14px; }
html.cin-family .ft-role { font-size: 12px; }

/* Ranked opportunities: legible evidence rather than bright leaderboard noise. */
html.cin-family .opp-category { margin-bottom: 38px; }
html.cin-family .opp-category-header { gap: 16px; margin-bottom: 20px; }
html.cin-family .opp-category-title { font-size: 23px; line-height: 1.3; }
html.cin-family .opp-category-sub { color: #abc5d5; font-size: 14px; line-height: 1.65; margin-top: 7px; }
html.cin-family .opp-category-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  border: 1px solid #d1eeff2b;
  box-shadow: inset 0 1px 3px #fff2, 0 8px 22px -17px currentColor;
}
html.cin-family .opp-rank-list { gap: 12px; }
html.cin-family .opp-rank-item { grid-template-columns: 50px minmax(0, 1fr); border-radius: 13px; }
html.cin-family .opp-rank-num { border-color: #8eb4cd24; font-size: 20px; background: #a0c3d506; }
html.cin-family .opp-rank-body { min-width: 0; padding: 21px; gap: 20px; }
html.cin-family .opp-rank-ticker { font-size: 16px; }
html.cin-family .opp-rank-name { font-size: 13px; color: #b6ccda; margin-top: 5px; }
html.cin-family .opp-rank-cat { font-size: 11px; color: #9db9cc; background: #8eb4cd0c; padding: 4px 8px; margin-top: 6px; }
html.cin-family .opp-rank-cell-label { font-size: 11px; color: #a5c0d2; line-height: 1.5; }
html.cin-family .opp-rank-cell-value { font-size: 16px; margin-top: 6px; }
html.cin-family .opp-methodology { padding: 28px; }
html.cin-family .opp-methodology-title { color: #e5f3fb; font-size: 20px; margin-bottom: 15px; }
html.cin-family .opp-methodology p { font-size: 14px; color: #b6cedd; line-height: 1.8; }

/* Existing model/signal summaries are styled without forcing hidden drafts open. */
html.cin-family :is(#sb-analyst-panel, #sb-deals-panel, #sb-macro-panel,
  #sb-opportunities-panel) > article,
html.cin-family #analyst-cin-take {
  border: 1px solid #6aafa84d !important;
  border-left: 3px solid #00e5dd !important;
  border-radius: 16px !important;
  background: linear-gradient(130deg, #153b4988, #092939) !important;
  padding: 25px !important;
}
html.cin-family :is(#sb-analyst-headline, #sb-deals-headline,
  #sb-macro-headline, #sb-opportunities-headline) {
  font-size: 25px !important;
  line-height: 1.3 !important;
  letter-spacing: -.025em;
}
html.cin-family :is(#sb-analyst-body, #sb-deals-body,
  #sb-macro-body, #sb-opportunities-body) {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: #bed5e3 !important;
}
html.cin-family #analyst-cin-take-bullets li { color: #c7dce9 !important; font-size: 15px !important; line-height: 1.75 !important; margin-bottom: 9px; }
html.cin-family #analyst-macro-ctx { padding: 15px !important; border-radius: 10px !important; background: #0b2c3d !important; border-color: #8eb4cd33 !important; }
html.cin-family #recent-ratings-block { border-color: #8eb4cd33 !important; border-radius: 14px !important; background: #092939 !important; margin-block: 20px !important; }
html.cin-family #recent-ratings-block > div:first-child { background: #123346 !important; padding: 17px !important; }

@media (max-width: 1280px) {
  html.cin-family .v2-charts-layout { grid-template-columns: 185px minmax(0, 1fr); }
  html.cin-family .v2-side-panel { grid-column: 1 / -1; }
  html.cin-family .v2-side-panel .v2-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.cin-family .company-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.cin-family #pulse-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 960px) {
  html.cin-family .mc-snap-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.cin-family body[data-cin-page="macro"] .v2-content > div[style*="max-width"] > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  html.cin-family :is(.deals-summary-grid, .insider-summary-grid,
    .cf-kpi-grid, .ft-summary-grid, .opp-kpi-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.cin-family .company-content .two-col { grid-template-columns: 1fr; }
  html.cin-family :is(.fin-toolbar-left, .fin-toolbar-right) { width: 100%; }
  html.cin-family .fin-toolbar-right { justify-content: space-between; }
  html.cin-family .opp-rank-body { grid-template-columns: minmax(150px, 1.5fr) 1fr 1fr 1fr; gap: 15px; }
}
@media (max-width: 720px) {
  html.cin-family .v2-charts-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  html.cin-family .v2-ticker-browser { max-height: 260px; }
  html.cin-family .v2-chart-stage { min-height: 520px; }
  html.cin-family .v2-chart-canvas { min-height: 310px; }
  html.cin-family .v2-chart-header { padding: 21px; }
  html.cin-family .v2-chart-symbol { font-size: 27px; }
  html.cin-family .v2-chart-price { font-size: 27px; }
  html.cin-family .v2-chart-ranges > div { flex-wrap: wrap; }
  html.cin-family .v2-side-panel { grid-column: auto; }
  html.cin-family .v2-side-panel .v2-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.cin-family :is(.fin-chip, .analyst-chip, .cf-filter-btn,
    .mkt-tab, .mc-series-btn, .v2-range-btn, .chart-range-btn,
    .deals-tab, .ft-tab) { min-height: 44px; padding-inline: 12px; }
  html.cin-family :is(.fin-table, .analyst-table) { min-width: 950px; }
  html.cin-family :is(.deals-table, .ft-table) { min-width: 800px; }
  html.cin-family :is(.fin-table, .analyst-table, .deals-table,
    .ft-table, .global-table) :is(th, td) { padding: 14px; }
  html.cin-family .fin-toolbar { padding: 18px; }
  html.cin-family .fin-search { flex: 1; width: 100%; }
  html.cin-family .fin-search input { width: 100%; }
  html.cin-family .analyst-search { width: 100%; margin-left: 0 !important; }
  html.cin-family #analyst-search { width: 100%; }
  html.cin-family :is(.deals-filters, .ft-filters) { display: grid; grid-template-columns: 1fr; }
  html.cin-family :is(.deals-filters, .ft-filters) :is(input, select) { width: 100%; min-width: 0 !important; }
  html.cin-family .company-identity { min-width: 0; }
  html.cin-family .company-identity-row { gap: 0; }
  html.cin-family .company-logo-wrap { width: 49px; height: 49px; border-radius: 13px; margin-right: 15px; }
  html.cin-family .company-name { font-size: 30px; overflow-wrap: anywhere; }
  html.cin-family .company-price-block { text-align: left; }
  html.cin-family .company-live-price { font-size: 40px; }
  html.cin-family .company-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  html.cin-family .summary-tile { padding: 18px; min-height: 165px; }
  html.cin-family .data-panel-header { padding: 22px; flex-wrap: wrap; }
  html.cin-family .data-panel-body { padding: 20px; overflow-x: auto; }
  html.cin-family .data-panel .data-table { min-width: 320px; }
  html.cin-family .data-panel .chart-container { height: 290px; }
  html.cin-family #pulse-grid { gap: 12px !important; }
  html.cin-family #pulse-grid > div { padding: 18px !important; }
  html.cin-family #pulse-driver { font-size: 15px !important; }
  html.cin-family #market-pulse, html.cin-family #market-drivers,
  html.cin-family #market-cta { padding-inline: 0 !important; }
  html.cin-family .mc-snap-card { padding: 20px; }
  html.cin-family .mc-snap-header { flex-direction: column; gap: 8px; }
  html.cin-family .mc-snap-value { font-size: 28px; }
  html.cin-family :is(.mc-section, .mc-regime-line, .mc-cin-take) { padding: 22px; }
  html.cin-family :is(.mc-transmission-grid, .mc-cat-grid) { grid-template-columns: minmax(0, 1fr); }
  html.cin-family .mc-corr-table { font-size: 12px; }
  html.cin-family .mc-corr-table :is(th, td) { padding: 10px 6px; font-size: 12px; }
  html.cin-family .mc-chart-wrap { height: 260px; }
  html.cin-family .cmhi-hero { padding-top: 34px; }
  html.cin-family .cmhi-hero-sub { font-size: 15px; }
  html.cin-family .cmhi-method { padding: 23px; }
  html.cin-family .cmhi-method-grid { grid-template-columns: 1fr; gap: 22px; }
  html.cin-family .cf-deal-item { padding: 19px; gap: 12px; }
  html.cin-family .cf-timeline-header { flex-direction: column; align-items: flex-start; }
  html.cin-family .cf-timeline-filters { flex-wrap: wrap; }
  html.cin-family .opp-rank-body { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 18px 16px; gap: 18px 13px; }
  html.cin-family .opp-rank-company { grid-column: 1 / -1; }
  html.cin-family .opp-rank-cell:first-of-type { grid-column: auto; }
  html.cin-family .opp-rank-item { grid-template-columns: 38px minmax(0, 1fr); }
  html.cin-family .opp-rank-num { font-size: 17px; }
  html.cin-family .opp-rank-cell-value { font-size: 14px; }
  html.cin-family .opp-rank-name { white-space: normal; line-height: 1.6; }
  html.cin-family .opp-category-title { font-size: 21px; }
  html.cin-family .opp-methodology { padding: 23px; }
  html.cin-family .cin-dd-pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.cin-family .cin-dd-title { font-size: 28px; }
  html.cin-family .cin-dd-call { padding: 21px; }
  html.cin-family .cin-dd-call-body { min-width: 0; flex-basis: 100%; }
  html.cin-family .cin-dd-pillar { padding: 15px; }
  html.cin-family .cin-dd-question { display: inline; margin-left: 0; }
}
@media (max-width: 390px) {
  html.cin-family .company-summary-grid { grid-template-columns: 1fr; }
  html.cin-family #pulse-grid { grid-template-columns: 1fr !important; }
  html.cin-family .mc-snap-grid { grid-template-columns: 1fr; }
  html.cin-family .opp-rank-body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.cin-family .opp-rank-cell:last-child { grid-column: 1 / -1; }
  html.cin-family :is(.cf-kpi-value, .ft-stat-value, .opp-kpi-value) { font-size: 28px; }
  html.cin-family :is(.cf-kpi-card, .ft-stat-card, .opp-kpi-card) { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html.cin-family :is(.summary-tile, .market-card, .stat-card,
    .deals-stat-card, .insider-stat-card, .cf-kpi-card, .ft-stat-card,
    .opp-kpi-card, .cmhi-comp-card, .mc-snap-card, .opp-rank-item,
    .cf-heatmap-block, .region-card) { transition: none; }
}
