@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;800&family=Noto+Serif+SC:wght@500;700&family=Outfit:wght@400;600;700&display=swap";.app-container{background-color:#05040f;width:100%;min-height:100vh;position:relative;overflow:hidden}.global-dream-bg{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.nebula-glow{filter:blur(100px);opacity:.16;mix-blend-mode:screen;border-radius:50%;animation:25s ease-in-out infinite alternate nebula-drift;position:absolute}.nebula-glow.violet{background:radial-gradient(circle,#7b5cf0 0%,#0000 70%);width:320px;height:320px;top:-80px;left:-80px}.nebula-glow.indigo{background:radial-gradient(circle,#4a90d9 0%,#0000 70%);width:400px;height:400px;animation-delay:-5s;bottom:-100px;right:-100px}@keyframes nebula-drift{0%{transform:translate(0)scale(1)}50%{transform:translate(30px,-20px)scale(1.15)}to{transform:translate(-20px,30px)scale(.95)}}.global-loading{z-index:9999;justify-content:center;align-items:center;gap:var(--space-md);background:#05040f;flex-direction:column;display:flex;position:fixed;inset:0}.loading-spinner{border:2px dashed #9d7ff5;border-radius:50%;width:36px;height:36px;animation:1.8s linear infinite spin-loading}.loading-text{color:var(--text-secondary);letter-spacing:2px;font-size:13px}@keyframes spin-loading{to{transform:rotate(360deg)}}.fatestar-menu-container{z-index:999990;flex-direction:column;align-items:center;display:flex;position:fixed;bottom:20px;left:20px}.fatestar-trigger{-webkit-backdrop-filter:blur(12px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#160d24bf;border:1px solid #c9a23c59;border-radius:50%;outline:none;justify-content:center;align-items:center;width:56px;height:56px;transition:border-color .3s,transform .2s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;box-shadow:0 8px 24px #c9a23c40,inset 0 0 15px #c9a23c26}.fatestar-trigger:hover{border-color:#c9a23cb3;transform:scale(1.08)}.fatestar-trigger:active{transform:scale(.95)}.fatestar-glow{z-index:-1;opacity:.5;-webkit-mask-composite:xor;pointer-events:none;background:conic-gradient(from 180deg,#0000,#c9a23c,#9d7ff5,#0000);border-radius:50%;animation:5s linear infinite reverse gate-spin;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.fatestar-icon{font-size:22px;animation:2s ease-in-out infinite alternate fatestar-breath}@keyframes fatestar-breath{0%{filter:drop-shadow(0 0 2px #c9a23c66);transform:scale(1)}to{filter:drop-shadow(0 0 8px #c9a23cb3);transform:scale(1.05)}}@keyframes gate-spin{to{transform:rotate(360deg)}}.fatestar-tooltip{color:#f0eeff;white-space:nowrap;pointer-events:none;opacity:0;background:#0b081ce6;border:1px solid #c9a23c4d;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;transition:opacity .3s,transform .3s;position:absolute;left:68px;transform:translate(-10px);box-shadow:0 4px 12px #00000080}.fatestar-trigger:hover .fatestar-tooltip{opacity:1;transform:translate(0)}.fatestar-menu-items{opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(15px);background:#0d091ed9;border:1px solid #9d7ff533;border-radius:16px;flex-direction:column;gap:10px;min-width:110px;padding:10px;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;bottom:68px;transform:translateY(15px)scale(.9);box-shadow:0 12px 36px #0009,0 0 20px #9d7ff51a}.fatestar-menu-items.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.fatestar-menu-item{color:#fff9;-webkit-tap-highlight-color:transparent;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.fatestar-menu-item:hover{color:#fff;background:#ffffff0d}.fatestar-menu-item.active{color:gold;background:#c9a23c26;border:1px solid #c9a23c4d}.fatestar-item-icon{font-size:16px}.fatestar-item-label{white-space:nowrap}:root{--font-serif:"Noto Serif SC", "Playfair Display", Georgia, serif;--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Noto Sans SC", sans-serif;--font-number:"Cinzel", monospace;--bg-primary:#05040f;--text-primary:#f0eeff;--text-secondary:#b0a8d0;--color-primary:#9d7ff5;--border-subtle:#ffffff0d;--border-glow:#9d7ff540;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.page{z-index:10;width:100%;min-height:100vh;padding:var(--space-md) var(--space-lg);max-width:480px;margin:0 auto;position:relative}.font-serif{font-family:var(--font-serif)}.font-number{font-family:var(--font-number)}.glass-card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);background:#ffffff03;border:1px solid #ffffff0d;width:100%;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000059}.card-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--text-secondary);text-align:center;margin-bottom:var(--space-md);margin-top:2px;font-size:11px;font-weight:600}.btn{cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font-sans);letter-spacing:1px;border:1px solid #0000;border-radius:30px;justify-content:center;align-items:center;padding:12px 24px;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary{color:#05040f;background:linear-gradient(135deg,#9d7ff5,#4a90d9);box-shadow:0 8px 20px #9d7ff540}.btn-primary:hover{transform:translateY(-1.5px);box-shadow:0 10px 25px #9d7ff561}.btn-primary:active{transform:translateY(.5px)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{color:var(--text-secondary);background:#ffffff05;border:1px solid #ffffff0f}.btn-ghost:hover{color:#fff;background:#ffffff0d;border-color:#ffffff1f}.btn-icon{width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:#ffffff05;border:1px solid #ffffff0f;border-radius:50%;justify-content:center;align-items:center;transition:all .25s;display:flex}.btn-icon:hover{color:#fff;background:#ffffff0d;border-color:#ffffff26}.compliance-notice{color:var(--text-secondary);opacity:.45;text-align:center;width:100%;margin-top:var(--space-xl);margin-bottom:var(--space-sm);letter-spacing:.5px;font-size:11px}.btn-fate-primary{width:100%;padding:14px 32px;color:#fff!important;cursor:pointer!important;text-align:center!important;letter-spacing:1px!important;background:linear-gradient(135deg,#7b5cf0,#9d7ff5)!important;border:none!important;border-radius:99px!important;outline:none!important;font-size:16px!important;font-weight:600!important;transition:transform .2s,opacity .2s,box-shadow .2s!important;box-shadow:0 4px 15px #7b5cf059!important}.btn-fate-primary:hover{opacity:.95!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px #7b5cf080!important}.btn-fate-primary:active{transform:translateY(0)scale(.97)!important}.btn-fate-primary:disabled{opacity:.6!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}body:after{content:"";pointer-events:none;z-index:0;opacity:.95;position:fixed;inset:0;background-image:radial-gradient(circle at 12% 18%,#ffffff0f 1px,#0000 1px),radial-gradient(circle at 82% 38%,#ffffff14 1.5px,#0000 1.5px),radial-gradient(circle at 38% 68%,#ffffff0d 1px,#0000 1px),radial-gradient(circle at 88% 88%,#7b5cf01f 2px,#0000 2px)!important;background-size:100px 100px,140px 140px,180px 180px,200px 200px!important}
