:root{--color-primary: #003366;--color-primary-light: #0056b3;--color-text: #333;--color-text-muted: #606770;--color-surface: #fff;--color-background: #e9ebee;--color-background-muted: #f0f2f5;--color-border: #e0e0e0;--font-sans-serif: "Roboto", "Helvetica Neue", sans-serif;--font-mono: "Roboto Mono", monospace;--base-line-height: 1.5;--spacing-sm: clamp(.35rem, 1vw, .5rem);--spacing-md: clamp(.5rem, 1.5vw, .75rem);--spacing-lg: clamp(.75rem, 2vw, 1rem);--spacing-xl: clamp(1rem, 2.5vw, 1.5rem);--panel-width: clamp(16rem, 24vw, 22rem);--border-radius: 6px;--transition-speed: .35s;--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 4px 0 15px rgba(0, 0, 0, .1)}@font-face{font-family:HSN Naskh Book;src:url(/assets/HSNNaskhBook-3854aae4.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DecoType Naskh Special Regular;src:url(/assets/DecoTypeNaskhSpecialRegular-3053117d.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Thuluth;src:url(/assets/Thuluth-e2504051.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Ballmain;src:url(/assets/Ballmain-68091b0a.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Southern Beach;src:url(/assets/Southern\ Beach-bab7276b.otf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0}body{font-family:var(--font-serif);background:var(--color-background);color:var(--color-text);line-height:var(--base-line-height);overflow:auto}.certificate-container[lang=en] .title,.certificate-container[lang=fr] .title{font-family:Ballmain,serif!important;font-size:clamp(2rem,5vw,3.5rem)}.certificate-container[lang=en] .event-date,.certificate-container[lang=fr] .event-date{font-size:clamp(1.2rem,3vw,2rem)}.certificate-container[lang=en] .name-display,.certificate-container[lang=fr] .name-display{font-family:Ballmain,serif}.certificate-container[lang=ar] .title{font-family:HSN Naskh Book,serif;font-size:clamp(2rem,5vw,3.5rem)}.certificate-container[lang=ar]{font-family:DecoType Naskh Special Regular,serif}.certificate-container[lang=ar] .under-logo-text strong{font-family:Thuluth,serif!important}.certificate-container[lang=ar] .certificate-type-section p{font-family:Thuluth,serif!important;font-size:clamp(2.5rem,6vw,5rem);text-align:center;margin:0}.certificate-container[lang=fr] .certificate-type-section p,.certificate-container[lang=en] .certificate-type-section p{font-family:Ballmain,serif;font-size:clamp(2.5rem,6vw,5rem);margin:0}.certificate-container[lang=ar] .contribution-text{font-family:DecoType Naskh Special Regular,serif!important}.certificate-container[lang=fr] .contribution-text,.certificate-container[lang=en] .contribution-text{font-size:clamp(1.2rem,2.5vw,1.8rem)}.certificate-container[lang=ar] .signature-text{font-family:DecoType Naskh Special Regular,serif!important;margin-bottom:clamp(1rem,3vw,3rem);font-size:clamp(1.5rem,3vw,2.5rem)!important}.certificate-container[lang=ar] .event-date{font-family:DecoType Naskh Special Regular,serif!important;font-size:clamp(1.5rem,4vw,3rem)!important}.under-logo-text p{white-space:pre-line;font-size:clamp(.9rem,2vw,1.5rem)}.under-logo-text[lang=ar] p{white-space:pre-line;font-size:clamp(1rem,2.5vw,2rem)}.contribution .contribution-text{font-size:clamp(1.5rem,3vw,2.5rem);margin-top:var(--spacing-md);color:var(--color-text)}.certificate-container[lang=ar] .name-display{font-family:HSN Naskh Book,serif!important}.certificate-container[lang=ar] .to-label{font-family:DecoType Naskh Special Regular,serif!important}.certificate-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background-position:center center;background-size:100% 100%;background-repeat:no-repeat;padding:clamp(.5rem,2vw,1rem) clamp(.25rem,1vw,.5rem);box-shadow:var(--shadow-md);display:flex;flex-direction:column;justify-content:space-between;gap:var(--spacing-md);overflow:auto;z-index:1}.certificate-video-background{position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:fill;z-index:-1}.error-message{text-align:center;color:red;font-weight:700;font-size:clamp(1rem,2.5vw,1.3rem);margin-top:var(--spacing-xl)}.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--spacing-sm);margin:clamp(.5rem,3vw,3rem)}.text-container{text-align:center;justify-self:end}.header-col{justify-self:start}.certificate-type-section{justify-self:center;text-align:center}.logo{width:clamp(80px,15vw,150px);max-width:90%;height:auto}.main-title{text-align:center;padding:0 var(--spacing-md)}.main-title h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;margin:0;letter-spacing:.2rem}.main-title p{font-size:clamp(1rem,2.5vw,1.5rem);margin-top:var(--spacing-sm)}.details{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-end;width:100%;padding:0 clamp(1rem,3vw,3rem);margin-bottom:clamp(1rem,3vw,3rem);position:relative}.student-details{flex:1;min-width:150px;text-align:center;padding:0 var(--spacing-md)}.to-label{display:block;font-size:clamp(1.5rem,3vw,2.5rem);margin-bottom:.5rem;color:var(--color-text)}.name-display{font-size:clamp(2.5rem,6vw,5rem);font-weight:700;color:#fff!important;text-shadow:-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,2px 2px 0 #000,-3px 0 0 #000,3px 0 0 #000,0 -3px 0 #000,0 3px 0 #000;letter-spacing:1px;line-height:1.2;word-wrap:break-word}.qr-code-container{flex:0 0 auto;margin:0 auto;text-align:center}.qr-code-container canvas{width:clamp(100px,15vw,140px)!important;height:clamp(100px,15vw,140px)!important}.qr-text{font-size:clamp(.8rem,2vw,1.5rem);font-style:italic;font-weight:700}.signature-section{position:absolute;right:clamp(1rem,3vw,3rem);bottom:0;text-align:right}.signature-text{font-size:clamp(1.2rem,2.5vw,2rem);line-height:1.5;white-space:pre-line;text-align:center}.verification-slide-panel{position:fixed;top:0;left:calc(-1 * var(--panel-width));width:var(--panel-width);height:100vh;background:var(--color-surface);box-shadow:var(--shadow-lg);transition:left var(--transition-speed) ease-in-out;z-index:1000;display:flex;flex-direction:column;font-family:var(--font-sans-serif);overflow-y:auto}.panel-is-open .verification-slide-panel{left:0}.panel-is-open .certificate-container{filter:brightness(.7)}.panel-header{background:var(--color-background-muted);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.panel-header h4{font-size:clamp(.9rem,1.8vw,1rem)}.panel-header .panel-subtitle{font-size:clamp(.7rem,1.3vw,.8rem);color:var(--color-text-muted);margin-top:var(--spacing-sm)}.panel-body{padding:var(--spacing-lg);flex-grow:1;overflow-y:auto}.panel-section{margin-bottom:var(--spacing-xl);border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}.panel-section h5{font-size:clamp(.7rem,1.3vw,.8rem);color:var(--color-primary-light);margin-bottom:var(--spacing-md)}.info-item{margin-bottom:var(--spacing-md)}.info-label{font-size:clamp(.65rem,1.2vw,.75rem);font-weight:600;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.info-value,.info-hash-value{font-size:clamp(.75rem,1.3vw,.85rem);word-wrap:break-word;background:var(--color-background-muted);padding:.75rem;border-radius:var(--border-radius)}.info-hash-value{font-family:var(--font-mono)}.info-link{color:var(--color-primary-light);text-decoration:none}.info-link:hover{text-decoration:underline}.panel-footer{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-background-muted);border-top:1px solid var(--color-border);display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm)}.panel-footer p{font-size:clamp(.6rem,1.2vw,.7rem);color:var(--color-text-muted)}.panel-footer .company-logo{max-height:60px}.verification-arrow-toggle{position:fixed;top:50%;left:0;transform:translateY(-50%);width:clamp(35px,5vw,40px);height:clamp(70px,10vw,80px);background:var(--color-primary-light);border:none;border-radius:0 var(--border-radius) var(--border-radius) 0;box-shadow:var(--shadow-md);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;transition:left var(--transition-speed) ease-in-out;color:#fff;font-size:.7rem}.panel-is-open .verification-arrow-toggle{left:var(--panel-width)}.verification-arrow-toggle .arrow-open,.verification-arrow-toggle .arrow-close{transition:opacity .2s ease-in-out}.verification-arrow-toggle .hidden{opacity:0;display:none}.verification-arrow-toggle svg{width:clamp(20px,3vw,24px);height:clamp(20px,3vw,24px)}.share-buttons-container{display:flex;gap:8px;margin-top:8px}.social-share-button{width:36px;height:36px;border-radius:50%;cursor:pointer;transition:transform .2s ease-in-out}.social-share-button:hover{transform:translateY(-2px)}.verif-btn{background:#f2f7fa;width:clamp(100px,15vw,120px);height:clamp(30px,5vw,36px);border:none;border-radius:8px;cursor:pointer;margin:4px;display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-sans-serif);font-size:clamp(.7rem,1.2vw,.85rem);color:var(--color-text);transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.verif-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.verif-btn:disabled{background:var(--color-background-muted);color:var(--color-text-muted);cursor:not-allowed;transform:none;box-shadow:none}.verif-btn .animate-spin{width:clamp(12px,2vw,16px);height:clamp(12px,2vw,16px)}.verif-btn .flex.items-center>span{font-size:clamp(.65rem,1.1vw,.8rem)}.language-selection-title{font-size:clamp(.8rem,1.8vw,.9rem);font-weight:700;color:var(--color-text);text-align:center;margin-bottom:var(--spacing-md)}.flag-icon{width:clamp(30px,5vw,36px);height:clamp(30px,5vw,36px);object-fit:contain;cursor:pointer;transition:all .2s ease-in-out}.flag-icon:hover{transform:scale(1.1);box-shadow:var(--shadow-lg)}@media (max-width: 900px) and (min-width: 601px){.header{margin:clamp(1rem,2.5vw,2rem);grid-template-columns:auto 1fr auto;gap:var(--spacing-md)}.details{padding:0 clamp(1.5rem,2.5vw,2rem)}}@media (max-width: 768px){:root{--panel-width: 100vw}.verification-slide-panel{width:100%;left:-100%}.panel-is-open .verification-slide-panel{left:0}.panel-is-open .verification-arrow-toggle{left:calc(100% - clamp(30px,4vw,35px))}.panel-is-open .certificate-container{filter:brightness(.7);pointer-events:none}.header{grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:center}.header-col,.text-container,.certificate-type-section{width:100%;text-align:center;justify-self:center;margin-top:1.5rem}.header-col{order:2}.text-container{order:1}.certificate-type-section{order:3}.details{flex-direction:column;align-items:center;margin-top:1rem}.signature-section{position:static;right:auto;text-align:center;margin-bottom:2rem}}@media (min-width: 1024px) and (max-width: 1440px){:root{--spacing-sm: .35rem;--spacing-md: .5rem;--spacing-lg: .65rem;--spacing-xl: .85rem}.certificate-container{padding:clamp(.25rem,1.25vw,.75rem) clamp(.25rem,.8vw,.4rem);gap:.25rem;overflow-y:auto}.header{margin:clamp(.75rem,2vw,1.5rem);gap:.25rem}.logo{width:clamp(70px,12vw,120px)}.main-title h1{font-size:clamp(1.8rem,4.5vw,2.8rem);letter-spacing:.15rem}.main-title p{font-size:1rem;margin-top:.3rem}.certificate-container[lang=fr] .certificate-type-section p,.certificate-container[lang=en] .certificate-type-section p{font-size:2.5rem}.certificate-container[lang=en] .title,.certificate-container[lang=fr] .title{font-size:2rem}.certificate-container[lang=ar] .title{font-size:3rem!important}.certificate-container[lang=en] .event-date,.certificate-container[lang=fr] .event-date{font-size:1.5rem}.certificate-container[lang=ar] .event-date{font-size:2rem!important}.under-logo-text p{font-size:1rem}.to-label{font-size:1.5rem}.name-display{font-size:3rem;line-height:1.1;margin:.5rem}.contribution .contribution-text{font-size:1rem}.certificate-container[lang=ar] .contribution-text{font-size:2rem}.details{margin-bottom:clamp(.75rem,2vw,1.5rem);gap:1rem}.qr-code-container canvas{width:5rem!important;height:5rem!important}.qr-text{font-size:.8rem}.signature-section{right:clamp(1rem,2.5vw,2rem)}.signature-text{font-size:1.5rem;line-height:1.4}.certificate-container[lang=ar] .signature-text{font-size:1.5rem!important;margin-bottom:clamp(.75rem,2.5vw,2rem)}:root{--panel-width: clamp(15rem, 22vw, 20rem)}.verification-slide-panel{overflow-y:auto}.panel-header{padding:.65rem .85rem}.panel-header h4{font-size:clamp(.85rem,1.6vw,.95rem)}.panel-header .panel-subtitle{font-size:clamp(.65rem,1.2vw,.75rem)}.panel-body{padding:.85rem}.panel-section{margin-bottom:1rem;padding-top:.85rem}.panel-section h5{font-size:clamp(.65rem,1.2vw,.75rem);margin-bottom:.5rem}.info-value,.info-hash-value{font-size:clamp(.7rem,1.25vw,.8rem);padding:.5rem}.verification-arrow-toggle{width:clamp(32px,4.5vw,38px);height:clamp(65px,9vw,75px)}.verification-arrow-toggle svg{width:clamp(18px,2.8vw,22px);height:clamp(18px,2.8vw,22px)}.verif-btn{width:clamp(90px,14vw,110px);height:clamp(28px,4.5vw,34px);font-size:clamp(.65rem,1.1vw,.8rem);gap:5px;margin:3px}.flag-icon{width:clamp(28px,4.5vw,34px);height:clamp(28px,4.5vw,34px)}}@media (width: 1366px) and (height: 768px),(min-width: 1360px) and (max-width: 1370px) and (min-height: 760px) and (max-height: 775px){.certificate-container{padding:.75rem .3rem;gap:.25rem;max-height:100vh;overflow-y:auto}.header{margin:1rem}.main-title{padding:0 .25rem}.student-details{margin-bottom:.75rem!important}.details{margin-bottom:.75rem;padding:0 1.25rem}.signature-section{position:absolute;right:1.25rem;bottom:.25rem}}@media (min-width: 1024px) and (max-width: 1440px) and (max-height: 800px){.certificate-container{transform-origin:top center}.certificate-video-background{position:fixed;transform:none}}@media (min-width: 1024px) and (max-width: 1440px){body{overflow-x:hidden}.certificate-container{width:100vw;max-width:100vw;overflow-x:hidden}}.certificate-pdf-container{width:3508px;height:2480px;position:absolute;left:-9999px;top:0;visibility:hidden;background-size:cover;background-position:center;background-repeat:no-repeat;color:#000;display:flex;flex-direction:column;padding:120px 150px;box-sizing:border-box;justify-content:space-between}.certificate-pdf-container.rtl{direction:rtl;text-align:right}.certificate-pdf-container.rtl *{direction:rtl;unicode-bidi:embed}.certificate-pdf-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:80px;gap:60px}.certificate-pdf-container.rtl .certificate-pdf-header{flex-direction:row-reverse}.certificate-pdf-logo-container{flex:0 0 auto}.certificate-pdf-logo{height:300px;width:auto;object-fit:contain}.certificate-pdf-type-section{flex:1;text-align:center;display:flex;align-items:center;justify-content:center}.certificate-pdf-type-label{font-size:100px;font-weight:700;margin:0;direction:inherit}.certificate-pdf-type-label.ar{font-family:Thuluth,serif!important;font-size:180px;direction:rtl;unicode-bidi:embed}.certificate-pdf-type-label.en,.certificate-pdf-type-label.fr{font-family:Ballmain,serif!important;font-size:150px}.certificate-pdf-government-text{flex:0 0 auto;text-align:center;max-width:400px}.certificate-pdf-government-text p{font-size:36px;line-height:1.4;font-weight:700;white-space:pre-line;margin:0}.certificate-pdf-government-text.ar p{font-family:Thuluth,serif!important;direction:rtl;unicode-bidi:embed;font-size:60px}.certificate-pdf-student-section{text-align:center;margin-bottom:60px}.certificate-pdf-to-label.ar{font-size:100px;margin:0 0 30px;direction:rtl;unicode-bidi:embed}.certificate-pdf-to-label{font-size:60px;margin:0 0 30px}.certificate-pdf-to-label.ar{font-family:DecoType Naskh Special Regular,serif}.certificate-pdf-name{font-size:200px;font-weight:700;color:#fff;text-shadow:-4px -4px 0 #000,4px -4px 0 #000,-4px 4px 0 #000,4px 4px 0 #000,-5px 0 0 #000,5px 0 0 #000,0 -5px 0 #000,0 5px 0 #000;margin:0 0 20px;letter-spacing:2px}.certificate-pdf-name.ar{font-family:HSN Naskh Book,serif;direction:rtl;unicode-bidi:embed;letter-spacing:0}.certificate-pdf-name.en,.certificate-pdf-name.fr{font-family:Ballmain,serif}.certificate-pdf-contribution{font-size:90px;line-height:1.6;margin:80px 300px 20px}.certificate-pdf-contribution.ar{font-family:DecoType Naskh Special Regular,serif;direction:rtl;unicode-bidi:embed;text-align:center;font-size:120px}.certificate-pdf-main-title{text-align:center;margin-bottom:80px}.certificate-pdf-event-name{font-size:150px;font-weight:700;margin:190px 0 30px;letter-spacing:2px}.certificate-pdf-event-name.ar{font-family:HSN Naskh Book,serif;font-size:190px;direction:rtl;unicode-bidi:embed;letter-spacing:0;margin:50px 0 30px}.certificate-pdf-event-name.en,.certificate-pdf-event-name.fr{font-family:Ballmain,serif}.certificate-pdf-details{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:40px;gap:100px}.certificate-pdf-container.rtl .certificate-pdf-details{flex-direction:row-reverse}.certificate-pdf-qr-section{flex:0 0 auto;display:flex;flex-direction:column;align-items:center}.certificate-pdf-qr-code{margin-bottom:20px}.certificate-pdf-qr-text{margin:0;font-size:40px;text-align:center;font-style:italic;font-weight:700;max-width:280px}.certificate-pdf-qr-text.ar{direction:rtl;unicode-bidi:embed}.certificate-pdf-signature{flex:0 0 auto;text-align:center;font-size:50px;line-height:1.5;white-space:pre-line;margin-bottom:1.75rem}.certificate-pdf-signature.ar{font-family:DecoType Naskh Special Regular,serif;direction:rtl;unicode-bidi:embed;text-align:right}.certificate-pdf-signature p{font-size:80px;margin:0}@media print{.certificate-pdf-container{visibility:visible!important;left:0!important}}.certificate-pdf-container.low-res{width:1754px;height:1240px;padding:60px 75px}.certificate-pdf-container.low-res .certificate-pdf-header{margin-bottom:40px;gap:30px}.certificate-pdf-container.low-res .certificate-pdf-logo{height:150px}.certificate-pdf-container.low-res .certificate-pdf-type-label,.certificate-pdf-container.low-res .certificate-pdf-type-label.ar{font-size:50px}.certificate-pdf-container.low-res .certificate-pdf-type-label.en,.certificate-pdf-container.low-res .certificate-pdf-type-label.fr{font-size:45px}.certificate-pdf-container.low-res .certificate-pdf-government-text{max-width:200px}.certificate-pdf-container.low-res .certificate-pdf-government-text p{font-size:18px}.certificate-pdf-container.low-res .certificate-pdf-student-section{margin-bottom:30px}.certificate-pdf-container.low-res .certificate-pdf-to-label{font-size:30px;margin:0 0 15px}.certificate-pdf-container.low-res .certificate-pdf-name{font-size:55px;margin:0 0 20px}.certificate-pdf-container.low-res .certificate-pdf-contribution{font-size:40px;margin:20px 50px}.certificate-pdf-container.low-res .certificate-pdf-main-title{margin-bottom:40px}.certificate-pdf-container.low-res .certificate-pdf-event-name{font-size:40px;margin:0 0 15px}.certificate-pdf-container.low-res .certificate-pdf-event-name.ar{font-size:45px}.certificate-pdf-container.low-res .certificate-pdf-event-date{font-size:25px}.certificate-pdf-container.low-res .certificate-pdf-details{padding-top:30px;gap:50px}.certificate-pdf-container.low-res .certificate-pdf-qr-text{font-size:20px;max-width:140px}.certificate-pdf-container.low-res .certificate-pdf-signature{font-size:25px}
