/* Hide WordPress/Astra page title on the dosing-table page */
body .entry-title,
body .page-title,
body h1.entry-title,
body .wp-block-post-title,
body .ast-single-entry-banner,
body .entry-header {
  display:none !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
}
body #primary,
body #main,
body .site-main,
body .entry-content,
body .post-content {
  margin-top:0 !important;
  padding-top:0 !important;
}

.sd-ladder-section {
  background:#fff;
  color:#0f172a;
  padding:12px 20px 80px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.sd-ladder-container { max-width:1100px; margin:0 auto; }

.sd-sticky-links {
  position:sticky; top:0; z-index:50;
  display:flex; gap:10px;
  padding:8px; margin:0 0 24px;
  background:rgba(255,255,255,.96);
  border:1px solid #e2e8f0; border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.07);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.sd-ext-btn {
  flex:1; display:flex; align-items:center; justify-content:center; gap:7px;
  min-height:42px; padding:9px 12px; border-radius:11px;
  text-decoration:none !important; font-size:13px; line-height:1.2; font-weight:800;
  transition:transform .15s ease,box-shadow .15s ease;
}
.sd-ext-btn:hover { transform:translateY(-1px); box-shadow:0 3px 8px rgba(0,0,0,.06); }
.sd-ext-btn:hover,.sd-ext-btn:focus,.sd-ext-btn:visited { text-decoration:none !important; }
.btn-nag { background:#f0fdfa; color:#0d9488 !important; border:1px solid #ccfbf1; }
.btn-guide { background:#fffbeb; color:#b45309 !important; border:1px solid #fef3c7; }

.sd-ladder-header { text-align:center; margin-bottom:24px; }
.sd-ladder-header h1 {
  margin:0 0 8px !important; color:#0f172a !important;
  font-size:28px !important; line-height:1.15 !important; font-weight:900 !important;
  letter-spacing:-.5px;
}
.sd-ladder-header p { margin:0; color:#64748b; font-size:14px; line-height:1.5; }

.sd-ladder-controls {
  display:grid; grid-template-columns:minmax(0,2fr) minmax(160px,1fr);
  gap:16px; align-items:end;
  margin-bottom:16px; padding:18px;
  background:#f8fafc; border:1px solid #e2e8f0; border-radius:16px;
}
.sd-ladder-select-wrap label {
  display:block; margin-bottom:7px; color:#94a3b8;
  font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em;
}
#ladder-drug-select {
  width:100%; height:48px; padding:0 14px;
  background:#fff; color:#1e293b; border:2px solid #bfdbfe; border-radius:12px;
  outline:none; font-size:14px; font-weight:700; cursor:pointer;
}
#ladder-drug-select:focus { border-color:#3b82f6; box-shadow:0 0 0 3px rgba(59,130,246,.10); }
.sd-ladder-badge-wrap { display:flex; justify-content:flex-end; }
.sd-ladder-freq-badge {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:40px; min-width:120px; padding:8px 14px;
  background:#eff6ff; color:#1d4ed8; border:1px solid #bfdbfe; border-radius:11px;
  font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em;
}
.sd-ladder-freq-badge.is-abx { background:#fef2f2; color:#b91c1c; border-color:#fecaca; }

.sd-ladder-remark {
  margin-bottom:16px; padding:10px 13px;
  background:#fffbeb; color:#92400e; border:1px solid #fde68a; border-radius:10px;
  font-size:12px; line-height:1.5; font-weight:650;
}

.sd-ladder-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px;
}
.sd-weight-column {
  padding:8px; background:#fff; border:1px solid #eef2f7; border-radius:16px;
  box-shadow:0 4px 14px rgba(15,23,42,.035);
}
.sd-strip-row {
  display:flex; overflow:hidden; margin-bottom:4px; border-radius:8px;
  font-size:13px; font-weight:800;
}
.sd-strip-left { width:45%; padding:8px 10px; background:#dbeafe; color:#1e3a8a; text-align:center; }
.sd-strip-right { width:55%; padding:8px 10px; background:#eff6ff; color:#1d4ed8; text-align:center; }
.sd-strip-header {
  background:#1e293b !important; color:#fff !important; padding:7px 10px;
  font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:.08em;
}
.abx-strip-left { background:#fee2e2 !important; color:#991b1b !important; }
.abx-strip-right { background:#fef2f2 !important; color:#b91c1c !important; }
.sd-max-text { display:inline-block; margin-left:3px; opacity:.72; font-size:9px; font-weight:600; }

.sd-band-layout {
  grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;
}
.sd-band-row {
  display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center;
  min-height:54px; padding:11px 14px;
  background:#eff6ff; border:1px solid #dbeafe; border-radius:12px;
  color:#475569; font-size:13px;
}
.sd-band-row strong { color:#1d4ed8; font-size:13px; font-weight:850; text-align:right; }
.sd-band-layout.is-abx .sd-band-row { background:#fef2f2; border-color:#fee2e2; }
.sd-band-layout.is-abx .sd-band-row strong { color:#b91c1c; }

.sd-info-card {
  grid-column:1/-1; padding:18px; border:1px solid #dbeafe; border-radius:16px;
  background:#f8fbff; color:#334155; font-size:14px; line-height:1.6;
}
.sd-info-card strong { color:#0f172a; }

.sd-pathway-footer {
  margin-top:30px; padding-top:18px; border-top:1px solid #e2e8f0;
  text-align:center; color:#94a3b8; font-size:11px; line-height:1.5;
}
.sd-pathway-footer p { margin:0; color:#64748b; font-weight:800; }

@media (max-width:760px) {
  .sd-ladder-section { padding:8px 14px 60px; }
  .sd-sticky-links { margin-bottom:20px; }
  .sd-ladder-header h1 { font-size:24px !important; }
  .sd-ladder-controls { grid-template-columns:1fr; gap:12px; padding:14px; }
  .sd-ladder-badge-wrap { justify-content:flex-start; }
  .sd-ladder-freq-badge { min-width:0; }
  .sd-ladder-grid { grid-template-columns:1fr; }
  .sd-band-layout { grid-template-columns:1fr; }
  .sd-ext-btn { padding:8px 6px; font-size:12px; }
}
