/* Heading Checker 1.1.0
   Default = dark cards (same look as the other tools). Add theme="light" to the shortcode for white cards. */
.hdc{--card:#0a0a0a;--line:#1f1f1f;--ink:#f5f5f5;--ink2:#d4d4d8;--mute:#9a9a9a;--inbg:#0d0d0d;--inline:#2a2a2a;--track:#171717;
  --btn:#14d3b0;--btn-d:#0fb999;--btn-ink:#02130f;--ring:rgba(20,211,176,.2);
  --good:#14d3b0;--amber:#d9a300;--red:#ef2b2b;
  --ok-bg:rgba(34,197,94,.08);--ok-bd:rgba(34,197,94,.35);--ok-tx:#4ade80;
  --wn-bg:rgba(245,158,11,.09);--wn-bd:rgba(245,158,11,.4);--wn-tx:#fbbf24;
  --er-bg:rgba(239,68,68,.09);--er-bd:rgba(239,68,68,.42);--er-tx:#f87171;
  --pill:rgba(255,255,255,.04);--shadow:none;
  width:100%;max-width:1500px;margin:24px auto;padding:0;background:transparent;color:var(--ink);text-align:left;font-size:16px;line-height:1.75;letter-spacing:.01em;word-spacing:.04em;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.hdc.hdc-light{--card:#ffffff;--line:#dbe2ea;--ink:#0f172a;--ink2:#1e293b;--mute:#475569;--inbg:#ffffff;--inline:#94a3b8;--track:#e2e8f0;
  --btn:#dc2626;--btn-d:#b91c1c;--btn-ink:#ffffff;--ring:rgba(220,38,38,.2);
  --good:#15803d;--amber:#b45309;--red:#b91c1c;
  --ok-bg:#f0fdf4;--ok-bd:#86efac;--ok-tx:#15803d;
  --wn-bg:#fffbeb;--wn-bd:#fcd34d;--wn-tx:#b45309;
  --er-bg:#fef2f2;--er-bd:#fca5a5;--er-tx:#b91c1c;
  --pill:#ffffff;--shadow:0 1px 3px rgba(15,23,42,.08)}
.hdc,.hdc *,.hdc *:before,.hdc *:after{box-sizing:border-box}
.hdc [hidden]{display:none!important}
.hdc h3,.hdc p{margin:0;padding:0;text-transform:none;letter-spacing:normal}

.hdc-head{text-align:center;margin:0 0 28px}
.hdc .hdc-title{font-size:36px;line-height:1.2;font-weight:800;letter-spacing:-.02em;color:#f5f5f5}
.hdc .hdc-sub{margin:12px auto 0;max-width:72ch;color:#a3a3a3;font-size:16.5px;font-weight:500}

.hdc-card{margin:22px 0 0;padding:32px 36px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow)}
.hdc-head+.hdc-card,.hdc>.hdc-card:first-child{margin-top:0}
.hdc .hdc-ct{font-size:21px;line-height:1.3;font-weight:700;color:var(--ink)}
.hdc .hdc-cs{margin:8px 0 0;font-size:16.5px;font-weight:500;color:var(--mute)}

/* form */
.hdc-form{display:flex;gap:16px;margin:26px 0 0;flex-wrap:wrap}
.hdc .hdc-in{flex:1;min-width:240px;height:54px;padding:0 20px;margin:0;border:1px solid var(--inline)!important;border-radius:10px!important;background:var(--inbg)!important;color:var(--ink)!important;font-size:17px;font-weight:500;box-shadow:none!important;outline:0}
.hdc .hdc-in::placeholder{color:var(--mute);opacity:.8;font-weight:400}
.hdc .hdc-in:focus{border-color:var(--btn)!important;box-shadow:0 0 0 3px var(--ring)!important}
.hdc .hdc-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.hdc .hdc-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 32px!important;margin:0;border:0!important;border-radius:10px!important;cursor:pointer;
  background:var(--btn)!important;color:var(--btn-ink)!important;font-size:17px!important;font-weight:700!important;box-shadow:none!important;text-transform:none!important;transition:background .15s}
.hdc .hdc-btn:hover{background:var(--btn-d)!important}
.hdc .hdc-btn:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
.hdc .hdc-btn:disabled{opacity:.75;cursor:progress}
.hdc .hdc-btn svg{stroke:var(--btn-ink)}
.hdc .hdc-btn.busy svg{animation:hdc-spin .8s linear infinite}
@keyframes hdc-spin{to{transform:rotate(360deg)}}
.hdc-err{margin-top:14px;min-height:0;padding:11px 16px;border-radius:10px;background:var(--er-bg);border:1px solid var(--er-bd);color:var(--er-tx);font-size:15px;font-weight:600}
.hdc-err:empty{display:none;padding:0;border:0}

/* result banner */
.hdc-banner{display:flex;gap:20px;align-items:center;margin:22px 0 0;padding:28px 34px;border-radius:20px;border:1px solid}
.hdc .hdc-banner b,.hdc .hdc-is b{display:block!important;font-size:19px;line-height:1.4;font-weight:700;color:var(--ink)}
.hdc .hdc-banner small,.hdc .hdc-is small{display:block!important;margin-top:6px;font-size:15.5px;line-height:1.6;font-weight:500;color:var(--ink2)}
.hdc-bi{flex:none;display:flex}
.hdc-bi svg{width:32px;height:32px}
.hdc-b-pass{background:var(--ok-bg);border-color:var(--ok-bd)}.hdc-b-pass .hdc-bi{color:var(--ok-tx)}
.hdc-b-warn{background:var(--wn-bg);border-color:var(--wn-bd)}.hdc-b-warn .hdc-bi{color:var(--wn-tx)}
.hdc-b-fail{background:var(--er-bg);border-color:var(--er-bd)}.hdc-b-fail .hdc-bi{color:var(--er-tx)}
.hdc-b-none{background:var(--card);border-color:var(--line)}.hdc-b-none .hdc-bi{color:var(--mute)}

/* stats: label on top, big number below */
.hdc-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin:22px 0 0}
.hdc-stat{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-height:180px;padding:30px 28px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow)}
.hdc-sl{font-size:16px;font-weight:600;color:var(--mute);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hdc-n{font-size:58px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.hdc .hdc-c-good{color:var(--good)}.hdc .hdc-c-mid{color:var(--amber)}.hdc .hdc-c-bad{color:var(--red)}
.hdc-pill{padding:2px 10px;border-radius:99px;border:1.5px solid currentColor;font-size:12.5px;font-weight:700;background:var(--pill)}

/* headings by level */
.hdc-lvls{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin-top:28px}
.hdc-lc{display:flex;flex-direction:column;align-items:center;gap:8px}
.hdc-lcn{font-size:20px;font-weight:800;color:var(--ink)}
.hdc-lcb{display:flex;align-items:flex-end;width:100%;max-width:72px;height:84px;border-radius:10px;background:var(--track);overflow:hidden}
.hdc-lcb i{display:block;width:100%;border-radius:10px 10px 0 0;background:linear-gradient(180deg,#2dd4bf,#0f9d84);min-height:4px}
.hdc-lc.zero .hdc-lcn{color:var(--mute);opacity:.6}.hdc-lc.zero .hdc-lcb i{background:var(--line)}
.hdc-lcl{font-size:15px;font-weight:700;color:var(--ink2)}

/* issues */
.hdc-issues{display:grid;gap:14px;margin-top:24px}
.hdc-is{display:flex;gap:16px;align-items:flex-start;padding:18px 22px;border-radius:12px;border:1px solid}
.hdc .hdc-is b{font-size:16px}
.hdc .hdc-is small{font-size:14.5px;color:var(--mute);word-break:break-word}
.hdc-isi{flex:none;display:flex;margin-top:2px}
.hdc-isi svg{width:21px;height:21px}
.hdc-is-error{background:var(--er-bg);border-color:var(--er-bd)}.hdc-is-error .hdc-isi{color:var(--er-tx)}
.hdc-is-warn{background:var(--wn-bg);border-color:var(--wn-bd)}.hdc-is-warn .hdc-isi{color:var(--wn-tx)}

/* tree */
.hdc-th{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}
.hdc-tools{display:flex;gap:16px;align-items:center}
.hdc .hdc-chk{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:600;color:var(--ink2);cursor:pointer}
.hdc .hdc-chk input{margin:0;width:18px;height:18px;accent-color:var(--btn)}
.hdc .hdc-copy{padding:9px 18px!important;border:1px solid var(--inline)!important;border-radius:10px!important;background:transparent!important;color:var(--ink)!important;font-size:14.5px!important;font-weight:700!important;cursor:pointer;box-shadow:none!important;text-transform:none!important}
.hdc .hdc-copy:hover{border-color:var(--btn)!important;color:var(--btn)!important}
.hdc-tree{display:grid;gap:14px;margin-top:24px}
.hdc-r{margin-left:calc(var(--d,0) * 28px);padding:16px 20px;border-radius:12px;border:1px solid;min-width:0}
.hdc-rt{display:flex;align-items:center;gap:16px;min-width:0}
.hdc-lv{flex:none;padding:3px 12px;border-radius:99px;border:1.5px solid currentColor;background:var(--pill);font-size:12.5px;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.hdc .hdc-tx{font-size:16px;font-weight:600;color:var(--ink);min-width:0;word-break:break-word}
.hdc .hdc-tx.empty{font-style:italic;color:var(--mute)}
.hdc-nt{margin:10px 0 0 2px;font-size:14.5px;font-weight:600}
.hdc .hdc-nt-error{color:var(--er-tx)}.hdc .hdc-nt-warn{color:var(--wn-tx)}
.hdc-s-ok{background:var(--ok-bg);border-color:var(--ok-bd);color:var(--ok-tx)}
.hdc-s-warn{background:var(--wn-bg);border-color:var(--wn-bd);color:var(--wn-tx)}
.hdc-s-error{background:var(--er-bg);border-color:var(--er-bd);color:var(--er-tx)}
.hdc-tree.only .hdc-r[data-s="ok"]{display:none}

.hdc .hdc-foot{margin:26px 0 0;padding:18px 22px;border-radius:12px;background:var(--card);border:1px solid var(--line);font-size:14px;font-weight:500;color:var(--mute);word-break:break-word}
.hdc-foot b{color:var(--ink);font-weight:700}

@media (max-width:1100px){
  .hdc-stats{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .hdc-stats{grid-template-columns:repeat(2,1fr);gap:14px}
}
@media (max-width:640px){
  .hdc{margin:16px auto}
  .hdc .hdc-title{font-size:27px}
  .hdc-card{padding:20px;border-radius:16px;margin-top:16px}
  .hdc-banner{padding:20px;border-radius:16px;margin-top:16px}
  .hdc-stat{min-height:130px;padding:20px;border-radius:16px}
  .hdc-n{font-size:40px}
  .hdc-r{margin-left:calc(var(--d,0) * 10px);padding:13px 14px}
  .hdc-lvls{gap:8px}
  .hdc .hdc-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.hdc .hdc-btn.busy svg{animation-duration:2s}}
