/* DHV Health Tools */
.dhv-ht{--ht-navy:#063b66;--ht-blue:#0a64ad;--ht-border:#d8e3ec;--ht-soft:#f4f8fb;--ht-text:#12324d;--ht-muted:#64798a;margin:26px 0 10px;padding:22px;border:1px solid var(--ht-border);border-radius:16px;background:#fff;box-shadow:0 6px 24px rgba(6,59,102,.06);color:var(--ht-text);font-size:15px}
.dhv-ht *{box-sizing:border-box}
.dhv-ht h3{margin:0 0 12px;font-size:18px;color:var(--ht-navy)}
.dhv-ht-loading{color:var(--ht-muted)}
.dhv-ht-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;align-items:end}
.dhv-ht-form label,.dhv-ht-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;color:var(--ht-text)}
.dhv-ht-form label small{font-weight:500;color:var(--ht-muted)}
.dhv-ht input,.dhv-ht select,.dhv-ht textarea{width:100%;padding:10px 12px;border:1px solid #c8d6e2;border-radius:10px;background:#fff;color:var(--ht-text);font:inherit;font-size:15px}
.dhv-ht textarea{min-height:84px;resize:vertical}
.dhv-ht input:focus,.dhv-ht select:focus,.dhv-ht textarea:focus{outline:2px solid #9cc7ea;border-color:var(--ht-blue)}
.dhv-ht-wide{grid-column:1/-1}
.dhv-ht-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.dhv-ht-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 18px;border:1px solid var(--ht-navy);border-radius:999px;background:var(--ht-navy);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;transition:background .15s,transform .15s}
.dhv-ht-btn:hover{background:var(--ht-blue);border-color:var(--ht-blue);color:#fff;transform:translateY(-1px)}
.dhv-ht-btn--ghost{background:#fff;color:var(--ht-navy)}
.dhv-ht-btn--ghost:hover{background:var(--ht-soft);color:var(--ht-navy)}
.dhv-ht-btn--green{background:#1f8a5b;border-color:#1f8a5b}
.dhv-ht-btn--green:hover{background:#18744c;border-color:#18744c}
.dhv-ht-btn--danger{background:#fff;color:#a62b2b;border-color:#e3b4b4}
.dhv-ht-btn--danger:hover{background:#fbeeee;color:#a62b2b}
.dhv-ht-msg{margin:10px 0 0;font-size:14px;font-weight:600;color:#1f7a50;min-height:1em}
.dhv-ht-msg.is-error{color:#a62b2b}
.dhv-ht-section{margin-top:24px;padding-top:20px;border-top:1px solid #e6edf3}
.dhv-ht-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0 0 16px}
.dhv-ht-stat{padding:14px;border:1px solid var(--ht-border);border-radius:12px;background:var(--ht-soft)}
.dhv-ht-stat span{display:block;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ht-muted)}
.dhv-ht-stat strong{display:block;margin-top:4px;font-size:24px;color:var(--ht-navy)}
.dhv-ht-stat small{display:block;color:var(--ht-muted);font-size:12px}
.dhv-ht-table-wrap{overflow-x:auto}
.dhv-ht-table{width:100%;border-collapse:collapse;font-size:14px}
/* !important: the theme's .page-content th/td styles would otherwise turn the header light. */
.dhv-ht .dhv-ht-table th{padding:9px 10px!important;background:#063b66!important;color:#fff!important;border:0!important;text-align:left;font-size:12px;font-weight:700;white-space:nowrap}
.dhv-ht .dhv-ht-table td{padding:9px 10px!important;border:0!important;border-bottom:1px solid #e6edf3!important;vertical-align:middle;background:transparent}
.dhv-ht-table button{border:0;background:none;color:#a62b2b;cursor:pointer;font-size:18px;line-height:1}
.dhv-ht-empty{padding:18px;border:1px dashed #c8d6e2;border-radius:12px;color:var(--ht-muted);text-align:center}
.dhv-ht-badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}
.dhv-ht-badge.normal{background:#e3f5ea;color:#17683f}
.dhv-ht-badge.elevated{background:#fff5d6;color:#8a6200}
.dhv-ht-badge.stage1{background:#ffe9d6;color:#9a4a00}
.dhv-ht-badge.stage2{background:#fde0e0;color:#a62b2b}
.dhv-ht-badge.crisis{background:#a62b2b;color:#fff}
.dhv-ht-alert{margin:12px 0;padding:12px 14px;border-left:4px solid #a62b2b;border-radius:0 10px 10px 0;background:#fdf1f1;color:#7c1f1f;font-size:14px}
.dhv-ht-chart{width:100%;height:auto;margin:6px 0 4px;border:1px solid #e6edf3;border-radius:12px;background:#fbfdff}
.dhv-ht-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--ht-muted)}
.dhv-ht-legend i{display:inline-block;width:12px;height:3px;margin-right:5px;vertical-align:middle;border-radius:2px}
.dhv-ht-insights{margin:8px 0 0;padding-left:20px}
.dhv-ht-insights li{margin:6px 0}
.dhv-ht-range{display:flex;align-items:center;gap:10px}
.dhv-ht-range input{padding:0}
.dhv-ht-range output{min-width:28px;font-weight:800;color:var(--ht-navy);text-align:center}
.dhv-ht-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin-top:6px}
.dhv-ht-checks label{flex-direction:row;align-items:flex-start;gap:8px;font-weight:500;padding:8px 10px;border:1px solid #e1e9f0;border-radius:10px;background:var(--ht-soft);cursor:pointer}
.dhv-ht-checks input{width:auto;margin-top:3px}
.dhv-ht-med-row{display:grid;grid-template-columns:2fr 1fr 1.2fr auto;gap:8px;margin-bottom:8px}
.dhv-ht-med-row button{border:1px solid #e3b4b4;background:#fff;color:#a62b2b;border-radius:10px;padding:0 12px;cursor:pointer}
.dhv-ht-privacy{display:flex;align-items:center;gap:6px;margin:6px 0 24px;color:#5f7484;font-size:13px}
.dhv-ht-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:22px 0}
.dhv-ht-card{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid #d8e3ec;border-radius:16px;background:#fff;color:#12324d;text-decoration:none;box-shadow:0 6px 22px rgba(6,59,102,.06);transition:transform .15s,box-shadow .15s,border-color .15s}
.dhv-ht-card:hover{transform:translateY(-3px);border-color:#9cc7ea;box-shadow:0 12px 30px rgba(6,59,102,.12)}
.dhv-ht-card-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#063b66;color:#fff}
.dhv-ht-card strong{font-size:19px;color:#063b66}
.dhv-ht-card span{color:#4f6475;line-height:1.5}
.dhv-ht-card em{margin-top:auto;font-style:normal;font-weight:800;color:#0a64ad}
@media (max-width:640px){.dhv-ht{padding:16px}.dhv-ht-med-row{grid-template-columns:1fr 1fr}.dhv-ht-med-row input:first-child{grid-column:1/-1}}
