.certificate-share { margin-top: 32px; padding: clamp(24px,5vw,48px); border: 1px solid #c7d0da; border-left: 5px solid #d85b0b; background: #fff; }
.certificate-share h2 { font-size: clamp(1.5rem,4vw,2rem); }
.certificate-code { font-family: ui-monospace, Consolas, monospace; font-size: clamp(1rem,3vw,1.65rem); font-weight: 700; letter-spacing: .03em; color: #10294a; user-select: all; overflow-wrap: anywhere; }
.certificate-lookup { margin: 32px 0 48px; }
.teacher-page h1 { font-size: clamp(2.5rem,6vw,4rem); }
.certificate-editor { padding: 24px; background: #f3f8fc; border: 1px solid #dceaf5; }
.certificate-editor h2 { font-size: 1.65rem; }
.certificate-editor input { width: 100%; margin-top: 8px; }
.teacher-certificate { margin-top: 32px; }
.teacher-certificate h2 { overflow-wrap: anywhere; font-size: clamp(1.8rem,5vw,3rem); white-space: pre-wrap; }
.certificate-reference { font: .75rem ui-monospace,Consolas,monospace; overflow-wrap: anywhere; }
@media print {
  @page { size: A4 landscape; margin: 12mm; }
  body:has(.teacher-certificate) .skip-link { display: none !important; }
  .teacher-page, .teacher-page .shell { width: 100%; max-width: none; margin: 0; padding: 0; }
  .teacher-certificate { break-before: auto; break-inside: avoid; margin: 0; padding: 10mm; border: 6px double #10294a; }
  .teacher-certificate img { width: 260px; margin-bottom: 6mm; }
  .teacher-certificate p { margin: 3mm 0; }
  .teacher-certificate h2 { font-size: 28pt; margin: 4mm 0; }
  .teacher-certificate h3 { font-size: 20pt; margin: 3mm 0; }
}
