/* A working health-check example, with a separate, editable comparison model. */
.health-hero,.health-layout,.health-evidence,.health-model{--hc-surface:#fff;--hc-soft:#eceeee;--hc-accent:#a9420a}
html[data-theme=night] :is(.health-hero,.health-layout,.health-evidence,.health-model){--hc-surface:#141414;--hc-soft:#242424;--hc-accent:#ff9759}
.health-hero{padding:88px 0 62px;border-bottom:1px solid var(--line)}
.health-tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:25px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.health-tag:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px #ff7d3714}
.health-title{max-width:1040px;font-size:clamp(44px,5.9vw,82px);line-height:1.06;letter-spacing:-.058em;margin-bottom:26px}
.health-lead{font-size:20px;line-height:1.65;max-width:740px;color:var(--muted)}
.health-hero .actions{margin-bottom:0}
.health-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center}
.health-layout>div{min-width:0}
.health-layout h2{font-size:clamp(35px,3.6vw,52px)}
.health-layout p:not(.case-note){color:var(--muted);max-width:530px}
.health-console{background:#101010;color:#f1f1f1;padding:27px;border:1px solid #333;border-radius:12px;box-shadow:0 20px 60px #00000012;overflow:hidden}
.console-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:22px;border-bottom:1px solid #373737;font-size:12px;letter-spacing:.05em}
.console-heading strong{font-weight:500}
.console-heading span:not(.console-dots){color:#aaa}
.console-heading .health-tag{margin:0;font-size:9px;letter-spacing:.04em;gap:6px;white-space:nowrap}
.console-heading .health-tag:before{width:4px;height:4px;box-shadow:none}
.console-dots{display:flex;gap:5px;flex:none}
.console-dots i,.console-dots span{display:block;width:5px;height:5px;background:#5b5b5b;border-radius:50%}
.console-dots i:last-child,.console-dots span:last-child{background:var(--orange)}
.console-feed{display:grid;gap:0;padding-top:10px}
.console-event{display:grid;grid-template-columns:1fr auto;gap:9px 18px;align-items:center;padding:20px 0;border-bottom:1px solid #292929;font-size:14px;animation:health-console-signal 8s ease-in-out infinite}
.console-event:last-child{border:0}
.console-event:nth-child(2){animation-delay:2s}.console-event:nth-child(3){animation-delay:4s}.console-event:nth-child(4){animation-delay:6s}
.console-event small{font-size:11px;color:#b0b0b0;display:block;line-height:1.65;margin-top:5px}
.console-event strong{grid-column:1;grid-row:1;font-size:14px;font-weight:400}
.health-console .console-event p{grid-column:1/-1;margin:0;font-size:12px;line-height:1.65;color:#b0b0b0}
.console-event .event-state{padding:4px 9px;border:1px solid #ff7d374d;border-radius:4px;color:#ffad7c;background:#ff7d370b;font-size:10px;letter-spacing:.06em;white-space:nowrap;text-transform:uppercase}
.console-event .event-state{grid-column:2;grid-row:1}
.health-console .case-note{color:#aaa;border-color:#373737;margin:16px 0 0;padding:16px 0 0;font-size:12px}
.health-scope{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.scope-stat{min-width:0;padding:24px;border:1px solid var(--line);border-radius:8px}
.scope-stat strong{display:block;font-size:clamp(29px,3vw,40px);font-weight:500;line-height:1.15;letter-spacing:-.035em;margin-bottom:10px}
.scope-stat span{font-size:13px;line-height:1.55;color:var(--muted);display:block}
.case-note{font-size:13px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:24px;max-width:960px}
.health-evidence{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.evidence-card{background:var(--hc-surface);border:1px solid var(--line);border-radius:9px;padding:34px;min-width:0}
.evidence-card .eyebrow{margin-bottom:24px}
.evidence-card h3{font-size:28px;line-height:1.2;max-width:470px}
.evidence-card p,.evidence-card li{color:var(--muted);font-size:15px;line-height:1.75}
.evidence-card ul{padding-left:19px;margin-bottom:0}
.evidence-card li+li{margin-top:10px}
.evidence-card strong{color:var(--ink)}
.evidence-card .case-note{margin-bottom:0}
.health-loop{background:var(--hc-surface,var(--paper));border:1px solid var(--line);border-radius:12px;padding:12px;max-width:820px;margin:auto;overflow:hidden}
.health-loop svg{display:block;width:100%;height:auto;overflow:visible}
.health-loop .health-orbit{fill:none;stroke:var(--line);stroke-width:1;stroke-dasharray:4 12;animation:health-orbit-travel 25s linear infinite}
.health-loop .health-link{fill:none;stroke:var(--orange);stroke-width:2;stroke-linecap:round;stroke-dasharray:5 12;animation:health-loop-travel 16s linear infinite}
.health-loop .health-pulse{fill:none;stroke:var(--orange);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:health-node-pulse 3s ease-in-out infinite}
.health-loop .health-pulse:nth-of-type(2n){animation-delay:1.2s}
.health-loop .health-loop-label{font-family:inherit;font-size:17px;font-weight:500;fill:var(--ink)}
.health-loop .health-loop-label small{font-size:12px;fill:var(--muted)}
.health-loop .health-loop-center{fill:#151515;font-size:22px;font-weight:500;letter-spacing:-.04em}
.health-loop .health-loop-center tspan{fill:#151515;font-size:22px;font-weight:500;letter-spacing:0}
.health-loop .health-loop-center tspan+tspan{font-size:13px;font-weight:400}
.health-loop :is(rect,circle)[data-loop-node]{fill:var(--hc-surface,var(--paper));stroke:var(--line)}
.health-model{min-width:0}
.health-model>.case-note{margin-bottom:30px}
.health-table-scroll{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--hc-surface)}
.health-table{width:100%;border-collapse:collapse;font-size:15px;background:var(--hc-surface);text-align:left;border-radius:9px;overflow:hidden}
.health-table caption{text-align:left;font-size:13px;color:var(--muted);padding:18px 22px}
.health-table th,.health-table td{padding:18px 24px;border-bottom:1px solid var(--line);vertical-align:middle}
.health-table th{font-weight:500}
.health-table thead th{font-size:12px;letter-spacing:.03em;background:var(--hc-soft);line-height:1.5}
.health-table thead th:not(:first-child),.health-table td:not(:first-child){text-align:right}
.health-table tbody th{width:44%}
.health-table tbody th small{font-size:12px;display:block;color:var(--muted);margin-top:4px;font-weight:400;line-height:1.6}
.health-table input[data-manual],.health-table input[data-assisted]{max-width:108px;width:100%;text-align:right;padding:10px 12px;background:var(--paper);border-color:var(--line);border-radius:5px;color:var(--ink);font-size:15px;font-variant-numeric:tabular-nums}
.health-table tfoot :is(td,th){border-bottom:0;font-weight:600;font-size:16px;font-variant-numeric:tabular-nums}
.health-table tfoot tr+tr :is(td,th){border-top:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:400}
.health-assumptions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 32px}
.health-assumptions label{font-size:13px;font-weight:500;line-height:1.6;margin:0}
.health-assumptions label small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-bottom:9px}
.health-assumptions input{margin-top:9px;background:var(--hc-surface);border-color:var(--line);font-variant-numeric:tabular-nums}
.health-assumptions label small+input{margin-top:0}
.health-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:35px}
.health-results>div,.health-results>article{padding:27px;border:1px solid var(--line);border-radius:8px;background:var(--hc-surface);min-width:0}
.health-results .scope-stat{display:block}
.health-results strong{display:block;font-size:clamp(27px,2.6vw,36px);font-weight:500;letter-spacing:-.04em;line-height:1.2;margin:15px 0 12px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.health-results p,.health-results small,.health-results span{font-size:13px;color:var(--muted);line-height:1.6}
.health-results small{display:block;margin-top:8px}
.health-results .scope-stat strong{min-width:0;margin:15px 0 12px}
.health-results p{margin-bottom:0}
.health-results [data-health-cost-saving]{color:var(--hc-accent)}
.health-results .health-result-extra{color:var(--ink)}
.comparison-bars{display:grid;gap:18px;margin-top:30px}
.comparison-bars>div{min-width:0}
.comparison-bars span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}
.comparison-bar-manual,.comparison-bar-assisted{height:7px;border-radius:4px;max-width:100%;width:var(--comparison-width,100%);transition:width .4s ease}
.comparison-bar-manual{background:var(--ink)}
.comparison-bar-assisted{background:var(--orange)}
.health-model [data-reset-health]{margin-top:24px}
@keyframes health-console-signal{0%,10%,100%{opacity:.7}20%,35%{opacity:1}45%,90%{opacity:.7}}
@keyframes health-loop-travel{to{stroke-dashoffset:-272}}
@keyframes health-orbit-travel{to{stroke-dashoffset:-320}}
@keyframes health-node-pulse{0%,100%{opacity:.1;transform:scale(.97)}50%{opacity:.5;transform:scale(1.02)}}
@media(max-width:1050px){.health-layout{gap:34px}.health-scope{grid-template-columns:repeat(2,minmax(0,1fr))}.health-console{padding:23px}.evidence-card{padding:27px}.health-results>div,.health-results>article{padding:22px}.health-table th,.health-table td{padding:17px 20px}}
@media(max-width:760px){.health-hero{padding:55px 0 40px}.health-title{font-size:clamp(43px,8vw,62px)}.health-lead{font-size:18px}.health-layout,.health-evidence{grid-template-columns:1fr;gap:30px}.health-scope{margin-top:30px}.health-results{grid-template-columns:1fr}.health-results>div,.health-results>article{padding:26px}.health-results strong{font-size:36px}.health-assumptions{gap:15px}.health-loop{padding:4px}.health-loop .health-loop-label{font-size:18px}.health-table{min-width:550px}.health-table th,.health-table td{padding:17px 18px}.evidence-card h3{font-size:27px}}
@media(max-width:480px){.health-scope{grid-template-columns:1fr;gap:12px}.scope-stat{padding:22px;display:flex;align-items:center;gap:20px}.scope-stat strong{margin:0;min-width:95px;font-size:34px}.scope-stat span{max-width:200px}.health-results .scope-stat span{max-width:none}.health-assumptions{grid-template-columns:1fr;gap:19px}.health-console{padding:21px}.console-heading{font-size:11px;gap:10px}.console-event{gap:10px;font-size:13px}.console-event strong{font-size:13px}.console-event .event-state{padding:4px 6px;font-size:9px}.health-title{font-size:43px}.health-tag{font-size:10px;letter-spacing:.1em}.health-loop .health-loop-label{font-size:20px}.health-loop .health-loop-center{font-size:24px}.health-loop .health-loop-center tspan+tspan{font-size:15px}}
@media(max-width:540px){
  .health-table-scroll{overflow-x:visible}
  .health-table{min-width:0;width:100%;table-layout:fixed;font-size:13px}
  .health-table caption{padding:15px 14px;font-size:12px;white-space:normal;overflow-wrap:anywhere}
  .health-table th,.health-table td{padding:15px 8px;white-space:normal;overflow-wrap:anywhere}
  .health-table th:first-child,.health-table td:first-child{width:44%}
  .health-table th:not(:first-child),.health-table td:not(:first-child){width:28%}
  .health-table thead th{font-size:11px;line-height:1.55}
  .health-table tbody th{line-height:1.55}
  .health-table input[data-manual],.health-table input[data-assisted]{width:100%;min-width:0;max-width:none;padding:10px 5px;font-size:13px}
  .health-table tfoot :is(th,td){font-size:13px;line-height:1.6}
  .health-table tfoot tr+tr :is(th,td){font-size:12px}
}
@media(max-width:480px){.health-loop .health-loop-label{font-size:26px}.health-loop .health-loop-center tspan{font-size:32px}.health-loop .health-loop-center tspan+tspan{font-size:22px}}
@media(prefers-reduced-motion:reduce){.health-console .console-event,.health-loop :is(.health-orbit,.health-link,.health-pulse){animation:none;opacity:1;transform:none}.comparison-bar-manual,.comparison-bar-assisted{transition:none}}
