@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600&family=Noto+Sans+KR:wght@300;400;700&family=Playfair+Display:ital,wght@0,700;1,400&display=swap";:root{--bg-color: #05070A;--card-bg: #12141D;--primary-gold: #D4AF37;--text-white: #FFFFFF;--text-silver: #B0B3B8;--glass-border: rgba(212, 175, 55, .2);--shadow-gold: 0 0 20px rgba(212, 175, 55, .15);--shadow-deep: 0 25px 50px -12px rgba(0, 0, 0, .7);--radius-lg: 24px;--radius-md: 12px;--font-sans: "Noto Sans KR", sans-serif;--font-serif: "Playfair Display", serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-white);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;word-break:keep-all;display:flex;justify-content:center;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 30%,#1a1b3a 0%,transparent 40%),radial-gradient(circle at 80% 70%,#2e1a47 0%,transparent 40%),radial-gradient(circle at 50% 50%,#05070a,#000);z-index:-1}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(1px 1px at 10% 10%,#fff,transparent),radial-gradient(1px 1px at 20% 50%,#fff,transparent),radial-gradient(2px 2px at 40% 80%,#fff,transparent),radial-gradient(1px 1px at 60% 20%,#fff,transparent),radial-gradient(2px 2px at 80% 40%,#fff,transparent),radial-gradient(1px 1px at 90% 90%,#fff,transparent);background-size:200px 200px;opacity:.3;z-index:-1;animation:twinkle 10s linear infinite}@keyframes twinkle{0%{transform:translateY(0)}to{transform:translateY(-200px)}}h1,h2,h3{text-align:center;font-weight:700}button{cursor:pointer;border:none;font-family:var(--font-sans);transition:all .4s cubic-bezier(.165,.84,.44,1)}.fade-in{animation:fadeIn 1.5s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.app-wrapper{max-width:450px;width:100%;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;z-index:2;position:relative}.tarot-card-frame{background-color:var(--card-bg);width:380px;height:627px;border-radius:var(--radius-lg);border:5px double var(--primary-gold);box-shadow:var(--shadow-deep),0 0 40px #d4af3726;position:relative;overflow:hidden;text-align:center;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 25px;z-index:10}.tarot-card-frame:before,.tarot-card-frame:after{content:"✧";position:absolute;font-size:1.2rem;color:var(--primary-gold);filter:drop-shadow(0 0 8px var(--primary-gold));left:50%;transform:translate(-50%);opacity:.8;z-index:20}.tarot-card-frame:before{top:15px}.tarot-card-frame:after{bottom:15px}.inner-content-wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:contentFadeIn .8s ease-out}.inner-content-top{justify-content:flex-start;padding-top:20px}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.module-title-en{position:absolute;top:50px;width:100%;left:0;font-size:.75rem;letter-spacing:5px;text-transform:uppercase;color:var(--primary-gold);font-family:var(--font-serif);opacity:.6}.main-content-group{display:flex;flex-direction:column;align-items:center;gap:15px}.module-subtitle{color:var(--text-white);font-size:1.8rem;line-height:1.3;font-weight:700;word-break:keep-all}.module-description{color:var(--text-silver);font-size:.9rem;line-height:1.6;font-weight:300;margin-bottom:20px}.uploader-card{width:100%;aspect-ratio:1 / 1;background-color:#ffffff05;border:1px dashed var(--primary-gold);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;margin:15px 0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.preview-img{width:100%;height:100%;object-fit:cover}.shuffle-container{position:relative;width:100%;height:250px;margin:20px 0;display:flex;justify-content:center;align-items:center}.shuffling-card{position:absolute;width:110px;height:180px;background:radial-gradient(circle at 50% 50%,#1b1e2b,#05070a);border:2px solid var(--primary-gold);border-radius:10px;box-shadow:var(--shadow-gold);display:flex;align-items:center;justify-content:center}.shuffling-card:after{content:"✧";color:var(--primary-gold);font-size:1.5rem;opacity:.5}.card-1{animation:shuffle1 4s infinite ease-in-out}.card-2{animation:shuffle2 4s infinite ease-in-out;animation-delay:.4s}.card-3{animation:shuffle3 4s infinite ease-in-out;animation-delay:.8s}.card-4{animation:shuffle1 4s infinite ease-in-out;animation-delay:1.2s;transform:rotate(10deg)}.card-5{animation:shuffle2 4s infinite ease-in-out;animation-delay:1.6s;transform:rotate(-10deg)}@keyframes shuffle1{0%,to{transform:translate(0) rotate(0);z-index:1}25%{transform:translate(-80px,-20px) rotate(-15deg);z-index:5}50%{transform:translate(20px,30px) rotate(10deg);z-index:1}75%{transform:translate(60px,-10px) rotate(5deg);z-index:3}}@keyframes shuffle2{0%,to{transform:translate(0) rotate(5deg);z-index:2}25%{transform:translate(70px,20px) rotate(15deg);z-index:1}50%{transform:translate(-30px,-40px) rotate(-10deg);z-index:4}75%{transform:translate(-50px,10px) rotate(-5deg);z-index:2}}@keyframes shuffle3{0%,to{transform:translate(0) rotate(-5deg);z-index:3}25%{transform:translate(10px,-60px) rotate(-10deg);z-index:2}50%{transform:translate(50px,40px) rotate(15deg);z-index:5}75%{transform:translate(-60px,-20px) rotate(-15deg);z-index:1}}.funny-phrase{font-size:1rem;color:#fff;margin:15px 0;font-style:italic;opacity:0;transition:opacity .8s ease-in-out;text-align:center;min-height:1.5em}.funny-phrase.visible{opacity:1}.choice-container{display:flex;gap:15px;justify-content:center;margin:30px 0}.choice-card{width:105px;height:175px;background:radial-gradient(circle at 50% 50%,#1b1e2b,#05070a);border:2px solid var(--primary-gold);border-radius:12px;cursor:pointer;transition:all .5s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-deep),0 0 15px #d4af371a;opacity:0;animation:floatUp 1s forwards}.choice-card:hover{transform:translateY(-20px) scale(1.1);border-color:#fff;box-shadow:0 15px 30px #00000080,0 0 20px #d4af374d}.choice-card-1:after{content:"✧";color:var(--primary-gold);font-size:2rem}.choice-card-2:after{content:"✦";color:var(--primary-gold);font-size:2rem}.choice-card-3:after{content:"❂";color:var(--primary-gold);font-size:2rem}@keyframes floatUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.result-card-outer{width:380px;height:627px;perspective:1500px;position:relative}.card-inner{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.19,1,.22,1);transform-style:preserve-3d;cursor:pointer}.card-inner.is-flipped{transform:rotateY(180deg)}.card-side{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--radius-lg);border:5px double var(--primary-gold);overflow:hidden;background-color:var(--card-bg);box-shadow:var(--shadow-deep),0 0 40px #d4af3726;box-sizing:border-box}.card-side-back{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 50%,#1b1e2b,#05070a)}.card-side-back:after{content:"✧";font-size:4rem;color:var(--primary-gold);opacity:.6}.card-side-front{transform:rotateY(180deg);display:flex;flex-direction:column}.card-illustration-box{width:100%;height:80%;border-bottom:1px solid var(--primary-gold);overflow:hidden}.card-title-box{height:20%;display:flex;align-items:center;justify-content:center}.result-name-en{font-size:1.2rem;color:var(--primary-gold);font-family:var(--font-serif);letter-spacing:2px}.result-img{width:100%;height:100%;object-fit:cover}.result-action-area{width:100%;display:flex;flex-direction:column;align-items:center;margin-top:20px}.result-description-external{margin-bottom:20px;text-align:center;padding:0 10px}.result-desc-text{color:var(--text-white);font-size:1rem;line-height:1.8;font-weight:300}.btn-primary{background:linear-gradient(135deg,#d4af37,#b8860b);color:#05070a;padding:16px 20px;border-radius:var(--radius-md);font-weight:700;width:100%;max-width:260px;text-transform:uppercase;letter-spacing:1px}.btn-tonal{background-color:#ffffff0d;color:var(--text-white);padding:16px 20px;border-radius:var(--radius-md);width:100%;max-width:260px;margin-top:10px}.pulse-loader{width:50px;height:50px;background-color:var(--primary-gold);border-radius:50%;margin:0 auto 20px;position:relative}.pulse-loader:after{content:"";position:absolute;width:100%;height:100%;background-color:var(--primary-gold);border-radius:50%;animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(2.2);opacity:0}}
