:root{
  --h1: clamp(2.25rem, 1.2rem + 4vw, 3.25rem);   /* ~36–52px */
  --h2: clamp(1.75rem, 1.1rem + 2.6vw, 2.5rem);  /* ~28–40px */
  --h3: clamp(1.375rem, 1.05rem + 1.4vw, 1.875rem); /* ~22–30px */
  --h4: clamp(1.125rem, 1.02rem + 0.6vw, 1.375rem); /* ~18–22px */
  --h5: 1.0625rem;  /* 17px */
  --h6: 1rem;       /* 16px */
  --lh-heading: 1.2; --lh-body: 1.65;
  --w-h1: 700; --w-h2: 700; --w-h3: 600;
  --track-h: -0.005em;
    /* Espacement vertical par défaut */
  --space-n: 0px;
  --space-xxs: 6px;
  --space-xs: 10px;
  --space-sm: 14px;
  --space-md: 20px;
  --space-lg: 28px;
  --space-xl: 40px;
}
h1,h2,h3,h4,h5,h6{ 
  word-spacing: var(--track-h);
  letter-spacing: var(--track-h);
  margin: var(--space-md) 0 var(--space-xs);
  line-height: var(--lh-heading);
}
h1{ font-size: var(--h1);}
h2{ font-size: var(--h2);}
h3{ font-size: var(--h3);}
h4{ font-size: var(--h4);}
h5{ font-size: var(--h5);}
h6{ font-size: var(--h6);}

/* Recipe Blocks — CKEditor-safe styles */
.rc-updated{color:#555;font-size:.95rem}
.rc-lead{font-size:1.1875rem;line-height:1.55}
.rc-toc{background:#fbfbfd;border:1px solid #e6e8ee;padding:16px;border-radius:12px;margin:12px 0}
.rc-card{border:1px solid #e6e8ee;border-radius:14px;background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.03);margin:18px 0}
.rc-card-head{padding:16px}
.rc-card-title{font-weight:800;font-size:1.6rem;margin-bottom:6px}
.rc-meta{display:flex;flex-wrap:wrap;gap:14px;color:#6b7280;font-size:.95rem;margin-bottom:8px}
.rc-actions{display:flex;flex-wrap:wrap;gap:10px}
.rc-btn{display:inline-flex;align-items:center;gap:8px;border-radius:10px;padding:10px 12px;border:1px solid #e6e8ee;background:#f8fafc;font-weight:600;font-size:.95rem;text-decoration:none;color:#0f172a}
.rc-btn--primary{background:#0ea5a5;border-color:#0ea5a5;color:#fff}
.rc-btn--yellow{background:#f59e0b;border-color:#f59e0b;color:#fff}
.rc-btn--blue{background:#2563eb;border-color:#2563eb;color:#fff}
.rc-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;border-top:1px solid #e6e8ee;padding:12px;background:#fbfbfd}
.rc-chip{display:flex;justify-content:space-between;border:1px solid #e6e8ee;border-radius:10px;padding:8px 10px;background:#fff;font-weight:600}
.rc-chip .lbl{color:#6b7280;font-weight:500}
.rc-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e6e8ee;padding:12px 16px}
.rc-servings{display:flex;align-items:center;gap:8px}
.rc-ctl{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid #e6e8ee;background:#fff;cursor:pointer;font-weight:700}
.rc-servings input{width:56px;text-align:center;border:1px solid #e6e8ee;border-radius:8px;height:30px}
.rc-rating .muted{color:#6b7280}
.rc-cookmode{display:flex;align-items:center;gap:10px}
.rc-cookmode .hint{color:#6b7280;font-size:.9rem}
.rc-ingredients{border:1px solid #e6e8ee;border-radius:12px;padding:16px 18px;background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.02);margin:12px 0 8px}
.rc-ingredients .subhead{font-weight:700;margin:8px 0 6px}
.rc-checklist{list-style:none;margin:4px 0 12px;padding:0}
.rc-checklist li{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-bottom:1px dotted #eef0f3}
.rc-checklist li:last-child{border-bottom:0}
.rc-checklist input[type=checkbox]{width:18px;height:18px;margin-top:3px;accent-color:#2563eb;flex-shrink:0}
.rc-checklist .txt{flex:1}
.rc-checklist .note{font-size:.875rem;color:#6b7280;margin-left:6px}
.caption{font-size:.95rem;color:#555}
.rc-steps{counter-reset: step; border:1px solid #e6e8ee;border-radius:12px;padding:10px 14px;background:#fff;margin:12px 0}
.rc-steps .step{border-bottom:1px dotted #eef0f3;padding:8px 0}
.rc-steps .step:last-child{border-bottom:0}
.rc-steps .step>label{display:flex;align-items:flex-start;gap:10px}
.rc-steps input[type=checkbox]{margin-top:3px;width:18px;height:18px;accent-color:#16a34a}
.rc-nutrition td{padding:6px 10px;border-bottom:1px solid #f0f2f5}
.rc-nutrition tr:last-child td{border-bottom:0}
body.rc-cook p, body.rc-cook li{font-size:1.15em}