#grph-cnsb.grph-cnsb {
  --grph-cnsb-bg: #f5f7fb;
  --grph-cnsb-card: #ffffff;
  --grph-cnsb-ink: #1e293b;
  --grph-cnsb-muted: #5f6b7a;
  --grph-cnsb-line: #dbe2ea;
  --grph-cnsb-blue: #184f86;
  --grph-cnsb-blue2: #2774b8;
  --grph-cnsb-navy: #0e2741;
  --grph-cnsb-red: #b73445;
  --grph-cnsb-red2: #d85b68;
  --grph-cnsb-amber: #b56a16;
  --grph-cnsb-shadow: 0 16px 38px rgba(17, 34, 52, .10);
  --grph-cnsb-radius: 20px;
  box-sizing: border-box !important;
  width: min(1180px, calc(100% - 22px)) !important;
  margin: 0 auto !important;
  padding: 18px 0 40px !important;
  color: var(--grph-cnsb-ink) !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  line-height: 1.58 !important;
}
#grph-cnsb.grph-cnsb *, #grph-cnsb.grph-cnsb *::before, #grph-cnsb.grph-cnsb *::after { box-sizing: border-box !important; }
#grph-cnsb.grph-cnsb h1, #grph-cnsb.grph-cnsb h2, #grph-cnsb.grph-cnsb h3, #grph-cnsb.grph-cnsb p { margin-top: 0 !important; }
#grph-cnsb.grph-cnsb h1 { font-size: clamp(2rem, 4vw, 3.75rem) !important; line-height: 1.03 !important; letter-spacing: -.035em !important; margin-bottom: 18px !important; color: #fff !important; }
#grph-cnsb.grph-cnsb h2 { font-size: clamp(1.35rem, 2.2vw, 2rem) !important; line-height: 1.18 !important; color: var(--grph-cnsb-navy) !important; margin-bottom: 12px !important; }
#grph-cnsb.grph-cnsb h3 { color: var(--grph-cnsb-navy) !important; line-height: 1.2 !important; }
#grph-cnsb.grph-cnsb p { color: var(--grph-cnsb-muted) !important; }
#grph-cnsb.grph-cnsb a { color: var(--grph-cnsb-blue) !important; }
#grph-cnsb.grph-cnsb code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__hero {
  position: relative !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: 1.25fr .75fr !important;
  gap: 28px !important;
  align-items: center !important;
  min-height: 440px !important;
  padding: clamp(28px, 5vw, 64px) !important;
  border-radius: 28px !important;
  background: radial-gradient(circle at 92% 12%, rgba(255,255,255,.16), transparent 26%), linear-gradient(135deg, #0e2741 0%, #184f86 54%, #b73445 100%) !important;
  box-shadow: var(--grph-cnsb-shadow) !important;
}
#grph-cnsb.grph-cnsb .grph-cnsb__hero::after { content: "" !important; position: absolute !important; inset: auto -90px -100px auto !important; width: 300px !important; height: 300px !important; border-radius: 50% !important; background: rgba(255,255,255,.07) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__hero-copy { position: relative !important; z-index: 2 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__eyebrow { text-transform: uppercase !important; font-weight: 800 !important; letter-spacing: .11em !important; font-size: .75rem !important; color: #dbeeff !important; margin-bottom: 12px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__lede { color: #eef7ff !important; font-size: clamp(1.03rem, 1.7vw, 1.25rem) !important; max-width: 760px !important; margin-bottom: 24px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__hero-pills { display: flex !important; flex-wrap: wrap !important; gap: 9px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__hero-pills span { border: 1px solid rgba(255,255,255,.25) !important; background: rgba(255,255,255,.10) !important; color: #fff !important; border-radius: 999px !important; padding: 7px 11px !important; font-size: .82rem !important; font-weight: 700 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__hero-art { position: relative !important; z-index: 1 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__hero-art img { display: block !important; width: 100% !important; height: auto !important; max-width: 480px !important; margin: 0 auto !important; filter: drop-shadow(0 16px 25px rgba(0,0,0,.18)) !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__notice { display: grid !important; grid-template-columns: 42px 1fr !important; gap: 14px !important; align-items: start !important; margin: 18px 0 !important; padding: 18px 20px !important; border-radius: 16px !important; border: 1px solid #f0c2c8 !important; background: #fff3f4 !important; color: #63333a !important; box-shadow: 0 8px 24px rgba(33, 52, 71, .06) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__notice-icon { display: grid !important; place-items: center !important; width: 36px !important; height: 36px !important; border-radius: 50% !important; background: var(--grph-cnsb-red) !important; color: #fff !important; font-weight: 900 !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__grid { display: grid !important; gap: 18px !important; margin: 18px 0 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__grid--intro, #grph-cnsb.grph-cnsb .grph-cnsb__grid--background { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__card { padding: clamp(20px, 3vw, 32px) !important; background: var(--grph-cnsb-card) !important; border: 1px solid var(--grph-cnsb-line) !important; border-radius: var(--grph-cnsb-radius) !important; box-shadow: 0 12px 28px rgba(17,34,52,.07) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__card--compact { margin-top: 16px !important; padding: 22px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__card--wide { margin: 18px 0 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__card-kicker { display: inline-block !important; color: var(--grph-cnsb-blue) !important; text-transform: uppercase !important; letter-spacing: .08em !important; font-weight: 900 !important; font-size: .73rem !important; margin-bottom: 8px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__formula { display: grid !important; grid-template-columns: auto auto 1fr !important; gap: 10px !important; align-items: center !important; padding: 14px 16px !important; margin: 14px 0 !important; border-radius: 14px !important; background: #eef5fb !important; border: 1px solid #d7e7f5 !important; color: #173a5c !important; font-weight: 800 !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__evidence-strip { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 1px !important; overflow: hidden !important; margin: 18px 0 !important; border-radius: 18px !important; background: #d8e2ed !important; box-shadow: 0 10px 26px rgba(17,34,52,.07) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__evidence-strip > div { padding: 20px !important; background: #f8fbfd !important; color: #42556a !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__evidence-strip strong { color: var(--grph-cnsb-navy) !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__results { margin: 20px 0 !important; padding: clamp(22px, 4vw, 38px) !important; border-radius: 22px !important; border: 2px solid #d6e0e9 !important; background: #fff !important; box-shadow: var(--grph-cnsb-shadow) !important; scroll-margin-top: 14px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results--high { border-color: #d88b95 !important; background: linear-gradient(180deg,#fff7f8,#fff) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results--caution { border-color: #e2c185 !important; background: linear-gradient(180deg,#fffaf0,#fff) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results-head { display: flex !important; justify-content: space-between !important; gap: 18px !important; align-items: center !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results .grph-cnsb__eyebrow { color: var(--grph-cnsb-blue) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__score { display: grid !important; place-items: center !important; min-width: 128px !important; min-height: 100px !important; padding: 14px !important; border-radius: 18px !important; background: linear-gradient(135deg,#173f69,#2b79ba) !important; color: #fff !important; font-size: clamp(2.2rem, 5vw, 3.4rem) !important; font-weight: 900 !important; line-height: 1 !important; box-shadow: 0 12px 26px rgba(24,79,134,.22) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results--high .grph-cnsb__score { background: linear-gradient(135deg,#8d2432,#d85b68) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__result-band { display: grid !important; gap: 6px !important; margin: 18px 0 !important; padding: 16px 18px !important; border-radius: 14px !important; background: #eef5fb !important; color: #3f5368 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__results--high .grph-cnsb__result-band { background: #fff0f2 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__alert { margin: 14px 0 !important; padding: 12px 14px !important; border-radius: 12px !important; background: #fff0f0 !important; border: 1px solid #f0b8b8 !important; color: #7a2730 !important; font-weight: 700 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__metric-grid { display: grid !important; grid-template-columns: repeat(5, minmax(0,1fr)) !important; gap: 10px !important; margin: 16px 0 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__metric { padding: 14px !important; border: 1px solid var(--grph-cnsb-line) !important; border-radius: 14px !important; background: #fff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__metric span { display: block !important; font-size: .76rem !important; color: var(--grph-cnsb-muted) !important; min-height: 38px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__metric strong { display: block !important; margin-top: 5px !important; color: var(--grph-cnsb-navy) !important; font-size: 1.35rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__polypharmacy { margin: 16px 0 !important; padding: 18px !important; border-radius: 15px !important; background: #f4f7fa !important; border: 1px solid var(--grph-cnsb-line) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__polypharmacy--flag { background: #fff7eb !important; border-color: #ebc58f !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__polypharmacy h3 { margin-bottom: 6px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__polypharmacy p { margin-bottom: 0 !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__calculator-shell { margin: 20px 0 !important; padding: clamp(16px,3vw,28px) !important; border-radius: 24px !important; background: linear-gradient(180deg,#eef3f8,#f8fafc) !important; border: 1px solid #dbe4ec !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__calculator-head { display: grid !important; grid-template-columns: 1fr minmax(240px,340px) !important; gap: 20px !important; align-items: end !important; margin-bottom: 16px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__search span { display: block !important; margin-bottom: 6px !important; font-size: .78rem !important; font-weight: 800 !important; color: #53667a !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__search input { width: 100% !important; height: 46px !important; padding: 0 14px !important; border: 1px solid #c9d6e2 !important; border-radius: 12px !important; background: #fff !important; color: var(--grph-cnsb-ink) !important; font: inherit !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__search input:focus, #grph-cnsb.grph-cnsb .grph-cnsb__dose-wrap input:focus, #grph-cnsb.grph-cnsb .grph-cnsb__inline-field input:focus { outline: 3px solid rgba(39,116,184,.18) !important; border-color: var(--grph-cnsb-blue2) !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__drug-section { margin: 12px 0 !important; border: 1px solid var(--grph-cnsb-line) !important; border-radius: 16px !important; overflow: hidden !important; background: #fff !important; box-shadow: 0 6px 18px rgba(17,34,52,.05) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section > summary { list-style: none !important; cursor: pointer !important; display: grid !important; grid-template-columns: 1fr !important; gap: 3px !important; padding: 18px 20px !important; background: #f4f8fb !important; border-left: 6px solid var(--grph-cnsb-blue2) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section > summary::-webkit-details-marker { display: none !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section > summary span { font-weight: 900 !important; color: var(--grph-cnsb-navy) !important; font-size: 1.04rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section > summary small { color: #687789 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section--amber > summary { border-left-color: #c4802b !important; background: #fff9ef !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section--rose > summary { border-left-color: #bd5867 !important; background: #fff5f7 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section--violet > summary { border-left-color: #7358af !important; background: #f8f6ff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section--sky > summary { border-left-color: #3e87b9 !important; background: #f2f9fd !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-section--teal > summary { border-left-color: #2c8d86 !important; background: #f1fbfa !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-body { padding: 16px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__subgroup { margin: 10px 0 !important; padding-bottom: 7px !important; border-bottom: 1px solid #e6ebf0 !important; font-size: 1rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-grid { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-row { display: grid !important; grid-template-columns: minmax(130px,1fr) minmax(150px,190px) !important; gap: 6px 12px !important; align-items: center !important; padding: 13px !important; border: 1px solid #e1e7ee !important; border-radius: 13px !important; background: #fbfcfe !important; cursor: text !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-row:focus-within { border-color: #9fc3df !important; background: #fff !important; box-shadow: 0 0 0 3px rgba(39,116,184,.09) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-name { font-weight: 800 !important; color: #24384e !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-name em { font-weight: 600 !important; color: #6b7886 !important; font-style: normal !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-row small { grid-column: 1 / -1 !important; color: #7a8794 !important; font-size: .72rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__dose-wrap { display: grid !important; grid-template-columns: minmax(70px,1fr) auto !important; overflow: hidden !important; border: 1px solid #cbd7e2 !important; border-radius: 10px !important; background: #fff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__dose-wrap input { width: 100% !important; height: 40px !important; border: 0 !important; padding: 0 9px !important; background: #fff !important; color: #1e293b !important; font: inherit !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__dose-wrap span { display: grid !important; place-items: center !important; padding: 0 9px !important; background: #edf2f6 !important; border-left: 1px solid #d7e0e8 !important; color: #5d6c7b !important; font-size: .75rem !important; white-space: nowrap !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__drug-row[hidden] { display: none !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__optional { display: inline-block !important; margin-left: 6px !important; padding: 3px 7px !important; border-radius: 999px !important; background: #edf2f7 !important; color: #667687 !important; font-size: .7rem !important; vertical-align: middle !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__inline-field { display: inline-grid !important; grid-template-columns: auto 90px !important; gap: 10px !important; align-items: center !important; font-weight: 800 !important; color: #394f66 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__inline-field input { height: 40px !important; padding: 0 9px !important; border: 1px solid #c8d5e1 !important; border-radius: 9px !important; background: #fff !important; font: inherit !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__actions, #grph-cnsb.grph-cnsb .grph-cnsb__report-actions { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; margin-top: 16px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button { appearance: none !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 46px !important; padding: 0 18px !important; border-radius: 11px !important; border: 1px solid transparent !important; font: inherit !important; font-weight: 900 !important; text-decoration: none !important; cursor: pointer !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button--primary { background: linear-gradient(135deg,#173f69,#2b79ba) !important; color: #fff !important; box-shadow: 0 10px 22px rgba(24,79,134,.20) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button--secondary { background: #fff !important; border-color: #bacbd9 !important; color: #204768 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button--ghost { background: transparent !important; border-color: #c5d1dc !important; color: #526679 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button:hover { transform: translateY(-1px) !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__details { margin-top: 16px !important; border: 1px solid var(--grph-cnsb-line) !important; border-radius: 14px !important; background: #fff !important; overflow: hidden !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__details > summary { cursor: pointer !important; padding: 14px 16px !important; font-weight: 900 !important; color: var(--grph-cnsb-navy) !important; background: #f7f9fb !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table-wrap { overflow-x: auto !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table { width: 100% !important; border-collapse: collapse !important; background: #fff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table th, #grph-cnsb.grph-cnsb .grph-cnsb__table td { padding: 12px 13px !important; text-align: left !important; border-bottom: 1px solid #e7ecf1 !important; vertical-align: top !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table th { color: #4c5f72 !important; font-size: .75rem !important; text-transform: uppercase !important; letter-spacing: .04em !important; background: #f7f9fb !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table td { color: #394c60 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table td small { display: block !important; color: #7b8895 !important; margin-top: 3px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table code { font-size: .78rem !important; white-space: normal !important; color: #395b78 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__report-text { position: absolute !important; left: -99999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__profile-note { margin-top: 14px !important; padding: 14px 16px !important; border-radius: 12px !important; background: #eef5fb !important; border-left: 5px solid var(--grph-cnsb-blue2) !important; color: #3e5369 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__steps { display: grid !important; grid-template-columns: repeat(5,minmax(0,1fr)) !important; gap: 10px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__steps > div { padding: 14px !important; border-radius: 13px !important; background: #f6f9fb !important; border: 1px solid #e0e7ed !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__steps strong { display: grid !important; place-items: center !important; width: 30px !important; height: 30px !important; margin-bottom: 8px !important; border-radius: 50% !important; background: var(--grph-cnsb-blue) !important; color: #fff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__steps span { color: #506276 !important; font-size: .88rem !important; }

#grph-cnsb.grph-cnsb .grph-cnsb__references { margin-top: 18px !important; padding: clamp(22px,3vw,32px) !important; border-radius: 20px !important; background: #102a44 !important; color: #dbe9f6 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__references h2 { color: #fff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__references ol { margin: 0 !important; padding-left: 1.3rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__references li { margin: 9px 0 !important; color: #d8e4ef !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__references a { color: #9ed5ff !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__footer { margin: 18px 0 0 !important; padding: 16px 4px !important; border-top: 1px solid #dce3ea !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__footer p { font-size: .86rem !important; margin-bottom: 8px !important; }

@media (max-width: 900px) {
  #grph-cnsb.grph-cnsb .grph-cnsb__hero { grid-template-columns: 1fr !important; min-height: 0 !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__hero-art { max-width: 440px !important; justify-self: center !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__grid--intro, #grph-cnsb.grph-cnsb .grph-cnsb__grid--background { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__evidence-strip { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__calculator-head { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__drug-grid { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__steps { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
  #grph-cnsb.grph-cnsb { width: min(100% - 12px, 1180px) !important; padding-top: 6px !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__hero { padding: 26px 20px !important; border-radius: 20px !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__hero-art { display: none !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__notice { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__results-head { align-items: flex-start !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__score { min-width: 92px !important; min-height: 78px !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__metric-grid { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__metric span { min-height: 0 !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__drug-row { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__dose-wrap { width: 100% !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__steps { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table thead { display: none !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table, #grph-cnsb.grph-cnsb .grph-cnsb__table tbody, #grph-cnsb.grph-cnsb .grph-cnsb__table tr, #grph-cnsb.grph-cnsb .grph-cnsb__table td { display: block !important; width: 100% !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table tr { padding: 10px 0 !important; border-bottom: 1px solid #e4eaf0 !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table td { display: grid !important; grid-template-columns: 110px 1fr !important; gap: 10px !important; border: 0 !important; padding: 6px 12px !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table td::before { content: attr(data-label) !important; font-size: .72rem !important; font-weight: 900 !important; text-transform: uppercase !important; color: #738190 !important; }
}
@media print {
  #grph-cnsb.grph-cnsb { width: 100% !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__hero, #grph-cnsb.grph-cnsb .grph-cnsb__notice, #grph-cnsb.grph-cnsb .grph-cnsb__calculator-shell, #grph-cnsb.grph-cnsb .grph-cnsb__grid, #grph-cnsb.grph-cnsb .grph-cnsb__evidence-strip, #grph-cnsb.grph-cnsb .grph-cnsb__card--wide, #grph-cnsb.grph-cnsb .grph-cnsb__references, #grph-cnsb.grph-cnsb .grph-cnsb__footer, #grph-cnsb.grph-cnsb .grph-cnsb__report-actions { display: none !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__results { display: block !important; border: 1px solid #bbb !important; box-shadow: none !important; }
}


/* v2.1 background, reference, and TEP components */
#grph-cnsb.grph-cnsb .grph-cnsb__hero-actions { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; margin: 0 0 16px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button--hero { background: #fff !important; color: #163f67 !important; box-shadow: 0 10px 24px rgba(0,0,0,.18) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__button--hero-outline { background: rgba(255,255,255,.10) !important; color: #fff !important; border-color: rgba(255,255,255,.45) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__section-head { display: grid !important; grid-template-columns: minmax(0,1fr) auto !important; gap: 20px !important; align-items: start !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__reference-card h3 { margin: 24px 0 10px !important; padding-top: 6px !important; font-size: 1.12rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table--reference th { background: #eef5fb !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table--reference td:first-child { min-width: 170px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__footnote { margin: 10px 0 0 !important; padding: 10px 12px !important; border-radius: 10px !important; background: #f6f8fa !important; font-size: .84rem !important; color: #627286 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__notice--info { border-color: #bbd7ea !important; background: #f0f8fd !important; color: #315a76 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__notice--info .grph-cnsb__notice-icon { background: var(--grph-cnsb-blue2) !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__beers-card { border-top: 6px solid #376d9e !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__table--guidance td:first-child { width: 22% !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__legacy-card { border-top: 6px solid #b56a16 !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__issue-grid, #grph-cnsb.grph-cnsb .grph-cnsb__tep-points { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 12px !important; margin-top: 16px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__issue-grid > div, #grph-cnsb.grph-cnsb .grph-cnsb__tep-points > div { padding: 16px !important; border-radius: 14px !important; border: 1px solid #dde6ee !important; background: #f8fafc !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__issue-grid strong, #grph-cnsb.grph-cnsb .grph-cnsb__tep-points strong { display: block !important; color: var(--grph-cnsb-navy) !important; margin-bottom: 6px !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__issue-grid span, #grph-cnsb.grph-cnsb .grph-cnsb__tep-points span { display: block !important; color: #596c80 !important; font-size: .9rem !important; }
#grph-cnsb.grph-cnsb .grph-cnsb__tep-card { overflow: hidden !important; border: 1px solid #bfcfe0 !important; background: linear-gradient(135deg,#f8fbff 0%,#f3f7fb 58%,#fff6f4 100%) !important; }
#grph-cnsb.grph-cnsb #calculator, #grph-cnsb.grph-cnsb #sdd-reference-values, #grph-cnsb.grph-cnsb #tep { scroll-margin-top: 14px !important; }

@media (max-width: 900px) {
  #grph-cnsb.grph-cnsb .grph-cnsb__section-head { grid-template-columns: 1fr !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__issue-grid, #grph-cnsb.grph-cnsb .grph-cnsb__tep-points { grid-template-columns: 1fr !important; }
}
@media (max-width: 600px) {
  #grph-cnsb.grph-cnsb .grph-cnsb__hero-actions .grph-cnsb__button { width: 100% !important; }
  #grph-cnsb.grph-cnsb .grph-cnsb__table--reference td:first-child, #grph-cnsb.grph-cnsb .grph-cnsb__table--guidance td:first-child { width: auto !important; min-width: 0 !important; }
}

#grph-cnsb.grph-cnsb .grph-cnsb__hero--method { min-height: 380px !important; }
