/* ---- Career paths and printable certificates ---- */
.path-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:32px 0 64px; }
.path-card { border:1px solid var(--rule); padding:28px; background:var(--surface); }
.path-card h2 { margin:12px 0; font-size:27px; }
.path-steps { display:grid; gap:24px; list-style:none; padding:0; margin:32px 0 64px; }
.path-progress { margin-top:24px; }
.path-progress .meter { width:100%; height:5px; }
.path-progress p { margin:8px 0 0; font:12px/1.6 var(--mono); }
.path-chips { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:20px; font-size:14px; }
.path-chips a { padding:4px 12px; border:1px solid var(--rule); border-radius:20px; }
.certificate-ready { margin-top:18px; }
.certificate-controls input { display:block; max-width:400px; width:100%; padding:12px; margin:8px 0 16px; border:1px solid var(--rule); color:var(--ink); background:var(--surface); font:inherit; }
.certificate-controls label { display:block; }
.certificate-controls:has(input[hidden]) label { display:none; }
.certificate-paper { border:double 6px var(--crema); background:var(--surface); text-align:center; padding:58px 48px; margin:32px 0 64px; min-height:580px; }
.certificate-paper h2 { font-size:clamp(27px,4vw,44px); margin:24px 0; }
.certificate-paper h3 { font-size:clamp(24px,3vw,32px); }
.certificate-paper .certificate-name { color:var(--ink); font-size:clamp(30px,5vw,48px); line-height:1.25; overflow-wrap:anywhere; margin:24px 0; }
.certificate-code { font:12px/1.6 var(--mono); margin-top:32px; }
.certificate-fine { font-size:12px; max-width:600px; margin:24px auto 0; }
@media(max-width:700px) { .path-grid { grid-template-columns:1fr; } .path-card { padding:20px; } .certificate-paper { padding:32px 18px; min-height:0; } }
@page { size:A4 landscape; margin:12mm; }
@media print {
  :root, :root[data-theme], :root:not([data-theme="light"]) { --surface:#fff; --ink:#18181a; --text:#4c4c50; --crema:#a8641f; --muted:#555; color-scheme:light; }
  body { background:white; }
  body:has(.certificate-paper) .bar, body:has(.certificate-paper) .site-foot, .certificate-controls { display:none!important; }
  body:has(.certificate-paper) main, body:has(.certificate-paper) .wrap { padding:0; margin:0; max-width:none; }
  .certificate-paper { margin:0; width:100%; min-height:180mm; padding:14mm; break-inside:avoid; print-color-adjust:exact; }
  .certificate-paper h2 { font-size:32px; margin:14px 0; }
  .certificate-paper .certificate-name { font-size:42px; margin:16px 0; }
  .certificate-paper h3 { font-size:28px; }
}
/* Keep ISO dates and verification values in their original order in RTL prose. */
html[dir="rtl"] [data-certificate-date], html[dir="rtl"] [data-certificate-code] { direction: ltr; unicode-bidi: isolate; }
