@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--text-primary:#f8fafc;--text-secondary:#ffffffb3;--glass-bg:#ffffff08;--glass-border:#ffffff14;--glass-shadow:0 8px 32px 0 #0000004d;--accent-blue:#4facfe;--accent-cyan:#00f2fe}*{box-sizing:border-box;margin:0;padding:0}.splash-screen{z-index:9999;opacity:1;background-color:#020617;background-image:radial-gradient(circle at 20%,#4facfe2e,#0000 30%),radial-gradient(circle at 80% 30%,#00f2fe26,#0000 30%),radial-gradient(circle at 50% 90%,#8b5cf633,#0000 40%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;justify-content:center;align-items:center;transition:opacity 1.2s,transform 1.2s;display:flex;position:fixed;inset:0;overflow:hidden}.splash-screen.splash-leaving{opacity:0;pointer-events:none;transform:scale(1.04)}.splash-particles{pointer-events:none;position:absolute;inset:0}.splash-particle{background:radial-gradient(circle,#00f2fecc,#0000);border-radius:50%;animation:linear infinite particleDrift;position:absolute}@keyframes particleDrift{0%{opacity:0;transform:translateY(0)scale(1)}20%{opacity:.8}80%{opacity:.4}to{opacity:0;transform:translateY(-120px)scale(.3)}}.splash-center{z-index:2;flex-direction:column;align-items:center;gap:24px;animation:.9s cubic-bezier(.16,1,.3,1) forwards splashReveal;display:flex;position:relative}@keyframes splashReveal{0%{opacity:0;transform:translateY(30px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.splash-ring{pointer-events:none;border:1.5px solid #00f2fe4d;border-radius:50%;animation:3s ease-out infinite ringPulse;position:absolute}.splash-ring-1{width:140px;height:140px;animation-delay:0s}.splash-ring-2{border-color:#4facfe33;width:200px;height:200px;animation-delay:.6s}.splash-ring-3{border-color:#8b5cf626;width:270px;height:270px;animation-delay:1.2s}@keyframes ringPulse{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(1.6)}}.splash-logo{object-fit:cover;filter:drop-shadow(0 0 24px #00f2feb3)drop-shadow(0 0 60px #4facfe66);z-index:1;border-radius:28px;width:100px;height:100px;animation:3s ease-in-out infinite splashLogoFloat;position:relative}@keyframes splashLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.splash-brand{flex-direction:column;align-items:center;gap:6px;display:flex}.splash-name{letter-spacing:-1px;color:#fff;font-family:Outfit,sans-serif;font-size:3rem;font-weight:700;animation:1s cubic-bezier(.16,1,.3,1) .3s both splashTextReveal}.splash-accent{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.splash-tagline{letter-spacing:3px;text-transform:uppercase;color:#fff6;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:400;animation:1s cubic-bezier(.16,1,.3,1) .5s both splashTextReveal}@keyframes splashTextReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.splash-bar-wrap{background:#ffffff14;border-radius:99px;width:180px;height:3px;animation:1s .7s both splashTextReveal;overflow:hidden}.splash-bar{background:linear-gradient(90deg,#a78bfa,#4facfe,#00f2fe,#a78bfa) 0 0/300% 100%;border-radius:99px;height:100%;animation:3.8s cubic-bezier(.4,0,.2,1) forwards barFill,1.5s linear infinite barShimmer}@keyframes barFill{0%{width:0%}to{width:100%}}@keyframes barShimmer{0%{background-position:0%}to{background-position:300%}}body{color:var(--text-primary);background-color:#020617;background-image:radial-gradient(circle at 15%,#4facfe26,#0000 25%),radial-gradient(circle at 85% 30%,#00f2fe26,#0000 25%),radial-gradient(circle at 50% 100%,#8b5cf626,#0000 40%);background-attachment:fixed;justify-content:center;min-height:100vh;padding:40px 20px;font-family:Outfit,sans-serif;display:flex}.app-container{-webkit-backdrop-filter:blur(28px);border:1px solid var(--glass-border);background:#0f172a99;border-radius:32px;width:100%;max-width:1200px;padding:50px;position:relative;overflow:hidden;box-shadow:0 30px 60px #0006,inset 0 1px #ffffff1a}header{text-align:center;z-index:2;margin-bottom:50px;position:relative}header h1{letter-spacing:-2px;background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:4rem;font-weight:700}.brand-title{justify-content:center;align-items:center;gap:20px;margin-bottom:12px;display:flex}.brand-logo{object-fit:cover;filter:drop-shadow(0 0 12px #00f2fe80)drop-shadow(0 0 28px #4facfe40);border-radius:18px;flex-shrink:0;width:64px;height:64px;animation:4s ease-in-out infinite logoPulse,6s ease-in-out infinite logoFloat}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 10px #00f2fe59)drop-shadow(0 0 20px #4facfe26)}50%{filter:drop-shadow(0 0 20px #00f2feb3)drop-shadow(0 0 40px #a78bfa4d)}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}header h1 span{background:linear-gradient(135deg, var(--accent-blue) 0%, var(--accent-cyan) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}header p{color:var(--text-secondary);letter-spacing:.5px;font-size:1.25rem;font-weight:400}.tabs{border-bottom:1px solid #ffffff0d;justify-content:center;gap:16px;margin-bottom:50px;padding-bottom:40px;display:flex}.tab-btn{border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;letter-spacing:.5px;background:#ffffff05;border-radius:100px;padding:14px 36px;font-family:inherit;font-size:1.1rem;font-weight:500;transition:all .4s cubic-bezier(.4,0,.2,1)}.tab-btn:hover{color:#fff;background:#ffffff14;transform:translateY(-2px)}.tab-btn.active{color:#fff;background:linear-gradient(135deg,#4facfe26,#00f2fe26);border-color:#00f2fe66;box-shadow:0 8px 24px #00f2fe26}.secondary-btn,.primary-btn{cursor:pointer;letter-spacing:.5px;border-radius:16px;justify-content:center;align-items:center;padding:16px 32px;font-family:inherit;font-size:1.05rem;font-weight:600;transition:all .3s;display:inline-flex}.secondary-btn{color:#fff;background:#ffffff08;border:1px solid #ffffff26}.secondary-btn:hover{background:#ffffff14;border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 10px 20px #0003}.primary-btn{background:linear-gradient(135deg, var(--accent-blue) 0%, var(--accent-cyan) 100%);color:#020617;border:none;box-shadow:0 12px 24px #00f2fe40}.primary-btn:hover{filter:brightness(1.1);transform:translateY(-3px);box-shadow:0 16px 32px #00f2fe59}.search-bar{max-width:700px;margin:0 auto 40px;position:relative}.search-bar:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-cyan), transparent);opacity:0;height:1px;transition:opacity .4s;position:absolute;bottom:-2px;left:10%;right:10%}.search-bar:focus-within:after{opacity:1}input[type=text]{color:#fff;text-align:center;background:#0003;border:1px solid #ffffff1a;border-radius:24px;outline:none;width:100%;padding:24px 36px;font-family:inherit;font-size:1.8rem;font-weight:300;transition:all .3s;box-shadow:inset 0 4px 20px #00000080}input[type=text]::placeholder{color:#fff3}input[type=text]:focus{background:#0000004d;border-color:#00f2fe66;box-shadow:inset 0 4px 20px #0009,0 0 30px #00f2fe1a}.controls-bar{background:#0003;border:1px solid #ffffff0d;border-radius:24px;flex-wrap:wrap;justify-content:center;align-items:center;gap:30px;margin-bottom:50px;padding:24px 36px;display:flex}.control-wrap{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1.5px;flex-direction:column;gap:10px;font-size:.9rem;font-weight:500;display:flex}.control-wrap.color-wrap{flex-direction:row;align-items:center;gap:16px}input[type=range]{-webkit-appearance:none;background:#ffffff1a;border-radius:8px;outline:none;width:140px;height:8px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent-cyan);cursor:pointer;border-radius:50%;width:20px;height:20px;transition:transform .2s;box-shadow:0 0 12px #00f2fe99}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}input[type=color]{cursor:pointer;background:0 0;border:2px solid #ffffff4d;border-radius:50%;width:48px;height:48px;padding:0;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none}select{color:#fff;cursor:pointer;appearance:none;background:#0006;border:1px solid #ffffff26;border-radius:12px;outline:none;padding:12px 20px;font-family:inherit;font-size:1rem}select option{color:#fff;background:#0f172a}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px;transition:opacity .4s;display:grid}.signature-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#ffffff05;border:1px solid #ffffff0f;border-radius:24px;justify-content:center;align-items:center;min-height:240px;padding:30px;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 30px #0003}.signature-card.is-saved{background:#f871710d;border:1px solid #f871714d}.signature-card:after{content:"";pointer-events:none;z-index:3;background:linear-gradient(45deg,#0000,#ffffff0d 45%,#ffffff1a 50%,#ffffff0d 55%,#0000 100%);width:200%;height:200%;transition:transform .8s cubic-bezier(.4,0,.2,1);position:absolute;top:-50%;left:-50%;transform:rotate(-15deg)translateY(100%)}.signature-card:hover:after{transform:rotate(-15deg)translateY(-100%)}.signature-card:before{content:"";opacity:0;z-index:0;background:linear-gradient(135deg,#ffffff0f,#0000);transition:opacity .4s;position:absolute;inset:0}.signature-card:hover{background:#ffffff0a;border-color:#00f2fe4d;transform:translateY(-10px)scale(1.02);box-shadow:0 24px 48px #0006,0 0 30px #00f2fe1a}.signature-card:hover:before{opacity:1}.signature-card canvas{z-index:1;max-width:100%;height:auto;position:relative}.card-archetype-badge{letter-spacing:1.5px;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#ffffffe6;z-index:4;background:#0000004d;border:1px solid #ffffff1a;border-radius:6px;padding:4px 12px;font-size:.6rem;font-weight:700;position:absolute;top:20px;right:20px}.signature-card.light-mode{background:#f8fafc;border-color:#cbd5e1}.signature-card.light-mode:hover{box-shadow:0 24px 48px #0000001a}.signature-card .overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;color:#fff;letter-spacing:3px;text-transform:uppercase;z-index:2;background:#020617b3;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;transition:all .3s;display:flex;position:absolute;inset:0}.signature-card:hover .overlay{opacity:1}.heart-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:10;background:#0000004d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:all .3s;display:flex;position:absolute;top:15px;right:15px}.heart-btn svg{width:18px;height:18px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.heart-btn:hover{background:#f87171cc;transform:scale(1.1)}.signature-card.is-saved .heart-btn{color:#f87171;background:#f871711a;border-color:#f8717166}.vault-section{border-top:1px solid #ffffff0d;margin-top:60px;padding-top:40px;animation:.8s backwards slideUp}.vault-header{margin-bottom:25px}.vault-header h2{background:linear-gradient(135deg,#f87171,#fb923c);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:5px;font-size:2rem}.vault-header p{color:#a1a1aa;font-size:.95rem}.vault-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.vault-item-wrap{flex-direction:column;gap:10px;display:flex}.vault-item-wrap .signature-card{padding:20px}.vault-item-label{color:#71717a;text-transform:uppercase;letter-spacing:.05em;padding-left:10px;font-size:.8rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes heartPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}@media (width<=600px){.vault-grid{grid-template-columns:1fr}}.empty-state{text-align:center;color:var(--text-secondary);grid-column:1/-1;padding:100px 20px;animation:5s ease-in-out infinite floatGhost}.empty-state h3{color:#fff;margin-bottom:12px;font-size:2rem;font-weight:400}.ghost-signature{opacity:.4;filter:drop-shadow(0 0 30px #ffffff1a);margin-bottom:24px;font-size:5rem}@keyframes floatGhost{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.draw-layout{text-align:center;max-width:950px;margin:0 auto}.draw-header h2{color:#fff;margin-bottom:16px;font-size:2.8rem;font-weight:600}.draw-header p{color:var(--text-secondary);margin-bottom:40px;font-size:1.2rem}.draw-canvas-wrapper{cursor:crosshair;touch-action:none;background:#0003;border:2px dashed #ffffff26;border-radius:32px;margin:0 auto 40px;transition:all .3s;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #0000004d}.draw-canvas-wrapper:hover{background:#0000004d;border-color:#00f2fe66}.draw-canvas-wrapper canvas{z-index:2;background:0 0;width:100%;height:auto;display:block;position:relative}.watermark-line{z-index:1;pointer-events:none;background:#ffffff14;height:1px;position:absolute;top:75%;left:10%;right:10%}.draw-actions{justify-content:center;align-items:center;gap:24px;display:flex}.modal{-webkit-backdrop-filter:blur(24px);z-index:1000;background:#020617d9;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0;overflow-y:auto}.modal-content{text-align:center;background:#0f172af2;border:1px solid #ffffff1a;border-radius:40px;width:100%;max-width:900px;padding:60px;animation:.5s cubic-bezier(.16,1,.3,1) modalIn;position:relative;box-shadow:0 40px 100px #000c}@keyframes modalIn{0%{opacity:0;transform:translateY(60px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.close-btn{color:#fff6;cursor:pointer;font-size:3rem;line-height:1;transition:all .3s;position:absolute;top:30px;right:40px}.close-btn:hover{color:#ef4444;transform:rotate(90deg)scale(1.1)}.modal-content h2{background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:40px;font-size:2.4rem;font-weight:600}.large-canvas-wrapper{background:#000;border:1px solid #ffffff1a;border-radius:24px;justify-content:center;align-items:center;margin:0 auto 50px;transition:background .3s;display:flex;overflow:hidden;box-shadow:inset 0 0 30px #0009}.large-canvas-wrapper.light-mode{background:#f8fafc;border-color:#cbd5e1}@media (width>=1400px){.app-container{max-width:1400px;padding:60px 70px}header h1{font-size:5rem}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:36px}input[type=text]{padding:28px 40px;font-size:2rem}.controls-bar{gap:40px;padding:28px 50px}.signature-card{min-height:280px}}@media (width>=769px) and (width<=1399px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=768px){body{padding:16px 12px}.app-container{border:none;border-radius:24px;padding:28px 20px}header{margin-bottom:32px}header h1{letter-spacing:-1px;font-size:2.8rem}header p{font-size:1rem}.brand-logo{width:52px;height:52px}.brand-title{gap:14px}.tabs{border-bottom:none;gap:10px;padding-bottom:20px}.tab-btn{padding:12px 24px;font-size:1rem}.search-bar{margin-bottom:24px}input[type=text]{border-radius:18px;padding:18px 22px;font-size:1.2rem}.controls-bar{border-radius:18px;flex-wrap:wrap;justify-content:flex-start;gap:16px;margin-bottom:30px;padding:18px}.control-wrap{flex:1;min-width:140px}input[type=range]{width:100%}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:16px}.signature-card{border-radius:18px;min-height:160px;padding:16px}.signature-card:hover{transform:translateY(-4px)scale(1.01)}.export-grid{grid-template-columns:1fr;gap:20px;padding:20px}.modal{padding:12px}.modal-content{border-radius:24px;padding:36px 20px}.modal-content h2{margin-bottom:28px;font-size:2rem}.large-canvas-wrapper{border-radius:18px;margin-bottom:28px}.close-btn{font-size:2.5rem;top:18px;right:24px}.draw-header h2{font-size:2rem}.draw-header p{margin-bottom:28px;font-size:1rem}.draw-actions{flex-wrap:wrap;gap:16px}}@media (width<=480px){body{padding:0}.app-container{min-height:100vh;box-shadow:none;border:none;border-radius:0;padding:20px 14px}header{margin-bottom:24px}header h1{letter-spacing:-.5px;font-size:2.2rem}header p{font-size:.9rem}.brand-logo{border-radius:12px;width:42px;height:42px}.brand-title{gap:10px;margin-bottom:8px}.tabs{flex-direction:column;gap:8px;margin-bottom:24px;padding-bottom:16px}.tab-btn{text-align:center;border-radius:14px;width:100%;min-height:52px;padding:14px 20px;font-size:1rem}input[type=text]{text-align:left;border-radius:16px;padding:16px 18px;font-size:16px}.search-bar{margin-bottom:20px}.controls-bar{border-radius:16px;flex-direction:column;align-items:stretch;gap:18px;margin-bottom:24px;padding:16px}.control-wrap{align-items:flex-start;width:100%}.control-wrap.color-wrap{flex-direction:row;align-items:center;gap:14px}input[type=range]{width:100%;height:10px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px}select{width:100%;padding:14px 16px;font-size:1rem}.secondary-btn,.primary-btn{border-radius:14px;width:100%;min-height:52px;padding:14px 22px;font-size:.95rem}.gallery-grid{grid-template-columns:1fr;gap:14px}.signature-card{border-radius:16px;min-height:150px;padding:14px}.signature-card:hover{transform:translateY(-2px)}.signature-card canvas{min-width:0}.empty-state{padding:60px 20px}.empty-state h3{font-size:1.6rem}.ghost-signature{font-size:4rem}.draw-layout{max-width:100%}.draw-header h2{font-size:1.6rem}.draw-header p{margin-bottom:20px;font-size:.9rem}.draw-actions{flex-direction:column;gap:12px}.draw-actions button{width:100%}.draw-canvas-wrapper{border-radius:20px}.modal{align-items:flex-end;padding:0}.modal-content{border-radius:28px 28px 0 0;min-height:60vh;margin-top:0;padding:28px 16px}.modal-content h2{margin-bottom:20px;font-size:1.6rem}.large-canvas-wrapper{border-radius:14px;margin-bottom:20px}.close-btn{font-size:2.2rem;top:14px;right:18px}.export-grid{border-radius:16px;grid-template-columns:1fr;gap:16px;padding:16px}.export-col button{border-radius:14px;padding:14px}}#largeCanvas{max-width:100%;height:auto;display:block}.export-grid{text-align:left;background:#ffffff05;border:1px solid #ffffff0d;border-radius:24px;grid-template-columns:1fr 1fr;gap:40px;padding:40px;display:grid}.export-col h3{color:#fff;align-items:center;gap:12px;margin-bottom:24px;font-size:1.4rem;font-weight:500;display:flex}.export-col h3:before{content:"";background:var(--accent-cyan);width:10px;height:10px;box-shadow:0 0 10px var(--accent-cyan);border-radius:50%;display:block}.export-col button{width:100%;margin-bottom:16px;padding:16px;display:block}.email-col p{color:var(--text-secondary);margin-bottom:30px;font-size:1rem;line-height:1.6}
