.certificate-page{--ink:#193c47;--muted:#59696c;--gold:#a18650;margin:0;background:#edf1f0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px}
.certificate-page *{box-sizing:border-box}.certificate-page [hidden]{display:none!important}.page-heading,.certificate-actions{max-width:1123px;margin:32px auto 20px;padding:0 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}.page-heading h1{font-size:25px;margin:9px 0}.page-heading p{color:var(--muted);margin:0}.verified-badge{border:1px solid #bacfc4;background:#e2ede6;color:#24553c;border-radius:30px;padding:10px 16px;white-space:nowrap;font-size:12px}
.certificate-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:0}.certificate-actions button,.certificate-actions a{font:inherit;font-weight:600;border:1px solid var(--ink);border-radius:6px;background:var(--ink);color:white;padding:12px 17px;text-decoration:none;cursor:pointer;min-height:44px}.certificate-actions .secondary{background:white;color:var(--ink);border-color:#c6cfcd}.certificate-actions :focus-visible{outline:3px solid #ad8532;outline-offset:3px}.action-hint,#action-status{width:100%;font-size:12px;color:var(--muted);margin:2px 0}#action-status:empty{display:none}#share-link{width:100%;padding:12px}
.certificate-viewport{margin:24px auto;overflow:auto;max-width:calc(100% - 32px)}.certificate-sheet{width:1123px;min-height:794px;background:#fffefb;padding:30px 50px 26px;border:1px solid #bba778;outline:1px solid #e0d6c2;outline-offset:-10px;position:relative;display:flex;flex-direction:column;transform-origin:top left}.certificate-sheet:before{content:"";position:absolute;top:0;left:42%;right:42%;height:4px;background:var(--gold)}
.issuer{text-align:center}.institute-logo{width:108px;height:90px;object-fit:contain}.issuer h2{font:600 24px Georgia,'Times New Roman',serif;margin:7px 0;overflow-wrap:anywhere}.issuer-contact{font-size:10px;line-height:1.6;color:var(--muted);max-width:850px;margin:0 auto}.platform-brand{display:flex;align-items:center;justify-content:center;gap:10px;font-size:9px;color:var(--muted);margin-top:10px}.platform-brand img{width:68px;height:26px;object-fit:contain}
.award{text-align:center;padding:19px 0 10px}.award .eyebrow{color:#8a713e;margin:0 0 8px}.award h3{font:400 37px Georgia,'Times New Roman',serif;letter-spacing:1px;margin:0 0 13px}.intro{font-size:12px;color:var(--muted);margin:7px 0}.recipient{font:400 39px Georgia,'Times New Roman',serif;margin:7px auto 12px;max-width:960px;overflow-wrap:anywhere;line-height:1.15}.course{font-size:20px;font-weight:600;margin:7px auto 13px;max-width:900px;overflow-wrap:anywhere;line-height:1.3}.achievement-details{display:flex;justify-content:center;gap:0;margin:18px 0 12px}.achievement-details div{padding:0 30px;max-width:33%;border-right:1px solid #dfd8c8;overflow-wrap:anywhere}.achievement-details div:last-child{border:0}.achievement-details dt{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted);margin-bottom:6px}.achievement-details dd{font-size:18px;margin:0;font-weight:600}.student-details{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:10px}.student-photo{width:32px;height:38px;object-fit:contain}.student-details strong{font-weight:500}.endorsements{display:flex;align-items:flex-end;justify-content:center;gap:90px;min-height:78px;margin:8px 0 18px}.endorsements figure{margin:0;text-align:center}.endorsements img{width:118px;height:54px;object-fit:contain}.endorsements figcaption{font-size:9px;color:var(--muted);margin-top:6px}
.verification{margin-top:auto;border-top:1px solid #d8ceb8;padding-top:14px;display:grid;grid-template-columns:175px 1fr 86px;gap:24px;align-items:center}.issue-details{display:flex;flex-direction:column;gap:7px;font-size:10px}.issue-details strong{font-size:19px;letter-spacing:1px;overflow-wrap:anywhere}.issue-details .eyebrow{font-size:8px}.verification-copy{display:flex;flex-direction:column;gap:8px;font-size:9px;line-height:1.5}.verification-copy a{color:var(--ink);overflow-wrap:anywhere}.verification-copy>span{color:var(--muted);font-size:8px}.qr-link{color:var(--muted);text-decoration:none;text-align:center;font-size:7px;letter-spacing:1px}.qr-link>span{display:block}#certificate-qr{padding:8px;background:white;margin-bottom:5px}#certificate-qr canvas,#certificate-qr img{width:70px;height:70px;display:block}
.transcript-sheet{max-width:1123px;margin:24px auto 40px;padding:45px 50px;background:#fffefb;border:1px solid #ded8ca}.transcript-layout{width:100%;border-collapse:collapse}.transcript-layout>thead>tr>td{padding-bottom:22px}.transcript-sheet h2{font:30px Georgia,serif;margin:10px 0}.transcript-sheet header p{font-size:12px;color:var(--muted)}.transcript-content{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.transcript-content table{max-width:100%!important;border-collapse:collapse}.transcript-content td,.transcript-content th{padding:7px;border:1px solid #d8dedb}.transcript-content img{max-width:100%;height:auto}.transcript-content pre{white-space:pre-wrap}
/* Typography: a display serif for the award, a humanist sans for data. The
   rules below refine the layout rules above; print sizes are set further down. */
.certificate-page{--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Source Sans 3',Arial,Helvetica,sans-serif;font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:600}
.page-heading h1{font:600 32px/1.1 var(--serif);letter-spacing:.01em}.page-heading p{font-size:15px}
.issuer h2{font:600 30px/1.15 var(--serif);letter-spacing:.02em;margin:8px 0 6px}.issuer-contact{font-size:11px;letter-spacing:.02em}.platform-brand{font-size:10px;letter-spacing:.04em}
.award .eyebrow{letter-spacing:.3em}.award h3{font:500 44px/1.1 var(--serif);letter-spacing:.03em;margin:0 0 14px}
.intro{font:italic 500 17px/1.3 var(--serif);color:var(--muted);letter-spacing:.01em}
.recipient{display:inline-block;font:italic 600 50px/1.1 var(--serif);letter-spacing:.01em;margin:4px auto 10px;padding:0 28px 8px;border-bottom:1px solid var(--gold)}
.course{font-size:19px;font-weight:600;letter-spacing:.01em;line-height:1.35}
.achievement-details dt{font-size:10px;letter-spacing:.18em;font-weight:600}.achievement-details div{max-width:62%}.achievement-details dd{font:600 23px/1.25 var(--serif);font-variant-numeric:lining-nums tabular-nums}
.student-details{font-size:11px;letter-spacing:.02em}.student-details strong{font-weight:600;color:var(--ink)}
.endorsements figcaption{font-size:9px;text-transform:uppercase;letter-spacing:.16em;border-top:1px solid #d8ceb8;padding-top:6px}
.issue-details{font-size:11px}.issue-details .eyebrow{font-size:9px}.issue-details strong{font-size:18px;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.verification-copy{font-size:10px}.verification-copy strong{font-size:11px}.verification-copy>span{font-size:9px}.qr-link{font-size:8px;letter-spacing:.14em;font-weight:600}
.transcript-sheet h2{font:600 34px/1.15 var(--serif)}.transcript-content{font-size:13px}
/* Student identity: a framed passport-style photo beside the stacked IDs.
   Without a photo the IDs sit in one centred row. */
.student-details{gap:16px;margin-top:4px}.student-photo{width:68px;height:84px;object-fit:cover;object-position:center top;padding:3px;background:#fff;border:1px solid #d8ceb8;border-radius:3px;box-shadow:0 1px 3px rgba(25,60,71,.08)}
.student-ids{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}.student-details:has(.student-photo:not([hidden])) .student-ids{flex-direction:column;align-items:flex-start;text-align:left;padding-left:16px;border-left:1px solid #dfd8c8}
.recipient{max-width:860px;text-wrap:balance}
@media(max-width:600px){.page-heading{align-items:flex-start;margin-top:22px}.page-heading h1{font-size:25px}.page-heading p{font-size:12px}.verified-badge{font-size:10px;padding:8px}.certificate-actions{gap:8px}.certificate-actions button,.certificate-actions a{font-size:12px;padding:10px}.transcript-sheet{margin:20px 16px;padding:24px;overflow:auto}}
@page{size:A4 landscape;margin:8mm}
@media print{.certificate-page{background:white;-webkit-print-color-adjust:exact;print-color-adjust:exact}.screen-only{display:none!important}.certificate-viewport{width:auto!important;height:auto!important;max-width:none;margin:0;overflow:visible}.certificate-sheet{width:281mm;min-height:193mm;transform:none!important;padding:7mm 11mm 6mm;break-inside:avoid;outline-offset:-2.5mm}.institute-logo{width:90px;height:52px}.issuer h2{font-size:22px;margin:4px 0 2px}.issuer-contact{font-size:10px}.platform-brand{margin-top:4px}.award{padding:6px 0 2px;margin:auto 0}.award .eyebrow{margin-bottom:2px}.award h3{font-size:30px;margin-bottom:2px}.intro{font-size:14px;margin:2px 0}.recipient{font-size:34px;padding-bottom:2px;margin:0 auto 4px}.course{font-size:16px;margin:2px auto 4px}.achievement-details{margin:6px 0 4px}.achievement-details dt{margin-bottom:2px}.achievement-details dd{font-size:18px}.student-photo{width:54px;height:66px;padding:2px}.student-ids{gap:3px 16px}.endorsements{min-height:0;margin:6px 0 8px}.endorsements img{width:100px;height:40px}.endorsements figcaption{margin-top:3px;padding-top:3px}.verification{padding-top:8px}.issue-details{gap:3px}.verification-copy{gap:4px}#certificate-qr{padding:4px;margin-bottom:2px}#certificate-qr canvas,#certificate-qr img{width:60px;height:60px}.transcript-sheet{width:281mm;max-width:none;margin:0;padding:6mm 9mm;border:0;break-before:page;overflow:visible}.transcript-layout>thead{display:table-header-group}.transcript-layout>tbody>tr{break-inside:auto}.transcript-content tr,.transcript-content img{break-inside:avoid}a{color:inherit;text-decoration:none}}
