:root{--paper-color: #fdfbf7;--ink-color: #2b2b2b;--gold-color: #c5a059;--border-color: #1a1a1a;--font-serif: "Playfair Display", serif;--font-script: "Great Vibes", handwriting;--font-sans: "Inter", sans-serif}body{margin:0;font-family:var(--font-sans);background-color:#e0e0e0;color:var(--ink-color);-webkit-font-smoothing:antialiased}.app-container{display:flex;flex-direction:column;align-items:center;padding:2rem;min-height:100vh}h1{font-family:var(--font-serif);color:var(--ink-color);margin-bottom:2rem}.certificate-form{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:100%;max-width:600px;margin-bottom:2rem;display:grid;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;font-size:.9rem}.form-group input{border:1px solid #ccc;border-radius:4px;font-size:1rem}.template-selector{margin-bottom:2rem;text-align:center}.template-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.template-buttons button{padding:.8rem 1.2rem;border:2px solid #ccc;background:#fff;font-size:1rem;cursor:pointer;border-radius:8px;font-weight:500;transition:all .2s}.template-buttons button.active{border-color:var(--ink-color);background:var(--ink-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.template-buttons button:hover:not(.active){border-color:#999;transform:translateY(-1px)}.certificate-container{background-color:var(--paper-color);width:100%;max-width:800px;aspect-ratio:1.414 / 1;padding:3rem;box-shadow:0 10px 20px #0003;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:2px solid var(--border-color);outline:10px double var(--border-color);outline-offset:-15px}.ornate-border{position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:2px solid var(--gold-color);pointer-events:none}.cert-header{margin-bottom:2rem}.cert-title{font-family:var(--font-serif);font-size:3rem;text-transform:uppercase;letter-spacing:.2rem;border-bottom:2px solid var(--ink-color);padding-bottom:1rem;display:inline-block;margin:0}.cert-body{font-family:var(--font-serif);font-size:1.2rem;line-height:1.8;width:80%}.cert-name{font-family:var(--font-script);font-size:3.5rem;color:var(--gold-color);display:block;margin:1rem 0}.cert-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem;width:100%;border-top:1px solid #ccc;padding-top:2rem}.cert-signature{display:flex;flex-direction:column;align-items:center;gap:.5rem}.signature-line{width:80%;border-bottom:1px solid var(--ink-color);height:2rem}.theme-vintage-deco{background-color:#f4ecd8;border:8px solid #000;outline:4px solid #c5a059;outline-offset:-16px;color:#000;font-family:Cinzel,serif}.deco-border-outer{position:absolute;top:20px;bottom:20px;left:20px;right:20px;border:2px solid #000;pointer-events:none}.deco-border-inner{position:absolute;top:25px;bottom:25px;left:25px;right:25px;border:1px solid #c5a059;pointer-events:none}.deco-title{font-family:Cinzel,serif;font-weight:700;letter-spacing:.5rem;border-bottom:none;font-size:3.5rem;margin-bottom:.5rem;color:#000;text-shadow:2px 2px 0px #c5a059}.deco-line{width:100px;height:4px;background:#000;margin:0 auto 1rem;border-bottom:2px solid #c5a059}.deco-subtitle{text-transform:uppercase;letter-spacing:.2rem;font-weight:700;font-size:1rem}.deco-name{font-family:Cinzel,serif;font-weight:700;color:#000;font-size:3rem;text-transform:uppercase;letter-spacing:.1rem;border-bottom:2px solid #c5a059;display:inline-block;padding:0 2rem;margin:1.5rem 0}.deco-text-small{text-transform:uppercase;font-size:.8rem;letter-spacing:.2rem;margin:0}.deco-shares{font-family:Cinzel,serif;font-size:2.5rem;color:#c5a059;text-shadow:1px 1px 0 #000;margin:.5rem 0}.deco-company{font-family:Cinzel,serif;font-size:2rem;text-transform:uppercase;margin:0 0 2rem}.deco-message{font-family:Playfair Display,serif;font-style:italic;font-size:1.2rem;border-left:2px solid #c5a059;border-right:2px solid #c5a059;display:inline-block;padding:.5rem 2rem}.deco-sig-line{border-bottom:2px solid #000}.deco-typed{font-family:Cinzel,serif;font-weight:700}.deco-label{text-transform:uppercase;font-size:.7rem;letter-spacing:.1rem;font-weight:700}.deco-corner-tl,.deco-corner-tr,.deco-corner-bl,.deco-corner-br{position:absolute;width:40px;height:40px;background:linear-gradient(45deg,#000 25%,transparent 25%,transparent 75%,#000 75%,#000),linear-gradient(45deg,#000 25%,transparent 25%,transparent 75%,#000 75%,#000);background-color:#c5a059;background-size:10px 10px;border:2px solid #000}.deco-corner-tl{top:0;left:0}.deco-corner-tr{top:0;right:0}.deco-corner-bl{bottom:0;left:0}.deco-corner-br{bottom:0;right:0}.theme-modern-fun{background-color:#e6f3ff;border:8px dashed #ff6b6b;outline:none;font-family:Inter,sans-serif;color:#333;border-radius:20px}.fun-title{font-family:Inter,sans-serif;color:#2b2b2b;font-weight:800;font-size:2.2rem;text-transform:none;border:none;letter-spacing:normal}.fun-body{width:100%}.fun-card{background:#fff;padding:1rem 2rem;border-radius:15px;display:inline-block;box-shadow:0 4px 10px #0000001a;margin-bottom:1rem;border:2px solid #4ecdc4}.fun-intro{text-transform:uppercase;color:#ff6b6b;font-weight:700;font-size:.9rem;margin:0}.fun-name{font-size:2.5rem;font-weight:800;color:#2b2b2b}.fun-text{font-size:1.2rem;margin:1.5rem 0}.fun-stats{display:flex;justify-content:center;gap:1.5rem;margin-bottom:2rem}.fun-stat-box{background:#fff;padding:1rem;border-radius:12px;display:flex;align-items:center;gap:.5rem;border:2px solid #ffe66d;min-width:150px;justify-content:center}.fun-emoji{font-size:1.5rem}.fun-value{font-weight:700;font-size:1.1rem}.fun-message{font-family:Inter,sans-serif;font-size:1.3rem;color:#0056b3;font-weight:600}.fun-footer{margin-top:2rem;display:flex;gap:2rem;justify-content:center;font-weight:700;color:#666}.fun-confetti,.fun-confetti-2,.fun-confetti-3{position:absolute;font-size:2rem;animation:float 3s infinite ease-in-out}.fun-confetti{top:20px;left:30px}.fun-confetti-2{top:40px;right:40px;animation-delay:1s}.fun-confetti-3{bottom:30px;left:40px;animation-delay:.5s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mobile-warning{display:none;background-color:#fff3cd;border:1px solid #ffeeba;color:#856404;padding:.75rem;border-radius:8px;margin-bottom:2rem;font-size:.9rem;text-align:center}@media screen and (max-width: 768px){.mobile-warning{display:block}.app-container{padding:1rem}.certificate-form{padding:1.5rem;max-width:100%}.form-group{flex-direction:column}.certificate-container{width:100%;height:auto;aspect-ratio:1.414 / 1;padding:1.5rem;font-size:.6rem;outline-width:5px;outline-offset:-8px;border-width:2px}.cert-title{font-size:1.5rem;margin-bottom:.5rem;letter-spacing:.1rem}.cert-name{font-size:2rem;margin:.5rem 0}.cert-body{width:95%;font-size:.8rem;line-height:1.4}.cert-details{margin-top:1rem;gap:1rem;padding-top:1rem}.signature-line{height:1.5rem}.theme-vintage-deco{border-width:4px;outline-width:2px}.deco-title{font-size:1.8rem;letter-spacing:.2rem}.deco-name{font-size:1.5rem;padding:0 1rem;margin:1rem 0}.deco-shares{font-size:1.5rem}.deco-company{font-size:1.2rem;margin-bottom:1rem}.deco-line{width:50px}.deco-corner-tl,.deco-corner-tr,.deco-corner-bl,.deco-corner-br{width:20px;height:20px}.theme-modern-fun{border-width:4px;border-radius:10px}.fun-title{font-size:1.2rem}.fun-name{font-size:1.5rem}.fun-card{padding:.5rem 1rem}.fun-stats{flex-direction:column;gap:.5rem;margin-bottom:1rem}.fun-stat-box{min-width:auto;width:100%;box-sizing:border-box}}@media print{@page{size:landscape;margin:0}html,body{width:100%;height:100%;overflow:hidden}.certificate-form,footer,.no-print{display:none!important}.app-container,.preview-section{display:block!important;width:100%;height:100%;margin:0;padding:0}.app-container>*:not(.preview-section){display:none!important}.certificate-container{display:flex!important;justify-content:center!important;align-items:center!important;position:absolute;top:0;left:0;width:100vw;height:100vh;z-index:9999;box-shadow:none;border:none;margin:0;padding:0!important;box-sizing:border-box;background-color:var(--paper-color)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;max-width:none!important;max-height:none!important;transform-origin:center center}}
