@charset "UTF-8";@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes orbPulse{0%,to{box-shadow:0 0 30px #9b55d380,0 0 60px #6a30934d,inset 0 0 30px #f9e0764d}50%{box-shadow:0 0 50px #9b55d3b3,0 0 80px #6a309366,inset 0 0 40px #f9e07666}}@keyframes loadingPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes logoGlow{0%{filter:drop-shadow(0 0 15px rgba(212,175,55,.4))}to{filter:drop-shadow(0 0 30px rgba(212,175,55,.7))}}@keyframes agentCardAppear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseStatus{0%{transform:scale(1);opacity:.5}70%,to{transform:scale(1.8);opacity:0}}@keyframes typing-dots{0%,80%,to{transform:scale(.6);opacity:.6}40%{transform:scale(1);opacity:1}}@keyframes sky-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shuffleFan{0%,to{transform:none}25%{transform:translate(-20px) rotate(-5deg)}50%{transform:translate(20px) rotate(5deg)}75%{transform:translate(-10px) rotate(-3deg)}}@keyframes shuffleAnim{0%,to{transform:translate(0)}25%{transform:translate(-10px) rotate(-5deg)}75%{transform:translate(10px) rotate(5deg)}}@keyframes pulseGlow{0%{opacity:.1}to{opacity:.3}}.fade-in{animation:fadeInUp .4s ease-out forwards}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.material-symbols-rounded{font-family:Material Symbols Rounded,sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-gold)}.material-symbols-rounded.filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.material-symbols-rounded.star,.material-symbols-rounded.diamond,.material-symbols-rounded.gem-icon{color:var(--color-gold)}.material-symbols-rounded.psychology{color:var(--color-secondary)}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;font-family:var(--font-family-body);background:linear-gradient(135deg,#0f0a1a,#1a1a2e,#16213e);color:var(--color-text-primary);line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 0%,transparent 50%,rgba(106,48,147,.15) 100%);z-index:-1}#app{min-height:100vh;display:flex;flex-direction:column}.app-container{flex:1;padding:var(--spacing-md);padding-top:calc(var(--tg-safe-top) + var(--spacing-md));padding-bottom:calc(var(--tg-safe-bottom) + var(--spacing-md))}h1,h2,h3{font-family:var(--font-family-heading);color:var(--color-gold);letter-spacing:.02em;text-transform:uppercase}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius-md);font-family:var(--font-family-body);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn:active{transform:scale(.98)}.btn--primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-text-light);border:1px solid rgba(212,175,55,.3);box-shadow:0 4px 12px #6a309366}.btn--primary:hover{box-shadow:0 6px 20px #6a309380}.btn--secondary{background:#ffffff1a;color:var(--color-text-light);border:1px solid rgba(255,255,255,.2)}.btn--full{width:100%}.back-btn{background:none;border:none;color:var(--color-gold);font-size:1rem;cursor:pointer;padding:var(--spacing-sm);margin-left:calc(-1 * var(--spacing-sm));display:flex;align-items:center;gap:4px}.header-btn{width:40px;height:40px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.header-btn i{font-size:20px;color:var(--color-gold)}.header-btn:active{transform:scale(.95);background:#ffffff26}.deck-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);border:none;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.deck-btn i{font-size:20px}.deck-btn.shuffle-btn{background:#ffffff1a;color:var(--color-light)}.deck-btn.shuffle-btn:hover{background:#fff3}.deck-btn.draw-btn{background:linear-gradient(135deg,var(--color-gold) 0%,#b8860b 100%);color:#1a1035}.deck-btn.draw-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px #d4af3766}.deck-btn:disabled{opacity:.5;cursor:not-allowed}.mystical-button{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:1px solid rgba(var(--color-gold-rgb),.3);padding:12px 24px;border-radius:var(--border-radius-md);font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:10px}.mystical-button i{font-size:1.25rem}.mystical-button:active{transform:scale(.98)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:8px;font-weight:600}.form-group input,.form-group select,.form-group textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-md);padding:12px 16px;color:var(--color-light);font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:var(--border-radius-md);color:var(--color-light);font-size:.95rem;outline:none}.form-input::placeholder{color:var(--color-text-muted)}.form-input:focus{border-color:var(--color-gold)}.form-textarea{min-height:80px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%23d4af37'%3E%3Cpath d='M7 10l5 5 5-5H7z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.form-check{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);cursor:pointer}.form-check input{accent-color:var(--color-primary)}.form-check label{font-size:.9rem;color:var(--color-text-muted)}.radio-group{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.radio-option input[type=radio]{width:18px;height:18px;accent-color:var(--color-gold)}.radio-option span{font-size:.9rem;color:var(--color-light)}.time-picker{display:flex;align-items:center;gap:var(--spacing-xs)}.time-picker select{width:80px}.time-picker .time-separator{font-size:1.2rem;color:var(--color-gold);font-weight:700}.form-actions{margin-top:var(--spacing-lg);display:flex;gap:var(--spacing-sm)}.gem-balance{display:flex;align-items:center;gap:var(--spacing-xs);background:#d4af3726;border:1px solid rgba(212,175,55,.3);border-radius:var(--border-radius-pill);padding:var(--spacing-xs) var(--spacing-sm)}.gem-balance .gem-icon{font-size:1rem}.gem-balance .gem-count{font-weight:600;color:var(--color-gold)}.gem-display{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.gem-display>i{font-size:24px;color:var(--color-primary)}.gem-display .gem-amount{font-size:1.5rem;font-weight:700;color:var(--color-light)}.gem-display .gem-label{font-size:.9rem;color:var(--color-text-muted)}.mystical-orb{width:140px;height:140px;margin:0 auto var(--spacing-md);border-radius:50%;background:radial-gradient(circle at 30% 30%,#f9e076cc,#9b55d399 40%,#6a3093cc,#33103e);box-shadow:0 0 30px #9b55d380,0 0 60px #6a30934d,inset 0 0 30px #f9e0764d;animation:orbPulse 4s ease-in-out infinite}.loading-orb{width:100px;height:100px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f9e076cc,#9b55d399 40%,#6a3093cc);box-shadow:0 0 40px #9b55d399;animation:loadingPulse 1.5s ease-in-out infinite;margin-bottom:var(--spacing-lg)}.premium-badge,.free-question-badge{display:inline-flex;align-items:center;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:32px;padding:6px 14px;font-size:.8rem;font-weight:600;letter-spacing:.5px;box-shadow:0 2px 8px #00000080;border:1px solid}.premium-badge i,.free-question-badge i{font-size:16px;margin-right:6px}.premium-badge{background:linear-gradient(135deg,#000000d9,#281e3cd9);border-color:#f7b73366;color:var(--color-gold)}.premium-badge i{color:var(--color-gold);text-shadow:0 0 5px rgba(212,175,55,.5)}.free-question-badge{background:linear-gradient(135deg,#000000d9,#142823d9);border-color:#38a16966;color:var(--color-success)}.free-question-badge i{color:var(--color-success);text-shadow:0 0 5px rgba(56,161,105,.5)}.free-ribbon{position:absolute;top:0;right:0;width:75px;height:75px;overflow:hidden;z-index:10;pointer-events:none}.free-ribbon span{position:absolute;display:block;width:100px;padding:4px 0;background:linear-gradient(135deg,#38a169,#2f855a);box-shadow:0 2px 8px #38a16966;color:#fff;font-size:.65rem;font-weight:700;text-transform:uppercase;text-align:center;letter-spacing:.05em;right:-25px;top:14px;transform:rotate(45deg)}.specialization-tag{display:inline-flex;align-items:center;font-size:.7rem;height:18px;padding:0 6px;border-radius:var(--border-radius-md);background-color:#ffffff0d;color:var(--color-text-muted);white-space:nowrap}.specialization-tag .specialization-icon{font-size:12px;margin-right:3px;opacity:.8}.page-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.page-header h1{font-size:1.25rem;margin:0}.home-footer{text-align:center;padding-top:var(--spacing-lg)}.home-footer p{font-size:.75rem;color:var(--color-text-muted);opacity:.6}.profile-footer{text-align:center;padding:var(--spacing-lg) 0}.profile-footer p{font-size:.75rem;color:var(--color-text-muted);opacity:.6}.tarot-element{position:relative}.tarot-element__single-card-container{display:flex;align-items:center;justify-content:center;width:100%}.tarot-element__card-container,.tarot-element__spread-container,.tarot-element__three-card-wrapper,.tarot-element__single-card-wrapper,.tarot-element__celtic-cross-wrapper{width:100%;box-sizing:border-box;padding-left:0;padding-right:0;margin-left:auto;margin-right:auto}.tarot-element__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tarot-element__header span{font-family:var(--font-family-heading);color:var(--color-gold-light);font-size:1rem}.tarot-element__header .expand-button{background:transparent;border:none;color:#ffffffb3;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.tarot-element__header .expand-button:hover{background:#ffffff1a;color:#fff}.tarot-element__header .expand-button i{font-size:1.5rem;transition:transform .3s ease}.tarot-element__card-container{display:flex;justify-content:center;align-items:center;min-height:180px;position:relative;margin-top:1rem;margin-bottom:1rem;perspective:1000px;transform-style:preserve-3d}@media (max-width: 480px){.tarot-element__card-container{margin-top:.5rem;margin-bottom:.5rem;min-height:160px}}.tarot-element__card{width:100px;height:178px;position:relative;cursor:pointer;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d;perspective:1000px}@media (min-width: 380px){.tarot-element__card{width:110px;height:196px}}@media (min-width: 480px){.tarot-element__card{width:120px;height:213px}}@media (min-width: 768px){.tarot-element__card{width:130px;height:231px}}@media (max-width: 360px){.tarot-element__card{width:85px;height:151px}}.tarot-element__card.flipped{transform:rotateY(180deg)}.tarot-element__card.revealed{z-index:10}.tarot-element__card.selected{z-index:20}.tarot-element__card.selected:after{content:"";position:absolute;top:-5px;left:-5px;right:-5px;bottom:-5px;border:2px solid var(--color-gold);border-radius:.75rem;box-shadow:0 0 15px #f7b73380;animation:pulse-selected 1.5s infinite ease-in-out;z-index:-1;pointer-events:none}.tarot-element__card.reversed .tarot-element__card-face--back img{transform:rotate(180deg)}.tarot-element__card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:.75rem;box-shadow:0 4px 8px #0000004d;overflow:hidden}.tarot-element__card-face--front{background:transparent;border:2px solid rgba(255,215,128,.4)}.tarot-element__card-face--back{transform:rotateY(180deg);background:#1a0c26}.tarot-element__card-face--back img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;border-radius:.75rem}.tarot-element__card-face--back img.reversed{transform:rotate(180deg)}.tarot-element__card-back{width:100%;height:100%;position:relative;background:linear-gradient(135deg,#1b0c2e,#2d1a47);border-radius:.65rem;overflow:hidden}.tarot-element__card-back:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 50%,rgba(255,215,128,.3) 10%,transparent 40%),linear-gradient(45deg,transparent 48%,rgba(255,215,128,.4) 50%,transparent 52%),linear-gradient(-45deg,transparent 48%,rgba(255,215,128,.4) 50%,transparent 52%);background-size:100% 100%,20px 20px,20px 20px;background-repeat:no-repeat,repeat,repeat;opacity:.6}.tarot-element__card-back:after{content:"★";font-size:2rem;color:#ffd78080;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-shadow:0 0 10px rgba(255,215,128,.5)}@media (min-width: 380px){.tarot-element__card-back:after{font-size:2.25rem}}@media (min-width: 480px){.tarot-element__card-back:after{font-size:2.5rem}}.tarot-element__card-back .card-border{display:none}.tarot-element__card-title{text-align:center;font-family:var(--font-family-heading);color:var(--color-gold-light);padding:.25rem;font-size:.65rem;background:#0009}@media (min-width: 380px){.tarot-element__card-title{font-size:.7rem}}@media (min-width: 480px){.tarot-element__card-title{padding:.4rem;font-size:.75rem}}@media (min-width: 768px){.tarot-element__card-title{padding:.5rem;font-size:.8rem}}.tarot-element__position-wrapper{position:relative;z-index:1;transition:transform .3s ease}.tarot-element__position-wrapper.flipped{z-index:5}.tarot-element__position-wrapper.selected{z-index:15}.tarot-element__position-label{position:absolute;top:-24px;left:50%;transform:translate(-50%);text-align:center;font-size:.75rem;color:var(--color-gold);font-family:var(--font-family-heading);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}@media (max-width: 480px){.tarot-element__position-label{top:-18px;font-size:.6rem}}@media (max-width: 360px){.tarot-element__position-label{top:-16px;font-size:.55rem}}.tarot-element__spread-container{display:flex;flex-direction:row;align-items:center;justify-content:center;min-height:200px;position:relative;margin-top:1rem;margin-bottom:1rem;gap:1rem;width:100%;padding:0 var(--spacing-xs);box-sizing:border-box}@media (max-width: 480px){.tarot-element__spread-container{min-height:160px;margin-top:.5rem;margin-bottom:.5rem;gap:.75rem;justify-content:center;padding:0}}@media (min-width: 768px){.tarot-element__spread-container{gap:1.5rem}}.fan-position-left{position:absolute;left:50%;top:50%;transform:translate(calc(-50% - 80px)) translateY(-50%) rotate(-15deg);z-index:1}.fan-position-left-center{position:absolute;left:50%;top:50%;transform:translate(calc(-50% - 40px)) translateY(-50%) rotate(-7deg);z-index:2}.fan-position-center{position:absolute;left:50%;top:50%;transform:translate(-50%) translateY(-50%) rotate(0);z-index:3}.fan-position-right-center{position:absolute;left:50%;top:50%;transform:translate(calc(-50% + 40px)) translateY(-50%) rotate(7deg);z-index:2}.fan-position-right{position:absolute;left:50%;top:50%;transform:translate(calc(-50% + 80px)) translateY(-50%) rotate(15deg);z-index:1}.fake-shuffle-card{visibility:hidden;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:0}.mystical-particle{position:absolute;border-radius:50%;pointer-events:none}@keyframes pulse-selected{0%,to{opacity:.7;box-shadow:0 0 15px #f7b73380}50%{opacity:1;box-shadow:0 0 20px #f7b733cc}}@keyframes dealCard{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.card-of-the-day{padding:var(--spacing-lg);position:relative}.card-of-the-day.collapsed .cotd-reveal-area{height:0;opacity:0;overflow:hidden;transition:height .5s cubic-bezier(.2,.9,.3,1),opacity .5s ease}.cotd-title{text-align:center;font-family:var(--font-family-heading);font-size:1.25rem;font-weight:600;background:linear-gradient(to right,var(--color-gold-light),var(--color-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--spacing-xs);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap}.cotd-title.collapsed-title{margin-bottom:0}.cotd-collapsed-info{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.8rem;color:var(--color-light)}.cotd-collapsed-info .mini-card-image{width:24px;height:40px;border-radius:4px;object-fit:cover;border:1px solid var(--color-gold)}.cotd-collapsed-info .mini-card-image.reversed{transform:rotate(180deg)}.cotd-collapsed-info .card-name{font-weight:500}.cotd-collapsed-info .orientation-icon{font-size:1rem;color:var(--color-gold)}.cotd-collapsed-info .streak-badge{background:#f7b73333;color:var(--color-gold);padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:600}.collapse-toggle{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#0000004d;border-radius:50%;cursor:pointer;transition:all .3s ease}.collapse-toggle i{color:var(--color-light);font-size:1.5rem}.collapse-toggle:hover{background:#6a309366}.reset-cotd-btn{position:absolute;top:var(--spacing-md);left:var(--spacing-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f7b73333;border:1px solid rgba(247,183,51,.4);border-radius:50%;cursor:pointer;transition:all .3s ease}.reset-cotd-btn i{color:var(--color-gold);font-size:1.2rem}.reset-cotd-btn:hover{background:#f7b73366;transform:rotate(180deg)}.cotd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--spacing-md)}.cotd-loading p{color:var(--color-text-muted);font-style:italic}.cotd-loading-spinner{width:48px;height:48px;border:3px solid rgba(106,48,147,.3);border-top:3px solid var(--color-gold);border-radius:50%;animation:spin 1.2s cubic-bezier(.5,.1,.5,.9) infinite}.cotd-deck-area{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.cotd-deck-area.animating{pointer-events:none}.cotd-deck-area .tarot-element__spread-container{width:100%;height:280px;min-height:280px;position:relative;perspective:1200px;transform-style:preserve-3d}@media (max-width: 480px){.cotd-deck-area .tarot-element__spread-container{height:240px;min-height:240px}}.cotd-deck-area .tarot-element__spread-container.shuffling .tarot-element__card:not(.fake-shuffle-card){pointer-events:none}.cotd-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.deck-controls{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.deck-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border:1px solid rgba(247,183,51,.4);border-radius:2rem;background:#2b194099;color:var(--color-gold);font-family:var(--font-family-heading);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.deck-button i{font-size:1.2rem}.deck-button:hover:not(:disabled){background:#6a309380;border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.deck-button:disabled{opacity:.5;cursor:not-allowed}.deck-button.shuffle-button{background:#2b194080}.deck-button.draw-button{background:linear-gradient(135deg,#6a309399,#2b1940cc)}.cotd-reveal-area{transition:all .5s ease}.cotd-reveal-area.collapsed-area{height:0;opacity:0;overflow:hidden}.cotd-details-panel,.cotd-details-panel.details-revealed{animation:fadeUpIn .5s ease-out}.card-details-view{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md)}.cotd-card-container{perspective:1000px}.cotd-card{width:150px;height:267px}@media (max-width: 480px){.cotd-card{width:130px;height:231px}}.card-info{text-align:center;max-width:400px}.card-info .card-name{font-family:var(--font-family-heading);font-size:1.5rem;color:var(--color-light);margin-bottom:var(--spacing-sm)}.card-info .card-keywords{color:var(--color-gold);font-size:.85rem;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.card-info .card-meaning{color:var(--color-text-muted);line-height:1.6;font-size:.9rem}.streak-container{margin-top:var(--spacing-md)}.streak-indicator{display:inline-flex;align-items:center;background:#f7b73326;border:1px solid rgba(247,183,51,.3);color:var(--color-gold);padding:.5rem 1rem;border-radius:2rem;font-size:.85rem;font-weight:600}.streak-indicator span{color:var(--color-gold)}.placeholder-content{min-height:200px;display:flex;align-items:center;justify-content:center}.shimmer-effect{width:150px;height:267px;background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.75rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tarot-practice-area{padding:var(--spacing-md);min-height:100vh}.practice-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.practice-header .back-button{background:#0000004d;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#ffffffe6;cursor:pointer;transition:all .3s ease}.practice-header .back-button:hover{background:#6a309366}.practice-header .practice-title{font-family:var(--font-family-heading);font-size:1.25rem;color:var(--color-gold);margin:0}.practice-description{margin-bottom:var(--spacing-lg)}.practice-description p{color:var(--color-text-muted);line-height:1.5;margin-bottom:var(--spacing-sm)}.practice-description .spread-hint{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-gold);font-size:.85rem}.practice-description .spread-hint i{font-size:1.2rem}.practice-content{position:relative}.spread-diagram{position:relative;min-height:400px;background:radial-gradient(circle at 50% 50%,rgba(106,48,147,.1) 0%,transparent 70%);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-lg);transform:scale(var(--practice-zoom, 1));transform-origin:center top;transition:transform .3s ease}.spread-layout--three-card{min-height:280px;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md)}.spread-layout--three-card .three-card-container{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);width:100%;max-width:400px}@media (max-width: 400px){.spread-layout--three-card .three-card-container{gap:var(--spacing-sm)}}.spread-layout--three-card .card-slot{width:90px;height:160px;flex-shrink:0}@media (max-width: 400px){.spread-layout--three-card .card-slot{width:75px;height:133px}}@media (min-width: 480px){.spread-layout--three-card .card-slot{width:100px;height:178px}}.spread-layout--celtic-cross{min-height:500px;padding:var(--spacing-md)}@media (max-width: 480px){.spread-layout--celtic-cross{min-height:450px}}.spread-layout--celtic-cross .celtic-cross-container{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-template-rows:auto auto auto auto;grid-template-areas:".       crown   .        self" "behind  center  before   environment" ".       below   .        hopes" ".       .       .        outcome";gap:var(--spacing-sm);width:100%;max-width:500px;margin:0 auto}@media (max-width: 400px){.spread-layout--celtic-cross .celtic-cross-container{gap:4px;max-width:360px}}.spread-layout--celtic-cross .card-slot{width:70px;height:124px;position:relative;justify-self:center}@media (max-width: 400px){.spread-layout--celtic-cross .card-slot{width:60px;height:107px}}@media (min-width: 480px){.spread-layout--celtic-cross .card-slot{width:80px;height:142px}}.spread-layout--celtic-cross .card-slot.rotated{transform:rotate(90deg);margin:-20px 0;z-index:5}@media (max-width: 400px){.spread-layout--celtic-cross .card-slot.rotated{margin:-15px 0}}.spread-layout--celtic-cross .celtic-center{grid-area:center;z-index:1}.spread-layout--celtic-cross .celtic-crossing{grid-area:center;z-index:2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg)}.spread-layout--celtic-cross .celtic-crown{grid-area:crown}.spread-layout--celtic-cross .celtic-below{grid-area:below}.spread-layout--celtic-cross .celtic-behind{grid-area:behind}.spread-layout--celtic-cross .celtic-before{grid-area:before}.spread-layout--celtic-cross .celtic-self{grid-area:self}.spread-layout--celtic-cross .celtic-environment{grid-area:environment}.spread-layout--celtic-cross .celtic-hopes{grid-area:hopes}.spread-layout--celtic-cross .celtic-outcome{grid-area:outcome}.spread-layout--celtic-cross .celtic-center{position:relative}.spread-layout--generic .generic-container{position:relative;width:100%;min-height:400px}.card-slot{position:relative;cursor:pointer;transition:all .3s ease}.card-slot.selected{z-index:20}.card-slot.selected .card-placeholder{border-color:var(--color-primary);background:#6a309333;box-shadow:0 0 20px #6a309366}.diagram-placeholder{position:relative;width:100%;height:100%}.spread-placeholder{position:relative;width:100%;min-height:400px}.card-position{position:absolute;width:80px;height:142px}@media (min-width: 480px){.card-position{width:100px;height:178px}}.card-position.selected{z-index:20}.card-position.selected .card-placeholder{border-color:var(--color-primary);background:#6a309333;box-shadow:0 0 20px #6a309366}.card-placeholder{width:100%;height:100%;background:#ffffff05;border:1px dashed rgba(247,183,51,.3);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.card-placeholder:hover{border-color:var(--color-gold);background:#f7b7330d}.card-placeholder .position-label{font-family:var(--font-family-heading);font-size:.7rem;color:#f7b73380;text-transform:uppercase;letter-spacing:.05em;text-align:center;padding:0 4px}.card-placed{width:100%;height:100%;position:relative;cursor:pointer}.card-placed img{width:100%;height:100%;object-fit:cover;border-radius:8px;box-shadow:0 4px 12px #0006}.card-placed.reversed img{transform:rotate(180deg)}.card-placed .card-actions{position:absolute;top:4px;right:4px;opacity:0;transition:opacity .3s ease}.card-placed:hover .card-actions{opacity:1}.card-placed.card-just-placed{animation:cardAppear .5s ease-out}@keyframes cardAppear{0%{transform:scale(.8);opacity:.5;box-shadow:0 0 #f7b73300}50%{transform:scale(1.05);box-shadow:0 0 20px #f7b73399}to{transform:scale(1);opacity:1;box-shadow:0 0 #f7b73300}}.clear-card-btn{width:24px;height:24px;border-radius:50%;background:#000000b3;border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.clear-card-btn i{font-size:1rem}.position-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;border:none;cursor:pointer}.practice-controls{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.practice-controls.deck-row{flex-direction:row;justify-content:center;align-items:center;gap:var(--spacing-xl)}.deck-visual{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);background:transparent;border:none;cursor:pointer;padding:var(--spacing-md)}.deck-visual .card-stack{position:relative;width:70px;height:105px;transform-style:preserve-3d}.deck-visual .card-stack.shuffling .stack-card{animation:deckShuffle .5s ease-in-out}.deck-visual .card-stack.shuffling .stack-card.stack-1{animation-delay:0s}.deck-visual .card-stack.shuffling .stack-card.stack-2{animation-delay:.08s}.deck-visual .card-stack.shuffling .stack-card.stack-3{animation-delay:.16s}.deck-visual .card-stack.shuffling .stack-card.stack-4{animation-delay:.24s}.deck-visual .card-stack.shuffling .stack-card.stack-top{animation-delay:.32s}.deck-visual .card-stack .stack-card{position:absolute;width:100%;height:100%;background:linear-gradient(135deg,#1b0c2e,#2d1a47);border:2px solid rgba(255,215,128,.4);border-radius:8px;box-shadow:0 2px 8px #0006}.deck-visual .card-stack .stack-card.stack-1{transform:translateY(-2px) translate(-2px) rotate(-4deg);z-index:1}.deck-visual .card-stack .stack-card.stack-2{transform:translateY(-4px) translate(-1px) rotate(-2deg);z-index:2}.deck-visual .card-stack .stack-card.stack-3{transform:translateY(-6px) rotate(0);z-index:3}.deck-visual .card-stack .stack-card.stack-4{transform:translateY(-8px) translate(1px) rotate(1deg);z-index:4}.deck-visual .card-stack .stack-card.stack-top{transform:translateY(-10px) rotate(2deg);z-index:5;display:flex;align-items:center;justify-content:center}.deck-visual .card-stack .card-star{font-size:1.5rem;color:#ffd78099;text-shadow:0 0 10px rgba(255,215,128,.4)}.deck-visual .deck-prompt{font-size:.85rem;color:var(--color-gold);font-family:var(--font-family-heading)}@keyframes deckShuffle{0%{transform:var(--base-transform)}25%{transform:translateY(-25px) translate(-12px) rotate(-12deg)}50%{transform:translateY(-18px) translate(12px) rotate(12deg)}75%{transform:translateY(-22px) translate(-8px) rotate(-6deg)}to{transform:var(--base-transform)}}.deck-buttons{display:flex;gap:var(--spacing-md)}.deck-buttons-vertical{display:flex;flex-direction:column;gap:var(--spacing-sm)}.spread-zoom-controls{position:absolute;bottom:var(--spacing-md);right:var(--spacing-md);display:flex;gap:var(--spacing-xs)}.spread-zoom-controls .zoom-action,.spread-zoom-controls .zoom-reset-action{width:36px;height:36px;border-radius:50%;background:#00000080;border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.spread-zoom-controls .zoom-action:hover:not(:disabled),.spread-zoom-controls .zoom-reset-action:hover:not(:disabled){background:#6a309380}.spread-zoom-controls .zoom-action:disabled,.spread-zoom-controls .zoom-reset-action:disabled{opacity:.4;cursor:not-allowed}.spread-zoom-controls .zoom-action i,.spread-zoom-controls .zoom-reset-action i{font-size:1.2rem}.reading-interpretation{background:#2b194066;border:1px solid rgba(247,183,51,.15);border-radius:var(--border-radius-lg);padding:var(--spacing-lg)}.reading-interpretation h3{font-family:var(--font-family-heading);color:var(--color-gold);margin-bottom:var(--spacing-md)}.complete-reading{text-align:center}.complete-reading .ask-guide-spread-button{margin-bottom:var(--spacing-lg)}.complete-reading .reset-button{margin-top:var(--spacing-lg)}.btn-primary{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-gold),#c4963b);color:#1a0d2e;border:none;border-radius:var(--border-radius-md);font-family:var(--font-family-heading);font-weight:700;cursor:pointer;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #f7b73366}.btn-primary i{font-size:1.2rem}.btn-secondary{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;color:var(--color-gold);border:1px solid var(--color-gold);border-radius:var(--border-radius-md);font-family:var(--font-family-heading);cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#f7b73326}.btn-secondary i{font-size:1.2rem}.reading-interpretation.complete{background:linear-gradient(135deg,#2b194099,#1a0d2ecc);border:1px solid rgba(247,183,51,.2)}.reading-header{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.reading-header .header-icon{font-size:1.5rem;color:var(--color-gold)}.reading-header h3{color:var(--color-gold);font-family:var(--font-family-heading);margin:0}.ask-guide-card{background:linear-gradient(135deg,#6a30934d,#2b194080);border:1px solid rgba(247,183,51,.3);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);text-align:center}.ask-guide-card .guide-icon{width:60px;height:60px;margin:0 auto var(--spacing-md);background:linear-gradient(135deg,var(--color-gold),#c4963b);border-radius:50%;display:flex;align-items:center;justify-content:center}.ask-guide-card .guide-icon i{font-size:2rem;color:#1a0d2e}.ask-guide-card .guide-description{color:var(--color-light);margin-bottom:var(--spacing-md);font-size:.9rem}.gem-cost{display:inline-flex;align-items:center;gap:4px;background:#1a0d2ed9;padding:4px 10px;border-radius:12px;font-size:.85rem;font-weight:600;margin-left:var(--spacing-sm);color:var(--color-gold)}.gem-cost i{font-size:1rem;color:var(--color-gold)}.ask-guide-prompt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:flex-end;justify-content:center;z-index:1000}.prompt-modal{background:var(--color-bg-dark);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);width:100%;max-width:500px;padding:var(--spacing-lg);animation:slideUp .3s ease-out}.prompt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.prompt-header h3{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-gold);font-family:var(--font-family-heading);margin:0}.prompt-header h3 i{font-size:1.3rem}.prompt-header .close-prompt-btn{width:32px;height:32px;border-radius:50%;background:#ffffff1a;border:none;color:var(--color-light);display:flex;align-items:center;justify-content:center;cursor:pointer}.prompt-header .close-prompt-btn:hover{background:#fff3}#guide-prompt-input{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:var(--border-radius-md);padding:var(--spacing-md);color:var(--color-light);font-family:inherit;font-size:.95rem;resize:vertical;min-height:100px}#guide-prompt-input:focus{outline:none;border-color:var(--color-gold)}.prompt-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-md)}.position-readings-list{text-align:left}.position-reading{padding:var(--spacing-md);background:#0003;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.position-reading .position-title{font-family:var(--font-family-heading);color:var(--color-light);margin-bottom:var(--spacing-sm)}.position-reading .position-title .card-name{color:var(--color-gold)}.position-reading p{color:var(--color-text-muted);line-height:1.5;margin-bottom:var(--spacing-sm)}.position-reading .card-details-button{font-size:.85rem}.incomplete-reading{text-align:center}.incomplete-reading .progress-indicator{max-width:300px;margin:0 auto var(--spacing-md)}.incomplete-reading .progress-count{font-size:.9rem;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.incomplete-reading .progress-bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.incomplete-reading .progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-gold));border-radius:3px;transition:width .3s ease}.incomplete-reading p{color:var(--color-text-muted);font-size:.9rem}.card-selector-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.card-selector-container{background:var(--color-bg-dark);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);width:100%;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.card-selector-container.closing{animation:slideDown .25s ease-in forwards}@keyframes slideUp{0%{transform:translateY(100%);opacity:.5}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.card-selector-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.card-selector-header h3{font-family:var(--font-family-heading);color:var(--color-gold);margin:0}.card-selector-header .close-selector{width:32px;height:32px;border-radius:50%;background:#0000004d;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.filter-controls{padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.filter-controls .card-search{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-md);color:var(--color-light);font-size:1rem;margin-bottom:var(--spacing-sm)}.filter-controls .card-search::placeholder{color:var(--color-text-muted)}.filter-controls .card-search:focus{outline:none;border-color:var(--color-gold)}.filter-controls .filter-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.filter-controls .filter-chip{padding:.4rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:1rem;color:var(--color-text-muted);font-size:.8rem;cursor:pointer;transition:all .3s ease}.filter-controls .filter-chip.active{background:#6a309366;border-color:var(--color-primary);color:var(--color-light)}.filter-controls .filter-chip:hover:not(.active){background:#ffffff1a}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--spacing-md);padding:var(--spacing-md);overflow-y:auto;flex:1}@media (min-width: 480px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.card-item{cursor:pointer;transition:transform .3s ease;background:none;border:none;padding:0;text-align:left;font:inherit}.card-item:hover{transform:translateY(-4px)}.card-item .card-art{aspect-ratio:100/178;border-radius:6px;overflow:hidden;margin-bottom:var(--spacing-xs);box-shadow:0 4px 8px #0000004d}.card-item .card-art img{width:100%;height:100%;object-fit:cover}.card-item .card-name{font-size:.7rem;color:var(--color-light);text-align:center;line-height:1.2}.no-results{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-xl);min-height:200px}.no-results i{font-size:3rem;color:var(--color-text-muted);margin-bottom:var(--spacing-md);display:block}.no-results p{color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.no-results .reset-filters{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);background:#6a309366;border:1px solid var(--color-primary);color:var(--color-light);padding:.75rem 1.5rem;border-radius:1rem;cursor:pointer;font-size:.9rem;transition:all .2s ease}.no-results .reset-filters:hover{background:#6a309399;transform:translateY(-2px)}.no-results .reset-filters i{font-size:1.1rem}.placeholder-message,.error-container,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:var(--spacing-xl)}.placeholder-message .message-icon,.placeholder-message .error-icon,.error-container .message-icon,.error-container .error-icon,.loading-container .message-icon,.loading-container .error-icon{width:64px;height:64px;background:#6a309333;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md)}.placeholder-message .message-icon i,.placeholder-message .error-icon i,.error-container .message-icon i,.error-container .error-icon i,.loading-container .message-icon i,.loading-container .error-icon i{font-size:2rem;color:var(--color-gold)}.placeholder-message .error-icon i,.error-container .error-icon i,.loading-container .error-icon i{color:#ff6b6b}.placeholder-message h3,.error-container h3,.loading-container h3{font-family:var(--font-family-heading);color:var(--color-light);margin-bottom:var(--spacing-sm)}.placeholder-message p,.placeholder-message .error-text,.placeholder-message .loading-text,.error-container p,.error-container .error-text,.error-container .loading-text,.loading-container p,.loading-container .error-text,.loading-container .loading-text{color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.placeholder-message .action-buttons,.error-container .action-buttons,.loading-container .action-buttons{display:flex;gap:var(--spacing-md);flex-wrap:wrap;justify-content:center}.loading-spinner{width:48px;height:48px;border:3px solid rgba(106,48,147,.3);border-top:3px solid var(--color-gold);border-radius:50%;margin-bottom:var(--spacing-md);animation:spin 1.2s cubic-bezier(.5,.1,.5,.9) infinite}@keyframes shuffleAnim{0%,to{transform:translate(0)}25%{transform:translate(-5px) rotate(-2deg)}75%{transform:translate(5px) rotate(2deg)}}.reversed-toggle{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.reversed-toggle input{display:none}.reversed-toggle .toggle-slider{width:36px;height:20px;background:#fff3;border-radius:10px;position:relative;transition:background .3s ease}.reversed-toggle .toggle-slider:after{content:"";position:absolute;width:16px;height:16px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .3s ease}.reversed-toggle input:checked+.toggle-slider{background:var(--color-gold)}.reversed-toggle input:checked+.toggle-slider:after{transform:translate(16px)}.reversed-toggle .toggle-label{font-size:.85rem;color:var(--color-light)}.reversed-toggle.compact .toggle-slider{width:28px;height:16px}.reversed-toggle.compact .toggle-slider:after{width:12px;height:12px}.reversed-toggle.compact input:checked+.toggle-slider:after{transform:translate(12px)}.reversed-toggle.compact .toggle-label{font-size:.75rem}.header-controls{display:flex;align-items:center;gap:var(--spacing-md)}:root{--color-primary: #6a3093;--color-primary-light: #a044ff;--color-primary-dark: #4a1d6a;--color-gold: #d4af37;--color-gold-light: #f9e076;--color-gold-dark: #a67c00;--color-midnight: #0f172a;--color-velvet: #33103e;--color-success: #38a169;--color-primary-rgb: 106, 48, 147;--color-primary-dark-rgb: 74, 29, 106;--color-gold-rgb: 212, 175, 55;--color-accent-rgb: 245, 101, 101;--color-text-primary: #f8f9fa;--color-text-secondary: rgba(248, 249, 250, .8);--color-text-muted: rgba(248, 249, 250, .6);--color-text-light: #f8f9fa;--color-bg-dark: #0f172a;--color-bg-medium: rgba(26, 32, 44, .9);--color-bg-card: rgba(26, 32, 44, .7);--color-bg-elevated: rgba(40, 30, 50, .7);--font-family-heading: Cinzel, serif;--font-family-body: Raleway, Inter, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2.5rem;--shadow-diffuse: 0 1px 2px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .07), 0 4px 8px rgba(0, 0, 0, .07);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-pill: 9999px;--gradient-mystic: linear-gradient(135deg, #4a1d6a 0%, #6a3093 100%);--gradient-twilight: linear-gradient(135deg, #0f172a 0%, #6a3093 100%);--tg-safe-top: 0px;--tg-safe-bottom: 0px}.shop-modal-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s ease}.shop-modal-container.active{pointer-events:auto;opacity:1}.shop-modal-container.active .shop-modal-content{transform:translateY(0)}.shop-modal-container .shop-modal-overlay{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;padding:0}.shop-modal-container .shop-modal-content{background:linear-gradient(180deg,#141023fa,#0f0c1c);border-top:1px solid rgba(255,215,0,.3);border-radius:24px 24px 0 0;width:100%;max-width:100%;padding:var(--spacing-lg) var(--spacing-md) 40px;position:relative;box-shadow:0 -10px 40px #0009;transform:translateY(100%);transition:transform .3s cubic-bezier(.19,1,.22,1);display:flex;flex-direction:column;max-height:85vh;overflow-y:auto}@media (min-width: 768px){.shop-modal-container .shop-modal-content{max-width:480px;margin-bottom:20px;border-radius:24px;border:1px solid rgba(255,215,0,.3);transform:translateY(20px)}}.shop-modal-container .shop-modal-content .close-btn{position:absolute;top:16px;right:16px;background:#ffffff1a;border:none;width:32px;height:32px;border-radius:50%;color:var(--color-text-muted);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.shop-modal-container .shop-modal-content .close-btn:hover{background:#fff3;color:var(--color-light)}.shop-modal-container .shop-header{text-align:center;margin-bottom:var(--spacing-lg)}.shop-modal-container .shop-header h2{font-family:var(--font-family-heading);background:linear-gradient(135deg,gold,#ffdf80);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:.05em;font-size:1.4rem;margin-bottom:4px;text-shadow:0 2px 10px rgba(255,215,0,.2)}.shop-modal-container .shop-header p{color:#fff9;font-size:.9rem}.shop-modal-container .packs-grid{display:flex;flex-direction:column;gap:12px}@media (min-width: 380px){.shop-modal-container .packs-grid{display:grid;grid-template-columns:1fr 1fr}}.shop-modal-container .gem-pack{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;position:relative;overflow:hidden;transition:all .2s ease}.shop-modal-container .gem-pack:active{transform:scale(.98);background:#ffffff0f}.shop-modal-container .gem-pack.best-value{background:linear-gradient(145deg,#50192866,#14102399);border:1px solid rgba(255,215,0,.6);box-shadow:0 0 20px #ffd7001a}.shop-modal-container .gem-pack.best-value .badge{position:absolute;top:0;left:0;width:100%;background:linear-gradient(90deg,#dfa630,gold,#dfa630);color:#1a0f00;font-weight:800;font-size:.65rem;text-transform:uppercase;padding:4px 0;letter-spacing:1px;box-shadow:0 2px 4px #0000004d}.shop-modal-container .gem-pack.best-value .pack-amount{color:gold}.shop-modal-container .gem-pack .pack-icon{font-size:2.2rem;margin:12px 0 8px;filter:drop-shadow(0 0 10px rgba(0,191,255,.4))}.shop-modal-container .gem-pack .pack-amount{font-weight:700;font-size:1.1rem;color:#fff;margin-bottom:2px}.shop-modal-container .gem-pack .pack-title{font-size:.8rem;color:#ffffff80;margin-bottom:12px}.shop-modal-container .gem-pack .pack-price-btn{width:100%;background:#ffffff1a;border:none;border-radius:100px;padding:8px 0;color:#fff;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.9rem;transition:background .2s}.shop-modal-container .gem-pack .pack-price-btn .stars-icon{font-size:.9rem}.shop-modal-container .gem-pack .pack-price-btn:active{background:#fff3}.shop-modal-container .loader-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f0c1ccc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;border-radius:inherit;z-index:20}.shop-modal-container .loader-overlay .spinner{width:40px;height:40px;border:3px solid rgba(255,215,0,.3);border-top-color:gold;border-radius:50%;animation:spin 1s linear infinite}.interactive-date-picker .glass-card{padding:var(--spacing-lg)}.interactive-date-picker .form-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text-primary)}.interactive-date-picker .form-description{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.interactive-date-picker .date-inputs{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.interactive-date-picker .input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.interactive-date-picker .input-group label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.interactive-date-picker .input-group.disabled{opacity:.5;pointer-events:none}.interactive-date-picker .glass-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface-glass);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.interactive-date-picker .glass-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.2)}.interactive-date-picker .glass-input.error{border-color:var(--color-error);animation:shake .3s ease-in-out}.interactive-date-picker .glass-input::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.7}.interactive-date-picker .time-unknown-toggle{margin-top:var(--spacing-sm)}.interactive-date-picker .time-unknown-toggle .checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.875rem;color:var(--color-text-secondary)}.interactive-date-picker .time-unknown-toggle .checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary)}.interactive-date-picker.locked .locked-value{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md);text-align:center}.interactive-date-picker.locked .locked-value .locked-label{display:block;font-size:.75rem;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.interactive-date-picker.locked .locked-value .locked-date{font-size:1.125rem;font-weight:600;color:var(--color-primary)}.interactive-location-picker .glass-card{padding:var(--spacing-lg)}.interactive-location-picker .form-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text-primary)}.interactive-location-picker .form-description{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.interactive-location-picker .location-inputs{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);position:relative}.interactive-location-picker .input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.interactive-location-picker .input-group label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.interactive-location-picker .glass-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface-glass);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.interactive-location-picker .glass-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.2)}.interactive-location-picker .glass-input.error{border-color:var(--color-error);animation:shake .3s ease-in-out}.interactive-location-picker .location-suggestions{position:absolute;top:100%;left:0;right:0;z-index:100;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);max-height:200px;overflow-y:auto;box-shadow:0 4px 12px #0000004d}.interactive-location-picker .location-suggestions.hidden{display:none}.interactive-location-picker .location-suggestions .suggestion-item{display:flex;flex-direction:column;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;text-align:left;cursor:pointer;transition:background-color .15s}.interactive-location-picker .location-suggestions .suggestion-item:hover{background:var(--color-surface-hover)}.interactive-location-picker .location-suggestions .suggestion-item .suggestion-name{font-size:.9375rem;color:var(--color-text-primary)}.interactive-location-picker .location-suggestions .suggestion-item .suggestion-detail{font-size:.75rem;color:var(--color-text-secondary)}.interactive-location-picker.locked .locked-value{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md);text-align:center}.interactive-location-picker.locked .locked-value .locked-label{display:block;font-size:.75rem;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.interactive-location-picker.locked .locked-value .locked-location{font-size:1.125rem;font-weight:600;color:var(--color-primary)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.interactive-tarot-element .glass-card{padding:var(--spacing-lg);position:relative}.interactive-tarot-element .element-header{text-align:center;margin-bottom:var(--spacing-lg)}.interactive-tarot-element .element-header .form-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.interactive-tarot-element .element-header .form-description{font-size:.875rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.interactive-tarot-element .tarot-cards-container{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);perspective:1000px}.interactive-tarot-element .tarot-cards-container.cards-count-1{flex-wrap:nowrap}.interactive-tarot-element .tarot-cards-container.cards-count-3{flex-wrap:wrap}.interactive-tarot-element .tarot-card-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.interactive-tarot-element .tarot-card{width:100px;height:160px;cursor:pointer;perspective:1000px;transition:transform .2s}.interactive-tarot-element .tarot-card:hover{transform:scale(1.02)}.interactive-tarot-element .tarot-card:focus{outline:2px solid var(--color-primary);outline-offset:2px}.interactive-tarot-element .tarot-card.selected{box-shadow:0 0 0 3px var(--color-primary),0 8px 24px #0000004d}.interactive-tarot-element .tarot-card__inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s}.interactive-tarot-element .tarot-card.flipped .tarot-card__inner{transform:rotateY(180deg)}.interactive-tarot-element .tarot-card.reversed .tarot-card__face--front{transform:rotateY(180deg) rotate(180deg)}.interactive-tarot-element .tarot-card__face{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 12px #0000004d}.interactive-tarot-element .tarot-card__face--back{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);display:flex;align-items:center;justify-content:center}.interactive-tarot-element .tarot-card__face--back .card-back-pattern{width:60%;height:80%;border:2px solid var(--color-gold, #ffd700);border-radius:8px;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,215,0,.1) 10px,rgba(255,215,0,.1) 20px)}.interactive-tarot-element .tarot-card__face--front{transform:rotateY(180deg);background:var(--color-surface)}.interactive-tarot-element .tarot-card__face--front .card-image{width:100%;height:100%;object-fit:cover}.interactive-tarot-element .tarot-card__face--front .card-title{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-xs);background:linear-gradient(transparent,#000c);font-size:.625rem;text-align:center;color:#fff}.interactive-tarot-element .card-position-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase}.interactive-tarot-element .card-info-panel{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.interactive-tarot-element .card-info-panel.hidden{display:none}.interactive-tarot-element .card-info-panel .card-name{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs)}.interactive-tarot-element .card-info-panel .card-meaning{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.interactive-tarot-element .reading-result{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.interactive-tarot-element .reading-result.hidden{display:none}.interactive-tarot-element .reading-result h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-primary)}.interactive-tarot-element .reading-result .reading-text{font-size:.9375rem;line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap}.interactive-tarot-element .loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3;border-radius:var(--border-radius-lg);z-index:10}.interactive-tarot-element .loading-overlay.hidden{display:none}.interactive-tarot-element .loading-overlay .loading-spinner{width:40px;height:40px;border:3px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.interactive-tarot-element .loading-overlay p{margin-top:var(--spacing-md);color:var(--color-text-secondary);font-size:.875rem}.interactive-zodiac-element .glass-card{padding:var(--spacing-lg);position:relative}.interactive-zodiac-element .element-header{text-align:center;margin-bottom:var(--spacing-lg)}.interactive-zodiac-element .element-header .form-title{font-size:1.25rem;font-weight:600}.interactive-zodiac-element .element-header .form-description{font-size:.875rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.interactive-zodiac-element .selection-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);margin-top:var(--spacing-md)}.interactive-zodiac-element .zodiac-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.interactive-zodiac-element .zodiac-sign-btn{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface-glass);cursor:pointer;transition:all .2s}.interactive-zodiac-element .zodiac-sign-btn:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.interactive-zodiac-element .zodiac-sign-btn.selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.2);box-shadow:0 0 0 2px var(--color-primary)}.interactive-zodiac-element .zodiac-sign-btn .sign-symbol{font-size:1.5rem}.interactive-zodiac-element .zodiac-sign-btn .sign-name{font-size:.625rem;margin-top:2px;color:var(--color-text-secondary)}.interactive-zodiac-element .compatibility-score{text-align:center;padding:var(--spacing-lg);margin-bottom:var(--spacing-md)}.interactive-zodiac-element .compatibility-score .score-value{font-size:3rem;font-weight:700;color:var(--color-primary)}.interactive-zodiac-element .compatibility-score .score-label{font-size:.875rem;color:var(--color-text-secondary);text-transform:uppercase}.interactive-zodiac-element .reading-result{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md)}.interactive-zodiac-element .reading-result .reading-text{font-size:.9375rem;line-height:1.6;white-space:pre-wrap}.interactive-zodiac-element .loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3;border-radius:var(--border-radius-lg);z-index:10}.interactive-zodiac-element .loading-overlay.hidden{display:none}.interactive-zodiac-element .loading-overlay .loading-spinner{width:40px;height:40px;border:3px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.interactive-zodiac-element .loading-overlay p{margin-top:var(--spacing-md);color:var(--color-text-secondary)}.interactive-rating-element .glass-card{padding:var(--spacing-lg)}.interactive-rating-element .glass-card.compact{padding:var(--spacing-md)}.interactive-rating-element .rating-label{text-align:center;font-size:.9375rem;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.interactive-rating-element .stars-input{display:flex;justify-content:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.interactive-rating-element .star-btn{padding:var(--spacing-xs);background:transparent;border:none;cursor:pointer;transition:transform .15s}.interactive-rating-element .star-btn:hover{transform:scale(1.2)}.interactive-rating-element .star-btn.selected .star-icon{color:var(--color-gold, #ffd700)}.interactive-rating-element .star-btn .star-icon{font-size:2rem;color:var(--color-text-secondary);transition:color .15s}.interactive-rating-element .rating-submitted{text-align:center}.interactive-rating-element .stars-display{display:flex;justify-content:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.interactive-rating-element .stars-display .star{font-size:1.5rem;color:var(--color-text-secondary)}.interactive-rating-element .stars-display .star.filled{color:var(--color-gold, #ffd700)}.interactive-rating-element .thank-you-message{font-size:.9375rem;color:var(--color-text-secondary)}.interactive-rating-element .glass-button.compact{padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem}.action-buttons{margin-top:var(--spacing-md)}.action-buttons.hidden{display:none}.tarot-celtic-cross-container{display:grid;grid-template-areas:".        crown    ." "past     center   future" ".        below    revealed-spot" ".         .       ." "self     external hopes" ".        outcome  .";grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto auto 1rem auto auto;row-gap:1rem;column-gap:.25rem;width:100%;max-width:320px;margin:1rem auto;position:relative;padding:0 var(--spacing-xs)}.tarot-celtic-cross-container .tarot-card-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.tarot-celtic-cross-container .tarot-card{width:70px;height:112px}.tarot-celtic-cross-container .card-position-label{font-size:.55rem;white-space:nowrap;text-align:center}.tarot-celtic-cross-container .position-0{grid-area:center;z-index:10}.tarot-celtic-cross-container .position-1{grid-area:center;z-index:11;transform:rotate(90deg);transition:grid-area .5s,transform .5s;margin-top:-8px;margin-bottom:-8px}.tarot-celtic-cross-container .position-1 .card-position-label{transform:rotate(-90deg);position:absolute;left:-24px;top:50%}.tarot-celtic-cross-container .position-1.challenge-revealed{grid-area:revealed-spot;transform:none;z-index:30}.tarot-celtic-cross-container .position-1.challenge-revealed .card-position-label{transform:none;position:static}.tarot-celtic-cross-container .position-2{grid-area:below}.tarot-celtic-cross-container .position-3{grid-area:past}.tarot-celtic-cross-container .position-4{grid-area:crown}.tarot-celtic-cross-container .position-5{grid-area:future}.tarot-celtic-cross-container .position-6{grid-area:self}.tarot-celtic-cross-container .position-7{grid-area:external}.tarot-celtic-cross-container .position-8{grid-area:hopes}.tarot-celtic-cross-container .position-9{grid-area:outcome}.tarot-celtic-cross-container .revealed-challenge-placeholder{grid-area:revealed-spot;visibility:hidden;pointer-events:none;min-height:80px}.interactive-ritual-element .glass-card{padding:var(--spacing-lg);position:relative}.interactive-ritual-element .element-header{text-align:center;margin-bottom:var(--spacing-md)}.interactive-ritual-element .element-header .form-title{font-size:1.25rem;font-weight:600}.interactive-ritual-element .element-header .form-description{font-size:.875rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.interactive-ritual-element .ritual-sigil{position:relative;width:240px;height:240px;margin:0 auto;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}.interactive-ritual-element .ritual-sigil__stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .1s ease-out}.interactive-ritual-element .ritual-sigil__stage.shaking{animation:ritual-shake .15s infinite}.interactive-ritual-element .ritual-sigil__layer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .3s ease-out,opacity .3s}.interactive-ritual-element .ritual-sigil__layer svg{width:100%;height:100%;fill:none;stroke:var(--color-gold, #ffd700);stroke-width:1}.interactive-ritual-element .ritual-sigil__layer--outer{transform:scale(calc(1.3 - var(--convergence) * .3)) rotate(calc(var(--convergence) * 360deg));opacity:calc(.3 + var(--convergence) * .7)}.interactive-ritual-element .ritual-sigil__layer--middle{transform:scale(calc(1.2 - var(--convergence) * .2)) rotate(calc(var(--convergence) * -180deg));opacity:calc(.4 + var(--convergence) * .6)}.interactive-ritual-element .ritual-sigil__layer--inner{transform:scale(calc(.8 + var(--convergence) * .2));opacity:calc(.5 + var(--convergence) * .5)}.interactive-ritual-element .ritual-sigil__instructions{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);text-align:center}.interactive-ritual-element .ritual-sigil__instructions h4{font-size:.875rem;color:var(--color-gold, #ffd700);margin:0;text-transform:uppercase;letter-spacing:.1em}.interactive-ritual-element .ritual-sigil__instructions p{font-size:.75rem;color:var(--color-text-secondary);margin:var(--spacing-xs) 0 0}.interactive-ritual-element .ritual-sigil__ripple{position:absolute;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,var(--color-gold, #ffd700) 0%,transparent 70%);transform:translate(-50%,-50%) scale(0);animation:ripple-expand .6s ease-out forwards;pointer-events:none}.interactive-ritual-element .ritual-sigil__flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,var(--color-gold, #ffd700) 0%,transparent 60%);opacity:0;pointer-events:none;transition:opacity .3s}.interactive-ritual-element .ritual-sigil__flash--active{animation:ritual-flash .5s ease-out}.interactive-ritual-element .ritual-complete-overlay{text-align:center;padding:var(--spacing-lg)}.interactive-ritual-element .ritual-complete-overlay .complete-icon{font-size:3rem;color:var(--color-gold, #ffd700)}.interactive-ritual-element .ritual-complete-overlay h3{font-size:1.25rem;margin:var(--spacing-md) 0}.interactive-ritual-element .ritual-complete-overlay p{font-size:.875rem;color:var(--color-text-secondary)}.interactive-ritual-element .reading-result{padding:var(--spacing-md);background:var(--color-surface-glass);border-radius:var(--border-radius-md);margin-top:var(--spacing-md)}.interactive-ritual-element .reading-result h3{font-size:1rem;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.interactive-ritual-element .reading-result .reading-text{font-size:.9375rem;line-height:1.6;white-space:pre-wrap}.interactive-ritual-element .loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3;border-radius:var(--border-radius-lg);z-index:10}.interactive-ritual-element .loading-overlay.hidden{display:none}.interactive-ritual-element .loading-overlay .loading-spinner{width:40px;height:40px;border:3px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes ritual-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px) rotate(-1deg)}75%{transform:translate(2px) rotate(1deg)}}@keyframes ripple-expand{0%{transform:translate(-50%,-50%) scale(0);opacity:1}to{transform:translate(-50%,-50%) scale(3);opacity:0}}@keyframes ritual-flash{0%{opacity:0}50%{opacity:.8}to{opacity:0}}.language-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--bg-primary-rgb),.97);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.language-overlay__card{text-align:center;padding:var(--spacing-xl);max-width:320px}.language-overlay__icon{font-size:3rem;color:var(--accent-gold);margin-bottom:var(--spacing-md)}.language-overlay__icon.mystical-pulse{animation:mysticalPulse 1.5s ease-in-out infinite}.language-overlay__icon i{display:block}.language-overlay__title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.language-overlay__subtitle{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);line-height:1.5}.language-overlay__progress{margin-bottom:var(--spacing-md)}.language-overlay__hint{font-size:.75rem;color:var(--text-muted);font-style:italic}.loading-progress-bar{width:200px;height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden;margin:0 auto var(--spacing-xs)}.loading-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-gold),var(--accent-purple));transition:width .3s ease;border-radius:2px}.loading-progress-text{font-size:.75rem;color:var(--text-secondary)}.language-selector{margin-top:var(--spacing-sm);display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.compact-language-dropdown{background:transparent;border:1px solid var(--border-light);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);padding-right:var(--spacing-lg);border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;transition:border-color .2s,color .2s}.compact-language-dropdown:hover,.compact-language-dropdown:focus{border-color:var(--accent-gold);color:var(--text-primary);outline:none}.compact-language-dropdown:disabled{opacity:.5;cursor:not-allowed}.compact-language-dropdown option{background-color:#1a1625;color:#e8e4ef;padding:8px 12px}.language-selector-loading{width:16px;height:16px;border:2px solid var(--border-light);border-top-color:var(--accent-gold);border-radius:50%;animation:spin .8s linear infinite}.profile-language-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.profile-language-section .section-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.profile-language-section .section-label i{font-size:1rem;color:var(--accent-gold)}.profile-language-section .language-dropdown{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .2s,background-color .2s}.profile-language-section .language-dropdown:hover,.profile-language-section .language-dropdown:focus{border-color:var(--accent-gold);background-color:var(--bg-secondary);outline:none}.profile-language-section .language-dropdown:disabled{opacity:.5;cursor:not-allowed}.profile-language-section .language-dropdown option{background-color:#1a1625;color:#e8e4ef;padding:8px 12px}@keyframes mysticalPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.message--interactive{margin:12px 0}.message--interactive .interactive-bubble{max-width:90%!important;padding:0!important;overflow:hidden;background:#141423b3;border:1px solid rgba(var(--color-primary-rgb),.2);box-shadow:0 10px 30px #0006}.interactive-element-box{display:flex;flex-direction:column}.interactive-element-box .element-header{padding:12px 16px;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05)}.interactive-element-box .element-header h4{margin:0;font-size:.95rem;color:var(--color-gold);font-family:Cinzel,serif;letter-spacing:.5px}.interactive-element-box .element-body{padding:16px}.tarot-spread-chat{display:flex;flex-direction:column;gap:16px}.tarot-spread-chat .cards-layout{display:flex;justify-content:center;gap:8px;perspective:1000px;padding:10px 0}.tarot-spread-chat.three-card .tarot-card-v2{width:80px;height:125px}.tarot-spread-chat.single .tarot-card-v2{width:120px;height:185px}.tarot-spread-chat.celtic-cross .cards-layout{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tarot-spread-chat.celtic-cross .cards-layout .tarot-card-v2{width:100%;height:110px}.tarot-card-v2{position:relative;cursor:pointer;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.tarot-card-v2:active{transform:scale(.95)}.tarot-card-v2 .card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,0,.2,1);box-shadow:0 5px 15px #0000004d;border-radius:6px}.tarot-card-v2.flipped .card-inner{transform:rotateY(180deg)}.tarot-card-v2 .card-back,.tarot-card-v2 .card-front{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:6px;border:2px solid var(--color-gold);overflow:hidden}.tarot-card-v2 .card-back{background:linear-gradient(135deg,#150a25,#0a0a14);display:flex;align-items:center;justify-content:center}.tarot-card-v2 .card-back .pattern{width:80%;height:80%;opacity:.2;background-image:radial-gradient(var(--color-gold) 1px,transparent 1px);background-size:10px 10px}.tarot-card-v2 .card-front{transform:rotateY(180deg);background:#000}.tarot-card-v2 .card-front img{width:100%;height:100%;object-fit:cover}.tarot-card-v2 .card-front img.reversed{transform:rotate(180deg)}.tarot-card-v2 .card-label{margin-top:8px;text-align:center;font-size:.7rem;color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.zodiac-match-chat .match-signs{display:flex;align-items:center;justify-content:space-around;padding:10px 0}.zodiac-match-chat .match-signs .sign-v2{display:flex;flex-direction:column;align-items:center;gap:8px}.zodiac-match-chat .match-signs .sign-v2 img{width:50px;height:50px;border-radius:50%;border:2px solid var(--color-gold)}.zodiac-match-chat .match-signs .sign-v2 span{font-size:.8rem;color:var(--color-light);font-weight:600}.zodiac-match-chat .match-signs .match-heart{display:flex;flex-direction:column;align-items:center;color:#ff4d4d}.zodiac-match-chat .match-signs .match-heart i{font-size:32px;animation:heartBeat 1.5s infinite}.zodiac-match-chat .match-signs .match-heart span{font-size:.9rem;font-weight:900;color:var(--color-light);margin-top:4px}@keyframes heartBeat{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.voodoo-doll-chat{display:flex;gap:16px}.voodoo-doll-chat .doll-frame{position:relative;width:60px;height:90px;flex-shrink:0;background:#0000004d;border-radius:8px;padding:5px}.voodoo-doll-chat .doll-frame .doll-img{width:100%;height:100%;object-fit:contain}.voodoo-doll-chat .doll-frame .pin-overlays{position:absolute;top:0;right:0;bottom:0;left:0}.voodoo-doll-chat .doll-frame .pin-overlays .pin{position:absolute;transform:translate(-50%,-50%);font-size:14px;filter:drop-shadow(0 2px 2px black)}.voodoo-doll-chat .doll-info{flex:1}.voodoo-doll-chat .doll-info h4{margin:0 0 5px;font-size:.9rem;color:var(--color-light)}.voodoo-doll-chat .doll-info p{margin:0;font-size:.8rem;color:var(--color-text-muted);font-style:italic;line-height:1.4}.rating-element-chat{text-align:center}.rating-element-chat p{font-size:.8rem;color:var(--color-text-muted);margin-top:10px}.rating-element-chat .stars{display:flex;justify-content:center;gap:8px;color:#444;transition:color .3s}.rating-element-chat .stars i{font-size:28px;cursor:pointer;transition:transform .2s,color .2s}.rating-element-chat .stars i:hover{transform:scale(1.2);color:var(--color-gold)}.rating-element-chat .stars.rated{color:var(--color-gold);pointer-events:none}.pay-button{width:100%;margin-top:8px!important;font-size:.85rem!important}.home-page{animation:fadeInUp .5s ease-out}.home-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.user-greeting{display:flex;flex-direction:column}.greeting-label{font-size:.8rem;color:var(--color-text-muted)}.greeting-name{font-family:var(--font-family-heading);font-size:1.5rem;color:var(--color-gold);letter-spacing:.05em}.header-actions{display:flex;align-items:center}.header-actions.user-action-pill{background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,215,0,.15);border-radius:100px;padding:3px;height:42px;box-shadow:0 4px 15px #0003}.header-actions .gem-balance-btn{display:flex;align-items:center;gap:6px;padding:0 12px 0 10px;background:transparent;border:none;border-radius:100px 0 0 100px;height:100%;cursor:pointer;color:var(--color-text-light);transition:background .2s}.header-actions .gem-balance-btn:active{background:#ffffff14}.header-actions .gem-count{color:var(--color-gold);font-weight:700;font-size:.95rem;letter-spacing:.02em}.header-actions .gem-icon{font-size:1.1rem;filter:drop-shadow(0 0 5px rgba(212,175,55,.4))}.header-actions .action-divider{width:1px;height:20px;background:#ffffff26;margin:0 2px}.header-actions .profile-btn{display:flex;align-items:center;justify-content:center;padding:0 12px;background:transparent;border:none;border-radius:0 100px 100px 0;height:100%;cursor:pointer;color:var(--color-text-muted);transition:all .2s}.header-actions .profile-btn:active{background:#ffffff14;color:var(--color-text-light)}.header-actions .profile-btn .profile-icon-fallback{font-size:1.4rem}.header-actions .profile-btn .profile-avatar-small{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid var(--color-gold);display:none}.app-logo{width:144px;height:144px;margin:0 auto var(--spacing-sm);position:relative}.app-logo:before{content:"";position:absolute;top:-50px;right:-50px;bottom:-50px;left:-50px;border-radius:50%;background:radial-gradient(circle,#ffd7001f,#ffd7000d 50%,#ffd70000 70%);filter:blur(20px);z-index:0;pointer-events:none}.app-logo img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 0 1px rgba(212,175,55,.6))}.hero-section{text-align:center;margin-bottom:var(--spacing-xl)}.hero-title{font-size:1.2rem;margin-bottom:var(--spacing-xs)}.hero-subtitle{color:var(--color-text-muted);font-style:italic}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.action-btn{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-sm);background:#1a202cb3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.08);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-fast)}.action-btn:active{transform:scale(.95);background:#6a30934d}.action-btn .action-icon{font-size:1.5rem}.action-btn .action-label{font-size:.7rem;color:var(--color-text-secondary)}.gem-shop{margin-bottom:var(--spacing-lg)}.shop-title{font-size:1rem;margin-bottom:var(--spacing-md);text-align:center}.gem-packs{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.gem-pack{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-sm);background:linear-gradient(135deg,#33103e99,#1a202cb3);border:2px solid var(--color-gold);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 0 15px #d4af3726}.gem-pack:active{transform:scale(.97);box-shadow:0 0 20px #d4af374d}.gem-pack.popular{border-color:var(--color-gold);background:linear-gradient(135deg,#33103ecc,#1a202ccc);box-shadow:0 0 20px #d4af3740}.gem-pack.popular .popular-badge{display:block}.gem-pack .popular-badge{display:none;position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#c41e3a,#8b0000);color:#fff;font-size:.55rem;font-weight:700;padding:3px 8px;border-radius:var(--border-radius-pill);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 6px #0006}.gem-pack .pack-gems{font-size:1.1rem;font-weight:600;color:var(--color-text-light);margin-bottom:var(--spacing-xs)}.gem-pack .pack-price{font-size:.8rem;color:var(--color-gold)}.agent-list-card{position:relative;width:100%;background:linear-gradient(135deg,#1a202cb3,#1a202cd9);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:var(--border-radius-md);box-shadow:var(--shadow-diffuse),inset 0 1px 1px #ffffff1a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;margin-bottom:var(--spacing-md);padding:var(--spacing-md);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;cursor:pointer;opacity:0;transform:translateY(15px);animation:agentCardAppear .4s cubic-bezier(.22,1,.36,1) forwards;animation-delay:calc(.05s * var(--card-index, 0))}.agent-list-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--border-radius-md);padding:1px;background:linear-gradient(135deg,#6a309380,#f7b73380);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .2s ease;pointer-events:none}.agent-list-card:active{transform:scale(.98)}.agent-list-card:active:before{opacity:.8}.agent-list-card__avatar-container{position:relative;margin-right:var(--spacing-md);flex-shrink:0;flex-basis:70px}.agent-list-card__avatar-container .premium-badge{position:absolute;top:-8px;right:-8px;background:#1e1428d9;border:1.5px solid rgba(247,183,51,.6);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000059;z-index:10}.agent-list-card__avatar-container .premium-badge .premium-icon{font-size:16px;color:var(--color-gold);filter:drop-shadow(0 0 2px rgba(247,183,51,.6))}.agent-list-card__avatar{width:70px;height:70px;border-radius:50%;overflow:hidden;position:relative;background-color:var(--color-bg-medium);box-shadow:0 3px 8px #0000004d;z-index:1}.agent-list-card__avatar-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.agent-list-card__avatar-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transform:scale(1.06)}.agent-list-card__avatar-symbol{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--gradient-mystic)}.agent-list-card__avatar-symbol .avatar-icon{font-size:32px;color:var(--color-gold)}.agent-list-card__status{position:absolute;bottom:0;right:0;width:14px;height:14px;border-radius:50%;border:2px solid var(--color-bg-dark);z-index:2}.agent-list-card__status--online{background-color:var(--color-success)}.agent-list-card__status--online .status-pulse{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background-color:var(--color-success);opacity:0;animation:pulseStatus 2s ease-out infinite}.agent-list-card__status--offline{background-color:#fff6}.agent-list-card__details{flex:1;min-width:0;margin-right:var(--spacing-sm)}.agent-list-card__name{font-size:1rem;font-weight:600;margin:0 0 2px;color:var(--color-text-light);font-family:var(--font-family-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-list-card__specialization{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;margin-bottom:4px;max-height:24px;overflow:hidden}.agent-list-card__stats{display:flex;gap:var(--spacing-md);font-size:.75rem;color:var(--color-text-light);opacity:.8;flex-wrap:wrap}.agent-list-card__stats .stat-rating,.agent-list-card__stats .stat-consultations,.agent-list-card__stats .stat-rate{display:flex;align-items:center;gap:3px}.agent-list-card__stats .star{color:var(--color-gold)}.agent-list-card__stats .stat-rate{position:relative}.agent-list-card__stats .free-question-badge{position:absolute;right:-32px;top:-12px;background:var(--color-success);color:#fff;padding:2px 4px;font-size:.6rem;font-weight:700;transform:rotate(30deg);box-shadow:0 2px 4px #0000004d;border-radius:2px}.agent-list-card__action{display:flex;align-items:center}.agent-list-card__action .arrow-icon{color:var(--color-text-light);opacity:.6;font-size:1.25rem}.agent-list-card--premium{border-color:#d4af3766;box-shadow:var(--shadow-diffuse),0 0 20px #d4af3726,inset 0 1px 1px #ffffff1a}.agent-list-card--premium:before{opacity:.3}.agent-list-card--free{overflow:visible}.agent-detail-page{padding-bottom:100px;position:relative}.agent-detail-page .close-button{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-light);display:flex;align-items:center;justify-content:center;z-index:10;cursor:pointer;border:none;transition:all .2s ease}.agent-detail-page .close-button i{font-size:22px}.agent-detail-page .close-button:active{background:#6a309399;transform:scale(.95)}.agent-details-header{display:flex;flex-direction:column;position:relative}.agent-details-header__avatar-container{position:relative;width:100%;height:280px;overflow:hidden}.agent-details-header__avatar{width:100%;height:100%;border-radius:0;overflow:hidden;position:relative}.agent-details-header__avatar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#0000 20%,#0b08144d 50%,#0b0814cc 85%,#0b0814);z-index:1}.agent-details-header__avatar-image{width:100%;height:100%;background-size:cover;background-position:top center;position:relative;z-index:0}.agent-details-header__avatar-symbol{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#482067,#6a3093,#482067)}.agent-details-header__avatar-symbol .avatar-icon{font-size:80px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,175,55,.5)}.agent-details-header__status{position:absolute;bottom:16px;right:16px;width:18px;height:18px;border-radius:50%;background-color:var(--color-text-muted);box-shadow:0 0 10px #0006;z-index:5;border:3px solid rgba(0,0,0,.4)}.agent-details-header__status--online{background-color:var(--color-success);box-shadow:0 0 12px #38a16999}.badge-container{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:6px;z-index:15}.premium-badge,.free-question-badge{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:var(--border-radius-pill);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #00000059}.premium-badge i,.free-question-badge i{font-size:14px}.premium-badge{background:linear-gradient(135deg,#6a3093e6,#482067e6);border:1px solid rgba(247,183,51,.6);color:var(--color-gold)}.premium-badge i{color:var(--color-gold);filter:drop-shadow(0 0 3px rgba(247,183,51,.5))}.free-question-badge{background:linear-gradient(135deg,#38a169e6,#276749e6);border:1px solid rgba(56,161,105,.6);color:#fff}.free-question-badge i{color:#fff}.agent-info{position:relative;margin-top:-60px;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-sm);text-align:center;z-index:2}.agent-name{font-size:1.6rem;font-weight:700;margin-bottom:var(--spacing-sm);font-family:var(--font-family-heading);background:linear-gradient(to right,#f7e8a8,var(--color-gold),#f7e8a8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.05em}.agent-rating{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md);gap:2px}.agent-rating .star{font-size:18px;color:var(--color-gold)}.agent-rating .star.empty{opacity:.4}.agent-rating .rating-value{margin-left:var(--spacing-sm);font-weight:600;color:var(--color-gold)}.agent-specializations-row{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center;margin-bottom:var(--spacing-sm)}.agent-specializations-row .specialization-tag{display:flex;align-items:center;background:#6a309340;border:1px solid rgba(106,48,147,.5);border-radius:var(--border-radius-sm);padding:4px 10px;font-size:.75rem}.agent-specializations-row .specialization-tag.more{background:#f7b73326;border-color:#f7b73380;color:var(--color-gold)}.agent-specializations-row .specialization-tag .specialization-icon{font-size:14px;margin-right:4px;color:var(--color-gold)}.agent-details-content{padding:0 var(--spacing-lg) var(--spacing-lg)}.agent-bio{background:#0000004d;border-radius:var(--border-radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-left:3px solid var(--color-gold)}.agent-bio .bio-text{font-style:italic;line-height:1.6;margin:0;font-size:.9rem;color:var(--color-text-secondary)}.agent-stats{margin-bottom:var(--spacing-lg)}.agent-stats .stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.agent-stats .stats-grid .stat-box{text-align:center;padding:var(--spacing-md) var(--spacing-sm);background:#0b081499;border-radius:var(--border-radius-md);display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid rgba(106,48,147,.3)}.agent-stats .stats-grid .stat-box i{font-size:22px;color:var(--color-gold);margin-bottom:4px}.agent-stats .stats-grid .stat-box .stat-value{font-size:1rem;font-weight:700;font-family:var(--font-family-heading);color:var(--color-light)}.agent-stats .stats-grid .stat-box .stat-label{color:#fff9;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.agent-languages{margin-bottom:var(--spacing-md)}.agent-languages__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.agent-languages__chips{display:flex;flex-wrap:wrap;gap:6px}.agent-languages .agent-language-chip{padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);font-size:.75rem;color:#ffffffd9;background:#ffffff0d}.profile-page{padding:var(--spacing-lg);padding-top:0;padding-bottom:var(--spacing-xl)}.profile-card{background:var(--color-bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid rgba(255,255,255,.1)}.profile-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.profile-avatar{width:72px;height:72px;min-width:72px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#1b0c2e,#2d1a47);border:2px solid var(--color-gold);display:flex;align-items:center;justify-content:center}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar i{font-size:36px;color:var(--color-gold)}.profile-info{flex:1;min-width:0}.profile-name{font-family:var(--font-family-heading);font-size:1.4rem;color:var(--color-light);margin:0 0 4px}.profile-zodiac{font-size:.85rem;color:var(--color-text-muted);display:flex;align-items:center;gap:4px}.profile-zodiac i{font-size:14px;color:var(--color-gold)}.gem-balance-row{display:flex;align-items:center;justify-content:space-between;padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.profile-section{background:var(--color-bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid rgba(255,255,255,.1)}.profile-section--auth{background:linear-gradient(135deg,#2b1940e6,#1a0c2ee6);border-color:#d4af3733}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.section-header h3{display:flex;align-items:center;gap:var(--spacing-sm);margin:0;font-size:1rem;color:var(--color-gold-light)}.section-header h3 i{font-size:20px;color:var(--color-gold)}.section-header .edit-btn{background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer}.section-header .edit-btn i{font-size:18px;color:var(--color-text-muted)}.section-header .edit-btn:hover{background:#ffffff1a}.auth-header{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.auth-header>i{font-size:28px;color:var(--color-gold)}.auth-header .auth-copy h3{margin:0 0 4px;font-size:1rem;color:var(--color-gold-light)}.auth-header .auth-copy p{margin:0;font-size:.85rem;color:var(--color-text-muted)}.oauth-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm)}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:12px 16px;border-radius:var(--border-radius-md);border:none;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.oauth-btn .oauth-logo{width:20px;height:20px}.oauth-btn--google{background:#fff;color:#333}.oauth-btn--google:hover{background:#f5f5f5}.oauth-btn--apple{background:#000;color:#fff}.oauth-btn--apple:hover{background:#222}.auth-bonus{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);margin-top:var(--spacing-md);padding:var(--spacing-sm);background:#d4af371a;border-radius:var(--border-radius-sm);font-size:.8rem;color:var(--color-gold)}.auth-bonus i{font-size:16px}.info-grid .info-item,.info-grid .info-row,.info-row .info-item,.info-row .info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.05)}.info-grid .info-item:last-child,.info-grid .info-row:last-child,.info-row .info-item:last-child,.info-row .info-row:last-child{border-bottom:none}.info-grid .info-item label,.info-grid .info-item .info-label,.info-grid .info-row label,.info-grid .info-row .info-label,.info-row .info-item label,.info-row .info-item .info-label,.info-row .info-row label,.info-row .info-row .info-label{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.info-grid .info-item span,.info-grid .info-item .info-value,.info-grid .info-row span,.info-grid .info-row .info-value,.info-row .info-item span,.info-row .info-item .info-value,.info-row .info-row span,.info-row .info-row .info-value{font-size:.9rem;color:var(--color-light)}.chat-container{height:100vh;display:flex;flex-direction:column;background:var(--color-bg-dark);padding:0!important}.chat-page{display:flex;flex-direction:column;height:100%}.chat-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#1a202ccc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,168,108,.15);padding-top:calc(var(--tg-safe-top) + var(--spacing-md));z-index:10}.chat-header .back-btn{padding:8px;border-radius:50%}.chat-header .back-btn:active{background:#c9a86c1a}.chat-agent-info{display:flex;align-items:center;gap:var(--spacing-sm)}.chat-agent-info .agent-avatar-small{position:relative;width:40px;height:40px}.chat-agent-info .agent-avatar-small img,.chat-agent-info .agent-avatar-small .emoji-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:1px solid var(--color-gold);display:flex;align-items:center;justify-content:center;background:var(--color-bg-card);font-size:1.5rem}.chat-agent-info .agent-avatar-small .status-indicator{position:absolute;bottom:0;right:0;width:10px;height:10px;border-radius:50%;border:2px solid var(--color-bg-dark);background:#4caf50}.chat-agent-info .agent-meta .chat-agent-name{font-weight:600;font-size:1rem;color:var(--color-light)}.chat-agent-info .agent-meta .chat-agent-status{font-size:.75rem;color:#4caf50}.chat-agent-info .agent-meta .chat-agent-status.typing{color:var(--color-gold);font-style:italic}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);background:radial-gradient(circle at center,rgba(201,168,108,.05) 0%,transparent 70%)}.chat-messages .loading-messages{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);gap:var(--spacing-md)}.message{display:flex;gap:var(--spacing-sm);max-width:85%;position:relative}.message--system{align-self:center;max-width:100%}.message--system span{display:inline-block;padding:4px 12px;background:#0000004d;border-radius:20px;font-size:.75rem;color:var(--color-text-muted);border:1px solid rgba(255,255,255,.05)}.message--agent{align-self:flex-start}.message--user{align-self:flex-end;flex-direction:row-reverse}.message--user .message-bubble{background:var(--color-primary);color:var(--color-bg-dark);border-radius:18px 18px 4px}.message--user .message-time{color:#00000080;text-align:right}.message .message-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-card);font-size:1.1rem;flex-shrink:0;margin-top:4px;border:1px solid rgba(201,168,108,.2)}.message .message-bubble{padding:10px 14px;border-radius:18px 18px 18px 4px;position:relative;box-shadow:0 4px 15px #0003}.message .message-bubble.glass-premium{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(201,168,108,.2);color:var(--color-light)}.message .message-text{font-size:.95rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message .message-time{font-size:.65rem;margin-top:4px;opacity:.7;display:block}.typing-bubble{padding:12px 16px!important}.typing-bubble .typing-dots{display:flex;gap:4px}.typing-bubble .typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--color-gold);animation:typing-dots 1.4s infinite ease-in-out;opacity:.6}.typing-bubble .typing-dots span:nth-child(2){animation-delay:.2s}.typing-bubble .typing-dots span:nth-child(3){animation-delay:.4s}.chat-input-area{padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--tg-safe-bottom) + var(--spacing-md));background:#1a202ce6;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid rgba(201,168,108,.2)}.chat-input-area .gem-indicator{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:var(--spacing-sm);font-size:.75rem;color:var(--color-text-muted)}.chat-input-area .gem-indicator .gem-icon{font-size:14px;color:var(--color-gold)}.input-row{display:flex;gap:var(--spacing-sm);align-items:center}.input-row input{flex:1;background:#0006;border:1px solid rgba(201,168,108,.3);border-radius:25px;padding:12px 20px;color:var(--color-light);font-size:1rem;transition:all .3s}.input-row input:focus{outline:none;background:#0009;border-color:var(--color-primary);box-shadow:0 0 10px #c9a86c1a}.input-row input::placeholder{color:#ffffff4d;font-style:italic}.input-row .send-btn{width:46px;height:46px;border-radius:50%;background:var(--color-primary);color:var(--color-bg-dark);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;box-shadow:0 4px 10px #c9a86c4d}.input-row .send-btn i{font-size:20px}.input-row .send-btn:disabled{background:#444;color:#777;box-shadow:none;cursor:not-allowed}.input-row .send-btn:not(:disabled):active{transform:scale(.9)}.astrology-container{min-height:100vh;background:#02040a;padding:0!important;color:var(--color-light)}.astrology-container .page-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);position:relative;z-index:10}.astrology-container .page-header .back-btn{position:relative;z-index:20}.astrology-container .page-header .page-title{flex:1}.astrology-hero{text-align:center;padding:var(--spacing-xl) var(--spacing-lg)}.astrology-hero .natal-chart-placeholder{width:120px;height:120px;margin:0 auto var(--spacing-lg);border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;box-shadow:0 0 40px #6a309366}.astrology-hero .natal-chart-placeholder i{color:var(--color-gold)}.onboarding-prompt{padding:0 var(--spacing-lg)}.onboarding-prompt .prompt-card{background:var(--color-bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);text-align:center;border:1px solid rgba(247,183,51,.2)}.onboarding-prompt .prompt-card>i{font-size:2.5rem;color:var(--color-gold);margin-bottom:var(--spacing-md)}.onboarding-prompt .prompt-card h3{font-size:1.1rem;font-family:var(--font-family-heading);color:var(--color-gold);margin-bottom:var(--spacing-sm)}.onboarding-prompt .prompt-card p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);line-height:1.5}.living-sky{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;background:radial-gradient(circle at 50% 100%,#1a1b3a,#02040a);pointer-events:none}.living-sky:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;background-image:radial-gradient(1px 1px at 10% 20%,#ffffff,transparent),radial-gradient(1px 1px at 30% 50%,#ffffff,transparent),radial-gradient(1px 1px at 50% 80%,#ffffff,transparent),radial-gradient(1px 1px at 80% 30%,#ffffff,transparent),radial-gradient(1px 1px at 90% 10%,#ffffff,transparent);background-size:50% 50%;opacity:.3;transform:rotate(0);animation:sky-rotate 240s linear infinite}.astrology-shell{position:relative;z-index:1;padding:var(--spacing-md);padding-top:calc(var(--tg-safe-top) + var(--spacing-lg));padding-bottom:calc(var(--tg-safe-bottom) + var(--spacing-lg));max-width:600px;margin:0 auto}.astrology-gate-card{background:#1a202cb3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(201,168,108,.2);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:0 20px 40px #0006;margin-top:var(--spacing-xl)}.astrology-gate-card .gate-header{text-align:center;margin-bottom:var(--spacing-xl)}.astrology-gate-card .gate-header .gate-title{font-size:1.5rem;color:var(--color-gold);margin-bottom:var(--spacing-xs)}.astrology-gate-card .gate-header .gate-subtext{font-size:.875rem;color:var(--color-text-muted);line-height:1.5}.chart-section{display:flex;justify-content:center;margin:var(--spacing-xl) 0}.natal-chart-viewport{width:100%;max-width:380px;aspect-ratio:1;position:relative}.natal-chart-container{width:100%;height:100%;position:relative;border-radius:50%;background:#ffffff05;border:1px solid rgba(255,255,255,.05)}.chart-center-info{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:#c9a86c1a;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:5}.chart-center-info .sun-sign-glyph{font-size:2rem;color:var(--color-gold);text-shadow:0 0 20px rgba(201,168,108,.5)}.chart-aspect-lines{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.chart-aspect-lines svg{width:100%;height:100%;overflow:visible}.chart-aspect-lines line{stroke-width:1;opacity:.5}.chart-aspect-lines line.aspect-Conjunction{stroke:#fff}.chart-aspect-lines line.aspect-Opposition{stroke:#f56565}.chart-aspect-lines line.aspect-Trine{stroke:#48bb78}.chart-aspect-lines line.aspect-Square{stroke:#f6ad55}.chart-aspect-lines line.aspect-Sextile{stroke:#4299e1}.chart-aspect-lines line.aspect-Quincunx{stroke:#9f7aea;stroke-dasharray:3 2}.zodiac-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;z-index:2;transition:transform 1.5s cubic-bezier(.165,.84,.44,1)}.zodiac-ring .zodiac-segment{position:absolute;top:0;left:50%;height:50%;transform-origin:bottom center;border-left:1px solid rgba(255,255,255,.05)}.zodiac-ring .zodiac-segment .zodiac-icon{position:absolute;top:10px;left:-10px;width:20px;text-align:center;font-size:.9rem;opacity:.6;color:var(--color-primary)}.planet-node{position:absolute;transform:translate(-50%,-50%);z-index:10;cursor:pointer;transition:all .5s cubic-bezier(.175,.885,.32,1.275)}.planet-node .planet-img-wrapper{width:32px;height:32px;background:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden}.planet-node .planet-img-wrapper .planet-fallback-icon{font-size:1.25rem;color:var(--color-gold)}.planet-node .planet-img-wrapper img{width:85%;height:85%;object-fit:contain;filter:drop-shadow(0 0 2px rgba(0,0,0,.5))}.planet-node.active{transform:translate(-50%,-50%) scale(1.4);z-index:20}.planet-node.active .planet-img-wrapper{box-shadow:0 0 15px #ffd70066;background:radial-gradient(circle,rgba(201,168,108,.2),transparent 70%)}.planet-node.active .planet-img-wrapper .planet-fallback-icon{color:var(--color-bg-dark)}.planet-details-panel{margin-top:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);background:#0000004d}.planet-details-panel .panel-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.planet-details-panel .panel-header .planet-icon-box{width:44px;height:44px;background:#c9a86c1a;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--color-gold)}.planet-details-panel .panel-header .planet-icon-box i{font-size:24px}.planet-details-panel .panel-header h3{font-size:1.1rem;color:var(--color-light)}.astrology-tabs{display:flex;background:#0000004d;border-radius:var(--border-radius-pill);padding:4px;margin-top:var(--spacing-xl);border:1px solid rgba(255,255,255,.05)}.astrology-tabs button{flex:1;background:none;border:none;padding:10px;border-radius:var(--border-radius-pill);color:var(--color-text-muted);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s}.astrology-tabs button.active{background:var(--color-primary);color:var(--color-bg-dark)}.natal-chart-grid{margin-top:var(--spacing-lg);background:#00000040;border-radius:var(--border-radius-lg);border:1px solid rgba(255,255,255,.05);overflow:hidden}.natal-grid-header{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#c9a86c1a;border-bottom:1px solid rgba(201,168,108,.2)}.natal-grid-header span{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gold);opacity:.8}.natal-grid-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-style:italic}.natal-grid-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.03);transition:background .2s ease;cursor:pointer}.natal-grid-row:last-child{border-bottom:none}.natal-grid-row:active{background:#c9a86c1a}.grid-cell{display:flex;align-items:center;gap:var(--spacing-xs);min-height:44px}.grid-cell .label{font-size:.85rem;color:var(--color-light);font-weight:500}.grid-cell .micro-label{font-size:.65rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.grid-cell.planet .planet-icon{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.grid-cell.planet .planet-fallback{width:28px;height:28px;border-radius:50%;background:#c9a86c26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.grid-cell.planet .planet-fallback i{font-size:16px;color:var(--color-gold)}.grid-cell.planet .planet-meta{display:flex;flex-direction:column;gap:1px}.grid-cell.planet .retro-label{color:var(--color-error)}.grid-cell.sign .sign-glyph{font-size:1.4rem;color:var(--color-primary);width:28px;text-align:center;flex-shrink:0}.grid-cell.sign .sign-meta{display:flex;flex-direction:column;gap:1px}.grid-cell.house{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px}.grid-cell.house .house-pill{font-size:.7rem;font-weight:700;color:var(--color-gold);background:#c9a86c26;padding:2px 8px;border-radius:var(--border-radius-pill);text-transform:uppercase;letter-spacing:.05em}.grid-cell.house .house-theme{font-size:.75rem;color:var(--color-text-secondary)}.grid-cell.house .house-keyword{font-size:.65rem;color:var(--color-text-muted);font-style:italic}.location-input-wrapper{position:relative;margin-bottom:var(--spacing-md)}.location-input-wrapper label{display:block;margin-bottom:var(--spacing-xs);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gold)}.location-input-wrapper .luxury-input,.location-input-wrapper input[type=text]{width:100%;background:#00000059;border:1px solid rgba(255,255,255,.12);border-radius:var(--border-radius-md);padding:.85rem 1rem;color:#fff;font-size:1rem;transition:border .25s ease,box-shadow .25s ease}.location-input-wrapper .luxury-input::placeholder,.location-input-wrapper input[type=text]::placeholder{color:#fff6}.location-input-wrapper .luxury-input:focus,.location-input-wrapper input[type=text]:focus{outline:none;border-color:#c9a86cb3;box-shadow:0 0 15px #c9a86c33}.location-suggestions{margin-top:.35rem;border:1px solid rgba(255,255,255,.08);border-radius:var(--border-radius-md);overflow:hidden;max-height:200px;overflow-y:auto;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.location-suggestions.is-loading{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);color:#fffc}.location-suggestions.is-loading .loading-dot{width:8px;height:8px;border-radius:50%;background:var(--color-gold);animation:pulse-gold 1.2s infinite}.location-suggestions .location-suggestion{width:100%;text-align:left;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.05);padding:var(--spacing-sm) var(--spacing-md);color:#fff;cursor:pointer;transition:background .2s ease}.location-suggestions .location-suggestion:last-child{border-bottom:none}.location-suggestions .location-suggestion:active{background:#c9a86c26}.location-suggestions .location-suggestion .primary{font-weight:600;display:block}.location-suggestions .location-suggestion .secondary{display:block;color:#fff9;font-size:.8rem;margin-top:2px}.location-picker-map{width:100%;height:220px;border-radius:var(--border-radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.1);margin-bottom:var(--spacing-md)}.location-picker-map .leaflet-container{background:#0d0d0d}.location-picker-map .leaflet-tile-pane{opacity:.9}.location-picker-map .leaflet-control-zoom{border:1px solid rgba(201,168,108,.3)!important;border-radius:var(--border-radius-md)!important;overflow:hidden}.location-picker-map .leaflet-control-zoom a{background:#14141ee6!important;color:var(--color-gold)!important;border-bottom:1px solid rgba(201,168,108,.2)!important}.location-picker-map .leaflet-control-zoom a:hover{background:#c9a86c26!important;color:#fff!important}.location-picker-map .leaflet-control-zoom a:last-child{border-bottom:none!important}.location-picker-map .leaflet-control-attribution{background:#0009!important;color:#fff6!important;font-size:.6rem!important}.location-picker-map .leaflet-control-attribution a{color:#c9a86c99!important}.selected-location{background:#c9a86c1a;border-radius:var(--border-radius-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(201,168,108,.25);margin-bottom:var(--spacing-md)}.selected-location .micro-label{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80}.selected-location strong{display:block;margin-top:4px;color:#fff;font-size:.9rem}.field-help{font-size:.8rem;color:#ffffff80;margin:var(--spacing-sm) 0;font-style:italic}@keyframes pulse-gold{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.tarot-container{height:100vh;background:linear-gradient(180deg,#0b0814f2,#161124eb);overflow-x:hidden;overflow-y:auto;position:relative}.tarot-container:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1px 1px at 30px 100px,rgba(255,255,255,.8) 50%,transparent 100%),radial-gradient(1px 1px at 70px 200px,rgba(255,255,255,.7) 50%,transparent 100%),radial-gradient(1px 1px at 100px 300px,rgba(255,255,255,.6) 50%,transparent 100%),radial-gradient(1px 1px at 200px 120px,rgba(247,183,51,.7) 50%,transparent 100%),radial-gradient(1px 1px at 300px 80px,rgba(247,183,51,.8) 50%,transparent 100%);opacity:.2;z-index:0;pointer-events:none;animation:floatParticle 20s ease-in-out infinite alternate}.tarot-page{padding:0 0 100px;min-height:100%;position:relative;z-index:1}.page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);position:relative}.page-header .back-btn{background:#0000004d;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#ffffffe6;cursor:pointer;transition:all .3s ease}.page-header .back-btn:hover{background:#6a309366;transform:scale(1.1)}.page-header .page-title{font-family:var(--font-family-heading);font-size:1.5rem;font-weight:600;background:linear-gradient(to right,var(--color-gold-light),var(--color-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.1em;flex:1;text-align:center}.page-header .title-divider{display:flex;align-items:center;justify-content:center}.page-header .title-divider span{display:inline-block;width:40px;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(247,183,51,.7) 50%,transparent 100%)}.cotd-section{padding:var(--spacing-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);position:relative}.cotd-section .section-title{text-align:center;font-family:var(--font-family-heading);font-size:1.25rem;font-weight:600;background:linear-gradient(to right,var(--color-gold-light),var(--color-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.15em}.card-display-box{width:130px;height:231px;perspective:1000px;cursor:pointer;transition:transform .3s ease}@media (max-width: 480px){.card-display-box{width:110px;height:196px}}.card-display-box:hover:not(.flipped){transform:translateY(-8px)}.card-display-box .tarot-card-inner{position:relative;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.card-display-box.flipped .tarot-card-inner{transform:rotateY(180deg)}.card-back,.card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:.75rem;box-shadow:0 4px 8px #0000004d;overflow:hidden}.card-back{background:linear-gradient(135deg,#1b0c2e,#2d1a47);position:relative}.card-back:before{content:"";position:absolute;top:4px;left:4px;right:4px;bottom:4px;border:2px solid rgba(255,215,128,.4);border-radius:.6rem;box-shadow:inset 0 0 10px #ffd78033;pointer-events:none}.card-back .card-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,rgba(255,215,128,.3) 10%,transparent 40%),linear-gradient(45deg,transparent 48%,rgba(255,215,128,.4) 50%,transparent 52%),linear-gradient(-45deg,transparent 48%,rgba(255,215,128,.4) 50%,transparent 52%);background-size:100% 100%,20px 20px,20px 20px;background-repeat:no-repeat,repeat,repeat;opacity:.6}.card-back i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.5rem;color:#ffd78080;text-shadow:0 0 10px rgba(255,215,128,.5);z-index:1}.card-front{transform:rotateY(180deg);background:#1a0c26}.card-front img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.card-front.reversed img{transform:rotate(180deg)}.cotd-info-area{min-height:100px;text-align:center;padding:0 var(--spacing-md)}.cotd-info-area .cotd-hint{color:var(--color-text-muted);font-size:.9rem;font-style:italic}.cotd-info-area .revealed-info{animation:fadeUpIn .5s ease-out}.cotd-info-area .revealed-info h3{color:var(--color-light);font-size:1.25rem;margin-bottom:8px;font-family:var(--font-family-heading)}.cotd-info-area .revealed-info .keywords{color:var(--color-gold);font-size:.85rem;letter-spacing:.5px;margin-bottom:20px}.spread-selection-grid{display:grid;padding:var(--spacing-lg);gap:var(--spacing-md);grid-template-columns:repeat(2,1fr)}.spread-selection-grid .spread-option-card{background:#2b194080;border:1px solid rgba(247,183,51,.25);border-radius:16px;padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 4px 15px #0000004d}.spread-selection-grid .spread-option-card h3{font-size:.95rem;color:var(--color-light);margin:var(--spacing-sm) 0;font-family:var(--font-family-heading)}.spread-selection-grid .spread-option-card p{font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.spread-selection-grid .spread-option-card .card-count-badge{background:#f7b73326;color:var(--color-gold);font-size:.7rem;padding:2px 10px;border-radius:12px;font-weight:600}.spread-selection-grid .spread-option-card:active{transform:scale(.96)}.spread-selection-grid .spread-option-card:hover{background:#6a309366;border-color:var(--color-gold);transform:translateY(-3px);box-shadow:0 8px 20px #0006,0 0 20px #6a30934d}.question-input-view{padding:var(--spacing-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh}.question-input-view .question-prompt{text-align:center;margin-bottom:var(--spacing-xl)}.question-input-view .question-prompt h2{color:var(--color-gold);margin-bottom:var(--spacing-sm);font-family:var(--font-family-heading)}.question-input-view .question-prompt p{color:var(--color-text-muted);font-size:.95rem}.question-input-view .question-form{width:100%;max-width:400px}.question-input-view .question-form .form-textarea{width:100%;min-height:100px;background:#ffffff0d;border:1px solid rgba(247,183,51,.3);color:var(--color-light);font-size:1rem;text-align:center;padding:var(--spacing-lg);border-radius:16px;margin-bottom:var(--spacing-lg);resize:none}.question-input-view .question-form .form-textarea:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 20px #f7b73326}.question-input-view .question-form .form-actions{display:flex;justify-content:center}.reading-view .spread-viewport{min-height:50vh;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(106,48,147,.1) 0%,transparent 70%);padding:var(--spacing-lg)}.spread-cards-flex{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-lg);min-height:200px}.position-slot{position:absolute;width:80px;height:142px;background:#ffffff05;border:1px dashed rgba(247,183,51,.25);border-radius:8px;transition:all .3s ease;cursor:pointer}.position-slot.static-slot{position:relative;width:100px;height:178px}@media (max-width: 480px){.position-slot.static-slot{width:85px;height:151px}}.position-slot:after{content:attr(data-label);position:absolute;bottom:-22px;left:50%;transform:translate(-50%);font-size:.65rem;color:#ffffff80;white-space:nowrap;pointer-events:none;text-transform:uppercase;letter-spacing:.05em}.position-slot:hover{border-color:var(--color-gold);box-shadow:0 0 15px #f7b73333}.interactive-card-flip{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.interactive-card-flip.revealed{transform:rotateY(180deg)}.interactive-card-flip .face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000004d}.interactive-card-flip .face.back{background:linear-gradient(135deg,#1b0c2e,#2d1a47);border:1px solid rgba(255,215,128,.4);display:flex;align-items:center;justify-content:center}.interactive-card-flip .face.back i{color:#ffd78080;font-size:1.5rem}.interactive-card-flip .face.front{transform:rotateY(180deg);background:#1a0c26}.interactive-card-flip .face.front img{width:100%;height:100%;object-fit:cover;border-radius:8px}.interactive-card-flip .face.front.reversed img{transform:rotate(180deg)}.interaction-zone{padding:var(--spacing-lg);text-align:center}.interaction-zone .deck-hint{color:var(--color-text-muted);font-size:.9rem;margin-bottom:var(--spacing-md)}.loading-state{display:flex;align-items:center;justify-content:center;min-height:100vh}.loading-state .loading-content{text-align:center}.loading-state .loading-content .loading-spinner{width:48px;height:48px;border:3px solid rgba(106,48,147,.3);border-top:3px solid var(--color-gold);border-radius:50%;margin:0 auto var(--spacing-md);animation:spin 1.2s cubic-bezier(.5,.1,.5,.9) infinite}.loading-state .loading-content p{color:#ffffffb3;font-style:italic}.library-view .spread-list{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.library-view .spread-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#2b194066;border:1px solid rgba(247,183,51,.15);border-radius:12px;cursor:pointer;transition:all .3s ease}.library-view .spread-item .spread-icon-badge{width:40px;height:40px;background:#f7b7331a;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:var(--font-family-heading);font-weight:700;color:var(--color-gold)}.library-view .spread-item .spread-body{flex:1}.library-view .spread-item .spread-body h3{font-size:1rem;color:var(--color-light);margin-bottom:2px}.library-view .spread-item .spread-body p{font-size:.8rem;color:var(--color-text-muted)}.library-view .spread-item .spread-body .spread-meta{margin-top:4px}.library-view .spread-item .spread-body .spread-meta .difficulty{font-size:.7rem;color:#ffffff80}.library-view .spread-item i{color:var(--color-text-muted)}.library-view .spread-item:hover{background:#6a30934d;border-color:var(--color-gold)}@keyframes floatParticle{0%,to{opacity:.1;transform:translateY(0)}50%{opacity:.3;transform:translateY(-10px)}}@keyframes fadeUpIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-selected{0%,to{opacity:.7;box-shadow:0 0 15px #f7b73380}50%{opacity:1;box-shadow:0 0 25px #f7b733cc}}.horoscope-page{padding-bottom:var(--spacing-xl)}.zodiac-scroll{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding:0 var(--spacing-lg) var(--spacing-md);-webkit-overflow-scrolling:touch;scrollbar-width:none}.zodiac-scroll::-webkit-scrollbar{display:none}.zodiac-item{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--spacing-sm);border-radius:var(--border-radius-md);border:1px solid transparent;cursor:pointer;transition:all .2s ease;min-width:70px}.zodiac-item:hover,.zodiac-item.active{border-color:var(--color-gold);background:#d4af371a}.zodiac-item .zodiac-icon{font-size:28px;color:var(--color-primary-light)}.zodiac-item .zodiac-name{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.horoscope-card{background:var(--color-bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);border:1px solid rgba(212,175,55,.2);text-align:center}.horoscope-card .sign-symbol{font-size:48px;color:var(--color-primary-light);margin-bottom:var(--spacing-sm)}.horoscope-card .sign-name{font-size:1.25rem;font-family:var(--font-family-heading);color:var(--color-gold);margin-bottom:4px}.horoscope-card .sign-dates{font-size:.85rem;color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.horoscope-card .daily-reading{font-size:.95rem;color:var(--color-text-secondary);line-height:1.6;font-style:italic;margin-bottom:var(--spacing-lg)}.transit-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-card);border-radius:var(--border-radius-md);border:1px solid rgba(255,255,255,.1)}.transit-card .transit-icon{font-size:28px;color:var(--color-gold)}.transit-card .transit-info{display:flex;flex-direction:column}.transit-card .transit-info .transit-label{font-size:.7rem;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em}.transit-card .transit-info .transit-desc{font-size:.95rem;color:var(--color-light);font-weight:500}.loading-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center}.loading-page .loading-text{font-family:var(--font-family-heading);color:var(--color-gold);font-size:1rem;letter-spacing:.1em}.error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:var(--spacing-xl)}.error-page .error-icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.8}.error-page h2{font-size:1.25rem;margin-bottom:var(--spacing-md)}.error-page p{color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.horoscope-page{padding-bottom:80px}.zodiac-grid-section{padding:1rem}.zodiac-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:2rem}.zodiac-card{border:1px solid rgba(255,215,0,.12);border-radius:12px;padding:.75rem .5rem;background:#0e0a19e6;color:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;text-align:center;min-height:100px;outline:none;position:relative;overflow:hidden}.zodiac-card.active{border-color:#ffd7008c;background:linear-gradient(130deg,#221638f2,#422a60d9);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.zodiac-card__icon{width:48px;height:48px;margin-bottom:.5rem}.zodiac-card__icon img{width:100%;height:100%;object-fit:contain}.zodiac-card__icon .zodiac-fallback{font-size:2rem}.zodiac-card__content{width:100%}.zodiac-card__name{font-size:.85rem;font-weight:600;margin-bottom:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zodiac-card__dates{font-size:.65rem;color:#fff9}.zodiac-detail-view{position:fixed;top:0;left:0;width:100%;height:100dvh;background:#0f0c1c;z-index:1000;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1.5rem;padding-bottom:80px;animation:slideUp .3s ease-out}.zodiac-detail-view__header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.zodiac-detail-view__header .close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#ffffffb3;padding:.5rem}.zodiac-detail-view__icon-large{width:80px;height:80px;flex-shrink:0}.zodiac-detail-view__icon-large img{width:100%;height:100%}.zodiac-detail-view__title-area h2{font-size:1.5rem;margin:0;color:gold}.zodiac-detail-view__title-area .date-range{color:#fff9;font-size:.85rem;margin:0}.zodiac-detail-view__title-area .archetype{color:#ffd700cc;font-size:.8rem;font-style:italic;margin:.25rem 0 0}.zodiac-detail-view .zodiac-meta-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.zodiac-detail-view .zodiac-meta-row .meta-chip{display:inline-flex;align-items:center;gap:4px;padding:.35rem .75rem;background:#ffffff14;border-radius:20px;font-size:.75rem;color:#ffffffd9}.zodiac-detail-view .zodiac-meta-row .meta-chip i{font-size:.9rem;color:gold}.zodiac-detail-view .section-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;margin:0 0 1rem}.zodiac-detail-view .generation-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.zodiac-detail-view .gen-btn{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:500;transition:all .2s}.zodiac-detail-view .gen-btn:active{transform:scale(.98);background:#ffffff1a}.zodiac-detail-view .gen-btn.premium{background:linear-gradient(45deg,#ffd7001a,#ffd7000d);border-color:#ffd7004d}.zodiac-detail-view .gen-btn.premium .gem-cost{color:gold}.zodiac-detail-view .gen-btn .btn-label{display:flex;flex-direction:column;align-items:flex-start}.zodiac-detail-view .gen-btn .btn-label span:first-child{font-size:.95rem}.zodiac-detail-view .gen-btn .btn-label small{font-size:.7rem;color:#ffffff80}.zodiac-detail-view .gen-btn .gem-cost{display:flex;align-items:center;gap:4px;font-weight:600;font-size:.9rem;color:#00bfff}.zodiac-detail-view .gen-btn .gem-cost i{font-size:1rem}.zodiac-detail-view .gen-btn .gem-cost i.gold{color:gold}.zodiac-detail-view .zodiac-rich-details .detail-block{margin-bottom:1.5rem}.zodiac-detail-view .zodiac-rich-details .detail-block h4{display:flex;align-items:center;gap:.5rem;font-size:.9rem;margin:0 0 .5rem;color:#ffffffe6}.zodiac-detail-view .zodiac-rich-details .detail-block h4 i{font-size:1rem;color:gold}.zodiac-detail-view .zodiac-rich-details .detail-block p{margin:0;font-size:.85rem;color:#ffffffb3;line-height:1.5}.zodiac-detail-view .zodiac-rich-details .trait-chips{display:flex;flex-wrap:wrap;gap:.4rem}.zodiac-detail-view .zodiac-rich-details .chip{display:inline-block;padding:.3rem .65rem;background:#ffffff14;border-radius:16px;font-size:.75rem;color:#fffc}.zodiac-detail-view .zodiac-rich-details .chip.positive{background:#22c55e26;color:#22c55e}.zodiac-detail-view .zodiac-rich-details .chip.negative{background:#ef444426;color:#ef4444}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}
