/*
 * NEO report, redesign 2026-10-14 (docs/NEO-REPORT-REDESIGN-PLAN.md) — styles for assets/neo-report.js's new layout.
 *
 * Everything lives under `.nrx` (one namespace on purpose: result.css / main.css have broad `.res-scope ul/p/.card` rules).
 * The start card is the shared one (result.css `.res-hero` + result.js title typing / backdrop). Lists carry `.mpt-limits`
 * (result.css's official opt-out of its boxed `ul`). Colours: theme tokens first (--card/--ink/--muted flip in dark mode by
 * themselves); the few literal hexes are tokenised by scripts/tokenize_colors.py, dark twins are at the bottom.
 */
.nrx {
  --nrx-green: var(--lc-4d7c62, #4d7c62);
  --nrx-green-soft: var(--lc-dff5e3, #dff5e3);
  --nrx-hi: var(--lc-d9772b, #d9772b);
  --nrx-lo: var(--lc-4b8fc4, #4b8fc4);
  --nrx-mid: var(--lc-6fae8a, #6fae8a);
  --nrx-track: rgba(23, 25, 28, .08);
  --nrx-line: rgba(36, 74, 57, .14);
  display: flex; flex-direction: column; gap: 22px; color: var(--ink);
}
.nrx > * { min-width: 0; }
.nrx p { line-height: 1.95; margin: 0 0 .6em; }
.nrx h2, .nrx h3, .nrx h4 { margin: 0; }

/* result.js hides direct children of .neo-report until its observer fires; this layout is always visible */
.res-scope .neo-report.nrx > *, .res-js .neo-report.nrx > .res-rv { opacity: 1 !important; transform: none !important; visibility: visible !important; }

/* ---------- start card ---------- */
.res-scope .nrx .nrx-hero.res-hero { display: flex; flex-direction: column; align-items: stretch; gap: 16px; margin: 0; text-align: center; }
.nrx-hero .res-eyebrow, .nrx-hero .res-tier-line { align-self: center; margin: 0; }
.nrx-hero .res-eyebrow svg { width: 16px; height: 16px; }
.res-scope .nrx .nrx-hero h2.nrx-hero__headline { font-size: clamp(22px, 4vw, 34px); line-height: 1.8; margin: 0; max-width: 42ch; align-self: center; }
.nrx-hero__tag { max-width: 60ch; align-self: center; margin: 0; font-size: 16px; }
.nrx-caps { display: grid; gap: 10px; grid-template-columns: repeat(5, minmax(0, 1fr)); text-align: start; }
.nrx-cap { display: grid; gap: 6px; align-content: start; padding: 12px 12px 10px; border-radius: 18px; border: 1px solid var(--res-line, var(--nrx-line)); background: rgba(255, 255, 255, .8); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: var(--ink); text-decoration: none; transition: transform var(--dur), box-shadow var(--dur); }
.nrx-cap:hover, .nrx-cap:focus-visible { transform: translateY(-2px); box-shadow: 0 12px 22px -16px rgba(0, 0, 0, .45); outline: none; }
.nrx-cap__name { font-size: 14.5px; line-height: 1.5; }
.nrx-cap__pos { font-size: 12px; color: var(--muted); line-height: 1.5; }
.nrx-cap__label { font-style: normal; font-size: 12.5px; font-weight: 700; color: var(--nrx-mid); }
.nrx-cap.is-hi .nrx-cap__label { color: var(--nrx-hi); } .nrx-cap.is-lo .nrx-cap__label { color: var(--nrx-lo); }
.nrx-hero__tiles { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); text-align: start; }
.nrx-tile { background: rgba(255, 255, 255, .8); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); border: 1px solid var(--res-line, var(--nrx-line)); border-radius: 20px; padding: 14px 16px; display: grid; gap: 10px; align-content: start; }
.nrx-tile h4 { font-size: 14px; color: var(--muted); font-weight: 600; }
.nrx-tile__item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(70px, .8fr); gap: 4px 10px; align-items: center; font-size: 14.5px; }
.nrx-tile__item small { grid-column: 1 / -1; font-size: 12.5px; color: var(--muted); }
.nrx-tile__cap { font-size: 13px; color: var(--muted); margin: 0; line-height: 1.7; }
.nrx-tile--usual { justify-items: center; text-align: center; }
.nrx-hero__step { background: rgba(255, 255, 255, .8); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); border: 1.5px dashed var(--nrx-green); border-radius: 18px; padding: 12px 18px; text-align: start; }
.nrx-hero__step strong { display: block; font-size: 14px; color: var(--nrx-green); margin-bottom: 2px; }
.nrx-hero__step p { margin: 0; font-size: 15.5px; }
.nrx-hero .res-hero__meta { margin-top: 0; }
.nrx-hero__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.nrx-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; padding: 4px 12px; border-radius: 999px; border: 1px solid var(--nrx-line); background: var(--card); color: var(--ink); text-decoration: none; }
.nrx-chip--warn { background: var(--lc-fff4d6, #fff4d6); border-color: var(--lc-f0d68a, #f0d68a); color: var(--lt-6b4b00, #6b4b00); }
.nrx-chip--soft { color: var(--muted); }
/* parts arrive after the typed title, like the card's other parts */
.res-hero.res-tw .nrx-caps, .res-hero.res-tw .nrx-hero__tag, .res-hero.res-tw .nrx-hero__tiles, .res-hero.res-tw .nrx-hero__step { opacity: .15; transform: translateY(14px) scale(.98); transition: opacity .6s, transform .7s cubic-bezier(.2, .9, .3, 1.25); }
.res-hero.res-tw.res-tw-fin .nrx-caps, .res-hero.res-tw.res-tw-fin .nrx-hero__tag, .res-hero.res-tw.res-tw-fin .nrx-hero__tiles, .res-hero.res-tw.res-tw-fin .nrx-hero__step { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .res-hero.res-tw .nrx-caps, .res-hero.res-tw .nrx-hero__tag, .res-hero.res-tw .nrx-hero__tiles, .res-hero.res-tw .nrx-hero__step { opacity: 1 !important; transform: none !important; transition: none; } }

/* ---------- gauge: the lighter band is the measurement range, the dot its middle; low = reading start (right) ---------- */
.nrx-gauge { position: relative; display: block; height: 12px; border-radius: 99px; background: var(--nrx-track); min-width: 60px; }
.nrx-gauge__zone { position: absolute; inset-block: 0; inset-inline-start: 25%; width: 50%; background: rgba(111, 174, 138, .22); }
.nrx-gauge__range { position: absolute; inset-block: 3px; inset-inline-start: var(--lo); width: calc(var(--hi) - var(--lo)); border-radius: 99px; background: rgba(111, 174, 138, .55); }
.nrx-gauge.is-hi .nrx-gauge__range { background: rgba(217, 119, 43, .5); } .nrx-gauge.is-lo .nrx-gauge__range { background: rgba(75, 143, 196, .5); }
.nrx-gauge__tick { position: absolute; inset-block: -2px; inset-inline-start: var(--x); width: 1.5px; background: rgba(23, 25, 28, .28); }
.nrx-gauge__dot { position: absolute; top: 50%; inset-inline-start: var(--x); width: 16px; height: 16px; margin-top: -8px; border-radius: 50%; background: var(--nrx-mid); border: 3px solid var(--card); box-shadow: 0 1px 4px rgba(0, 0, 0, .3); transform: translateX(50%); }
.nrx-gauge.is-hi .nrx-gauge__dot { background: var(--nrx-hi); } .nrx-gauge.is-lo .nrx-gauge__dot { background: var(--nrx-lo); }
.nrx-gauge__ends { position: absolute; inset-inline: 0; top: 100%; display: flex; justify-content: space-between; margin-top: 3px; font-size: 11px; color: var(--muted); }
.nrx-gauge__ends i { font-style: normal; }
.nrx-gauge:has(.nrx-gauge__ends) { margin-bottom: 18px; }
.nrx-js .nrx-anim:not(.is-in) .nrx-gauge__dot { opacity: .15; }
.nrx-js .nrx-anim .nrx-gauge__dot { transition: opacity .7s var(--ease) .15s; }
.nrx-js .nrx-anim:not(.is-in) .nrx-gauge__range { transform: scaleX(.2); }
.nrx-js .nrx-anim .nrx-gauge__range { transform-origin: right center; transition: transform .9s var(--ease) .1s; }

.nrx-ring { position: relative; width: 108px; height: 108px; }
.nrx-ring svg { width: 100%; height: 100%; transform: rotate(-90deg) scaleY(-1); }
.nrx-ring circle { fill: none; stroke-width: 3.6; }
.nrx-ring .bg { stroke: var(--nrx-track); }
.nrx-ring .fg { stroke: var(--nrx-green); stroke-linecap: round; stroke-dasharray: calc(var(--p) * 1px) 100; }
.nrx-ring span { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; font-size: 26px; font-weight: 700; line-height: 1; }
.nrx-ring small { display: block; font-size: 11.5px; font-weight: 500; color: var(--muted); margin-top: 4px; }
.nrx-js .nrx-anim:not(.is-in) .nrx-ring .fg { stroke-dasharray: 0 100; }
.nrx-js .nrx-anim .nrx-ring .fg { transition: stroke-dasharray 1.2s var(--ease) .2s; }

/* ---------- sticky nav ---------- */
.nrx-nav { position: sticky; top: calc(var(--header-h, 66px) + 6px); z-index: 6; display: flex; gap: 6px; overflow-x: auto; padding: 8px 10px; border-radius: 999px; background: var(--card); border: 1px solid var(--nrx-line); box-shadow: 0 10px 24px -18px rgba(0, 0, 0, .5); scrollbar-width: none; }
.nrx-nav a { flex: 0 0 auto; padding: 6px 14px; border-radius: 999px; font-size: 13.5px; color: var(--muted); text-decoration: none; white-space: nowrap; }
.nrx-nav a:hover { background: var(--nrx-green-soft); color: var(--ink); }
.nrx-nav a.is-on { background: var(--nrx-green); color: var(--lt-ffffff, #fff); }

/* ---------- map (5 -> 10 -> 30) ---------- */
.nrx-map, .nrx-card, .nrx-care { background: var(--card); border: 1px solid var(--nrx-line); border-radius: 22px; padding: 18px clamp(14px, 2vw, 24px) 16px; }
.nrx .nrx-card__title { font-family: var(--font-display); font-size: clamp(18px, 2.4vw, 22px); margin-bottom: 8px; color: var(--res-green-dark, var(--lt-163527, #163527)); display: flex; align-items: center; }
.nrx .nrx-t-ico { margin-inline-end: 10px; color: var(--nrx-green); }
.nrx-hint { font-size: 14px; color: var(--muted); margin: 0 0 12px; }
.nrx-tree { display: grid; gap: 8px; }
.nrx-row { border: 1px solid var(--nrx-line); border-radius: 16px; background: var(--card); }
.nrx-row__head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(90px, 1fr) minmax(5.5em, auto); gap: 14px; align-items: center; padding: 10px 14px; font-size: 14.5px; list-style: none; cursor: pointer; }
.nrx-row--leaf > .nrx-row__head { cursor: default; }
.nrx-row > summary::-webkit-details-marker { display: none; }
.nrx-row > summary::before { content: '+'; position: absolute; }
.nrx-row > summary { position: relative; }
.nrx-row > summary::before { content: none; }
.nrx-row__name { font-weight: 600; }
.nrx-row__lab { font-size: 12.5px; color: var(--muted); text-align: end; }
.nrx-row.is-hi > .nrx-row__head .nrx-row__lab, .nrx-row.is-hi > summary .nrx-row__lab { color: var(--nrx-hi); }
.nrx-row.is-lo > .nrx-row__head .nrx-row__lab, .nrx-row.is-lo > summary .nrx-row__lab { color: var(--nrx-lo); }
.nrx-row[open] > summary { background: var(--nrx-green-soft); border-radius: 15px 15px 0 0; }
.nrx-row__body { padding: 8px 12px 12px; display: grid; gap: 8px; }
.nrx-row__pole { font-size: 14.5px; margin: 0; }
.nrx-l1, .nrx-l2 { background: var(--surface-alt); }
.nrx-l1 .nrx-row__head { font-size: 14px; } .nrx-l2 .nrx-row__head { font-size: 13.5px; padding: 8px 12px; }
.nrx-l2 .nrx-row__name { font-weight: 500; }

/* ---------- discoveries (sticky stack on wide screens) ---------- */
.nrx-disc { display: grid; gap: 14px; }
.nrx-disc__stack { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.nrx-disc__card { background: var(--card); border: 1px solid var(--nrx-line); border-radius: 22px; padding: 18px 20px; display: grid; gap: 10px; align-content: start; }
.nrx-disc__card header { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.nrx-disc__card h4 { font-size: 18px; font-family: var(--font-display); }
.nrx-disc__idx { font-size: 12px; font-weight: 700; color: var(--nrx-hi); }
.nrx-disc__lab { font-size: 13px; color: var(--muted); }
.nrx-disc__line { font-weight: 600; margin: 0; font-size: 15px; }
@media (min-width: 1000px) {
  .nrx-disc__stack { display: block; position: relative; }
  .nrx-disc__card { position: sticky; top: calc(var(--header-h, 66px) + 70px + var(--n, 0) * 16px); margin-bottom: 18px; box-shadow: 0 18px 34px -24px rgba(23, 25, 28, .35); }
}

/* ---------- «guess, then see» ---------- */
.nrx-guess__row { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 10px; }
.nrx-guess__btn { padding: 8px 16px; border-radius: 999px; border: 1px solid var(--nrx-line); background: var(--surface-alt); color: var(--ink); font-size: 14px; cursor: pointer; transition: background var(--dur), color var(--dur); }
.nrx-guess__btn:hover { background: var(--nrx-green-soft); }
.nrx-guess__btn.is-on { background: var(--nrx-green); border-color: var(--nrx-green); color: var(--lt-ffffff, #fff); }
html[data-theme="dark"] .nrx-guess__btn.is-on { color: var(--lt-0f1211, #0f1211); }
.nrx-guess__out { margin: 0; padding: 10px 14px; border-radius: 14px; background: var(--nrx-green-soft); font-size: 15px; }

/* ---------- life tiles / plan / care / drawers ---------- */
.nrx-block { display: grid; gap: 12px; }
.nrx-stack { display: grid; gap: 10px; }
.nrx-tiles2 { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); align-items: start; }
.nrx-tile2 { background: var(--card); border: 1px solid var(--nrx-line); border-radius: 18px; padding: 14px 16px; display: grid; gap: 6px; }
.nrx-tile2 h4 { font-size: 16px; font-family: var(--font-display); }
.nrx-tile2__lead { font-size: 15px; margin: 0; }
.nrx-more { border: 1px solid var(--nrx-line); border-radius: 14px; background: var(--surface-alt); }
.nrx-more > summary { cursor: pointer; list-style: none; padding: 9px 14px; font-size: 14.5px; font-weight: 600; display: flex; justify-content: space-between; gap: 10px; align-items: center; color: var(--ink); }
.nrx-more > summary::-webkit-details-marker { display: none; }
.nrx-more > summary::after { content: '+'; font-size: 18px; line-height: 1; color: var(--nrx-green); }
.nrx-more[open] > summary::after { content: '–'; }
.nrx-more__body { padding: 2px 14px 12px; }
.nrx-more--quiet { background: none; border-style: dashed; }
.nrx-more--quiet > summary { font-weight: 500; font-size: 13.5px; color: var(--muted); }
.nrx-more--read > summary::before { content: 'بیشتر بخوانید'; }
.nrx-more--section { background: var(--card); border-radius: 18px; }
.nrx-more--section > summary { padding: 14px 18px; font-size: 16px; font-family: var(--font-display); }
.nrx-more--section > .nrx-more__body { padding: 4px 18px 16px; }
.nrx-goals { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin-top: 10px; }
.nrx-goal { background: var(--card); border: 1px solid var(--nrx-line); border-radius: 18px; padding: 14px 16px; display: grid; gap: 6px; align-content: start; }
.nrx-goal h4 { font-size: 16px; font-family: var(--font-display); }
.nrx-goal__why { font-size: 13.5px; color: var(--muted); margin: 0; }
.nrx-checks { display: grid; gap: 6px; }
.nrx-chk { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; cursor: pointer; font-size: 14.5px; line-height: 1.8; }
.nrx .nrx-chk > input[type="checkbox"], .nrx .nrx-opt > input[type="radio"] { position: absolute; inset-inline-start: 0; top: 0; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; }
.nrx-chk__box { width: 22px; height: 22px; margin-top: 4px; border-radius: 7px; border: 2px solid var(--nrx-green); display: grid; place-items: center; color: transparent; font-size: 13px; transition: background var(--dur), color var(--dur); }
.nrx-chk input:checked + .nrx-chk__box { background: var(--nrx-green); color: var(--lt-ffffff, #fff); }
.nrx-chk input:checked ~ .nrx-chk__txt { color: var(--muted); text-decoration: line-through; text-decoration-color: rgba(95, 99, 109, .5); }
.nrx-chk input:focus-visible + .nrx-chk__box { box-shadow: 0 0 0 3px rgba(77, 124, 98, .35); }
.nrx-plan__intro { margin: 0 0 8px; font-size: 15px; }
.nrx-weeks { display: grid; gap: 6px; margin-top: 12px; }
.nrx-week { background: var(--card); border: 1px solid var(--nrx-line); border-radius: 14px; }
.nrx-week > summary { list-style: none; display: flex; align-items: center; gap: 10px; padding: 10px 14px; cursor: pointer; min-height: 48px; }
.nrx-week > summary::-webkit-details-marker { display: none; }
.nrx-week > summary::after { content: '+'; margin-inline-start: auto; color: var(--nrx-green); font-size: 18px; line-height: 1; flex: none; }
.nrx-week[open] > summary::after { content: '–'; }
.nrx-week__tick { flex: none; width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid var(--nrx-line); display: grid; place-items: center; font-size: 12px; color: transparent; }
.nrx-week.is-done .nrx-week__tick { background: var(--nrx-green); border-color: var(--nrx-green); color: var(--lt-ffffff, #fff); }
.nrx-week__n { flex: none; font-size: 12.5px; font-weight: 700; color: var(--nrx-green); }
.nrx-week__t { flex: none; font-family: var(--font-display); font-size: 15px; }
.nrx-week__pv { flex: 1 1 0; min-width: 0; font-size: 13px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nrx-week[open] .nrx-week__pv { display: none; }
.nrx-week__body { padding: 0 14px 12px; display: grid; gap: 8px; }
.nrx-opts { display: grid; gap: 6px; }
.nrx-opt { position: relative; display: none; cursor: pointer; border-radius: 12px; padding: 8px 12px; border: 1px solid transparent; }
.nrx-opt.is-on { display: block; background: var(--nrx-green-soft); }
.nrx-week.is-alt .nrx-opt { display: block; border-color: var(--nrx-line); }
.nrx-week.is-alt .nrx-opt.is-on { border-color: var(--nrx-green); }
.nrx .nrx-chk > input[type="checkbox"], .nrx .nrx-opt > input[type="radio"] { position: absolute; inset-inline-start: 0; top: 0; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; }
.nrx-opt input:focus-visible ~ .nrx-opt__body { outline: 3px solid rgba(77, 124, 98, .35); outline-offset: 4px; border-radius: 8px; }
.nrx-opt__body { display: grid; gap: 3px; }
.nrx-opt__tags { display: flex; flex-wrap: wrap; gap: 6px; }
.nrx-opt__tags small { font-size: 11.5px; line-height: 1.6; padding: 0 8px; border-radius: 99px; border: 1px solid var(--nrx-line); color: var(--muted); }
.nrx-opt__tags .nrx-opt__badge { border-color: var(--nrx-green); color: var(--nrx-green); font-weight: 700; }
.nrx-opt__tags small[hidden] { display: none; }
.nrx-opt__txt { font-size: 14.5px; line-height: 1.9; }
.nrx-opt__why { display: none; font-size: 13px; color: var(--muted); line-height: 1.8; }
.nrx-opt.is-on .nrx-opt__why { display: block; }
.nrx-week.is-alt .nrx-opt__why { display: none; }
.nrx-alt { justify-self: start; background: none; border: 0; padding: 2px 0; font: inherit; font-size: 13px; color: var(--nrx-green); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.nrx-week__lean, .nrx-week__reflect { margin: 0; font-size: 13px; color: var(--muted); }
.nrx-week__done { font-size: 14px; }
html[data-theme="dark"] .nrx-opt.is-on { background: rgba(77, 124, 98, .22); }
@media (max-width: 560px) { .nrx-week__pv { display: none; } .nrx-week > summary { padding: 9px 12px; } }
@media print { .nrx-week { break-inside: avoid; } .nrx-alt, .nrx-week__pv { display: none; } .nrx-opt { display: none; } .nrx-opt.is-on { display: block; background: none; } .nrx-opt__why { display: block; } }
.nrx-prog { height: 8px; border-radius: 99px; background: var(--nrx-track); overflow: hidden; }
.nrx-prog > i { display: block; height: 100%; width: var(--w, 0%); background: linear-gradient(90deg, var(--nrx-green), var(--lc-9fe0bf, #9fe0bf)); border-radius: 99px; transition: width .5s var(--ease); }
.nrx-prog__txt { font-size: 13px; color: var(--muted); margin: 4px 0 0; }
.nrx-care { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: start; background: linear-gradient(160deg, var(--lc-fdeee4, #fdeee4), var(--card) 70%); }
.nrx-care__ico { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: var(--card); color: var(--nrx-hi); }
.nrx-care p { margin: 0 0 10px; font-size: 15.5px; }
.nrx-about { background: var(--surface-alt); display: grid; gap: 8px; }
.nrx-closing { font-size: 14.5px; color: var(--muted); }
.nrx-closing p { margin: 0 0 .5em; }

/* old section markup now lives inside drawers: keep it tidy */
.nrx-more__body .neo-panel__title { display: none; }

/* ---------- mobile ---------- */
@media (max-width: 760px) {
  .nrx { gap: 16px; }
  .nrx-caps { grid-template-columns: 1fr; }
  .nrx-cap { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "name label" "gauge gauge"; row-gap: 6px; padding: 10px 14px; }
  .nrx-cap__pos { display: none; }
  .nrx-cap__name { grid-area: name; } .nrx-cap__label { grid-area: label; text-align: end; } .nrx-cap__pos { grid-area: pos; } .nrx-cap .nrx-gauge { grid-area: gauge; }
  .nrx-row__head { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "name lab" "gauge gauge"; row-gap: 8px; }
  .nrx-row__name { grid-area: name; } .nrx-row__lab { grid-area: lab; } .nrx-row__head .nrx-gauge { grid-area: gauge; }
  .nrx-tile__item .nrx-gauge { display: none; } .nrx-tile__item { grid-template-columns: 1fr auto; } .nrx-tile__item small { grid-column: auto; text-align: end; }
  .nrx-hero__tiles { gap: 10px; } .nrx-tile { padding: 10px 14px; gap: 6px; } .nrx-ring { width: 84px; height: 84px; } .nrx-ring span { font-size: 21px; }
  .nrx-nav { border-radius: 16px; }
  .nrx-care { grid-template-columns: 1fr; }
}

/* ---------- dark ---------- */
html[data-theme="dark"] .nrx {
  --nrx-green: var(--lc-7fc79c, #7fc79c); --nrx-green-soft: var(--lc-16301f, #16301f);
  --nrx-hi: var(--lc-ee8c4a, #ee8c4a); --nrx-lo: var(--lc-7db4e0, #7db4e0); --nrx-mid: var(--lc-7fc79c, #7fc79c);
  --nrx-track: rgba(255, 255, 255, .1); --nrx-line: rgba(255, 255, 255, .1);
}
html[data-theme="dark"] .nrx-hero .nrx-cap, html[data-theme="dark"] .nrx-hero .nrx-tile, html[data-theme="dark"] .nrx-hero .nrx-hero__step { background: rgba(255, 255, 255, .07); border-color: rgba(255, 255, 255, .16); color: var(--lt-e6f7ed, #e6f7ed); }
html[data-theme="dark"] .nrx-hero .nrx-tile h4, html[data-theme="dark"] .nrx-hero .nrx-tile__cap, html[data-theme="dark"] .nrx-hero .nrx-cap__pos, html[data-theme="dark"] .nrx-hero .nrx-tile__item small { color: var(--lt-a9cdb9, #a9cdb9); }
html[data-theme="dark"] .nrx-hero .nrx-hero__step strong { color: var(--lt-9fe0bf, #9fe0bf); }
html[data-theme="dark"] .nrx-hero .nrx-chip { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .18); color: var(--lt-d7f3e2, #d7f3e2); }
html[data-theme="dark"] .nrx-hero .nrx-ring span { color: var(--lt-f3fbf6, #f3fbf6); }
html[data-theme="dark"] .nrx-hero .nrx-gauge, html[data-theme="dark"] .nrx-hero .nrx-ring .bg { background: rgba(255, 255, 255, .14); stroke: rgba(255, 255, 255, .14); }
html[data-theme="dark"] .nrx-nav a.is-on { color: var(--lt-0f1211, #0f1211); }
html[data-theme="dark"] .nrx-gauge__tick { background: rgba(255, 255, 255, .3); }
html[data-theme="dark"] .nrx-care { background: linear-gradient(160deg, var(--lc-3a2c25, #3a2c25), var(--card) 70%); }
html[data-theme="dark"] .nrx .nrx-card__title { color: var(--lt-cfeedd, #cfeedd); }

/* ---------- print / PDF ---------- */
@media print {
  .nrx { gap: 10px; }
  .nrx-nav, .neo-noprint { display: none !important; }
  .nrx-disc__card { position: static; box-shadow: none; break-inside: avoid; }
  .nrx-card, .nrx-row, .nrx-care, .nrx-tile2, .nrx-goal { break-inside: avoid; box-shadow: none; }
  .nrx-more { border: 0; background: none; }
  .nrx-more > summary::after { content: none; }
}
