#smoky-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.55}.theme-toggle{position:fixed;top:16px;right:20px;z-index:200;display:flex;align-items:center;gap:8px;background:var(--toggle-bg);border:1px solid var(--border);border-radius:100px;padding:6px 14px;cursor:pointer;box-shadow:0 2px 16px var(--shadow);transition:background .35s,border-color .35s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-track{width:36px;height:20px;background:var(--border);border-radius:100px;position:relative;transition:background .35s;flex-shrink:0}[data-theme=light] .toggle-track{background:var(--purple)}.toggle-knob{position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 4px rgba(0,0,0,.3)}[data-theme=light] .toggle-knob{transform:translateX(16px)}.toggle-label{font-size:12px;font-weight:700;letter-spacing:.5px;color:hsla(0,0%,100%,.85);font-family:Manrope,sans-serif}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.mod-check-card{text-align:center}.mod-check-card .rp-btn-primary{margin:0 auto}.rp-cta-note{font-family:Manrope,sans-serif;font-size:.95rem;color:var(--text-muted);line-height:1.6;max-width:500px;margin:1.5rem auto 0}[data-theme=dark] .rp-cta-note{color:var(--text)}.rp-pillars{grid-template-columns:repeat(3,1fr)}.rp-card-icon{width:40px;height:40px;border-radius:10px;display:flex;background:rgba(152,68,254,.1);border:1px solid rgba(152,68,254,.2);color:var(--purple);margin-bottom:.85rem;flex-shrink:0}.rp-btn-primary,.rp-card-icon{align-items:center;justify-content:center}.rp-btn-primary{display:inline-flex;gap:.6rem;background:linear-gradient(135deg,var(--purple) 0,var(--purple-dark) 100%);color:#fff;text-decoration:none;padding:14px 28px;border-radius:10px;font-family:Manrope,sans-serif;font-weight:700;font-size:14px;letter-spacing:.4px;box-shadow:0 6px 28px rgba(152,68,254,.35);transition:transform .2s,box-shadow .2s,background .2s;border:none;cursor:pointer;width:100%;max-width:320px}.rp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(152,68,254,.45)}.rp-btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}[data-theme=dark] .rp-btn-primary{background:var(--purple);box-shadow:0 6px 28px rgba(152,68,254,.5);color:#fff}[data-theme=dark] .rp-btn-primary:hover{background:#a855fe;box-shadow:0 10px 36px rgba(152,68,254,.65)}.rp-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;background:transparent;color:var(--text-muted);border:1px solid var(--border);padding:14px 24px;border-radius:10px;font-family:Manrope,sans-serif;font-weight:700;font-size:14px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.rp-btn-secondary:hover{background:var(--bg2);border-color:var(--border-hi);color:var(--text)}[data-theme=dark] .rp-btn-secondary{color:var(--text-muted);border-color:var(--border);background:transparent}[data-theme=dark] .rp-btn-secondary:hover{background:rgba(152,68,254,.1);border-color:var(--border-hi);color:var(--text)}.rp-modal-overlay{position:fixed;inset:0;background:rgba(10,0,20,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.rp-modal{background:var(--bg);border:1px solid var(--border);border-radius:20px;padding:2.5rem;width:100%;max-width:620px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.35)}.rp-modal-close{position:absolute;top:1.25rem;right:1.25rem;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:background .2s,color .2s}.rp-modal-close:hover{background:rgba(152,68,254,.08);color:var(--purple)}.rp-modal-header{margin-bottom:2rem}.rp-modal-header h2{font-family:Literata,serif;font-weight:300;font-size:clamp(1.4rem,2.5vw,1.8rem);color:var(--heading);margin:0 0 .5rem}.rp-modal-header p{font-size:.9rem;color:var(--text-muted);margin:0;line-height:1.6}.rp-form{display:flex;flex-direction:column;gap:1.25rem}.rp-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.rp-form-group{display:flex;flex-direction:column;gap:.4rem}.rp-form-group label{font-family:Manrope,sans-serif;font-size:.8rem;font-weight:700;color:var(--text-muted);letter-spacing:.03em}.rp-required{color:var(--purple)}.rp-optional{font-weight:400;opacity:.7}.rp-form-group input,.rp-form-group select,.rp-form-group textarea{font-family:Manrope,sans-serif;font-size:.95rem;color:var(--text);background:var(--bg2);border:1.5px solid var(--border);border-radius:10px;padding:.7rem 1rem;outline:none;width:100%;transition:border-color .2s,box-shadow .2s}.rp-form-group textarea{resize:vertical;min-height:100px}.rp-form-group input::placeholder,.rp-form-group textarea::placeholder{color:var(--text-faint)}.rp-form-group input:focus,.rp-form-group select:focus,.rp-form-group textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(152,68,254,.12)}.rp-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding-top:.5rem}.cert-section{background:var(--section-soft);padding:90px 2rem}.cert-inner{max-width:900px;margin:0 auto}.cert-section-header{margin-bottom:3rem}.cert-section-header p{max-width:520px;margin:0 auto}.cert-input-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem 2.25rem;margin-bottom:2rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 4px 20px rgba(152,68,254,.1),0 1px 4px rgba(152,68,254,.06)}[data-theme=dark] .cert-input-panel{box-shadow:0 4px 24px rgba(0,0,0,.4),inset 0 1px 0 rgba(152,68,254,.1)}.cert-input-panel-title{font-family:Manrope,sans-serif;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--purple)}.cert-input-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.cert-input-group{display:flex;flex-direction:column;gap:.5rem}.cert-input-group label{font-family:Manrope,sans-serif;font-size:.8rem;font-weight:700;color:var(--text-muted);letter-spacing:.04em}.cert-input-field{font-family:Literata,serif;font-weight:300;font-size:1.1rem;color:var(--heading);background:var(--bg2);border:1.5px solid var(--border);border-radius:10px;padding:.7rem 1rem;outline:none;width:100%;transition:border-color .2s,box-shadow .2s,background .35s;font-size:max(1.1rem,16px)}.cert-input-field::placeholder{color:var(--text-faint);font-style:italic}.cert-input-field:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(152,68,254,.12)}.cert-input-hint{font-family:Manrope,sans-serif;font-size:.78rem;color:var(--text-faint);display:flex;align-items:center;gap:.4rem}.cert-input-hint svg{color:var(--purple);flex-shrink:0}.cert-preview-label{display:flex;align-items:center;gap:.5rem;font-family:Manrope,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.75rem}.cert-preview-label:after,.cert-preview-label:before{content:"";flex:1 1;height:1px;background:var(--border)}.certificate{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 16px 60px rgba(100,40,200,.18),0 4px 16px rgba(0,0,0,.07);position:relative;margin-bottom:2.25rem}.cert-body{padding:60px 68px;background:#fff}.cert-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1.5px solid #e4d8f8}.cert-logo-area{display:flex;flex-direction:column;gap:3px}.cert-org{font-size:20px;font-weight:800;color:#1b002d;letter-spacing:-.3px}.cert-org,.cert-sub{font-family:Manrope,sans-serif}.cert-sub{font-size:10.5px;font-weight:700;color:#9844fe;letter-spacing:2px;text-transform:uppercase}.cert-emblem{width:60px;height:60px;background:linear-gradient(145deg,#5a12d8,#9844fe);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 22px rgba(152,68,254,.4)}.cert-presents{font-family:Manrope,sans-serif;font-size:11px;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;color:#a090b5;text-align:center;margin-bottom:.8rem}.cert-main-title{font-family:Literata,serif;font-weight:300;font-size:clamp(1.5rem,3.5vw,2.2rem);color:#1b002d;text-align:center;line-height:1.2;margin:0 0 .35rem}.cert-main-sub{font-size:.9rem;font-weight:600;color:#9844fe;letter-spacing:.5px;margin:0 0 2.5rem}.cert-awarded-label,.cert-main-sub{font-family:Manrope,sans-serif;text-align:center}.cert-awarded-label{font-size:10.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#a090b5;margin-bottom:.6rem}.cert-guild-line{width:100%;max-width:440px;margin:0 auto 2rem;text-align:center;border-bottom:2px solid #d8c8f0;padding-bottom:1.1rem}.cert-guild-line span{font-family:Literata,serif;font-weight:300;font-size:2.1rem;color:#1b002d;font-style:italic}.cert-placeholder-text{color:#c0aad8!important}.cert-body-text{font-family:Manrope,sans-serif;font-size:.875rem;color:#6b5a80;line-height:1.85;text-align:center;max-width:560px;margin:0 auto 3rem}.cert-footer-row{display:flex;align-items:flex-end;justify-content:space-between;padding-top:2rem;border-top:1.5px solid #e4d8f8;gap:2rem}.cert-sig-block{display:flex;flex-direction:column;gap:5px;min-width:160px}.cert-sig-rule{width:160px;height:1px;background:linear-gradient(90deg,#c8b0e8,transparent);margin-bottom:7px}.cert-sig-name{font-family:Literata,serif;font-weight:300;font-size:1.1rem;color:#1b002d}.cert-sig-role{font-family:Manrope,sans-serif;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#a090b5}.cert-seal{flex-direction:column;gap:5px}.cert-seal,.cert-seal-outer{display:flex;align-items:center}.cert-seal-outer{width:76px;height:76px;border-radius:50%;border:1.5px solid rgba(152,68,254,.5);justify-content:center;position:relative}.cert-seal-outer:before{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(152,68,254,.2)}.cert-seal-label{font-size:8.5px;letter-spacing:1.5px;color:#9844fe;margin-top:2px}.cert-date,.cert-seal-label{font-family:Manrope,sans-serif;font-weight:700;text-transform:uppercase}.cert-date{font-size:10px;letter-spacing:2px;color:#a090b5;text-align:right}.cert-watermark{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-family:Literata,serif;font-weight:300;font-size:96px;color:rgba(152,68,254,.04);pointer-events:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:-2px}.cert-rep-line{text-align:center;margin-bottom:2rem}.cert-rep-label{font-family:Manrope,sans-serif;font-size:.82rem;color:#b0a0c8;letter-spacing:.05em}.cert-rep-name{font-family:Literata,serif;font-weight:300;font-size:1.1rem;color:#6b5a80;font-style:italic;display:block}.cert-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.btn-print{background:linear-gradient(135deg,var(--purple) 0,var(--purple-dark) 100%);color:#fff;padding:14px 36px;border-radius:10px;font-family:Manrope,sans-serif;font-weight:700;font-size:14px;letter-spacing:.5px;box-shadow:0 6px 28px rgba(152,68,254,.35);transition:transform .2s,box-shadow .2s;display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;border:none;width:100%;max-width:280px}.btn-print:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(152,68,254,.45)}[data-theme=dark] .btn-print{background:var(--purple);box-shadow:0 6px 28px rgba(152,68,254,.5)}[data-theme=dark] .btn-print:hover{background:#a855fe;box-shadow:0 10px 36px rgba(152,68,254,.65)}.btn-back{background:transparent;color:var(--purple);padding:14px 36px;border-radius:10px;text-decoration:none;font-family:Manrope,sans-serif;font-weight:700;font-size:14px;border:1px solid var(--border-hi);transition:border-color .2s,background .2s;display:inline-flex;align-items:center;gap:.6rem}.btn-back:hover{background:rgba(152,68,254,.07);border-color:var(--purple)}.feedback-section{background:var(--section-dark);padding:90px 2rem}.feedback-inner{max-width:760px;margin:0 auto;text-align:center}.feedback-icon{width:64px;height:64px;border-radius:50%;background:rgba(152,68,254,.1);border:1px solid rgba(152,68,254,.25);display:flex;align-items:center;justify-content:center;color:var(--purple);margin:0 auto 1.5rem}.feedback-inner>p{max-width:580px;margin:0 auto 2.25rem}.feedback-frame{width:100%;border:none;border-radius:14px;min-height:520px;background:var(--card)}.cert-steps{display:flex;flex-direction:column;gap:.75rem;max-width:360px;margin:1.5rem auto}.cert-step{gap:.85rem}.cert-step,.cert-step-badge{display:flex;align-items:center}.cert-step-badge{width:36px;height:36px;border-radius:50%;justify-content:center;font-family:Manrope,sans-serif;font-weight:800;font-size:.85rem;flex-shrink:0;transition:background .3s,color .3s,border-color .3s}.cert-step--active .cert-step-badge{background:var(--purple);color:#fff;border:2px solid var(--purple)}.cert-step--done .cert-step-badge{background:rgba(152,68,254,.15);color:var(--purple);border:2px solid var(--purple)}.cert-step--locked .cert-step-badge{background:var(--bg2);color:var(--text-faint);border:2px solid var(--border)}.cert-step-text{display:flex;flex-direction:column;gap:1px}.cert-step-label{font-family:Manrope,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.cert-step--active .cert-step-label{color:var(--purple)}.cert-step-name{font-family:Manrope,sans-serif;font-size:.9rem;font-weight:600;color:var(--text-muted)}.cert-step--active .cert-step-name{color:var(--heading)}.cert-step--locked .cert-step-name{color:var(--text-faint)}.cert-feedback-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:2rem;box-shadow:0 4px 20px rgba(152,68,254,.08)}.cert-feedback-frame{width:100%;min-height:560px;border:none;display:block}.cert-gate{flex-direction:column;gap:1.5rem;padding:2rem;background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:2rem;text-align:center}.cert-gate,.cert-gate-checkbox{display:flex;align-items:center}.cert-gate-checkbox{gap:.75rem;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:600;color:var(--text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cert-gate-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.cert-gate-checkbox-box{width:22px;height:22px;border-radius:6px;border:2px solid var(--border);background:var(--bg2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,border-color .2s;color:#fff}.cert-gate-checkbox input:checked+.cert-gate-checkbox-box{background:var(--purple);border-color:var(--purple)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin{transform-origin:center;animation:spin 1s linear infinite}@media (max-width:640px){.theme-toggle{top:10px;right:10px;padding:5px 10px;gap:6px}.toggle-label{display:none}.rp-pillars{grid-template-columns:1fr!important}.cert-input-panel{padding:1.25rem 1rem}.cert-input-row{grid-template-columns:1fr!important}.cert-body{padding:28px 20px}.cert-main-title{font-size:1.3rem}.cert-guild-line span{font-size:1.4rem}.cert-footer-row{flex-direction:column;text-align:center;gap:1.5rem}.cert-footer-row,.cert-sig-block{align-items:center}.cert-sig-rule{background:linear-gradient(90deg,transparent,#c8b0e8,transparent)}.cert-watermark{font-size:52px}.cert-feedback-frame{min-height:420px}.cert-gate-checkbox{flex-wrap:wrap;justify-content:center;text-align:center}.btn-print{justify-content:center}.btn-print,.rp-btn-primary{max-width:100%}.cert-steps{margin:1.25rem 0}.rp-modal{padding:1.5rem 1.25rem;border-radius:16px}.rp-form-row{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:900px){.rp-pillars{grid-template-columns:1fr 1fr!important}.cert-body{padding:40px 36px}.cert-footer-row{gap:1rem}}@media print{#smoky-canvas,.award-section,.back-to-academy,.cert-actions,.cert-input-panel,.cert-preview-label,.cert-section-header,.feedback-section,.recognition-section,.section-divider,.theme-toggle,footer{display:none!important}.cert-section{padding:0!important;background:#fff!important}.certificate{box-shadow:none!important;border:1px solid #e4d8f8}.cert-watermark{color:rgba(152,68,254,.05)!important}}