:root{--bg-deep:#02020f;--bg-dark:#070718;--bg-navy:#0a0a28;--surface-40:#0a0a2866;--surface-50:#0a0a2880;--surface-60:#0a0a2899;--surface-70:#0a0a28b3;--surface-85:#0a0a28d9;--surface-90:#0a0a28e6;--surface-92:#0a0a28eb;--surface-input:#0a081ecc;--bg-card:#0a0a28d9;--bg-card2:#140a32b3;--bg-nav:#02020fd9;--text-faintest:#3a3660;--text-muted:#5a5680;--text-faint:#6a6590;--text-dim:#7a759e;--text-secondary2:#9a93c4;--text-secondary:#a09cc0;--text-soft:#b8b2d8;--text-bright:#c8c0e0;--text-bright2:#c8c3e8;--text-light:#e0d0ff;--text-primary:#f0eeff;--accent-gold:#c9a84c;--accent-gold-light:#e8cc7a;--accent-violet:#7c3aed;--accent-violet-light:#a78bfa;--accent-cyan:#06b6d4;--accent-rose:#f43f5e;--accent-emerald:#10b981;--border:#785ac833;--border-strong:#785ac859;--border-gold:#c9a84c4d;--glow-violet:0 0 40px #7c3aed66;--glow-gold:0 0 30px #c9a84c59;--glow-cyan:0 0 30px #06b6d44d;--star-opacity:1}body.theme-light{--bg-deep:#f4f1fb;--bg-dark:#ece8f7;--bg-navy:#e3def2;--surface-40:#ffffff8c;--surface-50:#ffffff9e;--surface-60:#ffffffb3;--surface-70:#ffffffc7;--surface-85:#ffffffe0;--surface-90:#ffffffed;--surface-92:#fffffff2;--surface-input:#ffffffeb;--bg-card:#ffffffe0;--bg-card2:#f8f4ffd9;--bg-nav:#faf8ffe6;--text-faintest:#cfc8e6;--text-muted:#8b85ad;--text-faint:#7a749c;--text-dim:#6b6590;--text-secondary2:#585080;--text-secondary:#4e477a;--text-soft:#443d6e;--text-bright:#3a3366;--text-bright2:#352e60;--text-light:#5b3aa8;--text-primary:#241e44;--accent-gold:#a9842e;--accent-gold-light:#c9a84c;--accent-violet:#6d28d9;--accent-violet-light:#7c3aed;--border:#7c3aed2e;--border-strong:#7c3aed47;--border-gold:#a9842e59;--glow-violet:0 6px 24px #7c3aed26;--glow-gold:0 6px 22px #a9842e33;--glow-cyan:0 6px 22px #06b6d426;--star-opacity:.25}body,body *{transition:background-color .35s,color .35s,border-color .35s}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-deep);color:var(--text-primary);-webkit-text-size-adjust:100%;min-height:100vh;font-family:Noto Sans KR,sans-serif;font-size:17px;line-height:1.7;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--accent-violet);border-radius:3px}body.theme-light .cosmic-card{box-shadow:0 4px 18px #503c8c1a}body.theme-light .cosmic-card:hover{box-shadow:0 10px 30px #503c8c2e}body.theme-light .gradient-gold{background:linear-gradient(135deg,#9a7726,#c9a84c,#9a7726)}body.theme-light .gradient-violet{background:linear-gradient(135deg,#6d28d9,#8b5cf6,#6d28d9)}body.theme-light ::placeholder{color:#9089b0;opacity:1}@keyframes twinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotate-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #7c3aed4d}50%{box-shadow:0 0 60px #7c3aedb3,0 0 100px #c9a84c33}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes ripple{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(2.5)}}.font-cinzel{font-family:Cinzel,serif}.font-rajdhani{font-family:Rajdhani,sans-serif}.gradient-gold{background:linear-gradient(135deg,#c9a84c,#e8cc7a,#c9a84c) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:3s linear infinite shimmer}.gradient-violet{background:linear-gradient(135deg,#7c3aed,#a78bfa,#7c3aed) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:3s linear infinite shimmer}.cosmic-card{background:var(--bg-card);border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;transition:all .4s}.cosmic-card:hover{box-shadow:var(--glow-violet);border-color:#a78bfa80;transform:translateY(-4px)}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#4f46e5);border:none;border-radius:50px;padding:16px 36px;font-family:Noto Sans KR,sans-serif;font-size:18px;font-weight:500;transition:all .3s;position:relative;overflow:hidden}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #7c3aed80}.btn-gold{color:#1a1200;cursor:pointer;background:linear-gradient(135deg,#92731f,#c9a84c,#92731f);border:none;border-radius:50px;padding:16px 36px;font-family:Noto Sans KR,sans-serif;font-size:18px;font-weight:700;transition:all .3s}.btn-gold:hover{box-shadow:var(--glow-gold);transform:translateY(-2px)}.btn-outline{color:var(--accent-violet-light);cursor:pointer;background:0 0;border:1px solid #a78bfa66;border-radius:50px;padding:14px 30px;font-family:Noto Sans KR,sans-serif;font-size:17px;transition:all .3s}.btn-outline:hover{border-color:var(--accent-violet-light);background:#7c3aed33}.cosmic-input{background:var(--surface-input);border:1px solid var(--border);color:var(--text-primary);border-radius:12px;outline:none;width:100%;padding:15px 18px;font-family:Noto Sans KR,sans-serif;font-size:17px;transition:all .3s}.cosmic-input:focus{border-color:var(--accent-violet-light);box-shadow:0 0 20px #7c3aed33}.cosmic-select{background:var(--surface-input);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;appearance:none;border-radius:12px;outline:none;width:100%;padding:15px 18px;font-family:Noto Sans KR,sans-serif;font-size:17px}.section-divider{background:linear-gradient(90deg, transparent, var(--accent-gold), transparent);width:80px;height:2px;margin:0 auto 24px}.orb{filter:blur(80px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.orb-violet{background:#7c3aed40}.orb-gold{background:#c9a84c26}.orb-cyan{background:#06b6d41f}.orb-rose{background:#f43f5e1a}.tarot-card-container{perspective:1000px}.tarot-card-inner{transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,0,.2,1);position:relative}.tarot-card-container.flipped .tarot-card-inner{transform:rotateY(180deg)}.tarot-card-front,.tarot-card-back{backface-visibility:hidden;width:100%;height:100%;position:absolute;top:0;left:0}.tarot-card-back{transform:rotateY(180deg)}.result-fade{animation:.6s forwards fadeInUp}.show-mobile,.mobile-bottom-nav{display:none!important}@media (width<=1024px){body{font-size:16px}}@media (width<=768px){.hide-mobile{display:none!important}.show-mobile,.mobile-bottom-nav{display:flex!important}.app-footer{display:none!important}body{font-size:16px;line-height:1.65}.btn-primary,.btn-gold{padding:14px 28px;font-size:16px}.btn-outline{padding:12px 24px;font-size:15px}.cosmic-input,.cosmic-select{padding:14px 16px;font-size:16px}}@media (width<=480px){body{font-size:15.5px}}
