.hc-widget-container {
  font-family: inherit;
  background: #f7f8fa;
}

.hc-hero{background:linear-gradient(135deg,#516947 0%,#181818 100%);color:#fff;padding:56px 24px 48px;text-align:center}
.hc-hero-eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#CFEAD7;margin-bottom:14px}
.hc-hero h1{font-size:clamp(26px,5vw,40px);font-weight:700;line-height:1.2;margin-bottom:14px;color:#fff}
.hc-hero p{font-size:16px;color:#d9d9d9;max-width:520px;margin:0 auto 28px;line-height:1.6}
.hc-hero-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.hc-hero-pill{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:5px 14px;font-size:12px;color:#d9d9d9;font-weight:500}

.hc-main{display:flex;align-items:flex-start;justify-content:center;padding:32px 16px 64px}
#health-check-root{width:100%;max-width:680px}

:root {
  --teal: #516947;
  --teal-light: #CFEAD7;
  --teal-dark: #1e281a;
  --navy: #0C0C0C;
  --amber: #BA7517;
  --amber-light: #FAEEDA;
  --red: #A32D2D;
  --red-light: #FCEBEB;
  --gray: #f5f5f5;
  --gray-border: #e0e0e0;
  --gray-text: #555;
  --card-bg: #fff;
  --card-border: #e8e8e8;
  --radius: 10px;
  --radius-lg: 14px;
}

.hc-screen{display:none}.hc-screen.active{display:block}

.hc-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:16px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.hc-meta-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.hc-meta-item{background:#f8f9fa;border-radius:var(--radius);padding:16px;text-align:center}
.hc-meta-num{font-size:26px;font-weight:700;color:var(--navy);line-height:1.2;display:flex;align-items:center;justify-content:center;min-height:32px}
.hc-meta-label{font-size:12px;color:var(--gray-text);margin-top:4px}
.hc-divider{height:1px;background:var(--gray-border);margin:20px 0}
.hc-badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.hc-badge{background:var(--teal-light);color:var(--teal-dark);font-size:11px;font-weight:600;padding:4px 12px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase}
.hc-start-btn{width:100%;padding:16px;background:var(--teal);color:#fff;border:none;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer;transition:opacity .15s;letter-spacing:.01em}
.hc-start-btn:hover{opacity:.88}
.hc-welcome-title{font-size:22px;font-weight:700;color:var(--navy);margin-bottom:8px}
.hc-welcome-sub{font-size:15px;color:var(--gray-text);line-height:1.6;margin-bottom:24px}

.hc-prog-wrap{margin-bottom:20px}
.hc-prog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.hc-prog-cat{font-size:12px;font-weight:600;color:var(--gray-text);letter-spacing:.06em;text-transform:uppercase}
.hc-prog-count{font-size:12px;color:#888}
.hc-prog-bar{height:4px;background:var(--gray-border);border-radius:2px;overflow:hidden}
.hc-prog-fill{height:100%;background:var(--teal);border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1);width:0%}
.hc-cat-dots{display:flex;gap:6px;margin-top:10px}
.hc-cat-dot{flex:1;height:4px;border-radius:2px;background:var(--gray-border);transition:background .3s}
.hc-cat-dot.done{background:var(--teal)}
.hc-cat-dot.active{background:var(--teal);opacity:.5}

.hc-q-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:16px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.hc-q-label{font-size:11px;font-weight:600;color:var(--teal);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.hc-q-text{font-size:17px;font-weight:600;color:var(--navy);line-height:1.45;margin-bottom:20px}
.hc-options{display:flex;flex-direction:column;gap:10px}
.hc-opt{display:flex;align-items:flex-start;gap:14px;padding:13px 16px;border:1.5px solid var(--gray-border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,background .15s;font-size:14px;color:#333;background:#fff}
.hc-opt:hover{border-color:var(--teal);background:var(--teal-light)}
.hc-opt.selected{border-color:var(--teal);background:var(--teal-light);color:var(--teal-dark)}
.hc-opt-key{font-size:11px;font-weight:700;min-width:22px;height:22px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;color:#555}
.hc-opt.selected .hc-opt-key{background:var(--teal);color:#fff}
.hc-nav-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.hc-btn-back{padding:11px 22px;background:transparent;border:1.5px solid var(--gray-border);border-radius:var(--radius);font-size:14px;color:#555;cursor:pointer;transition:background .15s}
.hc-btn-back:hover{background:#f0f0f0}
.hc-btn-back:disabled{opacity:.4;cursor:not-allowed}
.hc-btn-next{padding:11px 28px;background:var(--teal);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s;flex:1;max-width:200px}
.hc-btn-next:hover{opacity:.88}
.hc-btn-next:disabled{opacity:.4;cursor:not-allowed}

.hc-report-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:8px}

.hc-score-ring{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;width:150px;height:150px;margin:0 auto 24px}
.hc-score-ring svg{position:absolute;top:0;left:0}
.hc-score-num{font-size:36px;font-weight:700;color:var(--navy);line-height:1.1;display:flex;align-items:center;justify-content:center;height:40px}
.hc-score-pct{font-size:13px;color:var(--gray-text);margin-top:4px}
.hc-arc{transition:stroke-dashoffset 1.2s ease}

.hc-risk-banner{border-radius:var(--radius);padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;gap:14px}
.hc-risk-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}
.hc-risk-high{background:#FCEBEB}.hc-risk-high .hc-risk-icon{background:#F7C1C1;color:#A32D2D}
.hc-risk-mod{background:#FAEEDA}.hc-risk-mod .hc-risk-icon{background:#FAC775;color:#6B3A00}
.hc-risk-good{background:#CFEAD7}.hc-risk-good .hc-risk-icon{background:#A5CBCD;color:#1e281a}
.hc-risk-title{font-size:15px;font-weight:700;color:var(--navy)}
.hc-risk-desc{font-size:13px;color:var(--gray-text);margin-top:3px;line-height:1.5}
.hc-cat-scores{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.hc-cat-item{background:#f8f9fa;border-radius:var(--radius);padding:14px 16px}
.hc-cat-name{font-size:12px;color:var(--gray-text);margin-bottom:8px;font-weight:500}
.hc-cat-bar-wrap{height:5px;background:var(--gray-border);border-radius:3px;margin-bottom:8px;overflow:hidden}
.hc-cat-bar{height:100%;border-radius:3px;transition:width .8s ease;width:0%}
.hc-cat-val{font-size:14px;font-weight:700;color:var(--navy);line-height:1.2;display:flex;align-items:center;min-height:18px}
.hc-fix-card{background:#fff;border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:16px}
.hc-fix-title{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.hc-fix-pill{font-size:11px;padding:3px 10px;border-radius:10px;background:var(--amber-light);color:var(--amber);font-weight:600}
.hc-fix-list{font-size:14px;color:var(--gray-text);line-height:1.7;padding-left:18px}
.hc-fix-list li{margin-bottom:6px}
.hc-cta{background:var(--teal-light);border:1px solid #A5CBCD;border-radius:var(--radius-lg);padding:24px 28px;text-align:center;margin-top:4px}
.hc-cta-title{font-size:17px;font-weight:700;color:var(--teal-dark);margin-bottom:8px}
.hc-cta-sub{font-size:14px;color:#2c3a25;margin-bottom:18px;line-height:1.6}
.hc-cta-btn{padding:13px 32px;background:var(--teal);color:#fff;border:none;border-radius:var(--radius);font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:opacity .15s}
.hc-cta-btn:hover{opacity:.88}
.hc-restart-btn{width:100%;margin-top:10px;padding:11px;background:transparent;border:1.5px solid var(--gray-border);border-radius:var(--radius);font-size:14px;color:var(--gray-text);cursor:pointer;transition:background .15s}
.hc-restart-btn:hover{background:#f0f0f0}

@media(max-width:520px){
  .hc-hero{padding:40px 16px 36px}
  .hc-card,.hc-q-card,.hc-fix-card,.hc-cta{padding:20px 18px}
  .hc-cat-scores{grid-template-columns:1fr}
  .hc-meta-row{grid-template-columns:repeat(3,1fr)}
}
