.certificate-admin .live-card{margin-top:24px}.certificate-settings{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:32px}.certificate-settings label,.verify-card label{display:grid;gap:7px;font-weight:700}.certificate-form{display:grid;gap:16px}.certificate-form textarea{min-height:115px}.certificate-template-preview{display:block;width:100%;max-height:310px;object-fit:contain;margin-top:16px;border:1px solid #d8e5eb;border-radius:10px}.certificate-admin table{width:100%;min-width:820px}.certificate-admin td{vertical-align:middle}.certificate-page{margin:0;background:#edf4f7;color:#12332e;font-family:Arial,sans-serif}.certificate-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 4vw;background:#fff;border-bottom:1px solid #dbe6eb}.certificate-toolbar img{width:210px;height:68px}.certificate-toolbar div{display:flex;gap:12px;align-items:center}.certificate-toolbar a,.certificate-toolbar button{border:1px solid #b9d5d2;border-radius:9px;padding:11px 16px;background:#fff;color:#08766e;font-weight:700;text-decoration:none}.certificate-sheet{position:relative;width:min(1120px,92vw);aspect-ratio:1.414/1;margin:35px auto;background:#fff;overflow:hidden;box-shadow:0 18px 50px #183f4430}.certificate-background{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.certificate-overlay{position:absolute;inset:12% 12% 8%;display:flex;flex-direction:column;align-items:center;text-align:center}.certificate-kicker{letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:#08766e}.certificate-overlay h1{font-family:Georgia,serif;font-size:clamp(30px,5vw,64px);margin:4% 0}.certificate-body{max-width:780px;font-family:Georgia,serif;font-size:clamp(17px,2.2vw,29px);line-height:1.65}.certificate-signature{margin-top:auto;display:flex;flex-direction:column;border-top:1px solid #526f6c;padding:8px 32px}.certificate-signature span{font-size:13px}.certificate-overlay footer{width:100%;display:flex;justify-content:space-between;gap:15px;margin-top:auto;font-size:11px;color:#49635f}.certificate-notice,.verify-card{max-width:700px;margin:70px auto;padding:35px;background:#fff;border:1px solid #d9e6eb;border-radius:18px}.verify-card>img{width:230px}.verify-card input{padding:13px;border:1px solid #bfd2dd;border-radius:8px}.verify-card input[type=submit]{margin-top:16px;background:#079fd3;color:#fff;border:0;padding:13px 20px;border-radius:8px;font-weight:700}.verification-result{margin-top:24px;padding:20px;border-radius:10px}.verification-result.valid{background:#e8f7ee;color:#185d3a}.verification-result.invalid{background:#fff0ed;color:#903b2e}.verification-result dl{display:grid;grid-template-columns:170px 1fr;gap:8px}.verification-result dt{font-weight:700}@media(max-width:760px){.certificate-settings{grid-template-columns:1fr}.certificate-toolbar img{width:150px}.certificate-toolbar a{display:none}.certificate-sheet{width:100vw;margin:10px 0}.certificate-overlay footer{font-size:7px}.certificate-overlay{inset:9%}.certificate-toolbar{padding:8px 12px}}@media print{.certificate-toolbar{display:none}.certificate-page{background:#fff}.certificate-sheet{width:100%;height:auto;margin:0;box-shadow:none}.certificate-notice{display:none}@page{size:landscape;margin:0}}
.certificate-live-preview{margin-top:24px}.certificate-preview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:18px}.certificate-preview-heading h2{margin:3px 0}.certificate-preview-heading>p{max-width:520px;color:#637988}.certificate-sheet-preview{width:min(100%,1050px);margin:0 auto;box-shadow:0 12px 32px #173c4524;border:1px solid #d7e5ea;background:#f3f6f7}.certificate-sheet-preview .certificate-background[hidden]{display:none}.certificate-preview-empty{position:absolute;inset:0;display:grid;place-items:center;padding:30px;text-align:center;color:#607786;font-weight:700;background:linear-gradient(135deg,#f6fafb,#e9f2f4)}.certificate-preview-empty[hidden]{display:none}.certificate-enable{display:flex!important;align-items:center;gap:10px}.certificate-enable input[type=checkbox]{width:18px!important;height:18px!important;margin:0!important;flex:0 0 18px}.certificate-enable label{display:inline!important;margin:0!important;font-weight:700}.certificate-admin input[type=file]{padding:10px;background:#fff}@media(max-width:760px){.certificate-preview-heading{align-items:flex-start;flex-direction:column;gap:4px}.certificate-sheet-preview .certificate-body{font-size:12px}.certificate-sheet-preview .certificate-overlay h1{font-size:22px}.certificate-sheet-preview .certificate-kicker{font-size:8px}}
/* Fixed overlay matching the supplied IRDO certificate artwork. */
.certificate-reference-layout{container-type:inline-size;position:relative;aspect-ratio:3508/2480}.certificate-reference-overlay{position:absolute;inset:0;z-index:2;color:#034e62;text-transform:uppercase}.certificate-reference-number{position:absolute;left:83.2%;top:.55%;width:12%;overflow:hidden;white-space:nowrap;color:#111;font:italic 700 1.05cqw Arial,sans-serif;letter-spacing:.12cqw}.certificate-presented{position:absolute;left:6.8%;top:29.6%;font:500 1.75cqw Arial,sans-serif;letter-spacing:.45cqw}.certificate-recipient{position:absolute;left:5.8%;top:36.7%;width:62%;color:#ed2824;text-transform:none;font-family:"Edwardian Script ITC","Snell Roundhand","URW Chancery L","Apple Chancery",cursive;font-size:5.2cqw;font-weight:400;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.certificate-reference-body{position:absolute;left:6.9%;top:46.5%;width:61%;white-space:pre-line;font:500 1.55cqw/1.5 Arial,sans-serif;letter-spacing:.28cqw}.certificate-reference-date{position:absolute;left:11.2%;bottom:11.4%;width:12%;text-align:center;color:#111;font:500 1.25cqw Arial,sans-serif;letter-spacing:.18cqw}.certificate-reference-layout .certificate-background{z-index:1}.certificate-sheet-preview .certificate-reference-overlay{pointer-events:none}@media(max-width:760px){.certificate-reference-number{font-size:1.05cqw}.certificate-presented{font-size:1.75cqw}.certificate-recipient{font-size:5.2cqw}.certificate-reference-body{font-size:1.55cqw}.certificate-reference-date{font-size:1.25cqw}}
@font-face{font-family:'Great Vibes';src:url('../public/fonts/GreatVibes-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:'Montserrat Certificate';src:url('../public/fonts/Montserrat.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}.certificate-reference-number{left:85%;top:.25%;width:10.2%;height:2.2%;padding:.1% .35%;box-sizing:border-box;background:#254d99;color:#fff;font-family:'Montserrat Certificate',Arial,sans-serif;font-size:.75cqw;font-style:normal;font-weight:600;letter-spacing:.08cqw}.certificate-reference-number:before{content:'Ref#';position:absolute;right:103%;top:4%;width:42%;color:#111;font-size:1.05cqw;font-style:italic;font-weight:600;letter-spacing:.15cqw;text-transform:none}.certificate-presented,.certificate-reference-body,.certificate-reference-date{font-family:'Montserrat Certificate',Arial,sans-serif}.certificate-recipient{font-family:'Great Vibes','Edwardian Script ITC','Snell Roundhand',cursive}.certificate-reference-date{bottom:13.7%}
.certificate-program-title{font-weight:850;letter-spacing:.2cqw}.certificate-duration{font-weight:700}.certificate-reference-date{left:8.2%;width:18%;white-space:nowrap;font-size:1.05cqw;letter-spacing:.12cqw}.certificate-reference-number{white-space:nowrap}
.certificate-recipient{top:35.5%;width:64%;font-size:5cqw;line-height:1.35;overflow:visible;text-overflow:clip}.certificate-program-title,.certificate-duration,.certificate-academy{font-weight:850}.certificate-academy{letter-spacing:.2cqw}

/* Keep the complete registration reference visible above the logo. */
.certificate-reference-number{left:auto;right:2.5%;top:.3%;width:auto;max-width:48%;height:auto;padding:.15% .45%;overflow:visible;white-space:nowrap;background:#fff;color:#111;text-align:right;text-transform:none;font-size:1cqw;font-weight:600;line-height:1.5;letter-spacing:.025cqw}.certificate-reference-number:before{content:none}

/* Native disclosure controls support mouse, touch and keyboard toggling. */
.certificate-disclosure>summary{display:list-item;list-style:disclosure-closed inside;cursor:pointer;font-size:20px;font-weight:700;color:#173c45}.certificate-disclosure[open]>summary{list-style-type:disclosure-open}.certificate-disclosure>summary::marker{color:#087da4}.certificate-disclosure>summary:focus-visible{outline:2px solid #087da4;outline-offset:6px;border-radius:3px}.certificate-disclosure-content{margin-top:24px}

/* Compact certificate editor: two columns and a shared action row. */
.certificate-settings{align-items:start}.certificate-form{align-content:start}.certificate-eligibility{margin-top:20px}.certificate-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #dbe6eb}.certificate-settings-actions .certificate-enable{margin:0;font-size:14px}.certificate-settings-actions .admin-button{width:auto;min-width:0;margin:0;padding:11px 20px;flex:0 0 auto}.certificate-settings-actions .certificate-enable label{line-height:1.4}@media(max-width:760px){.certificate-settings-actions{flex-wrap:wrap}.certificate-settings-actions .admin-button{margin-left:auto}}

/* Public certificate verification. */
.certificate-verify{min-height:100vh;margin:0;background:linear-gradient(135deg,#f4fafb 0%,#edf6f5 52%,#f8faf8 100%);color:#142d2a;font-family:Arial,sans-serif}.certificate-verify *{box-sizing:border-box}.verify-header{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 40px));min-height:88px;margin:0 auto;border-bottom:1px solid #d9e7e5}.verify-header img{display:block;width:210px;height:auto}.verify-header nav{display:flex;gap:28px}.verify-header nav a{color:#31534e;font-size:14px;font-weight:700;text-decoration:none}.verify-header nav a:hover{color:#07877d}.verify-shell{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(440px,1.1fr);gap:clamp(48px,8vw,110px);align-items:center;width:min(1080px,calc(100% - 40px));min-height:calc(100vh - 164px);margin:0 auto;padding:56px 0}.verify-intro .eyebrow,.verify-card .eyebrow{margin:0 0 12px;color:#087b73;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.verify-intro h1{max-width:520px;margin:0;color:#112d2a;font-size:clamp(42px,5.2vw,68px);line-height:.98;letter-spacing:-.045em}.verify-intro>p:not(.eyebrow){max-width:500px;margin:24px 0 0;color:#58706c;font-size:17px;line-height:1.65}.verify-assurance{display:flex;align-items:flex-start;gap:14px;margin-top:32px;padding-top:24px;border-top:1px solid #cfdfdc}.verify-assurance>span,.verify-shield{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#dff3ea;color:#087453;font-size:19px;font-weight:900}.verify-assurance p{margin:0;color:#5a706c;font-size:13px;line-height:1.55}.verify-assurance strong{color:#244841;font-size:14px}.certificate-verify .verify-card{width:100%;max-width:none;margin:0;padding:clamp(28px,4vw,44px);background:#fff;border:1px solid #d5e4e2;border-radius:22px;box-shadow:0 24px 65px rgba(22,62,58,.1)}.verify-card-heading{display:flex;align-items:center;gap:16px;margin-bottom:30px}.verify-card-heading h2{margin:0;color:#152c29;font-size:30px;letter-spacing:-.025em}.verify-card-heading .eyebrow{margin-bottom:5px}.verify-card label{gap:8px;color:#243a37;font-size:14px}.verify-card label small{color:#738681;font-size:12px;font-weight:400}.certificate-verify .verify-card input[type=text]{width:100%;min-height:56px;padding:15px 17px;border:1px solid #bad0cd;border-radius:10px;background:#fbfdfd;color:#172d2a;font-size:16px;font-weight:650;outline:none;transition:border-color .2s,box-shadow .2s}.certificate-verify .verify-card input[type=text]:focus{border-color:#078d82;box-shadow:0 0 0 4px rgba(7,141,130,.12)}.certificate-verify .verify-card input[type=submit]{width:100%;min-height:54px;margin-top:16px;padding:13px 20px;border:0;border-radius:10px;background:#087f76;color:#fff;font-size:15px;font-weight:800;cursor:pointer;transition:background .2s,transform .2s}.certificate-verify .verify-card input[type=submit]:hover{background:#066b64;transform:translateY(-1px)}.certificate-verify .verification-result{margin-top:26px;padding:0;border-radius:14px;overflow:hidden}.certificate-verify .verification-result.valid{background:#f0faf6;color:#174f3b;border:1px solid #cce8da}.certificate-verify .verification-result.invalid{padding:18px;background:#fff5f2;color:#873d31;border:1px solid #f0d1ca}.verification-status{display:flex;align-items:center;gap:13px;padding:18px 20px}.verification-status>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#16815c;color:#fff;font-size:20px;font-weight:900}.verification-result.invalid .verification-status{padding:0}.verification-result.invalid .verification-status>span{background:#b85040}.verification-status strong,.verification-status small{display:block}.verification-status strong{font-size:17px}.verification-status small{margin-top:3px;color:#537069;font-size:12px;line-height:1.4}.verification-result.invalid .verification-status small{color:#8a5148}.certificate-verify .verification-result dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px 20px;margin:0;padding:20px;border-top:1px solid #d9ece3}.certificate-verify .verification-result dt{color:#658078;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.certificate-verify .verification-result dd{margin:0;color:#193f35;font-size:14px;font-weight:700;overflow-wrap:anywhere}.verification-open{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#e3f4ec;color:#096b50;font-size:14px;font-weight:800;text-decoration:none}.verification-open:hover{background:#d8eee4}.verify-footer{display:flex;justify-content:space-between;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:20px 0;color:#6d817d;border-top:1px solid #d9e7e5;font-size:12px}@media(max-width:820px){.verify-shell{grid-template-columns:1fr;gap:36px;min-height:0;padding:42px 0 60px}.verify-intro h1{font-size:44px}.verify-assurance{margin-top:24px}.verify-header nav a:last-child{display:none}}@media(max-width:520px){.verify-header{width:calc(100% - 28px);min-height:74px}.verify-header img{width:170px}.verify-header nav{gap:12px}.verify-shell{width:calc(100% - 28px);padding-top:34px}.verify-intro h1{font-size:38px}.certificate-verify .verify-card{padding:24px 18px;border-radius:16px}.verify-card-heading h2{font-size:25px}.certificate-verify .verification-result dl{grid-template-columns:1fr;gap:4px}.certificate-verify .verification-result dd{margin-bottom:10px}.verify-footer{width:calc(100% - 28px);flex-direction:column;gap:5px}}
