/* ==========================================================================
   NeuroHealth — Shared brand tokens (unified green)
   Every app now uses NeuroNotes' green (sage #7FB5A8) as the single accent.
   ========================================================================== */
:root {
  --nh-bg:#0B1012; --nh-surface:#141A1E; --nh-surface-up:#1A2226;
  --nh-surface1:rgba(255,255,255,0.08); --nh-surface2:rgba(255,255,255,0.055);
  --nh-border:rgba(255,255,255,0.09); --nh-border-strong:rgba(255,255,255,0.16);
  --nh-sage:#7FB5A8; --nh-sage-glow:rgba(127,181,168,0.18);
  --nh-sand:#D4B896; --nh-coral:#D48A7C; --nh-lilac:#A899C4;
  --nh-text-hi:#E8E6E0; --nh-text-md:#B0ACA4; --nh-text-lo:#7A776F;
  --nh-accent:#7FB5A8; --nh-accent-contrast:#0B1012;
  --nh-serif:Georgia,'Times New Roman',serif;
  --nh-sans:'Manrope',-apple-system,system-ui,sans-serif;
}
/* All apps share the one green accent. (Kept keyed by data-nh-app so a single
   value here could re-differentiate them later if ever wanted.) */
html[data-nh-app="notes"],html[data-nh-app="suite"],html[data-nh-app="track"],
html[data-nh-app="kids"],html[data-nh-app="maps"],html[data-nh-app="halo"]{
  --nh-accent:#7FB5A8; --nh-accent-contrast:#0B1012;
}

html { overflow-y: scroll; }
body { min-height: 100vh; }
* { scrollbar-width: thin; scrollbar-color: rgba(127,181,168,0.16) transparent; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb { background: rgba(127,181,168,0.16); border-radius: 999px; }
*::-webkit-scrollbar-thumb:hover { background: rgba(127,181,168,0.30); }

.nh-lockup { display:inline-flex; align-items:center; gap:14px; }
.nh-lockup .nh-mark { width:46px; height:46px; flex:0 0 auto; border-radius:11px; }
.nh-lockup .nh-word { font-family:var(--nh-serif); font-weight:500; font-size:27px; letter-spacing:.3px; color:var(--nh-text-hi); line-height:1; }
.nh-lockup .nh-word .nh-leaf { color:var(--nh-accent); }
.nh-lockup .nh-by { font-size:11px; color:var(--nh-accent); letter-spacing:3px; font-weight:500; text-transform:uppercase; margin-top:6px; }

/* ---- Chart language + motion (reduced-motion safe) ---- */
@keyframes ntDraw { from { stroke-dashoffset:1; } to { stroke-dashoffset:0; } }
@keyframes ntRise { from { transform:translateY(9px); } to { transform:none; } }
@keyframes ntShimmer { 0% { background-position:-300px 0; } 100% { background-position:300px 0; } }
.nt-skel { background:linear-gradient(90deg, rgba(255,255,255,.03) 25%, rgba(255,255,255,.075) 38%, rgba(255,255,255,.03) 62%); background-size:600px 100%; animation:ntShimmer 1.5s linear infinite; }
@media (prefers-reduced-motion: reduce) {
  .nt-spark-line { animation:none; stroke-dashoffset:0; }
  .nt-skel { animation:none; }
  .el-ringval { transition:none; }
  .el-bar > i { transition:none; }
  .el-tile.tap:hover { transform:none; }
  .dh-ring { animation:none; }
}
/* Type refinement: aligned figures + balanced headings on detail pages */
#deskDetail, #deskview { font-variant-numeric:tabular-nums; }
#deskDetail h1, #deskDetail h2 { text-wrap:balance; }
