@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f13700f23fbdc6fd-s.0q1bf9cc3c0ui.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cc014fcb166cf364-s.p.0rbrcy8kuidpb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-weight:900;font-display:swap;src:url(../media/f13700f23fbdc6fd-s.0q1bf9cc3c0ui.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:900;font-display:swap;src:url(../media/cc014fcb166cf364-s.p.0rbrcy8kuidpb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel Fallback;src:local(Times New Roman);ascent-override:71.31%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:136.86%}.cinzel_27f15588-module__X2m9Cq__className{font-family:Cinzel,Cinzel Fallback;font-style:normal}
@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/24070456fede8f6d-s.03wc_nvu~ye2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/4d6362bffa57cca6-s.05vxhcuxr3nlp.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8e4a97dee8c8827a-s.p.00mvyso5.gi6v.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans Fallback;src:local(Arial);ascent-override:81.7%;descent-override:24.87%;line-gap-override:0.0%;size-adjust:112.61%}.pixelify_sans_adbad977-module__Ie8Hnq__className{font-family:Pixelify Sans,Pixelify Sans Fallback;font-style:normal;font-weight:700}
.certificate-module__3Rmg5q__page{min-height:calc(100svh - 76px);color:var(--text);background:0 0;position:relative;overflow:hidden}.certificate-module__3Rmg5q__bgGridOverlay{z-index:0;background-size:48px 48px;background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);opacity:.24;pointer-events:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000,#0000 72%);mask-image:radial-gradient(#000,#0000 72%)}[data-theme=dark] .certificate-module__3Rmg5q__bgGridOverlay{opacity:.13}.certificate-module__3Rmg5q__container{z-index:2;width:min(1000px,100vw - 2rem);margin:0 auto;padding:clamp(1.25rem,3vw,2.5rem) 0 4rem;position:relative}.certificate-module__3Rmg5q__loadingScreen,.certificate-module__3Rmg5q__errorScreen{text-align:center;min-height:calc(100vh - 120px);color:var(--text);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.certificate-module__3Rmg5q__spinner{border:4px solid var(--border);border-top-color:var(--green);border-radius:50%;width:50px;height:50px;margin-bottom:1.2rem;animation:1s linear infinite certificate-module__3Rmg5q__spin}@keyframes certificate-module__3Rmg5q__spin{to{transform:rotate(360deg)}}.certificate-module__3Rmg5q__errorIcon{margin-bottom:1rem;font-size:3.5rem}.certificate-module__3Rmg5q__errorScreen h2{font-family:var(--font-fredoka), cursive;margin:0 0 1rem;font-size:2.2rem}.certificate-module__3Rmg5q__errorScreen p{color:var(--muted);max-width:480px;margin:0 auto 1.8rem;font-weight:800;line-height:1.6}.certificate-module__3Rmg5q__primaryButton{color:var(--primary-contrast);background:var(--green);border-radius:999px;justify-content:center;align-items:center;padding:.72rem 1.6rem;font-size:.94rem;font-weight:900;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 18px #11864f29}.certificate-module__3Rmg5q__primaryButton:hover{background:var(--lime);transform:translateY(-2px);box-shadow:0 12px 22px #11864f38}.certificate-module__3Rmg5q__actionsBar{justify-content:flex-end;gap:.8rem;margin-bottom:1.5rem;display:flex}.certificate-module__3Rmg5q__actionBtn,.certificate-module__3Rmg5q__actionBtn:hover,.certificate-module__3Rmg5q__actionBtn:focus{background:color-mix(in srgb, var(--surface-raised) 90%, transparent)}.certificate-module__3Rmg5q__actionBtn{border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;align-items:center;gap:.52rem;padding:.65rem 1.2rem;font-size:.88rem;font-weight:900;transition:all .2s;display:inline-flex}.certificate-module__3Rmg5q__actionBtn:hover{border-color:var(--green);color:var(--green);background:var(--green-subtle);transform:translateY(-1px)}.certificate-module__3Rmg5q__shareBtn{color:#fff!important;background:#0077b5!important;border-color:#0077b5!important}.certificate-module__3Rmg5q__shareBtn:hover{transform:translateY(-1px);background:#006097!important;border-color:#006097!important}.certificate-module__3Rmg5q__shareOutlineBtn{color:#0077b5!important;background:0 0!important;border:1px solid #0077b5!important}.certificate-module__3Rmg5q__shareOutlineBtn:hover{transform:translateY(-1px);color:#0077b5!important;background:#0077b514!important;border-color:#0077b5!important}.certificate-module__3Rmg5q__btnIcon{flex-shrink:0;width:16px;height:16px}.certificate-module__3Rmg5q__certificateFrame{border-radius:12px;width:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000026;container-type:inline-size;padding:0!important}[data-theme=light] .certificate-module__3Rmg5q__certificateFrame{box-shadow:var(--dropdown-shadow)}.certificate-module__3Rmg5q__templateImg{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.certificate-module__3Rmg5q__skillbunOverlay{z-index:2;background:0 0;justify-content:center;align-items:center;width:50cqi;display:flex;position:absolute;top:10.2cqi;left:52.75cqi;transform:translate(-50%)}.certificate-module__3Rmg5q__skillbunText{letter-spacing:.36cqi;background:linear-gradient(135deg,#11864f 0%,#2ecc71 50%,#76b82a 100%);-webkit-text-fill-color:transparent;z-index:2;white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-size:5.6cqi;font-weight:900;line-height:1}.certificate-module__3Rmg5q__recipientName{background:linear-gradient(135deg,#bf953f 0%,#fcf6ba 25%,#b38728 50%,#fbf5b7 75%,#aa771c 100%);-webkit-text-fill-color:transparent;text-align:center;white-space:nowrap;z-index:2;text-transform:uppercase;letter-spacing:.05em;filter:drop-shadow(.08cqi .08cqi #00000026);-webkit-background-clip:text;background-clip:text;width:80cqi;margin:0;font-size:4.4cqi;font-weight:900;line-height:1.2;position:absolute;top:25.8cqi;left:50cqi;transform:translate(-50%)}.certificate-module__3Rmg5q__roadmapTitle{font-size:clamp(4cqi, calc(6.5cqi - .061cqi * var(--char-count)), 5.8cqi);background:linear-gradient(135deg,#a07628,#c9a84c,#f0d78c,#c9a84c,#a07628);-webkit-text-fill-color:transparent;text-align:center;z-index:2;text-transform:uppercase;letter-spacing:.03em;filter:drop-shadow(.12cqi .12cqi #000c);-webkit-background-clip:text;background-clip:text;width:80cqi;margin:0;font-weight:700;line-height:1.1;position:absolute;top:39.4cqi;left:50cqi;transform:translate(-50%,-50%)}.certificate-module__3Rmg5q__qrMeta{z-index:2;background:0 0;justify-content:center;align-items:center;width:10cqi;display:flex;position:absolute;top:63.6cqi;left:17cqi}.certificate-module__3Rmg5q__qrMetaId{color:#555;word-break:break-all;font-family:monospace;font-size:.82cqi;font-weight:700;line-height:1.3}.certificate-module__3Rmg5q__modalOverlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000073;justify-content:center;align-items:center;animation:.25s ease-out certificate-module__3Rmg5q__fadeIn;display:flex;position:fixed;inset:0}.certificate-module__3Rmg5q__modalCard{background:var(--card-bg);border:1px solid var(--border);width:min(520px,100vw - 2rem);box-shadow:var(--dropdown-shadow);color:var(--text);border-radius:20px;padding:1.5rem;animation:.3s cubic-bezier(.16,1,.3,1) certificate-module__3Rmg5q__slideUp;position:relative}.certificate-module__3Rmg5q__modalHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1.2rem;padding-bottom:.8rem;display:flex}.certificate-module__3Rmg5q__modalHeader h3{font-family:var(--font-fredoka), cursive;color:var(--green);margin:0;font-size:1.35rem}.certificate-module__3Rmg5q__closeBtn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:1.5rem;line-height:1;transition:color .2s}.certificate-module__3Rmg5q__closeBtn:hover{color:var(--text)}.certificate-module__3Rmg5q__modalBody{flex-direction:column;gap:1rem;display:flex}.certificate-module__3Rmg5q__modalBody label{color:var(--text);font-size:.9rem;font-weight:700}.certificate-module__3Rmg5q__postTextarea{border:1px solid var(--border);resize:none;background:var(--surface-raised);width:100%;height:110px;color:var(--text);border-radius:12px;outline:none;padding:.75rem;font-family:inherit;font-size:.9rem;transition:border-color .2s}.certificate-module__3Rmg5q__postTextarea:focus{border-color:var(--green)}.certificate-module__3Rmg5q__instructionsList{flex-direction:column;gap:.6rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.certificate-module__3Rmg5q__instructionsList li{color:var(--muted);align-items:flex-start;gap:.5rem;font-size:.86rem;font-weight:600;line-height:1.4;display:flex}.certificate-module__3Rmg5q__instructionsList li strong{color:var(--text);font-weight:800}.certificate-module__3Rmg5q__stepNumber{background:var(--green-subtle-strong);color:var(--green);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;font-size:.72rem;font-weight:900;display:inline-flex}.certificate-module__3Rmg5q__modalFooter{border-top:1px solid var(--border);justify-content:flex-end;gap:.8rem;margin-top:1.5rem;padding-top:1rem;display:flex}.certificate-module__3Rmg5q__secondaryBtn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:12px;padding:.65rem 1.2rem;font-size:.88rem;font-weight:800;transition:all .2s}.certificate-module__3Rmg5q__secondaryBtn:hover{background:var(--surface-raised)}.certificate-module__3Rmg5q__primaryBtn{background:var(--green);border:1px solid var(--green);color:#fff;cursor:pointer;border-radius:12px;align-items:center;gap:.4rem;padding:.65rem 1.4rem;font-size:.88rem;font-weight:900;transition:all .2s;display:inline-flex}.certificate-module__3Rmg5q__primaryBtn:hover{background:var(--lime);border-color:var(--lime)}.certificate-module__3Rmg5q__copyBtn{background:var(--green-subtle);border:1px dashed var(--green);color:var(--green);cursor:pointer;border-radius:10px;align-self:flex-start;margin-top:-.2rem;padding:.5rem 1rem;font-size:.82rem;font-weight:900;transition:all .2s}.certificate-module__3Rmg5q__copyBtn:hover{background:var(--green-subtle-strong)}@keyframes certificate-module__3Rmg5q__fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes certificate-module__3Rmg5q__slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.certificate-module__3Rmg5q__verificationNote{text-align:center;color:var(--muted);margin-top:1.5rem;font-size:.76rem;font-weight:800;line-height:1.45}.certificate-module__3Rmg5q__verificationNote code{color:var(--green);font-family:monospace}.certificate-module__3Rmg5q__toast{background:var(--surface-raised);border:1px solid var(--green);color:var(--green);box-shadow:var(--dropdown-shadow);border-radius:12px;justify-content:center;align-items:center;margin-bottom:1.2rem;padding:.8rem 1.2rem;font-size:.88rem;font-weight:800;animation:.3s cubic-bezier(.16,1,.3,1) forwards certificate-module__3Rmg5q__fadeIn;display:flex}@media print{@page{size:landscape;margin:0}.certificate-module__3Rmg5q__actionsBar,.certificate-module__3Rmg5q__bgGridOverlay,.certificate-module__3Rmg5q__toast,.certificate-module__3Rmg5q__verificationNote{display:none!important}.certificate-module__3Rmg5q__page{min-height:unset!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}.certificate-module__3Rmg5q__container{width:100%!important;max-width:100%!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}.certificate-module__3Rmg5q__certificateFrame{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%!important;max-height:100vh!important;box-shadow:none!important;border-radius:0!important}.certificate-module__3Rmg5q__templateImg{object-fit:contain!important;width:100%!important;height:auto!important;max-height:100vh!important}.certificate-module__3Rmg5q__recipientName,.certificate-module__3Rmg5q__roadmapTitle{-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-text-fill-color:#bf953f!important;color:#bf953f!important}.certificate-module__3Rmg5q__qrMeta{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff!important}}@media (max-width:768px){.certificate-module__3Rmg5q__container{width:calc(100vw - 1rem)}.certificate-module__3Rmg5q__actionsBar{flex-wrap:wrap;justify-content:center}}@media (max-width:480px){.certificate-module__3Rmg5q__actionsBar{flex-direction:column;align-items:stretch}.certificate-module__3Rmg5q__actionBtn{justify-content:center}}@media (prefers-reduced-motion:reduce){.certificate-module__3Rmg5q__spinner{animation-duration:2s}.certificate-module__3Rmg5q__actionBtn:hover,.certificate-module__3Rmg5q__shareBtn:hover{transform:none}}
