/* caspr.org site faces: Cabinet Grotesk (headlines) + Manrope (body) */
@import url("https://api.fontshare.com/v2/css?f[]=cabinet-grotesk@400,500,700,800,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");

:root{
  --font-heading: 'Cabinet Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --font-body: 'Manrope', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  --border-radius: 0px;
  --border-width: 1px;

  --bg-body: #faf8f3;
  --bg-card: #ffffff;
  --bg-header: #f5f5f4;

  --text-main: #1c1917;
  --text-muted: #57534e;

  --s100: #f5f5f4;
  --s200: #e7e5e4;
  --s400: #a8a29e;
  --s500: #78716c;
  --s600: #57534e;
  --s800: #292524;
  --s900: #1c1917;

  --border-color: #e7e5e4;
  --accent-color: #1c1917;
  --accent-hover: #292524;

  --good: #059669;
  --warn: #d97706;
  --bad: #dc2626;
  --card-bad: #B3261E;

  --shadow: none;
  --header-shadow: none;

  /* Back-compat aliases used by some inline styles */
  --text: var(--text-main);
  --muted: var(--text-muted);
  --border: var(--border-color);
}

*{ box-sizing: border-box; }
html, body { height: 100%; }
body{
  margin:0;
  font-family: var(--font-body);
  background-color: var(--bg-body);
  color: var(--text-main);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a{ color: var(--accent-color); text-decoration: none; }
a:hover{ text-decoration: underline; }
.link--plain{ color: inherit; text-decoration: none; }
.link--plain:hover{ text-decoration: none; }
.state-link{ font-weight: 700; }

.container{ max-width: 1080px; margin: 0; padding: 18px clamp(24px, 3.5vw, 72px) 34px; }

/* --- v5a NAV --- */
.nav-bar{background:var(--bg-body);border-bottom:1px solid var(--s200);padding:0 2rem;position:sticky;top:0;z-index:100}
.nav-inner{max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:center;height:100px}
.nav-logo img{height:42px;width:auto}
.nav-links{display:flex;gap:2px;background:rgb(224,233,255);border-radius:8px;padding:4px}
.nav-links a, .nav__link{font-size:15px;font-weight:500;color:var(--s800);text-decoration:none;padding:6px 14px;border-radius:6px;transition:background .15s,color .15s;border:none}
.nav-links a:hover, .nav__link:hover{background:rgba(255,255,255,.5);color:var(--s900);text-decoration:none}
.nav__link--active{background:#fff;color:var(--s900)!important;font-weight:600}

/* Legacy header compat */
.site-header{display:none}
.caspr-logotype img{height:48px;width:auto;display:block}
.brand__title{font-weight:700;font-size:20px}

.hero{
  margin-top: 0;
  padding: 12px 0 24px;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.hero h1{
  margin: 0 0 6px;
  font-family: var(--font-heading);
  font-size: clamp(1.8rem, 4vw, 2.52rem);
  font-weight: 400;
  line-height: 1.15;
  max-width: 800px;
  letter-spacing: 0;
}
.hero--state-detail h1{ font-size: 56px; margin-top: 10px; }
.hero--state-detail .badge{
  font-size: 37px;
  padding: 4px 10px;
}
.hero p{ margin: 14px 0 0; color: var(--s600); line-height: 1.65; font-size: 16px; max-width: 800px; }
.hero__meta{ margin-top: 12px; display:flex; gap: 10px; flex-wrap: wrap; }
.pill{
  display:inline-flex;
  gap: 8px;
  align-items: center;
  padding: 6px 10px;
  border-radius: 20px;
  border: 1px solid var(--s200);
  background: var(--s100);
  color: var(--text-muted);
  font-size: 13px;
}
.pill strong{ color: var(--text-main); font-weight: 650; }

.grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-top: 18px;
}
@media (min-width: 940px){
  .grid{ grid-template-columns: 1.25fr .75fr; }
}

.card{
  border: var(--border-width) solid var(--border-color);
  border-radius: var(--border-radius);
  background: var(--bg-card);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.card__header{
  padding: 14px 14px 12px;
  border-bottom: var(--border-width) solid var(--border-color);
  background: var(--bg-header);
}
.card__header h2{ margin: 0; font-size: 16px; font-family: var(--font-heading); font-weight: 600; }
.card__body{ padding: 14px; }
.card__body--flush{ padding: 0; }

.controls{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}
.control{
  flex: 1 1 220px;
  display:flex;
  flex-direction: column;
  gap: 6px;
}
.control label{ font-size: 12px; color: var(--text-muted); }
.control input, .control select{
  padding: 10px 12px;
  border-radius: var(--border-radius);
  border: var(--border-width) solid var(--border-color);
  background: #FFFFFF;
  color: var(--text-main);
}
.control input::placeholder{ color: #9AA6AD; }
.control--nolabel{ margin-top: 6px; }

table{
  width: 100%;
  border-collapse: collapse;
  border: var(--border-width) solid var(--border-color);
  background: var(--bg-card);
}
.table-wrap{
  width: 100%;
}
.table-wrap--bleed{
  margin-left: -14px;
  margin-right: -14px;
}
th, td{
  text-align:left;
  padding: 10px 10px;
  border: var(--border-width) solid var(--border-color);
  vertical-align: top;
}
th{ font-size: 12px; color: var(--text-muted); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
tbody tr:hover td{ background: #f5f3ee; }

#summary-table thead tr:first-child > *{
  border-top: none;
}
#summary-table tbody tr:last-child > *{
  border-bottom: none;
}
#summary-table tr > *:first-child{
  border-left: none;
}
#summary-table tr > *:last-child{
  border-right: none;
}
.table__why{
  color: var(--text-main);
  line-height: 1.45;
  margin-bottom: 6px;
}
td .citations__list{
  font-size: 12px;
  color: var(--text-muted);
  margin: 6px 0 0;
  padding-left: 16px;
}

#ranking .rank,
#ranking .rank-header{
  width: 56px;
  text-align: right;
  font-family: var(--mono);
  color: var(--text-muted);
  white-space: nowrap;
}

/* --- EDITORIAL LIST (v5a index) --- */
.ed-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:3px solid var(--s900)}
.ed-title{font-family:var(--font-heading);font-size:20px;font-weight:400;color:var(--s900)}
.ed-badge{font-size:11px;font-weight:600;color:var(--s500);background:var(--s100);padding:4px 12px;border-radius:20px;border:1px solid var(--s200)}
.ed-list{list-style:none;padding:0;margin:0}
.ed-item{display:grid;grid-template-columns:48px 1fr auto;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--border-color);text-decoration:none;color:inherit;transition:background .1s;gap:4px}
.ed-item:hover{background:#ece8df;margin:0 -12px;padding-left:12px;padding-right:12px;border-radius:4px;text-decoration:none}
.ed-rank{font-family:var(--mono);font-size:18px;font-weight:700;color:var(--s800);text-align:right;padding-right:16px}
.ed-center{display:flex;flex-direction:column;gap:2px;min-width:0}
.ed-name{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--s900)}
.ed-status{font-size:14px;font-weight:500;font-style:italic}
.ed-status--none{color:var(--good)}.ed-status--sports{color:var(--warn)}.ed-status--both{color:var(--bad)}
.ed-note{font-size:14px;color:var(--s600);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}
.ed-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-left:16px}
.ed-score{font-family:var(--mono);font-size:24px;font-weight:700;line-height:1}
.ed-score--high{color:var(--good)}.ed-score--mid{color:var(--warn)}.ed-score--low{color:var(--bad)}
.ed-outof{font-size:10px;color:var(--s400);font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.ed-rc{font-size:12px;font-weight:600;color:var(--s900);margin-top:4px}
.ed-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.ed-controls input,.ed-controls select{font-family:inherit;font-size:14px;padding:10px 14px;border:1px solid var(--s200);border-radius:8px;background:#fff;color:var(--s800);outline:none}
.ed-controls input{flex:0 0 auto;width:24ch;min-width:0}
.ed-controls select{min-width:180px}
.ed-controls input::placeholder{color:var(--s400)}
@media(max-width:600px){.ed-note{display:none}.ed-item{grid-template-columns:40px 1fr auto}}

.score{
  font-family: var(--mono);
  font-weight: 800;
  letter-spacing: .2px;
}
.score--100{ color: var(--good); }
.score--low{ color: var(--bad); }
.score--mid{ color: var(--warn); }

.badge{
  display:inline-flex;
  align-items:center;
  padding: 2px 8px;
  border-radius: 0;
  font-size: 12px;
  border: var(--border-width) solid var(--border-color);
  background: var(--bg-header);
  color: var(--text-muted);
}

.risk-badge{
  display:inline-flex;
  align-items:center;
  padding: 2px 10px;
  border-radius: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  border: var(--border-width) solid transparent;
}
.risk-badge--high{
  color: var(--bad);
  border-color: rgba(183,58,50,.55);
  background: rgba(183,58,50,.08);
}
.risk-badge--medium{
  color: var(--warn);
  border-color: rgba(192,106,43,.5);
  background: rgba(192,106,43,.12);
}
.risk-badge--unclear{
  color: #6b7280;
  border-color: #cfd4dc;
  background: #f3f4f6;
}

.at-risk-grid{
  display: grid;
  gap: 14px;
}
.at-risk-card{
  border: var(--border-width) solid var(--border-color);
  background: var(--bg-card);
  padding: 14px;
}
.at-risk-card__header{
  display:flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.at-risk-card__title{
  margin: 0;
  font-size: 20px;
}
.at-risk-card__summary{
  margin: 6px 0 10px;
  color: var(--text-muted);
}
.at-risk-card__status{
  margin: 0 0 10px;
  font-size: 13px;
  color: var(--text-muted);
}
.at-risk-card .list{
  margin: 0;
  padding-left: 18px;
}
.at-risk-meta{
  font-size: 12px;
  color: var(--text-muted);
  margin-top: 6px;
}

.card__body--flush{
  padding: 0;
}
.card__body--flush .table-wrap{
  margin: 0;
}
.card__body--flush .table-wrap table{
  border: none;
}

.card__body > div[style*="overflow:auto"]{
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 720px){
  .nav-inner{
    flex-direction: column;
    height: auto;
    padding: 10px 0;
    gap: 8px;
  }
  .nav-links{
    flex-wrap: wrap;
    justify-content: center;
  }
  .nav-links a, .nav__link{
    font-size: 13px;
    padding: 6px 8px;
  }
}

.status-text{
  font-size: inherit;
  color: var(--text-main);
  line-height: 1.55;
}

.score-map{
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  background: #f0ede6;
  padding: 12px;
}
.score-map__svg{
  width: 100%;
  height: auto;
  display: block;
}
.map-state-link{
  cursor: pointer;
}
.map-state-shape{
  fill: var(--bg-header);
  stroke: #ffffff;
  stroke-width: 1;
  transition: opacity 0.15s ease;
}
.map-state-shape.score--100{ fill: var(--good); }
.map-state-shape.score--mid{ fill: var(--warn); }
.map-state-shape.score--low{ fill: var(--bad); }
.map-state-shape.map-grade--a{ fill: #4A9E4E; }
.map-state-shape.map-grade--b{ fill: #5294D6; }
.map-state-shape.map-grade--c{ fill: #ECCB79; }
.map-state-shape.map-grade--d{ fill: #E99A4A; }
.map-state-shape.map-grade--f{ fill: #CC5F5F; }
.map-state-shape.map-grade--fminus{ fill: #9F283C; }
.map-state-link:hover .map-state-shape{
  opacity: 0.85;
}
.map-tooltip{
  position: absolute;
  top: 0;
  left: 0;
  background: #111;
  color: #fff;
  padding: 8px 10px;
  border: 1px solid #111;
  font-size: 12px;
  line-height: 1.3;
  opacity: 0;
  pointer-events: none;
  transform: translate(-9999px, -9999px);
  transition: opacity 0.12s ease;
  white-space: nowrap;
}
.map-tooltip.is-active{
  opacity: 1;
}
.map-tooltip__title{
  font-weight: 700;
  letter-spacing: 0.01em;
}
.map-tooltip__status{
  font-style: italic;
  margin-top: 1px;
  opacity: .85;
}
.map-tooltip__meta{
  font-family: var(--mono);
  margin-top: 2px;
}
.state-link__arrow{
  color: var(--accent-color);
  font-weight: 700;
}

.share-links{
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 1.55;
}
.share-links__link{
  font-weight: 800;
}
.share-links__arrow{
  color: var(--accent-color);
  font-weight: 800;
}

.card__header--row{
  display:flex;
  align-items:center;
  gap: 12px;
}
.inline-check{
  margin-left: auto;
  display:flex;
  align-items:center;
  gap: 8px;
  font-size: 13px;
  color: var(--text-muted);
}
.inline-check input{
  margin: 0;
}
.tax-sort{
  margin-left: auto;
  padding: 8px 10px;
  border-radius: var(--border-radius);
  border: var(--border-width) solid var(--border-color);
  background: #FFFFFF;
  color: var(--text-main);
  font-size: 13px;
}
.tax-th--sortable{
  user-select: none;
  white-space: nowrap;
}
.tax-th--sortable:hover{
  background: var(--surface-2, #f1f0ee);
}
.tax-sort-arrow{
  display: inline-block;
  width: 1em;
  color: var(--text-muted);
  font-size: 11px;
}

/* Report card */
.report-card__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 820px){
  .report-card__grid{
    grid-template-columns: 240px 240px 1fr;
    align-items: stretch;
  }
}
.report-card__tile{
  border: var(--border-width) solid var(--border-color);
  background: var(--bg-header);
  padding: 12px;
  border-radius: var(--border-radius);
}
.report-card__kicker{
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 700;
}
.report-card__value{
  margin-top: 6px;
  color: var(--text-main);
  font-weight: 900;
  letter-spacing: .2px;
}
.report-card__value--grade{
  font-family: var(--mono);
  font-size: 52px;
  line-height: 1.0;
}
.report-card__value--score{
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  font-family: var(--mono);
  font-size: 38px;
  line-height: 1.0;
}
.report-card__outof{
  font-size: 14px;
  color: var(--text-muted);
  font-weight: 700;
}
.report-card__sub{
  margin-top: 8px;
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.45;
}
.grade--a{ color: var(--good); }
.grade--b{ color: var(--good); }
.grade--c{ color: var(--warn); }
.grade--d{ color: var(--warn); }
.grade--f{ color: var(--bad); }

.kpi{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.kpi__item{
  border: var(--border-width) solid var(--border-color);
  border-radius: var(--border-radius);
  padding: 10px;
  background: var(--bg-header);
}
.kpi__label{ font-size: 12px; color: var(--text-muted); margin-bottom: 6px; text-transform: uppercase; letter-spacing: .06em; }
.kpi__value{ font-size: 20px; font-weight: 800; }
.kpi__value small{ font-size: 12px; color: var(--text-muted); font-weight: 600; }
.kpi__value small.score--100{ color: var(--good); }
.kpi__value small.score--mid{ color: var(--warn); }
.kpi__value small.score--low{ color: var(--bad); }

.section-title{
  margin: 0 0 10px;
  font-size: 14px;
  color: var(--text-muted);
  letter-spacing: .2px;
  text-transform: uppercase;
}

.list{
  margin: 0;
  padding-left: 18px;
  color: var(--text-muted);
  line-height: 1.6;
}

.sources{
  margin-top: 10px;
  padding: 10px;
  border-radius: var(--border-radius);
  border: var(--border-width) solid var(--border-color);
  background: var(--bg-header);
}
.sources summary{ cursor: pointer; color: var(--text-main); font-weight: 700; }
.sources ul{ margin: 10px 0 0; padding-left: 18px; color: var(--text-muted); }
.sources li{ margin: 6px 0; word-break: break-word; }

.site-footer{
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 2rem;
  font-size: 13px;
  color: var(--s400);
  text-align: center;
}
.site-footer a{color:inherit;text-decoration:none}
.site-footer a:hover{text-decoration:underline}

/* CASPR org footer */
.editorial-footer{background:linear-gradient(135deg,#5663cd 0%,#7481dd 100%);color:rgba(255,255,255,.7);padding:56px 40px 40px;font-size:17px;line-height:1.7;font-family:var(--font-body)}
.editorial-footer a{color:rgba(255,255,255,.7);text-decoration:none}
.editorial-footer a:hover{color:#fff;text-decoration:none}
.editorial-footer .footer-top{display:flex;justify-content:space-between;gap:40px;margin-bottom:40px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.15)}
.editorial-footer h4{font-size:23px;font-weight:600;color:#fff;margin:0 0 12px}
.editorial-footer p{margin:4px 0;color:rgba(255,255,255,.7)}
.editorial-footer .footer-bottom{font-size:15px;color:rgba(255,255,255,.35)}
.editorial-footer .footer-cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:48px}
.editorial-footer .footer-brand img{filter:none;height:104px;width:auto;margin-bottom:20px}
.editorial-footer .footer-brand p{margin:4px 0}
.editorial-footer .footer-note{margin-top:14px;max-width:340px;color:rgba(255,255,255,.55);font-size:16px}
.editorial-footer .footer-col h5{font-size:15px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:0 0 14px;opacity:.92}
.editorial-footer .footer-col a{display:block;padding:5px 0;color:rgba(255,255,255,.78);font-size:17px}
.editorial-footer .footer-col a:hover{color:#fff}
@media(max-width:860px){.editorial-footer .footer-cols{grid-template-columns:1fr 1fr;gap:32px}.editorial-footer .footer-brand{grid-column:1/-1}}
@media(max-width:640px){.editorial-footer{padding:40px 16px 28px}.editorial-footer .footer-top{flex-direction:column}}
@media(max-width:520px){.editorial-footer .footer-cols{grid-template-columns:1fr}}
.site-footer__inner{
  display:flex;
  gap: 12px;
  justify-content: space-between;
  flex-wrap: wrap;
  color: var(--text-muted);
  padding: 12px 0;
  font-size: 13px;
}

/* Academic-ish citations */
.citations{
  margin-top: 10px;
  padding-top: 10px;
  padding-bottom: 6px;
  border-top: 1px dashed var(--border-color);
}
.citations__label{
  font-size: 12px;
  color: var(--text-muted);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 8px;
  font-weight: 700;
}
.citations__list{
  margin: 0;
  padding-left: 18px;
  color: var(--text-muted);
  line-height: 1.55;
  font-size: 13px;
}
.citation{ margin: 6px 0; }
.citation__author{ color: var(--text-muted); }
.citation__title{ color: var(--accent-color); font-weight: 400; }
.citation__meta{ color: var(--text-muted); }

/* Shareable report-card pages (standalone) */
.page--minimal{
  margin: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding: 20px 28px;
  background: #ffffff;
  overflow-x: hidden;
}

.share-report-card__share{
  font-size: 13px;
  color: #111111;
  text-decoration: underline;
  font-weight: 700;
  letter-spacing: .08em;
}
.share-report-card__share:hover{
  opacity: .8;
}
.share-report-card{
  width: 525px;
  height: 780px;
  min-width: 525px;
  max-width: 525px;
  min-height: 780px;
  max-height: 780px;
  flex: 0 0 auto;
  border: 1.5px solid #9aa3af;
  background: var(--bg-card);
  position: relative;
  overflow: hidden;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  /* the shareable report-card graphic keeps its established faces, not the page switch */
  --card-font-heading: 'Lora', Georgia, serif;
  --card-font-body: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  --card-bad: var(--bad);
  font-family: var(--card-font-body);
  transform: scale(var(--card-scale, 1));
  transform-origin: top center;
}

.share-report-card__outline{
  position: absolute;
  left: 50%;
  top: calc(50% + 80px);
  width: 120%;
  height: 120%;
  opacity: 0.12;
  pointer-events: none;
  transform: translate(-50%, -50%) rotate(-8deg);
}
.share-report-card__outline path{
  fill: none;
  stroke: #0b1220;
  stroke-width: 3;
}

.share-report-card__footer-logo{
  position: relative;
  left: auto;
  right: auto;
  bottom: auto;
  transform: none;
  z-index: 2;
}
.share-report-card__footer-logo img{
  height: 96px;
  width: 100%;
  max-width: none;
  display: block;
  object-fit: contain;
}

.share-report-card__header{
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  margin: -22px -22px 0;
}

.share-report-card__brand{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  text-align: center;
  width: 100%;
  padding: 18px 22px;
  background: #eef2f6;
  color: #0f172a;
}

.share-report-card__org{
  font-size: 13px;
  color: #0f172a;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.2;
  font-family: var(--card-font-heading);
}
.share-report-card__product{
  font-size: 18px;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  line-height: 1.2;
  font-family: var(--card-font-heading);
}

.share-report-card__body{
  display: grid;
  grid-template-columns: 1.35fr 0.65fr;
  gap: 18px;
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
}

.share-report-card__left,
.share-report-card__right{
  position: relative;
  z-index: 1;
}

.share-report-card__left{
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.share-report-card__details{
  padding-left: 8px;
}

.share-report-card__title{
  margin-top: 0;
  margin-bottom: -5px;
  font-size: 40px;
  font-weight: 900;
  letter-spacing: .2px;
  font-family: var(--card-font-heading);
}
.share-report-card__subtitle{
  margin-top: 4px;
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.4;
}

.share-report-card__bullets{
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  color: var(--text-main);
  font-size: 17px;
  line-height: 1.32;
}
.share-report-card__section{
  margin: 12px 0 2px;
  padding: 0;
  font-size: 14px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 900;
  font-family: var(--card-font-heading);
}
.share-report-card__section:first-child{
  margin-top: 0;
}
.share-report-card__bullet{
  margin: 7px 0;
  padding-left: 18px;
  position: relative;
  font-weight: 800;
}
.share-report-card__bullet--good{ color: var(--good); }
.share-report-card__bullet--bad{ color: var(--card-bad); }
.share-report-card__bullet--tax{ color: var(--warn); }
.share-report-card__bullet--neutral{
  color: var(--text-main);
  font-weight: 500;
}
.share-report-card__bullet::before{
  content: "•";
  position: absolute;
  left: 0;
  top: 0.05em;
  color: currentColor;
  opacity: .85;
  font-weight: 800;
  font-size: 18px;
  line-height: 1;
}
.share-report-card__bullet--neutral::before{
  font-weight: 500;
}

.share-report-card__net-flow{
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #111111;
}
.share-report-card__net-flow-kicker{
  font-size: 14px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 900;
  font-family: var(--card-font-heading);
}
.share-report-card__net-flow-value{
  margin-top: 6px;
  font-family: var(--card-font-heading);
  font-size: 21px;
  line-height: 1.2;
  font-weight: 900;
}
.share-report-card__net-flow-value--neutral{ color: var(--text-main); }
.share-report-card__net-flow-value--neg{ color: var(--card-bad); }
.share-report-card__net-flow-value--pos{ color: var(--good); }

.share-report-card__meta{
  margin-top: -7px;
  padding-top: 0;
  padding-bottom: 2px;
  border-top: none;
  display: flex;
  flex-direction: row;
  gap: 0;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  color: #4b5563;
  background: #f3f4f6;
  border-radius: 2px;
  padding-left: 6px;
  padding-right: 6px;
  font-size: 12px;
  line-height: 1.35;
  white-space: nowrap;
  width: 100%;
  position: relative;
  z-index: 2;
}
.share-report-card__meta a{
  color: inherit;
  text-decoration: none;
}
.share-report-card__meta a:hover{
  text-decoration: none;
  opacity: .85;
}

.share-report-card__right{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  text-align: right;
  padding-top: 26px;
}

.share-report-card .grade--f{
  color: var(--card-bad);
}

.share-report-card__grade-kicker{
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  font-family: var(--card-font-heading);
}
.share-report-card__grade{
  margin-top: 2px;
  font-family: var(--card-font-heading);
  font-size: 161px;
  line-height: 1;
  font-weight: 900;
}
.share-report-card__score-kicker{
  margin-top: 16px;
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  font-family: var(--card-font-heading);
}
.share-report-card__score{
  margin-top: 6px;
  font-family: var(--card-font-heading);
  font-size: 36px;
  line-height: 1.1;
  font-weight: 900;
  color: var(--text-main);
}
.share-report-card__score small{
  font-size: 14px;
  color: var(--text-muted);
  font-weight: 700;
}

.share-report-card.scorecard-font--inconsolata .share-report-card__org{
  font-size: 14px;
  line-height: 1.1;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__product{
  font-size: 15px;
  line-height: 1.1;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__title{
  font-size: 36px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__subtitle{
  font-size: 14px;
  line-height: 1.35;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__bullets{
  font-size: 15px;
  line-height: 1.45;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__section{
  font-size: 12px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__net-flow-kicker{
  font-size: 12px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__net-flow-value{
  font-size: 19px;
  line-height: 1.1;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__meta{
  font-size: 13px;
  line-height: 1.3;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__grade-kicker{
  font-size: 13px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__grade{
  font-size: 168px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__score-kicker{
  font-size: 13px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__score{
  font-size: 38px;
}
.share-report-card.scorecard-font--inconsolata .share-report-card__score small{
  font-size: 15px;
}
