.certificate-upload,.certificate-preview-links{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:#e5eee8;border:1px solid #cbdcd1;border-radius:18px;margin-top:24px}
.certificate-upload h3{margin:0 0 8px}.certificate-upload p,.portfolio-certificates p{margin:0;color:#61736d;line-height:1.6}.certificate-upload button{flex-shrink:0}
.certificate-preview-links{flex-wrap:wrap}.certificate-preview-links small{display:block;margin-top:6px}.certificate-preview-links>div{flex:1}
.certificate-viewer{width:min(1100px,95vw);height:92dvh;max-width:95vw;max-height:95dvh;padding:0;border:0;border-radius:20px;background:#f4f1ea;color:#19352f;box-shadow:0 30px 80px #152d2a44}
.certificate-viewer::backdrop{background:#132e2bd9}.certificate-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.certificate-viewer header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px;background:#fffdf8;border-bottom:1px solid #dcd5c9}.certificate-viewer header strong{display:block;overflow-wrap:anywhere}.certificate-viewer header small{display:block;margin-top:6px;color:#62736d}
.certificate-viewer-tools{display:flex;gap:8px;flex-shrink:0}.certificate-viewer button{padding:10px 14px;border:1px solid #b8ccc1;background:white;border-radius:12px;color:#19352f;cursor:pointer;font:inherit}
.certificate-viewer-body{overflow:auto;padding:24px;text-align:center}.certificate-viewer-body figure{margin:0 0 32px}.certificate-viewer-body figcaption{margin-bottom:12px}.certificate-viewer-body img{width:100%;max-width:none;display:block;margin:auto;transform-origin:center;box-shadow:0 8px 30px #19352f22}
.portfolio-certificates{margin-top:24px;padding:24px;border-radius:18px;background:#edf3ef}.portfolio-certificates h3{margin-top:0}.portfolio-certificate-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(230px,1fr);align-items:center;gap:16px;margin-top:18px;padding-top:18px;border-top:1px solid #cbdcd1}.portfolio-certificate-row strong{overflow-wrap:anywhere}.portfolio-certificate-row small{display:block;margin-top:6px}.portfolio-certificate-row label{display:grid;gap:6px;font-size:13px}.portfolio-certificate-row select{padding:12px;width:100%;background:#fffdf8;border:1px solid #cbdcd1;border-radius:12px;color:#19352f}
.certificate-sheet{width:794px;height:1123px;margin:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;padding:32px;background:#fffdf8;color:#19352f;box-sizing:border-box;overflow:hidden;box-shadow:0 24px 60px #18312d29}.certificate-sheet.is-landscape{width:1123px;height:794px}.certificate-sheet header{display:flex;justify-content:space-between;align-items:center;gap:24px}.certificate-sheet header span{font-size:13px;letter-spacing:1.5px;color:#527765;font-weight:700}.certificate-sheet header strong{font-size:17px;max-width:65%;text-align:right}.certificate-sheet figure{margin:0;min-height:0;display:flex;align-items:center;justify-content:center}.certificate-sheet figure img{width:100%;height:100%;object-fit:contain}.certificate-sheet footer{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#61736d}.certificate-sheet footer span:first-child{overflow-wrap:anywhere;max-width:80%}.activity-certificate-reference{font-size:10px}.activity-certificate-reference a{color:#527765;text-decoration:underline}
@media(max-width:700px){.certificate-upload{align-items:flex-start;flex-direction:column}.certificate-viewer{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;margin:0}.certificate-viewer header{align-items:flex-start;flex-direction:column;padding:14px}.certificate-viewer-tools{flex-wrap:wrap}.certificate-viewer-body{padding:12px}.portfolio-certificate-row{grid-template-columns:1fr}.portfolio-certificate-row button{justify-self:start}}
@page certificatePortrait{size:A4 portrait;margin:0}
@page certificateLandscape{size:A4 landscape;margin:0}
@media print{html,body{width:auto!important}.certificate-upload,.certificate-preview-links,.certificate-viewer,.portfolio-certificates{display:none!important}.certificate-sheet{zoom:1!important;width:210mm!important;height:297mm!important;page:certificatePortrait;break-inside:avoid;break-after:page;box-shadow:none;margin:0;padding:8mm;print-color-adjust:exact}.certificate-sheet.is-landscape{width:297mm!important;height:210mm!important;page:certificateLandscape}.certificate-sheet:last-child{break-after:auto}}
