/* Priority calculators and contextual help follow the shared teal visual language. */
.dose-priority-section {padding:18px;border:1px solid #96c9c6;border-radius:18px;background:linear-gradient(120deg,#e9f7f5,#f4f8fc)}
.dose-priority-section .catalog-area-heading {margin-top:0}
.dose-priority-section .cards {grid-template-columns:repeat(2,minmax(0,1fr))}
.dose-priority .card {border-top:3px solid #16847d}
.module-title-row {display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-width:0}
.module-title-row h1 {min-width:0;overflow-wrap:anywhere}
.module-header-actions {display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.module-header-actions .btn,.module-header-actions .module-help-trigger {min-height:44px;margin:0}
.module-help-trigger {display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;min-height:44px;padding:8px 12px;border:1px solid #b8cecf;border-radius:999px;background:transparent;color:#276664;font:inherit;font-size:.875rem;cursor:pointer}
.module-help-trigger svg {width:20px;height:20px}
.module-help-trigger:hover {background:#e8f3f2;border-color:#16847d}
.module-help-trigger:focus-visible,.wh-journey button:focus-visible,.wh-care-card:focus-visible {outline:3px solid #268d88;outline-offset:3px}
.module-help-dialog {width:min(580px,calc(100vw - 28px));max-height:85dvh;margin:auto;padding:0;border:1px solid #cedddd;border-radius:20px;background:#fff;color:#223b43;box-shadow:0 24px 90px #092d3840;overflow:auto}
.module-help-dialog::backdrop {background:#102a3e88;backdrop-filter:blur(3px)}
.module-help-dialog header {display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 18px;border-bottom:1px solid #dce7e7;background:#eef7f6}
.module-help-dialog header p {margin:0 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.1em;color:#337572}
.module-help-dialog h2 {margin:0;font-size:1.4rem;line-height:1.3}
.module-help-dialog header button {width:44px;height:44px;flex:none;border:1px solid #bbd2d1;border-radius:50%;background:transparent;color:inherit;font-size:1.6rem;cursor:pointer}
.module-help-dialog ol {padding:8px 24px 0 54px;margin:0;list-style:decimal}
.module-help-dialog li {padding:12px 0 12px 5px}
.module-help-dialog li::marker {color:#227d75;font-weight:700}
.module-help-dialog h3 {font-size:1rem;margin:0 0 6px}
.module-help-dialog li p {font-size:1rem;line-height:1.55;margin:0;color:#4b636e}
.module-help-dialog footer {display:flex;justify-content:flex-end;padding:12px 24px 24px;border:0;margin:0}
/* Six stages keep the full pathway accessible without a long vertical diagram. */
.wh-journey {border:1px solid #cbdedd;border-radius:18px;background:#fff;overflow:hidden;margin:24px 0}
.wh-phase-tabs {display:flex;position:relative;overflow-x:auto;scrollbar-width:thin;background:#f1f7f7;border-bottom:1px solid #d3e2e1;padding:12px;gap:6px;touch-action:pan-x pan-y}
.wh-phase-tabs button {display:flex;flex:1 0 110px;flex-direction:column;align-items:center;gap:7px;padding:10px 8px;min-height:76px;background:transparent;border:1px solid transparent;border-radius:12px;color:#4c6870;font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}
.wh-phase-tabs button[aria-selected='true'] {color:#12675f;background:#fff;border-color:#8dbeb8;box-shadow:0 3px 10px #195d5410}
.wh-phase-number {display:grid;place-items:center;width:27px;height:27px;background:#dce9e8;border-radius:50%;font-size:.875rem}
.wh-phase-tabs [aria-selected='true'] .wh-phase-number {background:#137d72;color:#fff}
.wh-phase-panel {padding:22px}
.wh-phase-panel[hidden] {display:none!important}
.wh-phase-heading {display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.wh-phase-heading h2 {font-size:1.15rem;margin:0}
.wh-phase-heading span {font-size:.875rem;color:#536e76}
.wh-journey .wh-care-timeline {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));gap:12px;list-style:none!important;padding:0!important;margin:0!important;max-width:none}
.wh-journey .wh-care-timeline:before {display:none}
.wh-journey .wh-care-step {margin:0!important;min-width:0}
.wh-journey .wh-care-card {height:100%;box-sizing:border-box;padding:15px 28px 15px 16px;border-left-width:3px}
.wh-journey .wh-care-card h3 {margin:10px 0 6px;font-size:1rem;line-height:1.35}
.wh-journey .wh-care-card p {font-size:.9375rem;line-height:1.45}
.wh-journey .wh-care-type {font-size:.8125rem}
.wh-journey .wh-care-open {right:10px}
.wh-phase-controls {display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e0e9e9;padding:12px 22px}
.wh-phase-controls button {min-height:44px;cursor:pointer}
.wh-phase-controls button:disabled {opacity:.4;cursor:default}
.wh-phase-controls span {font-size:.875rem;color:#536e76}
[data-theme='dark'] .dose-priority-section {background:linear-gradient(120deg,#123d3d,#182e40);border-color:#356764}
[data-theme='dark'] .module-help-trigger {color:#a6d8d1;border-color:#47706f}
[data-theme='dark'] .module-help-trigger:hover {background:#214342}
[data-theme='dark'] .module-help-dialog,[data-theme='dark'] .wh-journey {background:#142b36;color:#e0eeee;border-color:#365763}
[data-theme='dark'] .module-help-dialog header,[data-theme='dark'] .wh-phase-tabs {background:#19373e;border-color:#365763}
[data-theme='dark'] .module-help-dialog li p,[data-theme='dark'] .wh-phase-heading span,[data-theme='dark'] .wh-phase-controls span {color:#b4cbd1}
[data-theme='dark'] .module-help-dialog header p,[data-theme='dark'] .module-help-dialog li::marker {color:#8dd1c5}
[data-theme='dark'] .wh-phase-tabs button {color:#c0d7db}
[data-theme='dark'] .wh-phase-tabs button[aria-selected='true'] {background:#244e50;color:#c1f4e9;border-color:#68a298}
[data-theme='dark'] .wh-phase-number {background:#34515a}
[data-theme='dark'] .wh-journey .wh-care-card {background:#19353f;color:#e2efef;border-color:#3b5861;border-left-color:var(--moment)}
[data-theme='dark'] .wh-journey .wh-care-card p {color:#b5cdd3}
[data-theme='dark'] .wh-phase-controls {border-color:#365763}
@media(max-width:600px){
 .dose-priority-section {padding:12px}
 .dose-priority-section .cards {grid-template-columns:1fr}
 .module-title-row {gap:10px;align-items:flex-start}
 .module-help-trigger {width:44px;padding:8px;margin-top:3px}
 .module-help-trigger span {display:none}
 .module-header-actions {width:100%;justify-content:flex-start}
 .module-header-actions .module-help-trigger {width:auto}
 .module-header-actions .module-help-trigger span {display:inline}
 .wh-phase-panel {padding:16px}
 .wh-phase-tabs button {flex-basis:100px}
 .wh-phase-controls {padding:10px 16px}
 .module-help-dialog header {padding:20px 18px 16px}
 .module-help-dialog ol {padding-right:18px;padding-left:44px}
}
@media print {.module-help-trigger,.module-help-dialog,.wh-phase-tabs,.wh-phase-controls{display:none!important}.wh-phase-panel[hidden]{display:block!important}.wh-journey{overflow:visible}.wh-phase-panel{break-inside:avoid}}
.page-heading > div:has(.module-title-row) {width:100%;min-width:0}
#cards.scores-compact .dose-priority-section {display:block;column-span:all;width:auto;padding:16px;border:1px solid #96c9c6;margin:0 0 18px;box-sizing:border-box}
#cards.scores-compact .dose-priority-section .catalog-area-heading {padding:0;margin:0 0 12px}
#cards.scores-compact .dose-priority-section .catalog-area-heading h2 {font-size:1rem}
#cards.scores-compact .dose-priority-section .cards {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#cards.scores-compact .dose-priority .card {border-top:3px solid #16847d;min-height:88px}
[data-theme='dark'] #cards.scores-compact .dose-priority-section {border-color:#356764}
@media(min-width:1500px){#cards.scores-compact .dose-priority-section .cards {grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){#cards.scores-compact .dose-priority-section {padding:12px}#cards.scores-compact .dose-priority-section .cards {grid-template-columns:1fr}}
/* Fixed SVG geometry keeps the complete help glyph and its dot visible. */
.module-help-trigger svg {display:block;flex:0 0 20px;width:20px;height:20px;min-width:20px;overflow:visible;stroke-linecap:round;stroke-linejoin:round}
.first-visit-dialog {width:min(600px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:0;margin:auto;border:1px solid #b7d9d4;border-radius:24px;background:#fff;color:#203a43;box-shadow:0 30px 100px #042d4560;overflow:auto;overscroll-behavior:contain}
.first-visit-dialog::backdrop {background:linear-gradient(125deg,#092d3cf2,#0d4949ee);backdrop-filter:blur(6px)}
.first-visit-content {padding:32px}
.first-visit-brand {display:inline-flex;align-items:center;padding:8px 12px;border-radius:12px;background:#142938;max-width:100%}
.first-visit-brand > img {display:block;width:144px;max-width:100%;height:auto;object-fit:contain}
.first-visit-kicker {margin:26px 0 10px!important;font-size:.75rem!important;font-weight:750;letter-spacing:.12em;color:#24776e}
.first-visit-dialog h2 {margin:0 0 20px;font-size:clamp(1.8rem,5vw,2.3rem);line-height:1.12;letter-spacing:-.035em}
.first-visit-dialog p {margin:0 0 16px;font-size:1rem;line-height:1.55}
.first-visit-note {padding:18px 20px;margin:22px 0;background:#edf7f5;border:1px solid #cde6e1;border-left:3px solid #18887d;border-radius:12px}
.first-visit-note strong {display:block;margin-bottom:7px;font-size:1rem;color:#14675f}
.first-visit-note p {margin:0}
.first-visit-continue {display:block;width:100%;min-height:48px;padding:13px 18px;border:1px solid #137e74;border-radius:12px;background:#117d73;color:#fff;font:inherit;font-size:1rem;font-weight:650;cursor:pointer}
.first-visit-continue:hover {background:#08675f}
.first-visit-continue:focus-visible {outline:3px solid #42b2a4;outline-offset:4px}
[data-theme='dark'] .first-visit-dialog {background:#152f39;color:#e3efef;border-color:#386966}
[data-theme='dark'] .first-visit-brand,[data-theme='dark'] .first-visit-kicker {color:#9bded2}
[data-theme='dark'] .first-visit-note {background:#1c4045;border-color:#356963;border-left-color:#6dbeae}
[data-theme='dark'] .first-visit-note strong {color:#b2e9dc}
@media(max-width:600px){.first-visit-content {padding:24px 20px}.first-visit-note {padding:15px}.first-visit-kicker {margin-top:22px!important}}
@media print {.first-visit-dialog{display:none!important}}
.first-visit-dialog h2:focus {outline:none}
[data-theme='dark'] .first-visit-dialog p {color:#d2e1e5}
[data-theme='dark'] .first-visit-dialog .first-visit-kicker {color:#9bded2}
