@import "https://fonts.googleapis.com/css2?family=Pretendard:wght@300;400;500;600;700;800&display=swap";:root{--primary:#8a2be2;--primary-hover:#9932cc;--bg-color:#0b0c10;--bg-gradient:radial-gradient(circle at top, #1f2833 0%, #0b0c10 100%);--surface:#ffffff0d;--surface-border:#ffffff1a;--text-main:#fff;--text-muted:#c5c6c7;--glass-bg:#1f283399;--glass-blur:blur(16px);--accent-gold:gold;--accent-red:#ff4500;--shadow-glow:0 0 20px #8a2be24d}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-gradient);color:var(--text-main);background-attachment:fixed;min-height:100vh;font-family:Pretendard,sans-serif;line-height:1.5;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 8px 32px #0000005e}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-hover));color:#fff;cursor:pointer;box-shadow:var(--shadow-glow);border:none;border-radius:8px;padding:12px 24px;font-size:1.1rem;font-weight:600;transition:all .3s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 30px #8a2be299}.btn-primary:disabled{box-shadow:none;cursor:not-allowed;background:#444;transform:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeIn}@keyframes pulse-glow{0%{box-shadow:0 0 20px #8a2be24d}50%{box-shadow:0 0 40px #8a2be299}to{box-shadow:0 0 20px #8a2be24d}}.landing-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.main-card{text-align:center;width:100%;max-width:480px;padding:40px}.title{background:linear-gradient(90deg,gold,#ff8c00);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:10px;font-size:2rem}.subtitle{color:var(--text-muted);word-break:keep-all;margin-bottom:30px;font-size:1rem;line-height:1.5}.date-time-group{gap:15px;display:flex}.input-half{flex-direction:column;flex:1;display:flex}.input-half label{color:#a0a0b0;text-align:left;margin-bottom:8px;font-size:.9rem}.input-half input{color:#fff;background:#ffffff0d;border:1px solid #fff3;border-radius:8px;outline:none;padding:12px;font-size:1rem;transition:border-color .3s}.highlight{background:linear-gradient(90deg,#00c6ff,#8a2be2);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:20px}.payment-action{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.input-form{flex-direction:column;gap:20px;display:flex}.form-group{text-align:left;flex-direction:column;gap:8px;display:flex}.form-group label{color:#ddd;font-weight:500}input[type=datetime-local]{border:1px solid var(--surface-border);color:#fff;background:#00000080;border-radius:8px;padding:12px;font-family:inherit;font-size:1rem}input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert()}.gender-group{flex-direction:row;justify-content:space-around;margin-bottom:10px}.gender-group label{cursor:pointer;align-items:center;gap:8px;display:flex}.teaser-box{border:1px solid var(--surface-border);background:#0000004d;border-radius:12px;margin:20px 0;padding:20px}.character-silhouette{border:2px solid var(--accent-gold);background:linear-gradient(135deg,#2c3e50,#000);border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto 20px;display:flex;box-shadow:0 0 20px #ffd70033}.mystic-glow{color:var(--accent-gold);text-shadow:0 0 15px var(--accent-gold);font-size:3rem;animation:2s infinite pulse-glow}.blur-preview{text-align:left;background:#ffffff0d;border-radius:8px;margin-top:15px;padding:15px;font-size:.9rem}.blur-preview ul{color:#ccc;flex-direction:column;gap:8px;margin-top:10px;list-style:none;display:flex}.price-tag{color:#fff;margin-bottom:15px;font-size:1.5rem;font-weight:700}.pulse{width:100%;animation:2s infinite pulse-glow}.loading-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.loading-card{text-align:center;width:100%;max-width:400px;padding:40px}.loading-animation{justify-content:center;margin:0 auto 30px;display:flex}.crystal-ball{background:radial-gradient(circle at 30% 30%,#fffc,#8a2be266 60%,#000c);border-radius:50%;width:150px;height:150px;animation:4s ease-in-out infinite float;position:relative;overflow:hidden;box-shadow:0 0 30px #8a2be299,inset 0 0 20px #ffffff80}.energy-core{filter:blur(10px);background:radial-gradient(circle,#f0f,#8a2be2,#0000);border-radius:50%;width:80px;height:80px;animation:2s infinite alternate pulse-core;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stars{text-align:center;width:100%;font-size:1.5rem;animation:10s linear infinite spin;position:absolute;top:40%}.loading-title{color:var(--accent-gold);margin-bottom:25px;font-size:1.5rem}.progress-container{background:#ffffff1a;border-radius:4px;width:100%;height:8px;margin-bottom:10px;overflow:hidden}.progress-bar{background:linear-gradient(90deg, var(--primary), var(--accent-gold));height:100%;transition:width .1s linear}.progress-text{color:var(--text-muted);margin-bottom:15px;font-size:.9rem;font-weight:700}.loading-message{color:#ddd;min-height:48px;font-size:1rem}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}@keyframes pulse-core{0%{opacity:.6;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1.2)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.result-card{text-align:center;width:100%;max-width:500px;padding:40px}.success-badge{color:#fff;background:linear-gradient(135deg,#00b09b,#96c93d);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 20px;font-size:2rem;animation:.5s cubic-bezier(.175,.885,.32,1.275) scale-up;display:flex;box-shadow:0 0 20px #00b09b66}.result-title{color:#fff;margin-bottom:10px;font-size:1.8rem}.result-desc{color:var(--text-muted);margin-bottom:30px}.pdf-preview{perspective:1000px;justify-content:center;margin-bottom:30px;display:flex}.book-cover{width:150px;height:200px;transform-style:preserve-3d;transition:transform .5s;position:relative;transform:rotateY(-15deg)}.book-cover:hover{transform:rotateY(-5deg)scale(1.05)}.book-spine{background:#6a1b9a;border-radius:4px 0 0 4px;width:20px;height:100%;position:absolute;left:-10px;transform:rotateY(-90deg)translateZ(10px)}.book-front{background:linear-gradient(135deg,#4a148c,#8a2be2);border:1px solid #fff3;border-radius:0 8px 8px 0;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex;position:absolute;transform:translateZ(10px);box-shadow:inset 4px 0 10px #0000001a,10px 10px 20px #00000080}.book-front h3{color:gold;text-shadow:0 2px 4px #00000080;margin-bottom:10px;font-size:1.2rem}.book-front p{color:#fff;font-size:.8rem}.download-btn{background:linear-gradient(135deg,#00c6ff,#0072ff);width:100%;margin-bottom:30px;padding:15px;font-size:1.2rem;box-shadow:0 0 20px #0072ff66}.upsell-section{text-align:left;border-top:1px solid var(--surface-border);margin-bottom:20px;padding-top:20px}.upsell-title{color:var(--accent-gold);margin-bottom:15px;font-size:1.1rem}.upsell-box{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:15px;padding:15px;transition:background .3s;display:flex}.upsell-box:hover{background:#ffffff14}.upsell-icon{font-size:2rem}.upsell-text h4{margin-bottom:4px;font-size:1rem}.upsell-text p{color:#aaa;font-size:.8rem}.btn-upsell{border:1px solid var(--accent-gold);color:var(--accent-gold);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:8px 12px;transition:all .3s}.btn-upsell:hover{background:var(--accent-gold);color:#000}.btn-secondary{color:var(--text-muted);cursor:pointer;background:0 0;border:none;text-decoration:underline}.btn-secondary:hover{color:#fff}@keyframes scale-up{0%{transform:scale(0)}to{transform:scale(1)}}
