@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&display=swap";:root{--bg-deep:#060914;--bg-mid:#0a1128;--bg-card:#060914bf;--gold:#c9a96e;--gold-light:#f0d898;--gold-dark:#8b6530;--gold-gradient:linear-gradient(135deg, #8b6530, #c9a96e, #f0d898, #c9a96e);--rose:#e4829c;--rose-dark:#8b2252;--blue-accent:#4a7fd4;--blue-soft:#2a4d8f;--green-accent:#5aad7a;--purple-accent:#9b59b6;--purple-mystic:#b44fd8;--flame-orange:#ff8c42;--flame-amber:#ffb347;--border-gold:#c9a96e4d;--border-gold-hi:#c9a96ea6;--text-primary:#f5e4a8;--text-secondary:#f5e4a8d1;--text-dim:#f5e4a885;--font-display:"Cinzel", serif;--font-body:"Cormorant Garamond", serif;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--shadow-gold:0 0 24px #c9a96e2e;--shadow-glow:0 0 50px #c9a96e59;--shadow-deep:0 20px 60px #000000bf;--shadow-purple:0 0 30px #b44fd84d;--transition:.32s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overscroll-behavior:none;height:100%;font-size:18px;overflow:hidden}body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;height:100%;font-size:1rem;line-height:1.68;overflow:hidden}#root{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app-shell{z-index:1;flex-direction:column;flex:1;height:100dvh;display:flex;position:relative;overflow:hidden}.scroll-area{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-top:env(safe-area-inset-top,0px);flex:1;overflow:hidden auto}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-gold);border-radius:2px}h1,h2,h3,h4{font-family:var(--font-display);color:var(--gold-light);letter-spacing:.05em;text-shadow:0 0 28px #c9a96e59,0 1px 3px #0009;font-weight:700;line-height:1.2}h1{font-size:clamp(1.8rem,5vw,2.6rem)}h2{font-size:clamp(1.3rem,3.5vw,2rem)}h3{font-size:clamp(1.1rem,2.8vw,1.5rem)}h4{font-size:clamp(1rem,2.2vw,1.2rem)}p{color:var(--text-secondary);font-size:1rem;line-height:1.72}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinReverse{to{transform:rotate(-360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes arcaneFloat{0%,to{transform:translateY(0)rotate(0)scale(1)}33%{transform:translateY(-10px)rotate(1.5deg)scale(1.01)}66%{transform:translateY(-5px)rotate(-1deg)scale(1.005)}}@keyframes fanFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes fanShuffle{0%{transform:translateY(0)scale(1)}18%{transform:translateY(-36px)scale(1.07)scaleX(.93)}36%{transform:translateY(-14px)scale(.97)scaleX(1.04)}55%{transform:translateY(-28px)scale(1.05)scaleX(.96)}74%{transform:translateY(-8px)scale(.99)}90%{transform:translateY(-3px)scale(1.01)}to{transform:translateY(0)scale(1)}}@keyframes arcaneFloatSlow{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 16px #c9a96e40,0 0 32px #c9a96e14}50%{box-shadow:0 0 40px #c9a96e99,0 0 80px #c9a96e40,0 0 120px #b44fd81f}}@keyframes titleGlow{0%,to{text-shadow:0 0 20px #c9a96e73,0 0 6px #c9a96e40,0 2px 4px #000000b3}50%{text-shadow:0 0 40px #c9a96ed9,0 0 16px #c9a96e80,0 0 60px #b44fd84d,0 2px 4px #000000b3}}@keyframes portalSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes portalSpinRev{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes portalPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.85;transform:scale(1.04)}}@keyframes shimmerSlide{0%{left:-120%}40%,to{left:220%}}@keyframes crystalHolo{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes borderPulse{0%,to{border-color:#c9a96e47;box-shadow:0 0 #c9a96e00}50%{border-color:#c9a96ebf;box-shadow:0 0 20px #c9a96e33}}@keyframes runeGlow{0%,to{text-shadow:0 0 8px #b44fd866,0 0 20px #c9a96e33}50%{text-shadow:0 0 16px #b44fd8cc,0 0 40px #b44fd866,0 0 60px #c9a96e4d}}@keyframes flamePulse{0%,to{text-shadow:0 0 8px #ff8c42,0 0 20px #ffb347,0 0 40px #ff8c4266}50%{text-shadow:0 0 20px #ff8c42,0 0 40px #ffb347,0 0 80px #ff8c4299,0 0 120px #ffb3474d}}@keyframes sparkle{0%{opacity:1;transform:scale(0)rotate(0)}50%{opacity:.8;transform:scale(1.6)rotate(180deg)}to{opacity:0;transform:scale(0)rotate(360deg)}}@keyframes cardReveal3D{0%{opacity:0;transform:perspective(900px)rotateX(45deg)scale(.75)translateZ(-120px)}to{opacity:1;transform:perspective(900px)rotateX(0)scale(1)translateZ(0)}}@keyframes navIconFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.08)}}@keyframes energyRing{0%{stroke-dashoffset:1000px;opacity:.2}50%{opacity:.8}to{stroke-dashoffset:-1000px;opacity:.2}}@keyframes cardBob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes cardBobAlt{0%,to{transform:translateY(-5px)}50%{transform:translateY(5px)}}@keyframes vortexSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pendulumIdle{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes pendulumSwing{0%,to{transform:rotate(-28deg)}50%{transform:rotate(28deg)}}@keyframes pendulumSettleRight{0%{transform:rotate(0)}40%{transform:rotate(36deg)}70%{transform:rotate(26deg)}to{transform:rotate(30deg)}}@keyframes pendulumSettleLeft{0%{transform:rotate(0)}40%{transform:rotate(-36deg)}70%{transform:rotate(-26deg)}to{transform:rotate(-30deg)}}.btn{border-radius:var(--radius-md);font-family:var(--font-display);letter-spacing:.12em;cursor:pointer;text-transform:uppercase;white-space:nowrap;-webkit-font-smoothing:antialiased;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:.86rem;font-weight:700;transition:transform .25s cubic-bezier(.2,.8,.3,1),box-shadow .25s,filter .25s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff24,#0000);width:50%;height:100%;transition:left .5s;position:absolute;top:0;left:-110%;transform:skew(-20deg)}.btn:hover:before{left:160%}.btn-primary{color:#090601;text-shadow:0 1px 2px #00000040;background:linear-gradient(135deg,#7a5520 0%,#c9a96e 35%,#f0d898 55%,#c9a96e 75%,#8b6530 100%) 0 0/220%;animation:5s infinite crystalHolo;box-shadow:0 4px 20px #8b65308c,inset 0 1px #ffffff14,inset 0 -2px #00000040}.btn-primary:hover{filter:brightness(1.05);transform:translateY(-2px)scale(1.015);box-shadow:0 10px 40px #c9a96ebf,0 0 70px #b44fd840,inset 0 1px #ffffff1f}.btn-primary:active{transform:translateY(0)scale(.98)}.btn-outline{color:var(--gold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080c1aa6;border:1px solid #c9a96e8c;box-shadow:0 0 16px #c9a96e14,inset 0 1px #c9a96e14}.btn-outline:hover{border-color:var(--gold);color:var(--gold-light);background:#c9a96e14;transform:translateY(-2px);box-shadow:0 0 30px #c9a96e66,inset 0 0 20px #c9a96e0f}.btn-rose{color:#fff;text-shadow:0 1px 3px #0000004d;background:linear-gradient(135deg,#7a1040,#d4607a,#f0a0b0,#d4607a,#8b1a4a) 0 0/220%;animation:6s infinite crystalHolo;box-shadow:0 4px 22px #8b22528c,inset 0 1px #ffffff26}.btn-rose:hover{transform:translateY(-2px)scale(1.015);box-shadow:0 10px 36px #e4829ca6,0 0 50px #e4829c33}.btn-arcane{color:var(--gold-light);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060914d9;border:1px solid #0000}.btn-arcane:after{content:"";border-radius:inherit;z-index:-1;background:conic-gradient(#c9a96ed9 0deg,#b44fd8a6 120deg,#c9a96e73 240deg,#c9a96ed9 360deg);animation:3s linear infinite portalSpin;position:absolute;inset:-1px}.btn-arcane:hover{transform:translateY(-2px);box-shadow:0 0 32px #c9a96e80}.btn-sm{letter-spacing:.08em;padding:8px 18px;font-size:.76rem}.btn-lg{padding:17px 38px;font-size:1rem}.btn-full{width:100%}.btn:disabled{opacity:.38;cursor:not-allowed;filter:none!important;animation:none!important;transform:none!important}.glass-card{-webkit-backdrop-filter:blur(26px)saturate(1.55)brightness(1.04);border-radius:var(--radius-lg);background:linear-gradient(160deg,#0e1632ed 0%,#080c1ccc 50%,#0c122ae6 100%);border:1px solid #c9a96e47;transition:transform .3s cubic-bezier(.2,.8,.3,1),box-shadow .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 0 28px #c9a96e1f,0 12px 40px #0000008c,inset 0 1px #c9a96e24,inset 0 -1px #0006,inset 1px 0 #c9a96e0d,inset -1px 0 #c9a96e0a}.glass-card:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(105deg,#0000,#f0d8980f,#ffffff14,#f0d8980f,#0000);width:50%;height:100%;animation:6s infinite shimmerSlide;position:absolute;top:0;left:-120%;transform:skew(-15deg)}.glass-card:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(90deg,#0000,#c9a96e99,#0000);height:1px;position:absolute;top:0;left:8%;right:8%}.glass-card:hover{border-color:#c9a96e8c;transform:translateY(-3px)translateZ(0);box-shadow:0 0 45px #c9a96e38,0 22px 55px #0009,inset 0 1px #c9a96e38,inset 0 -1px #00000073}.portal-container{pointer-events:none;z-index:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portal-ring{border-style:solid;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portal-ring-1{border-width:1px;border-color:#c9a96ed9 #b44fd880 #c9a96e26 #c9a96e26;width:240px;height:240px;animation:14s linear infinite portalSpin;box-shadow:0 0 20px #c9a96e14}.portal-ring-2{border-width:1px;border-color:#b44fd8cc #b44fd81a #b44fd81a #c9a96e66;width:195px;height:195px;animation:9s linear infinite portalSpinRev}.portal-ring-3{border-width:.5px;border-color:#c9a96e12 #c9a96e12 #c9a96e73;width:275px;height:275px;animation:22s linear infinite portalSpin}.portal-ring-4{border-width:.5px;border-color:#b44fd80f #b44fd88c #c9a96e4d #b44fd80f;width:155px;height:155px;animation:6s linear infinite portalSpinRev}.portal-glow{background:radial-gradient(circle,#b44fd82e 0%,#c9a96e14 40%,#0000 70%);border-radius:50%;width:110px;height:110px;animation:4s ease-in-out infinite portalPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tilt-card{transform-style:preserve-3d;will-change:transform;transition:transform .15s,box-shadow .15s}.tirage-card{cursor:pointer;transform-style:preserve-3d;transition:transform .3s cubic-bezier(.2,.8,.3,1),box-shadow .3s,border-color .3s}.tirage-card:hover{transform:perspective(600px)rotateY(-3deg)rotateX(1deg)translate(6px);border-color:#c9a96ea6!important;box-shadow:0 0 35px #c9a96e38,8px 0 30px #0006,-2px 0 15px #b44fd81a!important}.flip-wrapper{perspective:1400px}.flip-inner{transform-style:preserve-3d;transition:transform .9s cubic-bezier(.2,.85,.3,1.05);position:relative}.flip-inner.flipped{transform:rotateY(180deg)}.flip-face,.flip-back{backface-visibility:hidden;position:absolute;inset:0}.flip-back{transform:rotateY(180deg)}.flip-inner:not(.flipped) .flip-face{animation:5s ease-in-out infinite arcaneFloat}.theme-grid{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.theme-pill{font-family:var(--font-display);letter-spacing:.08em;cursor:pointer;transition:var(--transition);text-transform:uppercase;background:0 0;border:1px solid;border-radius:100px;padding:7px 18px;font-size:.74rem;font-weight:600;position:relative;overflow:hidden}.theme-pill:before{content:"";opacity:0;background:currentColor;transition:opacity .3s;position:absolute;inset:0}.theme-pill:hover:before{opacity:.08}.theme-pill.general{border-color:var(--gold);color:var(--gold)}.theme-pill.amour{border-color:var(--rose);color:var(--rose)}.theme-pill.travail{border-color:var(--blue-accent);color:var(--blue-accent)}.theme-pill.argent{border-color:var(--green-accent);color:var(--green-accent)}.theme-pill.vitalite{border-color:var(--purple-accent);color:var(--purple-accent)}.theme-pill.active.general{background:var(--gold);color:#0d0a04;box-shadow:0 0 20px #c9a96e8c,0 0 40px #c9a96e33}.theme-pill.active.amour{background:var(--rose);color:#fff;box-shadow:0 0 20px #e4829c8c}.theme-pill.active.travail{background:var(--blue-accent);color:#fff;box-shadow:0 0 20px #4a7fd48c}.theme-pill.active.argent{background:var(--green-accent);color:#fff;box-shadow:0 0 20px #5aad7a8c}.theme-pill.active.vitalite{background:var(--purple-accent);color:#fff;box-shadow:0 0 20px #9b59b68c}.oracle-text{font-family:var(--font-body);color:var(--text-secondary);text-align:center;padding:20px 24px;font-size:1.2rem;font-style:italic;line-height:1.92;position:relative}.oracle-loading{color:var(--text-dim);font-family:var(--font-display);letter-spacing:.14em;flex-direction:column;align-items:center;gap:14px;padding:36px;font-size:.8rem;display:flex}.oracle-spinner{border:2px solid #0000;border-top-color:var(--gold);border-bottom-color:#c9a96e4d;border-right-color:#b44fd899;border-radius:50%;width:48px;height:48px;animation:.9s linear infinite spin;box-shadow:0 0 20px #c9a96e4d,0 0 40px #b44fd81a}.oracle-spinner-inner{border:1.5px solid #0000;border-color:#b44fd8cc #0000 #0000 #c9a96e66;border-radius:50%;width:28px;height:28px;animation:.6s linear infinite spinReverse;position:absolute}.mystic-divider{align-items:center;gap:12px;margin:20px 0;display:flex}.mystic-divider:before,.mystic-divider:after{content:"";background:linear-gradient(90deg,#0000,#c9a96e73);flex:1;height:1px}.mystic-divider:after{background:linear-gradient(90deg,#c9a96e73,#0000)}.mystic-divider span{font-family:var(--font-display);color:var(--gold);letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;font-size:.68rem}.rune-text{background:linear-gradient(135deg,#b44fd8,#c9a96e,#f0d898,#b44fd8) 0 0/300%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:4s infinite crystalHolo}.text-flame{animation:2.5s ease-in-out infinite flamePulse}.text-rune{animation:2.5s ease-in-out infinite runeGlow}.title-glow{color:var(--gold-light);text-shadow:0 0 30px #c9a96e80,0 0 8px #c9a96e4d,0 2px 4px #000000b3;font-weight:700;animation:3.5s ease-in-out infinite titleGlow}.float-anim{animation:4.5s ease-in-out infinite arcaneFloat}.float-slow{animation:6s ease-in-out infinite arcaneFloatSlow}.pulse-anim{animation:2.4s ease-in-out infinite pulseGlow}#star-canvas{pointer-events:none;z-index:0;position:fixed;inset:0}.bottom-nav{height:calc(64px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(24px)saturate(1.5);padding-top:6px;padding-bottom:env(safe-area-inset-bottom,0px);z-index:100;background:linear-gradient(#060914f0 0%,#04060ffa 100%);border-top:1px solid #c9a96e38;flex-shrink:0;justify-content:space-around;align-items:flex-start;display:flex;position:relative;box-shadow:0 -8px 30px #00000080,0 -1px #c9a96e0f}.nav-tab{cursor:pointer;color:var(--text-dim);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:5px;padding:8px 0;transition:color .28s,transform .28s;display:flex;position:relative}.nav-tab:hover{color:#c9a96eb3;transform:translateY(-2px)}.nav-tab.active{color:var(--gold)}.nav-tab.active svg{filter:drop-shadow(0 0 8px #c9a96ee6)drop-shadow(0 0 16px #c9a96e66);animation:3s ease-in-out infinite navIconFloat}.nav-tab svg{width:22px;height:22px;transition:filter .28s}.nav-tab span{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;font-size:.6rem}.page{flex:1;width:100%;max-width:430px;margin:0 auto;padding:0 14px 32px}.page-header{text-align:center;padding:28px 0 20px}.page-header h1{background:linear-gradient(135deg,#8b6530,#c9a96e,#f0d898,#c9a96e) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:5s infinite crystalHolo}.page-header .subtitle{font-family:var(--font-display);letter-spacing:.24em;color:var(--text-dim);text-transform:uppercase;margin-top:6px;font-size:.72rem}.section{margin-bottom:28px}.section-title{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);margin-bottom:14px;font-size:.78rem}.gold-divider{background:linear-gradient(90deg, transparent, var(--gold), transparent);opacity:.45;height:1px;margin:20px 0}.overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:200;background:#04060fe0;justify-content:center;align-items:flex-end;animation:.25s fadeIn;display:flex;position:fixed;inset:0}.overlay-sheet{background:var(--bg-mid);border-top:1px solid var(--border-gold);border-radius:24px 24px 0 0;width:100%;max-width:540px;max-height:85dvh;padding:24px 20px 40px;animation:.35s cubic-bezier(.4,0,.2,1) both slideUp;overflow-y:auto;box-shadow:0 -20px 60px #0009,0 -1px #c9a96e4d}.text-center{text-align:center}.text-gold{color:var(--gold)}.text-gold-light{color:var(--gold-light)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.w-full{width:100%}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.tag{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--border-gold);color:var(--gold);background:#c9a96e14;border-radius:100px;padding:3px 12px;font-size:.64rem;display:inline-block;box-shadow:0 0 8px #c9a96e14}.anim-fadeUp{animation:.55s both fadeUp}.anim-fadeIn{animation:.4s both fadeIn}.anim-pulse{animation:2.4s ease-in-out infinite pulseGlow}.anim-card-reveal{animation:.65s cubic-bezier(.2,.85,.3,1) both cardReveal3D}@media (hover:none){.glass-card:hover{box-shadow:var(--shadow-gold);border-color:var(--border-gold);transform:none}.tirage-card:hover{border-color:var(--border-gold)!important;box-shadow:var(--shadow-gold)!important;transform:none!important}.btn-primary:hover{transform:none;box-shadow:0 4px 24px #8b653080}.btn-outline:hover,.btn-rose:hover,.btn-arcane:hover{transform:none}.nav-tab:hover{color:var(--text-dim);transform:none}.nav-tab.active:hover{color:var(--gold)}}.glass-card:active{transition:transform .1s;transform:scale(.98)}.tirage-card:active{border-color:#c9a96e80!important;transition:transform .1s!important;transform:scale(.97)!important}.btn:active{transition:transform .1s!important;transform:scale(.96)!important}.nav-tab:active{transition:transform .1s;transform:scale(.9)}.nav-tab{min-width:44px;min-height:44px}.safe-top{padding-top:env(safe-area-inset-top,0px)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.scroll-area::-webkit-scrollbar{display:none}.scroll-area{scrollbar-width:none;-ms-overflow-style:none}
