.tarot-card{width:200px;height:320px;margin:10px;perspective:1000px;cursor:pointer;transition:all .3s ease;position:relative;z-index:1;max-width:100%;box-sizing:border-box}.tarot-card.flourishing{z-index:100;animation:rainbowFlourish 1.4s ease-in-out;transform-origin:center bottom}@keyframes rainbowFlourish{0%{transform:translateY(0) rotate(0) scale(1);filter:hue-rotate(0deg) saturate(1) brightness(1)}15%{transform:translateY(-30px) rotate(-15deg) scale(1.1);filter:hue-rotate(60deg) saturate(1.5) brightness(1.2);box-shadow:-20px -10px 30px #ff00804d,0 -15px 35px #ff80004d,20px -10px 30px #80ff004d}30%{transform:translateY(-50px) rotate(-30deg) scale(1.15);filter:hue-rotate(120deg) saturate(2) brightness(1.3);box-shadow:-40px -20px 40px #00ff8066,0 -25px 45px #0080ff66,40px -20px 40px #8000ff66}45%{transform:translateY(-60px) rotate(-45deg) scale(1.2);filter:hue-rotate(180deg) saturate(2.5) brightness(1.4);box-shadow:-60px -30px 50px #ff00ff80,0 -35px 55px #ffff0080,60px -30px 50px #00ffff80}60%{transform:translateY(-50px) rotate(0) scale(1.15);filter:hue-rotate(240deg) saturate(2) brightness(1.3);box-shadow:-40px -20px 40px #ff808066,0 -25px 45px #80ff8066,40px -20px 40px #8080ff66}75%{transform:translateY(-30px) rotate(15deg) scale(1.1);filter:hue-rotate(300deg) saturate(1.5) brightness(1.2);box-shadow:-20px -10px 30px #ffc0804d,0 -15px 35px #c0ff804d,20px -10px 30px #80c0ff4d}to{transform:translateY(0) rotate(0) scale(1);filter:hue-rotate(360deg) saturate(1) brightness(1);box-shadow:0 8px 25px #0000004d}}.tarot-card.flourishing:before{content:"";position:absolute;inset:-50px;background:radial-gradient(circle at 20% 20%,rgba(255,0,128,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,128,0,.3) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(128,255,0,.3) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,255,128,.3) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(128,0,255,.2) 0%,transparent 70%);animation:sparkle 1.4s ease-in-out;pointer-events:none;z-index:-1}@keyframes sparkle{0%,to{opacity:0;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}}.tarot-card:hover{transform:scale(1.05)}.tarot-card.selected{transform:scale(1.1);filter:drop-shadow(0 0 20px rgba(255,215,0,.7))}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.175,.885,.32,1.275)}.tarot-card.flipped .card-inner{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:15px;box-shadow:0 8px 25px #0000004d;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:20px;background:linear-gradient(145deg,#f0f0f0,#ffffff);border:3px solid #d4af37;box-sizing:border-box;overflow:hidden}.card-back{background:linear-gradient(145deg,#2c1810,#4a2c17);border-color:#8b6914}.card-front{transform:rotateY(180deg)}.tarot-card.reversed .card-front{transform:rotateY(180deg) rotate(180deg)}.card-back-pattern{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;position:relative}.mystical-symbol{font-size:60px;color:#d4af37;text-shadow:0 0 20px rgba(212,175,55,.5);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{text-shadow:0 0 20px rgba(212,175,55,.5)}to{text-shadow:0 0 30px rgba(212,175,55,.8)}}.card-border{position:absolute;inset:10px;border:2px solid rgba(212,175,55,.3);border-radius:10px;background:radial-gradient(ellipse at center,rgba(212,175,55,.1) 0%,rgba(212,175,55,.05) 50%,transparent 100%)}.card-header{display:flex;justify-content:space-between;width:100%;font-size:14px;color:#666;font-weight:700;margin-bottom:10px;flex-shrink:0}.card-orientation{font-size:14px;font-weight:700;padding:2px 6px;border-radius:8px;transition:all .3s ease}.card-orientation.clickable{cursor:pointer;background:rgba(255,255,255,.1)}.card-orientation.clickable:hover{background:rgba(255,255,255,.2);transform:scale(1.05)}.card-orientation.reversed{color:#e74c3c;background:rgba(231,76,60,.1)}.card-orientation.upright{color:#27ae60;background:rgba(39,174,96,.1)}.card-emoji{font-size:80px;margin:8px 0;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));display:flex;align-items:center;justify-content:center;min-height:100px;flex-shrink:0}.card-image{max-width:100%;max-height:120px;width:auto;height:auto;border-radius:8px;box-shadow:0 2px 8px #0003;transition:all .3s ease}.card-image:hover{transform:scale(1.02);box-shadow:0 4px 12px #0000004d}.card-emoji-fallback{font-size:80px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.card-name{text-align:center;margin-bottom:10px;flex-shrink:0}.name-zh{font-size:20px;font-weight:700;color:#2c3e50;margin-bottom:5px}.name-en{font-size:12px;color:#7f8c8d;font-style:italic}.card-meaning{text-align:center;margin-bottom:5px;flex-grow:1;display:flex;flex-direction:column;justify-content:space-around;align-items:center;min-height:60px}.meaning-label{font-size:11px;font-weight:700;margin:4px 0;padding:2px 6px;border-radius:8px;display:inline-block;white-space:nowrap}.meaning-label.upright-meaning{color:#27ae60;background:rgba(39,174,96,.1);border:1px solid rgba(39,174,96,.3)}.meaning-label.reversed-meaning{color:#e74c3c;background:rgba(231,76,60,.1);border:1px solid rgba(231,76,60,.3)}.meaning-text{font-size:11px;color:#34495e;line-height:1.4;max-height:40px;overflow:hidden}@media (max-width: 768px){.tarot-card{width:150px;height:240px;margin:5px}.card-front,.card-back{padding:12px}.card-header{font-size:10px;margin-bottom:6px}.card-orientation{font-size:9px;padding:1px 3px;white-space:nowrap}.card-emoji{font-size:50px;margin:4px 0;min-height:60px}.card-image{max-height:70px}.card-emoji-fallback{font-size:50px}.name-zh{font-size:14px;margin-bottom:2px}.name-en{font-size:9px}.card-name{margin-bottom:6px}.card-meaning{min-height:45px}.meaning-text{font-size:9px;line-height:1.2;max-height:35px}.meaning-label{font-size:9px;padding:1px 4px;margin:2px 0;border-radius:6px}}@media (min-width: 2560px){.tarot-card{width:300px;height:480px;margin:20px}.card-front,.card-back{padding:30px;border-radius:20px}.mystical-symbol{font-size:100px}.card-emoji{font-size:120px;min-height:150px}.card-image{max-height:180px}.name-zh{font-size:28px}.name-en{font-size:16px}.card-header{font-size:18px}.meaning-text{font-size:14px;max-height:60px}.meaning-label{font-size:14px;padding:3px 8px;margin:5px 0;border-radius:10px}}@media (min-width: 1920px){.tarot-card{width:250px;height:400px;margin:15px}.card-front,.card-back{padding:25px}.mystical-symbol{font-size:80px}.card-emoji{font-size:100px;min-height:130px}.card-image{max-height:150px}.name-zh{font-size:24px}.name-en{font-size:14px}.meaning-text{font-size:13px;max-height:50px}.meaning-label{font-size:13px;padding:2px 7px;margin:4px 0;border-radius:9px}}@media (min-width: 1200px) and (max-width: 1919px){.tarot-card{width:220px;height:350px;margin:12px}.mystical-symbol{font-size:70px}.card-emoji{font-size:90px;min-height:110px}.card-image{max-height:130px}.name-zh{font-size:22px}}@media (min-width: 992px) and (max-width: 1199px){.tarot-card{width:180px;height:290px;margin:10px}.card-front,.card-back{padding:18px}.mystical-symbol{font-size:50px}.card-emoji{font-size:70px;min-height:90px}.card-image{max-height:100px}.name-zh{font-size:18px}.name-en{font-size:11px}.meaning-label{font-size:11px;padding:2px 5px;margin:3px 0;border-radius:7px}}@media (min-width: 769px) and (max-width: 991px){.tarot-card{width:160px;height:260px;margin:8px}.card-front,.card-back{padding:15px}.mystical-symbol{font-size:45px}.card-emoji{font-size:65px;min-height:85px}.card-image{max-height:95px}.name-zh{font-size:17px}.card-header{font-size:12px}.card-orientation{font-size:11px;padding:1px 3px}.meaning-label{font-size:10px;padding:1px 4px;margin:3px 0;border-radius:6px}}@media (min-width: 481px) and (max-width: 768px){.tarot-card{width:140px;height:220px;margin:6px}.card-front,.card-back{padding:12px;border-radius:12px}.mystical-symbol{font-size:40px}.card-emoji{font-size:55px;margin:8px 0;min-height:70px}.card-image{max-height:80px}.name-zh{font-size:15px;margin-bottom:3px}.name-en{font-size:9px}.card-header{font-size:11px}.card-meaning{min-height:40px}.meaning-text{font-size:9px;max-height:30px}.meaning-label{font-size:9px;padding:1px 3px;margin:2px 0;border-radius:5px}}@media (min-width: 361px) and (max-width: 480px){.tarot-card{width:120px;height:190px;margin:4px}.card-front,.card-back{padding:8px;border-radius:10px}.mystical-symbol{font-size:35px}.card-header{font-size:8px;margin-bottom:4px}.card-orientation{font-size:7px;padding:.5px 2px}.card-emoji{font-size:40px;margin:3px 0;min-height:45px}.card-image{max-height:55px}.name-zh{font-size:12px;margin-bottom:1px}.name-en{font-size:7px}.card-name{margin-bottom:4px}.card-meaning{min-height:35px}.meaning-text{font-size:7px;max-height:25px;line-height:1.1}.meaning-label{font-size:7px;padding:.5px 3px;margin:2px 0;border-radius:4px}}@media (max-width: 360px){.tarot-card{width:100px;height:160px;margin:3px}.card-front,.card-back{padding:6px;border-radius:8px}.mystical-symbol{font-size:30px}.card-header{font-size:7px;margin-bottom:3px}.card-orientation{font-size:6px;padding:.5px 1px}.card-emoji{font-size:32px;margin:2px 0;min-height:35px}.card-image{max-height:45px}.name-zh{font-size:10px;margin-bottom:1px}.name-en{font-size:6px}.card-name{margin-bottom:3px}.card-meaning{min-height:30px}.meaning-text{font-size:6px;max-height:20px;line-height:1}.meaning-label{font-size:6px;padding:.5px 2px;margin:1px 0;border-radius:3px}}@media (max-height: 600px) and (orientation: landscape){.tarot-card{width:90px;height:130px;margin:2px}.card-front,.card-back{padding:4px}.mystical-symbol{font-size:20px}.card-header{font-size:6px;margin-bottom:2px}.card-orientation{font-size:5px;padding:.5px 1px}.card-emoji{font-size:28px;margin:1px 0;min-height:30px}.card-image{max-height:35px}.name-zh{font-size:9px;margin-bottom:1px}.name-en{font-size:5px}.card-name{margin-bottom:2px}.card-meaning{min-height:25px}.meaning-text{font-size:5px;max-height:12px;line-height:1}.meaning-label{font-size:5px;padding:.5px 1px;margin:1px 0;border-radius:2px}}@media (hover: none) and (pointer: coarse){.tarot-card:hover{transform:scale(1.02)}.card-image:hover{transform:scale(1.01)}.card-orientation.clickable:hover{transform:scale(1.02)}.card-orientation.clickable{padding:4px 8px;min-width:40px;min-height:30px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.card-front,.card-back{border-width:2px}.card-border{border-width:1px}.card-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (prefers-reduced-motion: reduce){.tarot-card.flourishing{animation:none}.tarot-card.flourishing:before{animation:none}.mystical-symbol{animation:none}.card-inner,.tarot-card,.card-image,.card-orientation.clickable{transition:none}}@media print{.tarot-card{width:150px;height:240px;margin:5px;break-inside:avoid}.card-front,.card-back{background:white;color:#000;border:2px solid black;box-shadow:none}.mystical-symbol{color:#000;text-shadow:none;animation:none}.card-border{border-color:#000;background:none}}.tarot-guide-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.tarot-guide{background:white;border-radius:20px;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.guide-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 30px;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;align-items:center}.guide-header h2{margin:0;font-size:1.8em}.close-button{background:none;border:none;color:#fff;font-size:30px;cursor:pointer;padding:5px;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.close-button:hover{background:rgba(255,255,255,.2);transform:scale(1.1)}.guide-content{padding:30px}.guide-section{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #eee}.guide-section:last-child{border-bottom:none}.guide-section h3{color:#4a2c2a;margin-bottom:15px;font-size:1.3em}.position-demo{display:flex;align-items:center;gap:20px;background:#f8f9fa;padding:20px;border-radius:15px;margin-bottom:15px}.demo-card{width:60px;height:90px;background:linear-gradient(145deg,#f0f0f0,#ffffff);border:3px solid #d4af37;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:30px;flex-shrink:0;position:relative}.demo-card:before{content:"";position:absolute;top:5px;right:5px;width:12px;height:12px;border-radius:50%}.demo-card.upright:before{background:#27ae60}.demo-card.reversed{transform:rotate(180deg)}.demo-card.reversed:before{background:#e74c3c}.position-text{flex:1}.position-text p{margin:8px 0;color:#555;line-height:1.5}.position-text strong{color:#4a2c2a}.guide-tips{background:rgba(102,126,234,.1);padding:20px;border-radius:15px;margin-bottom:20px}.guide-tips h3{color:#667eea;margin-bottom:15px}.guide-tips ul{margin:0;padding-left:20px}.guide-tips li{margin:10px 0;color:#555;line-height:1.6}.guide-tips li strong{color:#4a2c2a}.interaction-tip{background:rgba(231,76,60,.1);padding:20px;border-radius:15px;text-align:center}.interaction-tip h3{color:#e74c3c;margin-bottom:10px}.interaction-tip p{color:#555;margin:0;line-height:1.6;font-size:1.1em}@media (max-width: 768px){.tarot-guide{margin:10px;max-width:none}.guide-header{padding:15px 20px}.guide-header h2{font-size:1.5em}.guide-content{padding:20px}.position-demo{flex-direction:column;text-align:center;gap:15px}.demo-card{margin:0 auto}}.ai-settings-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ai-settings{background:white;border-radius:20px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideIn .3s ease-out}.settings-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 30px;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;align-items:center}.settings-header h2{margin:0;font-size:1.5em}.close-button{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:5px;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.close-button:hover{background:rgba(255,255,255,.2)}.settings-content{padding:30px}.setting-group{margin-bottom:20px}.setting-group label{display:block;margin-bottom:8px;font-weight:700;color:#4a2c2a}.setting-group select,.setting-group input{width:100%;padding:10px 15px;border:2px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .3s ease}.setting-group select:focus,.setting-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 5px #667eea4d}.setting-group small{display:block;margin-top:5px;color:#666;font-size:12px}.api-key-input{position:relative;display:flex}.api-key-input input{flex:1;padding-right:50px}.toggle-visibility{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:16px;padding:5px;border-radius:4px;transition:background .3s ease}.toggle-visibility:hover{background:rgba(0,0,0,.1)}.setting-row{display:flex;gap:20px}.setting-group.half{flex:1}.provider-info{background:rgba(102,126,234,.1);padding:20px;border-radius:10px;margin-top:20px}.provider-info h4{margin:0 0 10px;color:#667eea}.provider-info h5{margin:15px 0 5px;color:#333;font-size:14px}.provider-info p{margin:5px 0;color:#555;font-size:14px}.provider-info ul{margin:5px 0;padding-left:20px}.provider-info li{margin:3px 0;color:#555;font-size:13px}.provider-info code{background:rgba(0,0,0,.1);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:12px}.config-status{background:rgba(255,255,255,.8);border:1px solid #ddd;border-radius:8px;padding:15px;margin:10px 0}.warning-box{background:rgba(255,193,7,.1);border:1px solid #ffc107;border-radius:8px;padding:10px 15px;margin:15px 0;color:#856404}.warning-box p{margin:0;font-size:13px}.settings-footer{padding:20px 30px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:15px}.cancel-button,.save-button{padding:10px 20px;border:none;border-radius:25px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease}.cancel-button{background:#f8f9fa;color:#666;border:1px solid #ddd}.cancel-button:hover{background:#e9ecef}.save-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.save-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 5px 15px #28a7454d}.save-button:disabled{background:#ccc;cursor:not-allowed}@media (max-width: 768px){.ai-settings{margin:10px;max-width:none}.settings-header{padding:15px 20px}.settings-content{padding:20px}.setting-row{flex-direction:column;gap:0}.settings-footer{padding:15px 20px;flex-direction:column}}.streaming-text-container{max-height:400px;overflow-y:auto;background:rgba(255,255,255,.95);border-radius:15px;padding:20px;box-shadow:0 5px 15px #0000001a;border:2px solid rgba(102,126,234,.2)}.streaming-text{color:#4a2c2a;line-height:1.8;font-size:15px;font-family:Arial,Microsoft YaHei,sans-serif;min-height:20px;direction:ltr;text-align:left}.markdown-content{direction:ltr;text-align:left;unicode-bidi:embed}.markdown-content .md-h1{font-size:1.5em;font-weight:700;color:#2c3e50;margin:20px 0 15px;border-bottom:2px solid #667eea;padding-bottom:8px;clear:both}.markdown-content .md-h2{font-size:1.3em;font-weight:700;color:#34495e;margin:18px 0 12px;border-bottom:1px solid #bdc3c7;padding-bottom:5px;clear:both}.markdown-content .md-h3{font-size:1.1em;font-weight:700;color:#667eea;margin:15px 0 10px;clear:both;display:block}.markdown-content .md-paragraph{margin:8px 0;line-height:1.8;display:block;text-align:left}.markdown-content .md-bold{color:#667eea;font-weight:700}.markdown-content .md-italic{color:#8e44ad;font-style:italic}.markdown-content .md-code{background:rgba(102,126,234,.1);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;color:#e74c3c;border:1px solid rgba(102,126,234,.2);white-space:nowrap}.streaming-text strong{color:#667eea;font-weight:700}.streaming-text em{color:#8e44ad;font-style:italic}.streaming-text code{background:rgba(0,0,0,.1);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:13px}.cursor{animation:blink 1s infinite;color:#667eea;font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.completion-indicator{display:flex;align-items:center;justify-content:center;margin-top:20px;padding:10px;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border-radius:25px;font-size:14px;font-weight:700;animation:fadeInUp .5s ease-out}.completion-icon{margin-right:8px;animation:sparkle 2s infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes sparkle{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.streaming-text-container::-webkit-scrollbar{width:6px}.streaming-text-container::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:3px}.streaming-text-container::-webkit-scrollbar-thumb{background:rgba(102,126,234,.5);border-radius:3px}.streaming-text-container::-webkit-scrollbar-thumb:hover{background:rgba(102,126,234,.8)}@media (max-width: 768px){.streaming-text-container{max-height:300px;padding:15px}.streaming-text{font-size:14px;line-height:1.6}.completion-indicator{font-size:13px;margin-top:15px;padding:8px 15px}}.flourish-container{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;z-index:9999;pointer-events:none}.flourish-background{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,rgba(0,0,0,.7) 0%,rgba(0,0,0,.9) 100%);animation:backgroundPulse 2s ease-in-out}@keyframes backgroundPulse{0%,to{opacity:0}50%{opacity:1}}.rainbow-waves{position:absolute;top:50%;left:50%;width:800px;height:800px;margin:-400px 0 0 -400px;background:conic-gradient(from 0deg,#ff0080,#ff8000,#80ff00,#00ff80,#0080ff,#8000ff,#ff0080);border-radius:50%;animation:rainbowSpin 3s linear infinite;opacity:.3;filter:blur(20px)}@keyframes rainbowSpin{0%{transform:rotate(0) scale(.5);opacity:0}50%{transform:rotate(180deg) scale(1.2);opacity:.5}to{transform:rotate(360deg) scale(.5);opacity:0}}.magic-particles{position:absolute;width:100%;height:100%;background-image:radial-gradient(2px 2px at 20px 30px,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 40px 70px,rgba(255,215,0,.8),transparent),radial-gradient(1px 1px at 90px 40px,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 130px 80px,rgba(255,192,203,.6),transparent),radial-gradient(2px 2px at 160px 30px,rgba(173,216,230,.8),transparent);background-repeat:repeat;background-size:200px 100px;animation:sparkleMove 4s linear infinite}@keyframes sparkleMove{0%{transform:translateY(0) rotate(0);opacity:0}50%{opacity:1}to{transform:translateY(-100vh) rotate(360deg);opacity:0}}.flourish-cards{position:relative;width:600px;height:400px;display:flex;align-items:center;justify-content:center}.flourish-card{position:absolute;width:120px;height:180px;transform-origin:center bottom;animation:cardFlourish 2s ease-in-out var(--delay, 0s);opacity:0}.flourish-card.active{opacity:1;animation:cardEnter .8s ease-out var(--delay, 0s) forwards}@keyframes cardEnter{0%{transform:translateY(var(--radius, 100px)) rotate(calc(var(--angle, 0deg) * 3)) scale(.3);opacity:0;filter:brightness(2) saturate(2) hue-rotate(var(--angle, 0deg))}50%{transform:translateY(calc(var(--radius, 100px) * -.5)) rotate(var(--angle, 0deg)) scale(1.2);opacity:1;filter:brightness(1.5) saturate(1.8) hue-rotate(calc(var(--angle, 0deg) * 2))}to{transform:translateY(calc(var(--radius, 100px) * -.3)) rotate(var(--angle, 0deg)) scale(1);opacity:.9;filter:brightness(1) saturate(1) hue-rotate(0deg)}}@keyframes cardFlourish{0%{transform:scale(0) rotate(0);opacity:0}25%{transform:scale(1.3) rotate(calc(var(--angle, 0deg) * 1.5));opacity:1}75%{transform:scale(1.1) rotate(var(--angle, 0deg));opacity:1}to{transform:scale(1) rotate(var(--angle, 0deg));opacity:.9}}.card-content{width:100%;height:100%;position:relative;transform-style:preserve-3d;border-radius:10px;box-shadow:0 10px 30px #00000080,0 0 20px #ffd7004d;animation:cardGlow 2s ease-in-out infinite alternate}@keyframes cardGlow{0%{box-shadow:0 10px 30px #00000080,0 0 20px #ffd7004d}to{box-shadow:0 15px 40px #000000b3,0 0 30px #ffd70099}}.card-back,.card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15px}.card-back{background:linear-gradient(145deg,#2c1810,#4a2c17);border:2px solid #d4af37}.card-front{background:linear-gradient(145deg,#f0f0f0,#ffffff);border:2px solid #d4af37;transform:rotateY(180deg)}.mystical-symbol{font-size:40px;color:#d4af37;text-shadow:0 0 15px rgba(212,175,55,.8);animation:symbolPulse 1.5s ease-in-out infinite alternate}@keyframes symbolPulse{0%{transform:scale(1);text-shadow:0 0 15px rgba(212,175,55,.8)}to{transform:scale(1.1);text-shadow:0 0 25px rgba(212,175,55,1)}}.card-emoji{font-size:50px;margin-bottom:10px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.card-name{font-size:12px;font-weight:700;color:#2c3e50;text-align:center;text-shadow:0 1px 2px rgba(255,255,255,.8)}.magic-text{position:absolute;bottom:15%;left:50%;transform:translate(-50%);z-index:100}.text-sparkle{font-size:24px;font-weight:700;background:linear-gradient(45deg,#ff0080,#ff8000,#80ff00,#00ff80,#0080ff,#8000ff,#ff0080);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:textRainbow 2s linear infinite,textFloat 3s ease-in-out infinite;text-shadow:0 0 20px rgba(255,255,255,.5);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}@keyframes textRainbow{0%{background-position:0% 50%}to{background-position:100% 50%}}@keyframes textFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}@media (max-width: 768px){.flourish-cards{width:400px;height:300px}.flourish-card{width:80px;height:120px}.card-emoji{font-size:30px}.card-name{font-size:10px}.text-sparkle{font-size:18px}.mystical-symbol{font-size:30px}}.tarot-spread{max-width:1200px;margin:0 auto;padding:20px;font-family:Arial,sans-serif}.question-phase{text-align:center;background:rgba(255,255,255,.9);border-radius:20px;padding:40px;box-shadow:0 10px 30px #0003;backdrop-filter:blur(10px);margin:0 auto;max-width:800px}.question-phase h2{color:#4a2c2a;margin-bottom:20px;font-size:2.5em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.question-phase p{color:#666;margin-bottom:30px;font-size:1.2em;line-height:1.6}.spread-selection{margin-bottom:30px}.spread-selection h3{color:#4a2c2a;margin-bottom:20px;font-size:1.5em}.spread-options{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:30px}.spread-option{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:15px;padding:20px;cursor:pointer;transition:all .3s ease;min-width:150px;flex:1;max-width:200px}.spread-option:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}.spread-option.active{background:linear-gradient(135deg,#ffd89b,#19547b);transform:scale(1.05)}.spread-name{font-size:16px;font-weight:700;margin-bottom:5px}.spread-count{font-size:14px;opacity:.8}.question-input{margin-bottom:30px}.question-input textarea{width:100%;max-width:500px;padding:15px;border:2px solid #ddd;border-radius:10px;font-size:16px;font-family:inherit;resize:vertical;min-height:100px;box-sizing:border-box}.question-input textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 10px #667eea4d}.start-button{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;border:none;padding:15px 30px;font-size:18px;border-radius:50px;cursor:pointer;transition:all .3s ease;font-weight:700;margin:10px}.start-button:hover{transform:scale(1.05);box-shadow:0 10px 20px #ff6b6b4d}.guide-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:10px 20px;font-size:14px;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:700;margin:10px}.guide-button:hover{transform:scale(1.05);box-shadow:0 8px 15px #4ecdc44d}@media (max-width: 768px){.question-phase{padding:30px 20px;margin:0 10px;border-radius:15px}.question-phase h2{font-size:2em;margin-bottom:15px}.question-phase p{font-size:1.1em;margin-bottom:20px}.spread-selection h3{font-size:1.3em;margin-bottom:15px}.spread-options{gap:15px;margin-bottom:25px}.spread-option{min-width:120px;padding:15px;flex:1;max-width:none}.spread-name{font-size:14px}.spread-count{font-size:12px}.question-input textarea{max-width:100%;padding:12px;font-size:15px;min-height:80px}.start-button{padding:12px 25px;font-size:16px;margin:8px}.guide-button{padding:8px 16px;font-size:13px;margin:8px}}@media (max-width: 480px){.question-phase{padding:20px 15px;margin:0 5px}.question-phase h2{font-size:1.8em}.question-phase p{font-size:1em}.spread-options{flex-direction:column;gap:10px;align-items:center}.spread-option{width:100%;max-width:280px;padding:12px}.question-input textarea{padding:10px;font-size:14px;min-height:70px}.start-button{padding:10px 20px;font-size:15px;width:auto;min-width:120px}.guide-button{padding:6px 12px;font-size:12px;min-width:100px}}@media (max-width: 360px){.question-phase{padding:15px 10px}.question-phase h2{font-size:1.6em}.spread-option{max-width:100%;padding:10px}}.spread-phase{text-align:center;min-height:600px;padding:20px}.spread-phase h2{color:#4a2c2a;margin-bottom:20px;font-size:2.2em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.spread-instruction{background:rgba(255,255,255,.9);border-radius:20px;padding:20px;margin:20px auto;max-width:400px;box-shadow:0 8px 20px #0000001a;border:2px solid rgba(212,175,55,.3)}.spread-instruction .mystical-symbol{font-size:48px;display:block;margin-bottom:15px;animation:symbolFloat 3s ease-in-out infinite;color:#d4af37;text-shadow:0 0 15px rgba(212,175,55,.5)}.spread-instruction p{color:#666;font-size:16px;margin:0;font-style:italic}.card-slots{display:flex;justify-content:center;gap:30px;margin:30px auto 40px;flex-wrap:wrap;max-width:800px;position:relative}.card-slot{text-align:center;position:relative;min-width:200px}.slot-label{background:linear-gradient(135deg,rgba(212,175,55,.9),rgba(255,215,0,.9));color:#2c1810;padding:8px 16px;border-radius:20px;margin-bottom:15px;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #d4af374d;border:2px solid rgba(212,175,55,.5);position:relative;overflow:hidden}.slot-label:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:labelShine 3s ease-in-out infinite}.slot-card{width:200px;height:320px;margin:0 auto;position:relative}.empty-slot{width:100%;height:100%;border:3px dashed rgba(212,175,55,.5);border-radius:15px;background:linear-gradient(145deg,rgba(212,175,55,.05) 0%,rgba(212,175,55,.1) 50%,rgba(212,175,55,.05) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .3s ease;cursor:pointer}.empty-slot:hover{border-color:#d4af37cc;background:linear-gradient(145deg,rgba(212,175,55,.1) 0%,rgba(212,175,55,.2) 50%,rgba(212,175,55,.1) 100%);transform:scale(1.02)}.empty-slot:before{content:"";position:absolute;inset:20px;border:1px solid rgba(212,175,55,.3);border-radius:10px;background:radial-gradient(ellipse at center,rgba(212,175,55,.1) 0%,transparent 70%)}.slot-number{font-size:48px;font-weight:700;color:#d4af3799;text-shadow:2px 2px 4px rgba(0,0,0,.3);margin-bottom:10px;z-index:1;position:relative}.slot-hint{font-size:14px;color:#d4af37b3;font-style:italic;z-index:1;position:relative}.slot-card .tarot-card{animation:cardFillIn .8s ease-out}@keyframes cardFillIn{0%{opacity:0;transform:scale(.3) translateY(-100px) rotate(180deg)}50%{opacity:.8;transform:scale(1.2) translateY(-20px) rotate(10deg)}to{opacity:1;transform:scale(1) translateY(0) rotate(0)}}.empty-slot{animation:slotPulse 3s ease-in-out infinite}@keyframes slotPulse{0%,to{border-color:#d4af374d;box-shadow:0 0 #d4af3733}50%{border-color:#d4af3799;box-shadow:0 0 0 10px #d4af3700}}.fan-spread{position:relative;height:500px;margin:40px auto;display:flex;justify-content:center;align-items:flex-end;overflow:visible;perspective:1000px}.fan-card{position:absolute;transform:translate(var(--x, 0px)) translateY(var(--y, 0px)) rotate(var(--angle, 0deg));transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:fanCardAppear 1.2s ease-out var(--delay, 0s) both;cursor:pointer;transform-origin:center bottom}@keyframes fanCardAppear{0%{opacity:0;transform:translate(0) translateY(200px) rotate(0) scale(.1)}30%{opacity:.6;transform:translate(calc(var(--x, 0px) * .3)) translateY(calc(var(--y, 0px) * .3 + 100px)) rotate(calc(var(--angle, 0deg) * .3)) scale(.8)}70%{opacity:.9;transform:translate(calc(var(--x, 0px) * .9)) translateY(calc(var(--y, 0px) * .9)) rotate(calc(var(--angle, 0deg) * .9)) scale(1.05)}to{opacity:1;transform:translate(var(--x, 0px)) translateY(var(--y, 0px)) rotate(var(--angle, 0deg)) scale(1)}}.fan-card:nth-child(2n){animation-delay:calc(var(--delay, 0s) + .1s)}.fan-card:hover{transform:translate(var(--x, 0px)) translateY(calc(var(--y, 0px) - 30px)) rotate(var(--angle, 0deg)) scale(1.15);z-index:200!important;filter:drop-shadow(0 15px 35px rgba(212,175,55,.6)) drop-shadow(0 0 20px rgba(255,255,255,.3));transition:all .3s cubic-bezier(.25,.46,.45,.94)}.fan-card:hover .tarot-card{border-color:gold;box-shadow:0 0 25px #ffd700cc,inset 0 0 25px #ffd70033}.fan-card.selecting{animation:cardSelect .6s ease-out forwards}@keyframes cardSelect{0%{transform:translate(var(--x, 0px)) translateY(var(--y, 0px)) rotate(var(--angle, 0deg)) scale(1)}50%{transform:translate(var(--x, 0px)) translateY(calc(var(--y, 0px) - 50px)) rotate(0) scale(1.3);filter:brightness(1.5) drop-shadow(0 0 30px rgba(255,215,0,1))}to{opacity:0;transform:translate(0) translateY(-100px) rotate(0) scale(.8)}}.fan-spread:before{content:"";position:absolute;top:50%;left:50%;width:800px;height:400px;margin:-200px 0 0 -400px;background:radial-gradient(ellipse at center,rgba(212,175,55,.1) 0%,rgba(212,175,55,.05) 40%,transparent 70%);border-radius:50%;animation:backgroundGlow 4s ease-in-out infinite alternate;z-index:-1}@keyframes backgroundGlow{0%{opacity:.3;transform:scale(.9)}to{opacity:.6;transform:scale(1.1)}}.selected-display{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:20px;padding:20px;background:rgba(255,255,255,.95);border-radius:20px;box-shadow:0 8px 25px #0000001a;border:2px solid rgba(212,175,55,.3);position:relative;overflow:hidden}.selected-display:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(212,175,55,.2),transparent);animation:selectedShimmer 3s ease-in-out infinite}@keyframes selectedShimmer{0%{left:-100%}to{left:100%}}.selected-cards h3{color:#4a2c2a;margin-bottom:10px;font-size:1.3em;text-align:center}@media (max-width: 768px){.fan-spread{height:350px;margin:20px auto}.fan-card{transform:translate(calc(var(--x, 0px) * .7)) translateY(calc(var(--y, 0px) * .7)) rotate(calc(var(--angle, 0deg) * .8))}.fan-card:hover{transform:translate(calc(var(--x, 0px) * .7)) translateY(calc(var(--y, 0px) * .7 - 20px)) rotate(calc(var(--angle, 0deg) * .8)) scale(1.1)}.spread-phase{min-height:450px;padding:10px}.card-slots{gap:15px;margin:20px auto 30px}.card-slot{min-width:150px}.slot-card{width:150px;height:240px}.slot-label{padding:6px 12px;font-size:12px;margin-bottom:10px}.slot-number{font-size:36px}.slot-hint{font-size:12px}}@media (max-width: 480px){.fan-spread{height:300px}.fan-card{transform:translate(calc(var(--x, 0px) * .5)) translateY(calc(var(--y, 0px) * .5)) rotate(calc(var(--angle, 0deg) * .6))}.fan-card:hover{transform:translate(calc(var(--x, 0px) * .5)) translateY(calc(var(--y, 0px) * .5 - 15px)) rotate(calc(var(--angle, 0deg) * .6)) scale(1.08)}.card-slots{flex-direction:column;align-items:center;gap:20px;margin:15px auto 25px}.card-slot{min-width:120px}.slot-card{width:120px;height:180px}.slot-label{padding:4px 8px;font-size:10px;margin-bottom:8px}.slot-number{font-size:28px}.slot-hint{font-size:10px}.cards-row{flex-direction:column;align-items:center;gap:20px}.result-cards-simple{padding:15px}.result-cards-simple h3{font-size:1.2em;margin-bottom:15px}}.shuffling-phase{text-align:center;min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center}.shuffling-phase h2{color:#4a2c2a;margin-bottom:20px;font-size:2.5em;animation:titlePulse 2s ease-in-out infinite}@keyframes titlePulse{0%,to{transform:scale(1);text-shadow:2px 2px 4px rgba(0,0,0,.1)}50%{transform:scale(1.05);text-shadow:4px 4px 8px rgba(0,0,0,.2)}}.shuffle-animation{background:rgba(255,255,255,.9);border-radius:30px;padding:40px;box-shadow:0 15px 35px #0000001a;backdrop-filter:blur(10px);border:2px solid rgba(212,175,55,.3);position:relative;overflow:hidden}.shuffle-animation:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,rgba(255,0,128,.1),rgba(255,128,0,.1),rgba(128,255,0,.1),rgba(0,255,128,.1),rgba(0,128,255,.1),rgba(128,0,255,.1),rgba(255,0,128,.1));animation:rotateBackground 8s linear infinite;z-index:-1}@keyframes rotateBackground{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mystical-text{font-size:24px;font-weight:700;background:linear-gradient(45deg,#ff0080,#ff8000,#80ff00,#00ff80,#0080ff,#8000ff,#ff0080);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:textRainbow 3s linear infinite;display:block;margin-bottom:20px}.shuffle-progress{width:300px;height:8px;background:rgba(212,175,55,.2);border-radius:4px;margin:20px auto;overflow:hidden;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,#ff0080,#ff8000,#80ff00,#00ff80,#0080ff,#8000ff,#ff0080);background-size:400% 100%;animation:progressFill 3s ease-in-out infinite,progressRainbow 2s linear infinite;width:0}@keyframes progressFill{0%,to{width:10%}50%{width:90%}}@keyframes progressRainbow{0%{background-position:0% 50%}to{background-position:100% 50%}}.auto-draw-info{background:rgba(255,255,255,.95);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 10px 25px #0000001a;border:2px solid rgba(212,175,55,.3)}.draw-instruction{text-align:center}.draw-instruction .mystical-symbol{font-size:48px;display:block;margin-bottom:15px;animation:symbolFloat 3s ease-in-out infinite}@keyframes symbolFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.draw-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;font-size:18px;border-radius:50px;cursor:pointer;transition:all .3s ease;font-weight:700;margin-top:15px;position:relative;overflow:hidden}.draw-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 10px 25px #667eea66}.draw-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.draw-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:buttonShine 2s ease-in-out infinite}@keyframes buttonShine{0%{left:-100%}to{left:100%}}.card-deck{margin-top:40px}.card-deck h3{color:#4a2c2a;margin-bottom:20px}.deck-display{display:flex;justify-content:center;align-items:center;position:relative;height:100px}.deck-card{position:absolute;width:60px;height:90px;background:linear-gradient(145deg,#2c1810,#4a2c17);border:2px solid #d4af37;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0000004d;transform-origin:center;animation:deckFloat 4s ease-in-out infinite}.deck-card:nth-child(2n){transform:rotate(2deg) translate(2px);animation-delay:.5s}.deck-card:nth-child(3n){transform:rotate(-2deg) translate(-2px);animation-delay:1s}.deck-card:nth-child(4n){transform:rotate(1deg) translateY(2px);animation-delay:1.5s}@keyframes deckFloat{0%,to{transform:translateY(0) rotate(var(--rotation, 0deg))}50%{transform:translateY(-5px) rotate(var(--rotation, 0deg))}}.card-back-mini{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.mystical-symbol-mini{color:#d4af37;font-size:24px;text-shadow:0 0 10px rgba(212,175,55,.5);animation:miniGlow 2s ease-in-out infinite alternate}@keyframes miniGlow{0%{text-shadow:0 0 10px rgba(212,175,55,.5)}to{text-shadow:0 0 15px rgba(212,175,55,.8)}}.drawing-phase h2{color:#4a2c2a;margin-bottom:20px}.question-display{background:rgba(255,255,255,.8);padding:15px;border-radius:10px;margin-bottom:20px;font-style:italic;color:#555}.progress{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 25px;border-radius:25px;display:inline-block;margin-bottom:30px;font-weight:700;position:relative;overflow:hidden;box-shadow:0 4px 15px #667eea4d}.progress:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 3s ease-in-out infinite}@keyframes progressShine{0%{left:-100%}to{left:100%}}.selected-cards{display:flex;justify-content:center;gap:20px;margin-bottom:40px;flex-wrap:wrap;position:relative}.selected-cards:before{content:"";position:absolute;inset:-20px;background:linear-gradient(45deg,rgba(255,0,128,.1),rgba(255,128,0,.1),rgba(128,255,0,.1),rgba(0,255,128,.1),rgba(0,128,255,.1),rgba(128,0,255,.1),rgba(255,0,128,.1));background-size:400% 400%;border-radius:30px;animation:magicGlow 4s ease-in-out infinite;filter:blur(15px);z-index:-1}@keyframes magicGlow{0%,to{background-position:0% 50%;opacity:.3}50%{background-position:100% 50%;opacity:.6}}.selected-position{text-align:center;position:relative;animation:positionPulse 3s ease-in-out infinite}@keyframes positionPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.position-label{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(240,240,240,.95));color:#4a2c2a;padding:8px 15px;border-radius:20px;margin-bottom:15px;font-weight:700;font-size:12px;border:2px solid rgba(212,175,55,.3);box-shadow:0 4px 15px #d4af3733;text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden}.position-label:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(212,175,55,.4),transparent);animation:labelShimmer 2s ease-in-out infinite}@keyframes labelShimmer{0%{left:-100%}to{left:100%}}.available-cards h3{color:#4a2c2a;margin-bottom:20px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;justify-items:center;max-width:1000px;margin:0 auto;position:relative}.cards-grid:before{content:"";position:absolute;inset:-30px;background:radial-gradient(ellipse at center,rgba(76,45,23,.1) 0%,rgba(76,45,23,.05) 50%,transparent 100%);border-radius:30px;border:1px solid rgba(212,175,55,.1);animation:mysticalAura 6s ease-in-out infinite;z-index:-1}@keyframes mysticalAura{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}.result-phase{text-align:center}.result-phase h2{color:#4a2c2a;margin-bottom:20px;font-size:2.5em}.result-cards-simple{background:rgba(255,255,255,.9);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 8px 25px #0000001a;border:2px solid rgba(212,175,55,.3)}.result-cards-simple h3{color:#4a2c2a;margin-bottom:25px;font-size:1.5em}.cards-row{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.result-card-item{text-align:center;position:relative}.card-position{background:linear-gradient(135deg,rgba(212,175,55,.9),rgba(255,215,0,.9));color:#2c1810;padding:8px 16px;border-radius:20px;margin-bottom:15px;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #d4af374d;border:2px solid rgba(212,175,55,.5);position:relative;overflow:hidden}.card-position:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:positionShine 3s ease-in-out infinite}@keyframes positionShine{0%{left:-100%}to{left:100%}}.interpretation{background:rgba(255,255,255,.9);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 5px 15px #0000001a}.interpretation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(102,126,234,.2)}.interpretation h3{color:#4a2c2a;margin:0;font-size:1.5em}.ai-controls{display:flex;gap:10px}.ai-settings-button{background:rgba(102,126,234,.1);color:#667eea;border:1px solid rgba(102,126,234,.3);padding:8px 12px;border-radius:20px;cursor:pointer;transition:all .3s ease;font-size:16px}.ai-settings-button:hover{background:rgba(102,126,234,.2);transform:scale(1.05)}.generate-ai-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:700;font-size:14px}.generate-ai-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 5px 15px #667eea4d}.generate-ai-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.ai-placeholder{text-align:center;padding:40px 20px;color:#666;background:rgba(102,126,234,.05);border-radius:15px;border:2px dashed rgba(102,126,234,.2)}.ai-placeholder p{margin:10px 0;line-height:1.6}.ai-placeholder p:first-child{font-size:1.1em;font-weight:700;color:#4a2c2a}.reset-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:15px 30px;font-size:16px;border-radius:50px;cursor:pointer;transition:all .3s ease;font-weight:700}.reset-button:hover{transform:scale(1.05);box-shadow:0 10px 20px #4ecdc44d}@media (max-width: 768px){.tarot-spread{padding:10px}.question-phase{padding:20px}.question-phase h2{font-size:2em}.spread-options{flex-direction:column;align-items:center}.spread-option{min-width:200px}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.result-position{flex-direction:column;text-align:center}.card-interpretation{text-align:center}.selected-cards{flex-direction:column;align-items:center}}@media (min-width: 2560px){.tarot-spread{max-width:1600px;padding:40px}.question-phase{padding:60px;max-width:1000px}.question-phase h2{font-size:3.5em}.question-phase p{font-size:1.4em}.spread-option{min-width:200px;padding:25px;font-size:18px}.question-input textarea{max-width:700px;font-size:18px;padding:20px}.start-button,.guide-button{font-size:20px;padding:20px 40px}.card-slots{gap:50px;max-width:1200px}.slot-card{width:250px;height:400px}.fan-spread{height:700px}}@media (min-width: 1920px){.tarot-spread{max-width:1400px;padding:30px}.question-phase{padding:50px;max-width:900px}.question-phase h2{font-size:3em}.spread-options{gap:30px}.spread-option{min-width:180px;padding:22px}.card-slots{gap:40px;max-width:1000px}.slot-card{width:220px;height:350px}.fan-spread{height:600px}}@media (min-width: 1200px) and (max-width: 1919px){.tarot-spread{max-width:1200px;padding:25px}.question-phase{padding:45px;max-width:800px}.question-phase h2{font-size:2.8em}.spread-options{gap:25px}.spread-option{min-width:160px;padding:20px}.question-input textarea{max-width:600px}.card-slots{gap:35px}}@media (min-width: 992px) and (max-width: 1199px){.tarot-spread{padding:20px}.question-phase{padding:40px 35px}.question-phase h2{font-size:2.5em}.spread-options{gap:20px}.spread-option{min-width:140px;flex:1;max-width:180px}.card-slots{gap:25px}}@media (min-width: 769px) and (max-width: 991px){.tarot-spread{padding:15px}.question-phase{padding:35px 25px;margin:0 15px}.question-phase h2{font-size:2.2em}.spread-options{gap:15px}.spread-option{min-width:130px;padding:18px}.question-input textarea{max-width:450px;font-size:15px}.card-slots{gap:20px}.slot-card{width:170px;height:270px}.fan-spread{height:400px}}@media (max-height: 600px) and (orientation: landscape){.question-phase{padding:20px 25px}.question-phase h2{font-size:1.8em;margin-bottom:10px}.question-phase p{font-size:1em;margin-bottom:15px}.spread-options{gap:10px;margin-bottom:15px}.spread-option{padding:10px 15px;min-width:100px}.spread-name{font-size:13px}.spread-count{font-size:11px}.question-input textarea{min-height:60px;padding:10px}.start-button,.guide-button{padding:8px 16px;font-size:14px;margin:5px}.fan-spread{height:250px;margin:15px auto}.card-slots{gap:15px;margin:15px auto 20px}.slot-card{width:100px;height:150px}.slot-label{padding:3px 8px;font-size:9px;margin-bottom:5px}.slot-number{font-size:20px}.slot-hint{font-size:8px}}@media (max-width: 359px){.tarot-spread{padding:5px}.question-phase{padding:12px 8px;margin:0 2px;border-radius:10px}.question-phase h2{font-size:1.4em}.question-phase p{font-size:.9em}.spread-options{flex-direction:column;gap:8px;align-items:center}.spread-option{width:100%;max-width:250px;padding:8px}.question-input textarea{padding:8px;font-size:13px;min-height:60px}.start-button{padding:8px 16px;font-size:13px;min-width:100px}.guide-button{padding:5px 10px;font-size:11px;min-width:80px}}@media (hover: none) and (pointer: coarse){.spread-option:hover{transform:none;box-shadow:0 5px 15px #00000026}.start-button:hover,.guide-button:hover{transform:none;box-shadow:none}.fan-card:hover{transform:translate(var(--x, 0px)) translateY(calc(var(--y, 0px) - 10px)) rotate(var(--angle, 0deg)) scale(1.05)}.spread-option{padding:20px;min-height:60px}.start-button,.guide-button{min-height:50px;min-width:120px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.question-phase{border:1px solid rgba(255,255,255,.3)}.spread-option{border:1px solid rgba(255,255,255,.2)}.slot-label{border-width:1px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fan-card,.mystical-symbol{animation:none}.shuffle-animation:before,.progress-bar{animation:none}}@media (prefers-contrast: high){.question-phase{background:white;border:3px solid black}.spread-option{background:white;color:#000;border:2px solid black}.spread-option.active{background:black;color:#fff}.start-button,.guide-button{background:black;color:#fff;border:2px solid black}}.App{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#667eea 0%,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe 100%);background-size:400% 400%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.app-header{position:relative;text-align:center;padding:40px 20px;color:#fff;background:rgba(0,0,0,.1);backdrop-filter:blur(10px);border-bottom:2px solid rgba(255,255,255,.1)}.header-content{position:relative;z-index:2}.app-title{font-size:3.5em;margin:0 0 15px;font-weight:300;letter-spacing:2px;text-shadow:2px 2px 8px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;gap:20px}.mystical-icon{font-size:.8em;animation:float 3s ease-in-out infinite}.mystical-icon:nth-child(3){animation-delay:1.5s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(5deg)}}.app-subtitle{font-size:1.2em;opacity:.9;font-weight:300;letter-spacing:1px;margin:0}.header-decoration{position:absolute;top:20px;right:30px;display:flex;gap:15px;font-size:24px}.star{animation:twinkle 2s ease-in-out infinite}.star:nth-child(2){animation-delay:.7s}.star:nth-child(3){animation-delay:1.4s}@keyframes twinkle{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.app-main{flex:1;padding:20px 0}.app-footer{text-align:center;padding:30px 20px;color:#fff;background:rgba(0,0,0,.1);backdrop-filter:blur(10px);border-top:2px solid rgba(255,255,255,.1)}.app-footer p{margin:0 0 15px;font-size:1.1em;text-shadow:1px 1px 3px rgba(0,0,0,.3)}.footer-decoration{display:flex;justify-content:center;gap:20px;font-size:20px}.footer-decoration span{animation:pulse 2s ease-in-out infinite}.footer-decoration span:nth-child(2n){animation-delay:.5s}.footer-decoration span:nth-child(3n){animation-delay:1s}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}@media (min-width: 1200px){.app-title{font-size:4em}.app-subtitle{font-size:1.4em}.app-header{padding:50px 40px}.app-main{padding:30px 0}}@media (min-width: 769px) and (max-width: 1199px){.app-title{font-size:3em}.app-subtitle{font-size:1.1em}.header-decoration{top:15px;right:20px;font-size:22px}}@media (max-width: 768px){.app-title{font-size:2.5em;flex-direction:column;gap:10px;line-height:1.2}.app-subtitle{font-size:1em}.app-header{padding:30px 15px}.header-decoration{top:10px;right:15px;font-size:20px;gap:10px}.footer-decoration{gap:15px;font-size:18px}.app-main{padding:15px 0}.app-footer{padding:20px 15px}}@media (max-width: 480px){.app-header{padding:20px 10px}.app-title{font-size:2em;gap:8px}.app-subtitle{font-size:.9em;padding:0 10px}.header-decoration{display:none}.app-main{padding:10px 0}.app-footer{padding:15px 10px}.app-footer p{font-size:1em}}@media (min-width: 1920px){.app-title{font-size:4.5em}.app-subtitle{font-size:1.6em}.app-header{padding:60px 50px}}@media (max-height: 600px) and (orientation: landscape){.app-header{padding:15px 20px}.app-title{font-size:1.8em;margin-bottom:5px}.app-subtitle{font-size:.8em}.app-main{padding:10px 0}.app-footer{padding:15px 20px}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;display:flex;place-items:center;min-width:320px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);overflow-x:hidden;min-height:100vh;min-height:-webkit-fill-available}#root{width:100%;max-width:100vw;margin:0 auto;padding:2rem;text-align:center;box-sizing:border-box}@media (max-width: 768px){#root{padding:1rem}}@media (max-width: 480px){#root{padding:.5rem}}@supports (-webkit-touch-callout: none){body{min-height:-webkit-fill-available}}
