/* Neurohaven v046 — ADHD & Autism assessment reference guide */
.assessment-reference { display:grid; gap:1.35rem; margin-top:1.5rem; }
.assessment-reference * { min-width:0; }
.assessment-reference__hero { position:relative; overflow:hidden; padding:1.35rem 1.45rem 1.4rem; border:.0625rem solid rgba(52,215,238,.24); border-radius:1.15rem; background:linear-gradient(145deg,rgba(52,215,238,.085),rgba(139,156,255,.06) 55%,rgba(127,230,208,.035)); box-shadow:0 1rem 2.8rem rgba(0,0,0,.16); }
.assessment-reference__hero:after { content:""; position:absolute; right:-4.5rem; top:-5rem; width:11rem; height:11rem; border-radius:50%; background:radial-gradient(circle,rgba(52,215,238,.16),transparent 68%); pointer-events:none; }
.assessment-reference__kicker { display:inline-flex; align-items:center; gap:.48rem; margin:0 0 .55rem; color:var(--accent); font-family:var(--font-mono); font-size:.64rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.assessment-reference__kicker:before { content:""; width:.42rem; height:.42rem; border-radius:50%; background:var(--accent); box-shadow:0 0 1rem rgba(52,215,238,.55); }
.assessment-reference__hero h2 { max-width:37rem; margin:0 0 .45rem; font-size:clamp(1.5rem,2.3vw,2rem); line-height:1.08; letter-spacing:-.025em; }
.assessment-reference__hero p { max-width:44rem; margin:.35rem 0 0; }
.assessment-reference__source-order { color:var(--muted); font-size:.78rem; }

.assessment-ref-section { padding:1.2rem 0 .25rem; border-top:.0625rem solid var(--line); }
.assessment-ref-section:first-of-type { border-top:0; }
.assessment-ref-heading { display:grid; grid-template-columns:2.15rem minmax(0,1fr); gap:.8rem; align-items:start; margin-bottom:.85rem; }
.assessment-ref-number { display:grid; place-items:center; width:2.15rem; height:2.15rem; border-radius:.7rem; border:.0625rem solid rgba(52,215,238,.28); background:linear-gradient(145deg,rgba(52,215,238,.13),rgba(139,156,255,.08)); color:var(--accent); font-family:var(--font-mono); font-size:.74rem; font-weight:700; }
.assessment-ref-heading h2 { margin:.02rem 0 .25rem; font-size:1.28rem; line-height:1.2; }
.assessment-ref-heading p { margin:0; font-size:.9rem; }

.assessment-resource-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; margin:.85rem 0 0; }
.assessment-resource-link { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.45rem .7rem; align-items:center; padding:.82rem .9rem; border:.0625rem solid var(--line); border-radius:.8rem; background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 88%,var(--accent) 3%)); color:var(--ink-dim); text-decoration:none; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.assessment-resource-link:hover { transform:translateY(-.0625rem); border-color:rgba(52,215,238,.38); background:var(--panel-2); color:var(--ink); }
.assessment-resource-link strong { color:var(--ink); line-height:1.25; }
.assessment-resource-link small { grid-column:1/-1; color:var(--muted); font-size:.71rem; line-height:1.35; }
.assessment-resource-arrow { color:var(--accent); font-size:.9rem; }
.assessment-resource-grid--compact { grid-template-columns:repeat(3,minmax(0,1fr)); }

.assessment-route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; margin:1rem 0 .65rem; }
.assessment-route-card { padding:.95rem; border:.0625rem solid var(--line); border-radius:.88rem; background:var(--panel); }
.assessment-route-card__tag { display:block; margin-bottom:.4rem; color:var(--accent-2); font-family:var(--font-mono); font-size:.61rem; letter-spacing:.1em; text-transform:uppercase; }
.assessment-route-card strong { display:block; color:var(--ink); margin-bottom:.35rem; }
.assessment-route-card p { margin:0; font-size:.79rem; line-height:1.48; }
.assessment-route-card a { display:inline-flex; margin-top:.65rem; font-size:.75rem; font-weight:700; }

.assessment-callout { margin:.9rem 0; padding:.9rem 1rem; border-left:.2rem solid var(--accent-2); border-radius:.2rem .8rem .8rem .2rem; background:rgba(139,156,255,.07); color:var(--ink-dim); }
.assessment-callout strong { color:var(--ink); }
.assessment-callout p { margin:.25rem 0 0; font-size:.82rem; line-height:1.5; }
.assessment-callout--clinical { border-left-color:var(--accent); background:rgba(52,215,238,.065); }

.assessment-provider-intro { max-width:48rem; }
.assessment-provider-tabs { display:flex; width:max-content; max-width:100%; gap:.28rem; margin:1rem 0 .8rem; padding:.28rem; border:.0625rem solid var(--line); border-radius:.9rem; background:color-mix(in srgb,var(--panel-solid) 76%,transparent); }
.assessment-provider-tab { display:flex; align-items:center; justify-content:center; gap:.45rem; min-height:2.55rem; padding:.62rem .9rem; border-radius:.66rem; color:var(--muted); font-size:.78rem; font-weight:700; text-decoration:none; transition:background .18s ease,color .18s ease,box-shadow .18s ease; }
.assessment-provider-tab:hover { color:var(--ink); background:var(--panel); }
.assessment-provider-tab.is-active { color:#02151a; background:linear-gradient(120deg,var(--accent),var(--accent-2)); box-shadow:0 .45rem 1.5rem rgba(52,215,238,.15); }
.assessment-provider-panel { margin-top:.65rem; }
.assessment-reference.is-tabs-ready .assessment-provider-panel { display:none; }
.assessment-reference.is-tabs-ready .assessment-provider-panel.is-active { display:block; }
.assessment-provider-panel__heading { margin:0 0 .8rem; font-size:1.02rem; }
.assessment-provider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }
.assessment-provider-card { position:relative; display:grid; grid-template-columns:2.25rem minmax(0,1fr); gap:.78rem; padding:.92rem .95rem .95rem; border:.0625rem solid var(--line); border-radius:.9rem; background:linear-gradient(150deg,var(--panel),color-mix(in srgb,var(--panel) 91%,var(--accent-3) 3%)); }
.assessment-provider-rank { display:grid; place-items:center; width:2.25rem; height:2.25rem; border-radius:.68rem; background:rgba(52,215,238,.08); border:.0625rem solid rgba(52,215,238,.2); color:var(--accent); font-family:var(--font-mono); font-size:.67rem; font-weight:700; }
.assessment-provider-card h3 { margin:.05rem 0 .32rem; font-size:.96rem; line-height:1.22; }
.assessment-provider-card p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.47; }
.assessment-provider-card a { display:inline-flex; margin-top:.65rem; font-size:.73rem; font-weight:700; }
.assessment-provider-card--priority { border-color:rgba(52,215,238,.28); background:linear-gradient(150deg,rgba(52,215,238,.075),rgba(139,156,255,.05)); }
.assessment-provider-card--priority .assessment-provider-rank { background:linear-gradient(145deg,rgba(52,215,238,.18),rgba(139,156,255,.14)); }

.assessment-source-note { margin-top:.75rem; padding:1rem 1.05rem; border:.0625rem dashed var(--line-strong); border-radius:.88rem; background:rgba(255,255,255,.018); }
.assessment-source-note strong { display:block; margin-bottom:.35rem; color:var(--ink); }
.assessment-source-note p { margin:.3rem 0 0; font-size:.77rem; line-height:1.5; }

@media (max-width:58rem) {
  .assessment-resource-grid--compact,.assessment-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .assessment-provider-grid { grid-template-columns:1fr; }
}
@media (max-width:40rem) {
  .assessment-reference__hero { padding:1.05rem; }
  .assessment-ref-heading { grid-template-columns:1.9rem minmax(0,1fr); gap:.65rem; }
  .assessment-ref-number { width:1.9rem; height:1.9rem; }
  .assessment-resource-grid,.assessment-resource-grid--compact,.assessment-route-grid { grid-template-columns:1fr; }
  .assessment-provider-tabs { width:100%; }
  .assessment-provider-tab { flex:1; padding:.58rem .7rem; text-align:center; }
  .assessment-provider-card { grid-template-columns:2rem minmax(0,1fr); gap:.65rem; }
  .assessment-provider-rank { width:2rem; height:2rem; }
}

/* v141 — unified ADHD + Autism provider directory */
.assessment-anchor-alias { display:block; position:relative; top:calc(-1 * (var(--header-h, 4.75rem) + 1rem)); visibility:hidden; scroll-margin-top:calc(var(--header-h, 4.75rem) + 1rem); }
.assessment-provider-panel--unified { margin-top:1rem; }
.assessment-provider-directory-head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin:0 0 .9rem; }
.assessment-provider-directory-head > div { min-width:0; }
.assessment-provider-directory-head p { margin:.3rem 0 0; max-width:49rem; color:var(--muted); font-size:.79rem; line-height:1.5; }
.assessment-provider-directory-kicker { margin:0 0 .22rem !important; color:var(--accent) !important; font-family:var(--font-mono); font-size:.62rem !important; font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.assessment-provider-count { flex:0 0 auto; display:inline-flex; align-items:center; min-height:2rem; padding:.4rem .65rem; border:.0625rem solid var(--line); border-radius:999px; background:var(--panel); color:var(--ink-dim); font-family:var(--font-mono); font-size:.67rem; font-weight:700; white-space:nowrap; }
.assessment-provider-grid--directory { grid-template-columns:1fr; gap:.72rem; }
.assessment-provider-card--directory { grid-template-columns:2.25rem minmax(0,1fr); align-items:start; padding:1rem; }
.assessment-provider-card__body { min-width:0; }
.assessment-provider-card__title-row { display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; margin:.02rem 0 .65rem; }
.assessment-provider-card__title-row h3 { margin:0; font-size:1rem; }
.assessment-pathway-badge { flex:0 0 auto; display:inline-flex; align-items:center; min-height:1.65rem; padding:.28rem .52rem; border:.0625rem solid rgba(52,215,238,.22); border-radius:999px; background:rgba(52,215,238,.075); color:var(--accent); font-family:var(--font-mono); font-size:.61rem; font-weight:750; line-height:1.1; white-space:nowrap; }
.assessment-pathway-badge--private { border-color:rgba(139,156,255,.26); background:rgba(139,156,255,.08); color:var(--accent-2); }
.assessment-provider-details { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(8rem,.72fr) minmax(9rem,.85fr) minmax(7.5rem,.58fr); gap:.55rem .8rem; margin:0; }
.assessment-provider-details > div { min-width:0; padding-top:.55rem; border-top:.0625rem solid color-mix(in srgb,var(--line) 82%,transparent); }
.assessment-provider-details dt { margin:0 0 .2rem; color:var(--muted); font-family:var(--font-mono); font-size:.58rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.assessment-provider-details dd { margin:0; color:var(--ink-dim); font-size:.73rem; line-height:1.46; overflow-wrap:anywhere; }
.assessment-provider-details a { margin:0; display:inline; font-size:inherit; font-weight:700; overflow-wrap:anywhere; }
@media (max-width:64rem) {
  .assessment-provider-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:40rem) {
  .assessment-provider-directory-head { display:grid; gap:.55rem; }
  .assessment-provider-count { justify-self:start; }
  .assessment-provider-card__title-row { display:grid; gap:.45rem; }
  .assessment-pathway-badge { justify-self:start; white-space:normal; }
  .assessment-provider-details { grid-template-columns:1fr; }
}

/* v142 — provider field readability: explicit label/value spacing + international phones. */
.assessment-provider-details > div { display:flex; flex-direction:column; align-items:flex-start; row-gap:.32rem; }
.assessment-provider-details dt { margin:0; }
.assessment-provider-details dd { margin:0; }
.assessment-phone-intl { display:block; margin-top:.18rem; color:var(--muted); font-family:var(--font-mono); font-size:.68rem; line-height:1.35; white-space:normal; }
.assessment-provider-details dd br + .assessment-phone-intl { margin-top:.12rem; }

/* v149 — Mental health is deliberately separate from the “Big 6” NDD grid. */
.assessment-resource-separate {
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: .0625rem solid var(--line);
}
.assessment-resource-separate > h3 {
  margin: 0;
}
.assessment-resource-separate > p {
  margin: .35rem 0 0;
  color: var(--muted);
}
.assessment-resource-grid--single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 32rem;
}
