:root{--bg-deep: #18122e;--bg-card: rgba(42, 32, 68, .9);--bg-card-hover: rgba(55, 42, 88, .96);--accent-gold: #d4a853;--accent-purple: #9b6dff;--accent-pink: #e879a9;--text-primary: #f5f0ff;--text-muted: #a89ec4;--border: rgba(155, 109, 255, .25);--radius: 16px;--nav-height: 64px;--safe-bottom: env(safe-area-inset-bottom, 0px);--motion-standard: cubic-bezier(.4, 0, .2, 1);--motion-decelerate: cubic-bezier(0, 0, .2, 1);--motion-accelerate: cubic-bezier(.4, 0, 1, 1);--motion-duration-short: .2s;--motion-duration-medium: .3s;--motion-duration-long: .4s;--fly-offset: 112px;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background:var(--bg-deep);color:var(--text-primary)}body{background:radial-gradient(ellipse at 20% 0%,rgba(155,109,255,.18) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(212,168,83,.1) 0%,transparent 40%),var(--bg-deep)}.app-shell{min-height:100%;padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 8px)}.page{padding:16px;max-width:480px;margin:0 auto}.page-header{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px;min-height:40px}.page-header h1{font-size:1.25rem;font-weight:700;text-align:center;font-family:Cormorant Garamond,Georgia,serif;letter-spacing:.04em}.back-btn{position:absolute;left:0;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);width:40px;height:40px;border-radius:12px;font-size:1.1rem;cursor:pointer;transition:transform .15s ease,background .2s}.back-btn:active{transform:scale(.94)}.hero-greeting{margin-bottom:20px}.hero-greeting h2{font-size:1.35rem;margin-bottom:4px}.hero-greeting p{color:var(--text-muted);font-size:.9rem}.pro-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#d4a853,#b8862d);color:#1a1208;font-size:.7rem;font-weight:700;padding:5px 12px;border-radius:20px}.pro-badge__label{display:inline-flex;align-items:center;gap:5px}.pro-badge__label:before{content:"";width:7px;height:7px;background:#1a1208;transform:rotate(45deg);border-radius:1px;opacity:.85}.pro-badge__until{font-size:.65rem;font-weight:600;padding-left:7px;border-left:1px solid rgba(26,18,8,.28);white-space:nowrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-1{display:flex;flex-direction:column;gap:10px}.menu-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:8px;transition:background .2s,transform .15s;cursor:pointer;text-align:left;width:100%}.menu-card:active{transform:scale(.98);background:var(--bg-card-hover)}.menu-card .icon{font-size:1.75rem}.menu-card .title{font-weight:600;font-size:.95rem}.menu-card .sub{font-size:.75rem;color:var(--text-muted)}.menu-card.locked{opacity:.65}.menu-card.locked:after{content:"🔒 PRO";font-size:.65rem;color:var(--accent-gold);font-weight:700}.chip{display:inline-block;background:#9b6dff33;border:1px solid var(--border);padding:6px 12px;border-radius:20px;font-size:.8rem;margin-bottom:16px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:#161028eb;border-top:1px solid var(--border);display:flex;justify-content:space-around;align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:var(--text-muted);font-size:.65rem;padding:8px 0}.nav-item.active{color:var(--accent-gold)}.nav-item .nav-svg{flex-shrink:0}.btn-primary{width:100%;padding:14px;border:none;border-radius:var(--radius);background:linear-gradient(135deg,var(--accent-purple),#6b3fd4);color:#fff;font-weight:600;font-size:1rem;cursor:pointer;margin-top:16px}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.input-field,.textarea-field{width:100%;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:#00000059;color:var(--text-primary);font-family:inherit;font-size:1rem;margin-bottom:0;transition:border-color .2s,box-shadow .2s}.input-field:focus,.textarea-field:focus{outline:none;border-color:#9b6dff80;box-shadow:0 0 0 3px #9b6dff1f}.textarea-field{min-height:120px;resize:vertical}.result-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;line-height:1.55;font-size:.95rem}.result-box b{color:var(--accent-gold)}.loading{text-align:center;padding:40px;color:var(--text-muted)}.error-box{background:#c83c3c26;border:1px solid rgba(255,100,100,.3);padding:12px;border-radius:12px;margin-bottom:12px;font-size:.9rem}.tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto}.tab{padding:8px 14px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:.8rem;white-space:nowrap;cursor:pointer}.tab.active{background:var(--accent-purple);color:#fff;border-color:transparent}.cards-row{display:flex;gap:8px;overflow-x:auto;margin:16px 0;padding-bottom:8px}.mini-card{min-width:90px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:12px 8px;text-align:center;font-size:.75rem}@keyframes cardFlip{0%{transform:rotateY(180deg) scale(.8);opacity:0}to{transform:rotateY(0) scale(1);opacity:1}}@keyframes runeGlow{0%{transform:scale(.5);opacity:0;filter:blur(8px)}60%{filter:blur(0)}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.mini-card.animate{animation:cardFlip var(--motion-duration-medium) var(--motion-decelerate) backwards}.mini-card.animate-rune{animation:runeGlow var(--motion-duration-long) var(--motion-decelerate) backwards}.mini-card:nth-child(1){animation-delay:.03s}.mini-card:nth-child(2){animation-delay:.06s}.mini-card:nth-child(3){animation-delay:.09s}.mini-card:nth-child(4){animation-delay:.12s}.mini-card:nth-child(5){animation-delay:.15s}.mini-card:nth-child(6){animation-delay:.18s}.btn-primary.loading{background:linear-gradient(90deg,#6b3fd4,#9b6dff,#6b3fd4);background-size:200% auto;animation:shimmer 1.5s linear infinite}.reveal-stage{perspective:800px;margin:16px 0}.pro-desc{color:var(--text-muted);font-size:.9rem;margin-bottom:16px;line-height:1.5}.pro-plan-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:background .2s,border-color .2s}.pro-plan-card:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--accent-gold)}.pro-plan-card:disabled{opacity:.6;cursor:not-allowed}.pro-plan-title{font-weight:700;font-size:1.05rem}.pro-plan-price{color:var(--accent-gold);font-size:1.25rem;font-weight:800}.pro-plan-sub{color:var(--text-muted);font-size:.8rem}.pro-payment-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:10px 12px;background:var(--bg-card);border-radius:12px;font-size:.85rem}.pro-payment-type{grid-column:1 / -1;color:var(--text-muted);font-size:.75rem}.btn-secondary{display:block;width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-primary);font-size:1rem;cursor:pointer}.profile-links{display:flex;flex-direction:column;gap:8px;margin-top:20px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border)}.toggle-btn{flex-shrink:0;min-width:52px;padding:8px 12px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-muted);font-size:.8rem;cursor:pointer}.toggle-btn.on{background:var(--accent-gold);color:#1a1025;border-color:var(--accent-gold)}.paywall-box .btn-secondary{margin-top:8px}textarea.input-field{resize:vertical;min-height:80px;font-family:inherit}.home-page{padding-bottom:8px}.home-hero{position:relative;padding:28px 22px 24px;border-radius:22px;overflow:hidden;margin-bottom:4px;border:1px solid rgba(212,168,83,.22);background:linear-gradient(145deg,#37235ff2,#120c26fa 55%,#0c081c)}.home-hero__stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.home-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#ffffffb3;top:calc((var(--i) * 17 + 7) % 90 + 5%);left:calc((var(--i) * 23 + 11) % 92 + 4%);animation:twinkle 3s ease-in-out infinite;animation-delay:calc(var(--i) * .25s);opacity:.35}@keyframes twinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.9;transform:scale(1.4)}}.home-hero__content{position:relative;z-index:1}.home-hero__eyebrow{font-family:Cormorant Garamond,Georgia,serif;font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-gold);opacity:.85;margin-bottom:6px}.home-hero__title{font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;font-weight:700;line-height:1.15;margin-bottom:6px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.home-hero__tagline{color:var(--text-muted);font-size:.88rem}.portal-section{margin-top:8px}.portal-section__label{font-family:Cormorant Garamond,Georgia,serif;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-gold);opacity:.75;margin:18px 4px 10px}.portal-mosaic{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.portal-mosaic--list{grid-template-columns:1fr}.portal-card{position:relative;border:none;border-radius:18px;padding:0;cursor:pointer;text-align:left;color:inherit;overflow:hidden;min-height:96px;transition:transform .18s ease,box-shadow .2s ease}.portal-card:active:not(:disabled){transform:scale(.97)}.portal-card--wide{grid-column:span 2;min-height:88px}.portal-card--hero{grid-column:span 2;min-height:110px}.portal-card__glow{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.55;transition:opacity .2s}.portal-card__inner{position:relative;z-index:1;display:flex;align-items:center;gap:14px;padding:16px 16px 16px 14px;height:100%;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#0c0818b8;box-shadow:0 4px 18px #00000047}.portal-card__icon-wrap{flex-shrink:0;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.portal-card:not(.portal-card--tarot):not(.portal-card--runes) .portal-card__icon-wrap{animation:heroPulse 3.5s ease-in-out infinite}.portal-card:nth-child(2n):not(.portal-card--tarot):not(.portal-card--runes) .portal-card__icon-wrap{animation-delay:.4s}.portal-card:nth-child(3n):not(.portal-card--tarot):not(.portal-card--runes) .portal-card__icon-wrap{animation-delay:.8s}.portal-card__icon{width:26px;height:26px;color:var(--accent-gold);filter:drop-shadow(0 0 4px rgba(212,168,83,.2));transition:transform var(--motion-duration-medium) var(--motion-standard),filter .3s ease}.portal-card:not(.portal-card--tarot):not(.portal-card--runes):active .portal-card__icon{transform:scale(1.06);filter:drop-shadow(0 0 8px rgba(212,168,83,.35))}.portal-card__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.portal-card__title{font-weight:700;font-size:.98rem;line-height:1.2}.portal-card__sub{font-size:.72rem;color:var(--text-muted);line-height:1.35}.portal-card__tag{flex-shrink:0;font-size:.62rem;font-weight:700;letter-spacing:.06em;padding:4px 8px;border-radius:999px;background:#d4a85326;color:var(--accent-gold);border:1px solid rgba(212,168,83,.25)}.portal-card--sunrise .portal-card__glow{background:radial-gradient(circle at 20% 30%,rgba(255,180,80,.35),transparent 55%),linear-gradient(135deg,#503278e6,#1e1432f2)}.portal-card--crystal .portal-card__glow{background:radial-gradient(circle at 80% 20%,rgba(155,109,255,.45),transparent 50%),linear-gradient(135deg,#2d1e50f2,#140e28fa)}.portal-card--cosmos .portal-card__glow{background:radial-gradient(circle at 70% 70%,rgba(100,140,255,.3),transparent 45%),linear-gradient(135deg,#19143cf2,#0a081e)}.portal-card--tarot .portal-card__glow{background:radial-gradient(circle at 15% 80%,rgba(220,80,80,.25),transparent 45%),linear-gradient(135deg,#3c1946f2,#190c23)}.portal-card--runes .portal-card__glow{background:radial-gradient(circle at 85% 25%,rgba(180,160,120,.3),transparent 50%),linear-gradient(135deg,#231e2df2,#0f0c16)}.portal-card--karma .portal-card__glow{background:radial-gradient(circle at 50% 0%,rgba(120,200,255,.25),transparent 55%),linear-gradient(135deg,#1e2d46f2,#0c1223)}.portal-card--hearts .portal-card__glow{background:radial-gradient(circle at 30% 60%,rgba(232,121,169,.35),transparent 50%),linear-gradient(135deg,#371937f2,#160a1c)}.portal-card--moon .portal-card__glow{background:radial-gradient(circle at 75% 30%,rgba(200,210,255,.25),transparent 45%),linear-gradient(135deg,#1e1c41f2,#0c0c1e)}.portal-card--oracle .portal-card__glow{background:radial-gradient(circle at 50% 50%,rgba(155,109,255,.35),transparent 55%),linear-gradient(135deg,#281946f2,#0f0a23)}.portal-card--wish .portal-card__glow{background:radial-gradient(circle at 60% 40%,rgba(212,168,83,.3),transparent 50%),linear-gradient(135deg,#32234bf2,#120c23)}.portal-card--pro .portal-card__glow{background:radial-gradient(circle at 30% 40%,rgba(212,168,83,.45),transparent 50%),linear-gradient(135deg,#463214e6,#1e140afa)}.portal-card--pro .portal-card__icon{color:#f0d78c}.portal-card.locked{opacity:.62}.portal-card.locked:after{content:"PRO";position:absolute;top:10px;right:10px;z-index:2;font-size:.6rem;font-weight:800;letter-spacing:.08em;padding:3px 7px;border-radius:6px;background:#d4a85333;color:var(--accent-gold);border:1px solid rgba(212,168,83,.35)}.chip--date{margin-bottom:14px}.history-empty{text-align:center;margin-top:8px}.section-page .portal-card--wide .portal-card__inner{padding:18px 18px 18px 16px}.nav-svg{color:var(--text-muted);transition:color .2s}.nav-item.active .nav-svg{color:var(--accent-gold)}.nav-item span:last-child{font-size:.62rem}.result-box .result-formatted{display:flex;flex-direction:column;gap:18px}.result-section{padding-bottom:4px}.result-section:not(:last-child){border-bottom:1px solid rgba(155,109,255,.12);padding-bottom:16px}.result-section--lead{border-bottom:none}.result-section-head{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-gold);margin-bottom:10px;line-height:1.45}.result-section-head b{color:inherit;font-weight:inherit}.result-p{margin:0 0 10px;font-size:.9rem;line-height:1.65;color:#f5f0ffeb}.result-p:last-child{margin-bottom:0}.result-bullet{display:inline-block;font-size:.65rem;margin-right:2px;vertical-align:.05em}.result-bullet--gold{color:var(--accent-gold)}.result-bullet--warn{color:#e87979}.result-formatted b{color:var(--accent-gold);font-weight:600}.route-layer{animation:routeIn var(--motion-duration-medium) var(--motion-decelerate) both}@keyframes routeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cardReveal{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.portal-card__content{display:flex;align-items:center;gap:14px;width:100%;height:100%;animation:cardReveal var(--motion-duration-medium) var(--motion-decelerate) both}.page-stagger .portal-card__content{animation-duration:var(--motion-duration-medium)}.portal-section__label,.home-hero__eyebrow{text-align:center}.home-hero__title{justify-content:center}.home-hero__tagline{text-align:center}.portal-mosaic--dense{grid-template-columns:repeat(2,1fr)}.portal-mosaic--dense .portal-card:last-child:nth-child(odd){grid-column:1 / -1}.portal-mosaic--dense .portal-card:last-child:nth-child(odd) .portal-card__inner{flex-direction:row;text-align:left;padding:16px 18px}.portal-mosaic--dense .portal-card:last-child:nth-child(odd) .portal-card__text{align-items:flex-start}.portal-mosaic--dense .portal-card{min-height:108px}.portal-mosaic--dense .portal-card__inner{flex-direction:column;align-items:center;text-align:center;padding:14px 10px;gap:10px}.portal-mosaic--dense .portal-card__content{flex-direction:column;align-items:center;text-align:center;gap:10px}.portal-mosaic--dense .portal-card:last-child:nth-child(odd) .portal-card__content{flex-direction:row;text-align:left;align-items:center}.portal-mosaic--dense .portal-card__text{align-items:center}.chip--center{display:block;width:fit-content;margin-left:auto;margin-right:auto}.form-field{margin-bottom:18px}.form-label{display:block;text-align:center;font-family:Cormorant Garamond,Georgia,serif;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-gold);margin-bottom:10px;opacity:.9}.form-hint{text-align:center;font-size:.78rem;color:var(--text-muted);margin-top:8px;line-height:1.45}.section-intro{text-align:center;color:var(--text-muted);font-size:.88rem;line-height:1.55;margin-bottom:16px}.center-heading{text-align:center;font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-gold);margin-bottom:10px;font-weight:600}.center-heading--spaced{margin-top:28px;margin-bottom:14px}.glass-panel{background:#2a204494;border:1px solid rgba(155,109,255,.2);border-radius:18px;padding:18px 16px;margin-bottom:16px;box-shadow:0 4px 18px #00000038}.glass-panel-inner{background:#140e2699;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:12px 14px}.msg-success{text-align:center;color:var(--accent-gold);margin-bottom:12px;font-size:.9rem}.msg-muted{text-align:center;color:var(--text-muted);margin-top:12px;font-size:.88rem}.pulse-glow{animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{opacity:.55}50%{opacity:1}}.portal-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.portal-tab{padding:9px 16px;border-radius:999px;border:1px solid rgba(155,109,255,.25);background:#140e2699;color:var(--text-muted);font-size:.78rem;font-weight:600;cursor:pointer;box-shadow:none;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .18s ease}.portal-tab.active{background:linear-gradient(135deg,#9b6dffd9,#6b3fd4e6);color:#fff;border-color:transparent;box-shadow:0 4px 16px #6b3fd459}.portal-tab:active{transform:scale(.96)}.wish-hero{text-align:center;margin-bottom:16px}.wish-hero__icon{width:56px;height:56px;margin:0 auto 12px;border-radius:16px;display:grid;place-items:center;background:#d4a8531f;border:1px solid rgba(212,168,83,.25)}.wish-highlight{text-align:center;font-weight:700;font-size:1.05rem;margin-bottom:8px}.wish-quote{text-align:center;font-style:italic;color:var(--text-muted);line-height:1.5}.wish-my{margin-top:8px}.profile-hero{text-align:center}.profile-hero__name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:700;margin-bottom:6px}.profile-hero__status{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:.85rem}.profile-id{text-align:center;margin-top:24px;font-size:.75rem;color:var(--text-muted);opacity:.7}.referral-panel{margin-top:16px}.referral-stats,.referral-link{text-align:center;font-size:.85rem;margin-bottom:8px}.referral-link{word-break:break-all;color:var(--text-muted);font-size:.78rem}.pro-hero{text-align:center;margin-bottom:16px}.pro-hero__icon{width:40px;height:40px;color:var(--accent-gold);margin:0 auto 10px}.pro-hero__status{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 20px;font-size:.85rem;color:var(--text-muted)}.pro-plan-portal{position:relative;width:100%;border:none;border-radius:18px;padding:0;cursor:pointer;color:inherit;overflow:hidden;min-height:88px;animation:cardReveal var(--motion-duration-medium) var(--motion-decelerate) backwards;transition:transform .15s ease}.pro-plan-portal:active:not(:disabled){transform:scale(.97)}.pro-plan-portal:disabled{opacity:.55;cursor:not-allowed}.pro-plan-portal__glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 40%,rgba(212,168,83,.35),transparent 50%),linear-gradient(135deg,#37235af2,#120c23)}.pro-plan-portal__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:18px 16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#0c081873}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#23193c8c;border-radius:16px;border:1px solid rgba(155,109,255,.15);animation:cardReveal .4s ease-out backwards}.settings-row__text b{display:block;margin-bottom:4px}.settings-row__text p{font-size:.78rem;color:var(--text-muted);line-height:1.35}.result-section-head,.result-section--lead .result-p{text-align:center}.btn-primary{transition:transform .15s ease,box-shadow .2s ease,opacity .2s}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{margin-top:10px;transition:transform .15s ease,border-color .2s}.btn-secondary:active{transform:scale(.98)}.paywall-box .btn-primary{margin-top:0}.textarea-field{min-height:110px}.fade-in-up{animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.home-topbar{display:flex;align-items:center;gap:14px;padding:16px;margin-bottom:12px;border-radius:18px;background:#23193c8c;border:1px solid rgba(155,109,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home-topbar__avatar{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-family:Cormorant Garamond,Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--accent-gold);background:linear-gradient(145deg,#9b6dff59,#d4a85333);border:1px solid rgba(212,168,83,.3);flex-shrink:0}.home-topbar__greet{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}.home-topbar__name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-topbar__meta{font-size:.75rem;color:var(--text-muted);margin-top:4px}.calc-intro .desc-formatted,.calc-intro .desc-p{text-align:center;font-size:.88rem;line-height:1.6;color:var(--text-muted)}.calc-intro .desc-p b{color:var(--accent-gold)}.profile-summary{text-align:center}.profile-summary__name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:700}.profile-summary__full{font-size:.85rem;color:var(--text-muted);margin-top:4px}.profile-summary__status{margin-top:8px}.profile-info-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(155,109,255,.1)}.profile-info-row:last-child{border-bottom:none}.profile-info-row__label{color:var(--text-muted);font-size:.85rem}.profile-info-row__value{font-weight:600;text-align:right;font-size:.9rem}.profile-readonly-zodiac{text-align:center}.profile-zodiac-value{font-family:Cormorant Garamond,Georgia,serif;font-size:1.4rem;color:var(--accent-gold);font-weight:600}.profile-links-section{margin-top:20px}.settings-time-block{margin-top:0;padding-top:0}.spread-run-page .spread-hero{display:flex;justify-content:center;padding:8px 0 20px}.spread-deck{position:relative;width:120px;height:168px;margin:0 auto}.spread-deck--runes{width:160px;height:140px}.spread-deck--compact{width:96px;height:134px}.spread-deck--compact.spread-deck--runes{width:128px;height:112px}.spread-deck__aura{position:absolute;top:-12px;right:-8px;bottom:-16px;left:-8px;border-radius:50%;pointer-events:none;z-index:0}.spread-deck__aura--tarot{background:radial-gradient(circle,rgba(107,63,212,.22),transparent 68%)}.spread-deck__aura--runes{background:radial-gradient(circle,rgba(212,168,83,.16),transparent 70%)}.spread-deck--shuffling .tarot-back-svg--layer1{animation:deckShuffle 1.2s var(--motion-standard) infinite}.spread-deck--shuffling .tarot-back-svg--layer2{animation:deckShuffle 1.2s var(--motion-standard) .1s infinite}.spread-deck--shaking .rune-pouch-svg{animation:pouchShake .9s var(--motion-standard) infinite}.tarot-back-svg{position:absolute;width:88px;height:128px;left:50%;top:50%;margin-left:-44px;margin-top:-64px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.45));z-index:1}.tarot-back-svg--layer2{transform:translate(5px,-6px) rotate(2deg);opacity:.88;z-index:0}.tarot-back-svg--layer3{transform:translate(10px,-12px) rotate(4deg);opacity:.68;z-index:0}.rune-pouch-svg{position:relative;z-index:1;width:100%;height:100%;filter:drop-shadow(0 8px 16px rgba(0,0,0,.4))}.spread-draw-animation{text-align:center;padding:12px 0 24px}.spread-draw-animation__hint{margin-top:14px;color:var(--text-muted);font-size:.85rem}.spread-result-reveal{margin-top:16px;animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) forwards}.tarot-back{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;border:2px solid rgba(212,168,83,.55);background:linear-gradient(145deg,#2a1848,#1a0f30,#3d2460);box-shadow:0 10px 28px #00000073;overflow:hidden}.tarot-back__inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.tarot-back__star{color:var(--accent-gold);font-size:1.6rem;opacity:.85;z-index:1}.tarot-back__ring{position:absolute;width:72%;height:72%;border:1px solid rgba(212,168,83,.35);border-radius:50%}.tarot-back--layer2{transform:translate(4px,-4px) rotate(2deg);opacity:.85}.tarot-back--layer3{transform:translate(8px,-8px) rotate(4deg);opacity:.65}.rune-pouch{position:relative;width:110px;height:130px;margin:0 auto}.rune-pouch__body{width:100%;height:88%;border-radius:40% 40% 45% 45%;background:linear-gradient(160deg,#5c4030,#2a1810);border:2px solid rgba(212,168,83,.45);display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:inset 0 2px 8px #ffffff0f}.rune-pouch__cord{width:54%;height:14px;margin:0 auto 4px;border-radius:8px;background:linear-gradient(90deg,#8b6914,#d4a853,#8b6914)}.rune-pouch__rune{color:var(--accent-gold);font-size:1.1rem;opacity:.7}.rune-pouch__shadow{width:70%;height:10px;margin:6px auto 0;border-radius:50%;background:#00000059}@keyframes deckShuffle{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-6px,2px) rotate(-3deg)}75%{transform:translate(6px,-2px) rotate(3deg)}}@keyframes pouchShake{0%,to{transform:rotate(0)}25%{transform:rotate(-4deg) translateY(2px)}75%{transform:rotate(4deg) translateY(-2px)}}@keyframes cardDeal{0%{opacity:0;transform:translateY(-16px) scale(.94) rotate(-2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.spread-visual-panel{padding:16px 12px}.spread-grid{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.spread-grid--multi{display:grid;grid-template-columns:repeat(6,1fr);gap:12px 10px}.spread-grid--multi>.spread-grid__cell{grid-column:span 2}.spread-grid--multi>.spread-grid__cell--remainder-1{grid-column:3 / span 2}.spread-grid--multi>.spread-grid__cell--remainder-2:nth-last-child(2){grid-column:2 / span 2}.spread-grid--multi>.spread-grid__cell--remainder-2:last-child{grid-column:4 / span 2}.spread-grid--dense{gap:10px 8px}.tarot-visual{display:flex;flex-direction:column;align-items:center;gap:6px}.tarot-visual__label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-gold);text-align:center}.tarot-visual__card{width:88px;height:132px;border-radius:10px;border:2px solid rgba(212,168,83,.45);box-shadow:0 8px 24px #00000059;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px;text-align:center;transition:transform .3s ease;overflow:hidden;background:linear-gradient(145deg,#d4a85326,#28184080)}.tarot-visual--deal{animation:cardDeal var(--motion-duration-medium) var(--motion-decelerate) forwards}.tarot-visual__img--reversed{transform:rotate(180deg)}.tarot-visual__fallback-wrap{width:100%;height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.tarot-visual__fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:6px}.tarot-visual__fallback-num{font-size:.7rem;opacity:.7}.tarot-visual__fallback-name{font-size:.62rem;font-weight:700;line-height:1.2;margin-top:4px}.tarot-visual__caption{font-size:.72rem;color:var(--text-primary);text-align:center;max-width:110px;line-height:1.25;font-weight:500}.tarot-visual__pos-line{font-size:.58rem;color:var(--text-muted)}.tarot-visual--reversed .tarot-visual__card{transform:none}.tarot-visual--compact .tarot-visual__card{width:72px;height:108px}.tarot-visual__num{font-size:.7rem;opacity:.7;color:#fffc}.tarot-visual__name{font-size:.68rem;font-weight:700;line-height:1.2;color:#fff;margin-top:6px}.tarot-visual__pos{font-size:.55rem;opacity:.75;margin-top:4px;color:#ffffffd9}.tarot-visual__card--classic{padding:4px;background:linear-gradient(145deg,#d4a85340,#5a3c7859);overflow:hidden;position:relative}.tarot-visual__img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block}.tarot-visual__card--classic .tarot-visual__pos{position:absolute;bottom:6px;left:0;right:0;text-align:center;background:#0000008c;padding:2px 4px;margin:0}.tarot-visual__caption{font-size:.65rem;color:var(--text-muted);text-align:center;max-width:96px;line-height:1.2}.rune-visual{display:flex;flex-direction:column;align-items:center;gap:6px}.rune-visual__label{font-size:.65rem;color:var(--accent-gold);text-transform:uppercase;letter-spacing:.08em}.rune-visual--deal{animation:cardDeal var(--motion-duration-medium) var(--motion-decelerate) forwards}.rune-visual__caption{font-size:.72rem;color:var(--text-primary);text-align:center;max-width:110px;line-height:1.25;font-weight:500}.rune-visual__symbol--reversed{transform:rotate(180deg);display:inline-block}.rune-visual__stone{width:72px;height:88px;border-radius:12px;background:linear-gradient(145deg,#4a4035,#2a2218);border:1px solid rgba(212,168,83,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 6px 20px #0006}.rune-visual__stone--classic{width:80px;height:96px;padding:6px;background:linear-gradient(160deg,#3d3428,#1a1510);border:2px solid rgba(212,168,83,.5);box-shadow:inset 0 1px #ffffff14,0 8px 24px #00000073}.rune-visual__frame{flex:1;width:100%;display:flex;align-items:center;justify-content:center;border-radius:8px;background:radial-gradient(ellipse at 50% 30%,rgba(212,168,83,.12),transparent 70%),linear-gradient(180deg,#2a2318,#1e1810);border:1px solid rgba(212,168,83,.2)}.rune-visual__pos{font-size:.5rem;opacity:.75;margin-top:4px;color:#ffffffb3}.rune-visual--reversed .rune-visual__symbol{transform:rotate(180deg)}.rune-visual__symbol{font-size:1.8rem;color:var(--accent-gold);line-height:1}.rune-visual__name{font-size:.6rem;margin-top:6px;color:var(--text-muted);text-align:center}.rune-visual--compact .rune-visual__stone{width:60px;height:72px}.oracle-page .oracle-flow{text-align:center}.oracle-gateway{position:relative;width:140px;height:140px;margin:0 auto 20px}.oracle-gateway--small{width:90px;height:90px;margin-bottom:16px}.oracle-gateway__ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(212,168,83,.4);animation:oracleSpin 12s linear infinite}.oracle-gateway__core{position:absolute;top:22%;right:22%;bottom:22%;left:22%;border-radius:50%;background:radial-gradient(circle,#9b6dff80,#140a28e6);display:grid;place-items:center;border:1px solid rgba(212,168,83,.35)}.oracle-gateway__num{font-family:Cormorant Garamond,Georgia,serif;font-size:1.2rem;color:var(--accent-gold);font-weight:700}.oracle-gateway__glow{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;border-radius:50%;background:radial-gradient(circle,rgba(155,109,255,.25),transparent 65%);animation:pulseGlow 3s ease-in-out infinite}@keyframes oracleSpin{to{transform:rotate(360deg)}}.oracle-numbers{display:flex;justify-content:center;gap:16px;margin:20px 0;opacity:0;transition:opacity .4s}.oracle-numbers--visible{opacity:1}.oracle-numbers__orb{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d4a85380,#6b3fd4cc);border:2px solid rgba(212,168,83,.5);display:grid;place-items:center;font-family:Cormorant Garamond,Georgia,serif;font-size:1.5rem;font-weight:700;color:#fff;box-shadow:0 4px 16px #6b3fd466}.result-box--animated{animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) .06s backwards}.result-section.fade-in-up:nth-child(2){animation-delay:.04s}.result-section.fade-in-up:nth-child(3){animation-delay:.08s}.result-section.fade-in-up:nth-child(4){animation-delay:.12s}.section-hero{position:relative;display:flex;justify-content:center;align-items:center;min-height:132px;margin:4px 0 20px;padding:12px 0;overflow:visible;animation:heroIn var(--motion-duration-long) var(--motion-decelerate) both;contain:layout style}@keyframes heroIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.section-hero__glow{position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(107,63,212,.28),transparent 70%);pointer-events:none}.section-hero--runes .section-hero__glow{background:radial-gradient(circle,rgba(212,168,83,.18),transparent 70%)}.section-hero--oracle .section-hero__glow{background:radial-gradient(circle,rgba(155,109,255,.3),transparent 68%)}.section-hero__svg{width:160px;height:120px;position:relative;z-index:1}.section-hero__svg--oracle{height:140px}.hero-orb{width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d4a85373,#6b3fd4bf);border:2px solid rgba(212,168,83,.5);display:grid;place-items:center;font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:700;color:#fff;z-index:1}.hero-orb--sm{width:44px;height:44px;font-size:1.1rem;position:absolute;right:calc(50% - 72px);top:20px;opacity:.85}.hero-gateway{width:100px;height:100px;border-radius:50%;border:2px solid rgba(212,168,83,.45);display:grid;place-items:center;background:radial-gradient(circle,#6b3fd459,#1a1233e6);z-index:1;font-family:Cormorant Garamond,Georgia,serif;font-size:1.8rem;color:var(--accent-gold)}.hero-rune-stone{width:72px;height:88px;border-radius:12px;background:linear-gradient(160deg,#3d3428,#1a1510);border:2px solid rgba(212,168,83,.5);display:grid;place-items:center;font-size:2rem;color:var(--accent-gold);z-index:1}.hero-animate-float{animation:heroFloat 3.5s ease-in-out infinite}.hero-animate-pulse{animation:heroPulse 2.5s ease-in-out infinite}.hero-animate-spin-slow{animation:heroSpin 18s linear infinite;transform-origin:center}.hero-animate-spin-rev{animation:heroSpin 14s linear infinite reverse;transform-origin:center}.hero-animate-dash{animation:heroDash 2s linear infinite}.hero-animate-bob{animation:heroBob 4s ease-in-out infinite}.hero-animate-shimmer{animation:heroShimmer 2.8s ease-in-out infinite}@keyframes heroBob{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes heroShimmer{0%,to{opacity:.45;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes heroPulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes heroSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heroDash{to{stroke-dashoffset:-20}}.spread-card-slot{opacity:0;transform:translateY(8px) scale(.98);transition:opacity var(--motion-duration-medium) var(--motion-standard),transform var(--motion-duration-medium) var(--motion-standard);will-change:opacity,transform}.spread-card-slot--visible{opacity:1;transform:translateY(0) scale(1)}.spread-card-slot--hidden{opacity:0;transform:translateY(12px) scale(.94);pointer-events:none}.tarot-visual__card{width:96px;height:144px}.tarot-visual--compact .tarot-visual__card{width:80px;height:120px}.home-page .portal-section.fade-in-up:nth-child(2){animation-delay:.04s}.home-page .portal-section.fade-in-up:nth-child(3){animation-delay:.08s}.home-page .portal-section.fade-in-up:nth-child(4){animation-delay:.12s}.home-page .portal-section.fade-in-up:nth-child(5){animation-delay:.16s}.section-page .calc-intro,.section-page .section-intro,.section-page .glass-panel{animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) both;animation-delay:.04s}@media (prefers-reduced-motion: reduce){.route-layer,.portal-card__content,.section-hero,.fade-in-up{animation:none!important}.tarot-shuffle-deck--active .tarot-shuffle-deck__card,.spread-fly-slot--dealt,.rune-shake-stage--active .rune-shake-stage__pouch{animation:none!important;opacity:1!important;transform:none!important}}.spread-draw-sequence{margin:8px 0 4px}.spread-draw-sequence__source-zone{display:flex;flex-direction:column;align-items:center;min-height:210px;justify-content:center;transition:transform var(--motion-duration-long) var(--motion-standard),opacity var(--motion-duration-medium) var(--motion-standard),min-height var(--motion-duration-long) var(--motion-standard)}.spread-draw-sequence__source-zone--dealing{min-height:120px;transform:scale(.78) translateY(-8px);opacity:.9}.spread-draw-sequence__source-zone--done{min-height:72px;transform:scale(.62) translateY(-14px);opacity:.5}.spread-draw-sequence__hint{margin-top:16px;color:var(--text-muted);font-size:.88rem;text-align:center;animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) both}.spread-draw-sequence__hint--deal{color:var(--accent-gold);opacity:.88}.spread-draw-sequence__spread{margin-top:6px;animation:fadeInUp var(--motion-duration-medium) var(--motion-decelerate) both}.spread-result-reveal--tarot,.spread-result-reveal--runes{animation:fadeInUp var(--motion-duration-long) var(--motion-decelerate) both;animation-delay:.06s}.tarot-shuffle-deck{position:relative;width:168px;height:196px;margin:0 auto}.tarot-shuffle-deck__glow{position:absolute;top:12%;right:8%;bottom:0;left:8%;border-radius:50%;background:radial-gradient(circle,rgba(107,63,212,.22),transparent 70%);pointer-events:none;z-index:0;opacity:.75}.tarot-shuffle-deck__card{position:absolute;width:88px;height:128px;left:50%;top:50%;margin-left:-44px;margin-top:-64px;transform-origin:center center;filter:drop-shadow(0 6px 12px rgba(0,0,0,.4));will-change:transform}.tarot-shuffle-deck--active .tarot-shuffle-deck__card--1{animation:tarotShuffleLeft 1.4s var(--motion-standard) infinite;z-index:5}.tarot-shuffle-deck--active .tarot-shuffle-deck__card--2{animation:tarotShuffleRight 1.4s var(--motion-standard) .08s infinite;z-index:4}.tarot-shuffle-deck--active .tarot-shuffle-deck__card--3{animation:tarotShuffleCenter 1.4s var(--motion-standard) .16s infinite;z-index:3}.tarot-shuffle-deck--active .tarot-shuffle-deck__card--4{animation:tarotShuffleLeft 1.4s var(--motion-standard) .24s infinite;z-index:2}.tarot-shuffle-deck--active .tarot-shuffle-deck__card--5{animation:tarotShuffleRight 1.4s var(--motion-standard) .32s infinite;z-index:1}@keyframes tarotShuffleLeft{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-14px,-3px) rotate(-6deg)}}@keyframes tarotShuffleRight{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(14px,-3px) rotate(6deg)}}@keyframes tarotShuffleCenter{0%,to{transform:translate(0) rotate(0)}50%{transform:translateY(-6px) rotate(2deg)}}.rune-shake-stage{position:relative;width:170px;height:190px;margin:0 auto}.rune-shake-stage__pouch{position:relative;z-index:2}.rune-shake-stage__glow{position:absolute;top:20%;right:10%;bottom:10%;left:10%;border-radius:50%;background:radial-gradient(circle,rgba(212,168,83,.18),transparent 70%);pointer-events:none;opacity:.7}.rune-shake-stage--active .rune-shake-stage__pouch{animation:runePouchSway 1.2s var(--motion-standard) infinite;transform-origin:center 72%}@keyframes runePouchSway{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.rune-shake-stage__stone,.rune-shake-stage__spark{display:none}.spread-grid--fly-deck{perspective:800px}.spread-fly-slot{opacity:0;transform:translate3d(0,calc(-1 * var(--fly-offset)),0) scale(.9) rotate(-2deg);transform-origin:center top;will-change:transform,opacity}.spread-fly-slot--dealt{animation-duration:var(--motion-duration-long);animation-timing-function:var(--motion-decelerate);animation-fill-mode:both}.spread-fly-slot--tarot{animation-name:tarotFlyFromDeck}.spread-fly-slot--runes{animation-name:runeFlyFromPouch}@keyframes tarotFlyFromDeck{0%{opacity:0;transform:translate3d(var(--fly-drift, 0px),calc(-1 * var(--fly-offset)),0) scale(.88) rotate(-3deg)}to{opacity:1;transform:translateZ(0) scale(1) rotate(0)}}@keyframes runeFlyFromPouch{0%{opacity:0;transform:translate3d(var(--fly-drift, 0px),calc(-1 * var(--fly-offset)),0) scale(.86) rotate(-8deg)}to{opacity:1;transform:translateZ(0) scale(1) rotate(0)}}
