:root{color:#f8fbff;font-synthesis:none;text-rendering:optimizelegibility;background:#05091a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#05091a;min-width:320px;min-height:100%}body{background:radial-gradient(circle at 50% 24%,#2280d647,#0000 34rem),linear-gradient(155deg,#080d25 0%,#02040d 72%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,a{font:inherit}button,select{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #8ee7ff}.summon-shell{min-height:100svh;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));isolation:isolate;flex-direction:column;display:flex;position:relative}.summon-shell:before{z-index:-2;content:"";background-image:linear-gradient(#5fadea0a 1px,#0000 1px),linear-gradient(90deg,#5fadea0a 1px,#0000 1px);background-size:3rem 3rem;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}.topbar{justify-content:space-between;align-items:center;width:min(100%,72rem);margin:0 auto;display:flex}.eyebrow,.banner-kicker{color:#82d8ff;letter-spacing:.17em;text-transform:uppercase;margin:0 0 .25rem;font-size:.75rem;font-weight:800}h1{letter-spacing:.03em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,6vw,2.25rem);font-weight:600}.balance-chip{color:#fff2b7;background:#070d22d6;border:1px solid #e8c66994;align-items:center;gap:.55rem;min-width:5.5rem;padding:.55rem .8rem;font-weight:800;display:flex;box-shadow:inset 0 0 1rem #f6c95314}.account-cluster{align-items:center;gap:.55rem;display:flex}.avatar-button{color:#fff;cursor:pointer;background:#16294a;border:1px solid #82d8ff99;border-radius:50%;place-items:center;width:2.65rem;height:2.65rem;padding:0;font-weight:900;display:grid;overflow:hidden}.avatar-button img{object-fit:cover;width:100%;height:100%}.coin-mark{color:#201202;background:linear-gradient(145deg,#8d5d0f,#f1ca61);border:1px solid #ffe384;border-radius:50%;place-items:center;width:1.35rem;height:1.35rem;font-size:.7rem;display:grid}.summon-stage{clip-path:polygon(1.25rem 0,calc(100% - 1.25rem) 0,100% 1.25rem,100% calc(100% - 1.25rem),calc(100% - 1.25rem) 100%,1.25rem 100%,0 calc(100% - 1.25rem),0 1.25rem);background:radial-gradient(circle,#27a8ef40,#0000 45%),linear-gradient(#0a1a3bc2,#020510f0);border:1px solid #59a9e647;flex:1;place-items:center;width:min(100%,72rem);min-height:22rem;margin:1rem auto;display:grid;position:relative;overflow:hidden;box-shadow:0 1.75rem 5rem #0000007a,inset 0 0 3rem #1789dd1a}.featured-portrait{z-index:0;object-fit:contain;object-position:bottom right;filter:saturate(.88)drop-shadow(0 0 2rem #55bfff5c);opacity:.52;width:min(80%,34rem);height:112%;position:absolute;inset:auto -20% -10% auto}.stage-vignette{z-index:0;pointer-events:none;background:linear-gradient(90deg,#02051033,#0000 55%,#02051080);position:absolute;inset:0}.orbit,.summon-sigil{border:1px solid #5bc9ff6b;border-radius:50%;position:absolute;box-shadow:0 0 2.5rem #25b4ff2e,inset 0 0 2.5rem #25b4ff1f}.orbit:before,.orbit:after{border-radius:inherit;content:"";border:1px dashed #84daff57;position:absolute;inset:12%}.orbit:after{border-style:solid;inset:27%}.orbit-outer{aspect-ratio:1;width:min(96vw,35rem);animation:28s linear infinite turn}.orbit-inner{aspect-ratio:1;width:min(65vw,23rem);animation:18s linear infinite reverse turn}.summon-sigil{aspect-ratio:1;border-color:#f6d378b8;place-items:center;width:8.5rem;display:grid;transform:rotate(45deg)}.summon-sigil span{background:linear-gradient(90deg,#0000,#ffe9a7,#0000);width:72%;height:1px;position:absolute}.summon-sigil span:nth-child(2){transform:rotate(60deg)}.summon-sigil span:nth-child(3){transform:rotate(120deg)}.banner-copy{z-index:1;text-align:center;text-shadow:0 2px 1rem #000;max-width:28rem;padding:1.25rem;position:relative}.banner-copy h2{margin:.35rem 0 .75rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,9vw,4.4rem);font-weight:500;line-height:.95}.banner-copy p:last-child{color:#c8d8e8;margin:0 auto;font-size:1rem;line-height:1.6}.featured-name{color:#fff1a9;letter-spacing:.04em;margin:0 0 .8rem;font-size:1rem;font-weight:800}.rate-strip{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.rate-strip span{color:#dff5ff;background:#030c1da8;border:1px solid #90d5f847;padding:.28rem .5rem;font-size:.75rem;font-weight:750}.pity-panel{z-index:2;color:#a9c8df;background:#030816c2;border:1px solid #75ceff47;grid-template-columns:auto auto;align-items:center;gap:.1rem .5rem;padding:.55rem .7rem;font-size:.75rem;display:grid;position:absolute;bottom:.8rem;right:.8rem}.pity-panel strong{color:#fff;font-size:1rem}.pity-panel em{color:#ffe286;grid-column:1/-1;font-style:normal}.server-row{justify-content:flex-end;align-items:center;gap:.75rem;width:min(100%,72rem);margin:.8rem auto 0;display:flex}.server-row label{color:#96b3c9;font-size:.875rem;font-weight:750}.server-select-wrap{background:#040b1dc7;border:1px solid #7ecaf057;align-items:center;min-width:0;display:flex}.server-select-wrap img{border-radius:50%;width:1.75rem;height:1.75rem;margin-left:.45rem}.server-select-wrap select{color:#fff;cursor:pointer;background:0 0;border:0;min-width:0;max-width:14rem;min-height:2.75rem;padding:.5rem 2rem .5rem .7rem;font-size:.875rem;font-weight:750}.server-select-wrap option{background:#081127}.action-dock{z-index:4;background:linear-gradient(#0000,#02040df5 20%);width:min(100%,42rem);margin:0 auto;padding-top:.35rem;position:sticky;bottom:0}.discord-button,.summon-actions button{color:#fff;letter-spacing:.04em;border:1px solid #8cd9ffb8;justify-content:center;align-items:center;min-height:3.5rem;font-weight:850;text-decoration:none;display:flex}.discord-button{background:linear-gradient(#5865f2,#3440b5);width:100%;box-shadow:0 .8rem 2.25rem #4756e047,inset 0 1px #ffffff57}.summon-actions{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem;display:grid}.summon-button{cursor:pointer;background:linear-gradient(#155b8eb8,#071d39e0);flex-direction:column;box-shadow:inset 0 1px #ffffff2e,0 .75rem 1.7rem #00000038}.summon-button.primary{background:linear-gradient(#875d13eb,#391f07f5);border-color:#ffdd79d6}.summon-button:disabled{cursor:not-allowed;filter:grayscale(.45);opacity:.42}.summon-actions small{color:#c3ddef;align-items:center;gap:.35rem;margin-top:.2rem;font-size:.75rem;display:flex}.mini-coin{color:#ffe286;border:1px solid #ffe286;border-radius:50%;place-items:center;width:1rem;height:1rem;font-size:.55rem;display:inline-grid}.privacy-note,.balance-note{color:#8fa8bc;text-align:center;margin:.6rem 0 0;font-size:.75rem;line-height:1.45}.error-banner{color:#ffe9ea;background:#62121e9e;border-left:3px solid #ff6e76;margin:0 0 .5rem;padding:.65rem .8rem;font-size:.875rem;line-height:1.4}.retry-button{color:#fff1b6;cursor:pointer;background:#543708cc;border:1px solid #ffde7da3;width:100%;min-height:2.75rem;margin-bottom:.5rem;font-weight:800}.loading-terminal,.empty-state{text-align:center;place-content:center;place-items:center;min-height:70svh;display:grid}.loading-ring{aspect-ratio:1;border:1px solid #66d5ff40;border-top-color:#82d8ff;border-radius:50%;width:4.5rem;animation:1.2s linear infinite turn;box-shadow:0 0 2rem #52beff47}.empty-state{width:min(100%,32rem);margin:auto;padding:2rem}.empty-state h2{margin:.5rem 0;font-family:Georgia,Times New Roman,serif;font-size:2rem}.empty-state p:not(.eyebrow){color:#a9bdd0;line-height:1.6}.empty-state button{color:#fff;cursor:pointer;background:#163f65;border:1px solid #82d8ff;min-height:3rem;padding:.65rem 1rem;font-weight:800}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000209d1;place-items:center;padding:1rem;animation:.18s ease-out fade-in;display:grid;position:fixed;inset:0}.confirm-card{clip-path:polygon(.8rem 0,calc(100% - .8rem) 0,100% .8rem,100% calc(100% - .8rem),calc(100% - .8rem) 100%,.8rem 100%,0 calc(100% - .8rem),0 .8rem);background:linear-gradient(145deg,#0e1d3b,#050919 70%);border:1px solid #8cd9ffa3;width:min(100%,30rem);padding:1.25rem;box-shadow:0 2rem 6rem #000}.confirm-card h2,.result-summary h2{margin:.35rem 0 1rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,8vw,2.8rem)}.confirm-card>p:not(.eyebrow){color:#9eb4c7;font-size:.875rem;line-height:1.5}.cost-ledger{border-block:1px solid #81c8eb2e;grid-template-columns:1fr auto;gap:.6rem;padding:1rem 0;display:grid}.cost-ledger span{color:#91a9bd}.cost-ledger strong{color:#fff0ae}.confirm-actions,.reveal-actions,.summary-footer{justify-content:flex-end;gap:.75rem;display:flex}.confirm-actions button,.reveal-actions button,.summary-footer button,.ritual-scene button{color:#fff;cursor:pointer;background:#091a34e6;border:1px solid #89d3f785;min-height:3rem;padding:.65rem 1rem;font-weight:800}.confirm-actions .confirm-submit,.reveal-actions .next-result,.summary-footer button{background:linear-gradient(#9b6c1d,#503006);border-color:#ffe082}.reveal-overlay{z-index:30;background:radial-gradient(circle at 50% 44%,#2da7ec5c,#0000 31rem),linear-gradient(165deg,#091a3a,#01030b 78%);position:fixed;inset:0;overflow:hidden}.ritual-scene{place-content:center;place-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.ritual-flare{background:#eafcff;width:2px;height:110vh;animation:1.7s ease-in both flare;position:absolute;box-shadow:0 0 1rem #fff,0 0 5rem 2rem #47bfff,0 0 12rem 5rem #299aff8c}.ritual-rings,.ritual-rings span{aspect-ratio:1;border:2px solid #8ee5ffad;border-radius:50%;width:min(88vw,35rem);animation:2.5s ease-in-out infinite ritual-turn;position:absolute;box-shadow:0 0 3rem #37c0ff8c,inset 0 0 3rem #37c0ff42}.ritual-rings span{border-style:dashed;width:auto;inset:14%}.ritual-rings span:nth-child(2){animation-direction:reverse;inset:30%}.ritual-rings span:nth-child(3){inset:43%}.ritual-scene p{z-index:2;color:#e7fbff;letter-spacing:.12em;text-transform:uppercase;margin-top:18rem;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;position:relative}.ritual-scene button{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:2;background:#030814a3;border-color:#ffffff57;position:absolute}.result-card{min-height:100svh;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));grid-template-rows:auto minmax(16rem,52vh) auto auto;display:grid}.result-progress{color:#96aec1;justify-self:end;font-size:.875rem;font-weight:800}.result-progress span{color:#fff;font-size:1.1rem}.card-frame{aspect-ratio:2/3;background:#06152c;border:2px solid #76cfee;place-self:center;width:min(72vw,19rem);max-height:50vh;padding:.3rem;animation:.62s cubic-bezier(.2,.9,.2,1) both card-arrive;position:relative;overflow:hidden;box-shadow:0 0 1rem #57c9ff61,0 1.5rem 5rem #000}.rarity-4 .card-frame,.rarity-4.summary-card{border-color:#cc9cff;box-shadow:0 0 2rem #c26fff7a}.rarity-5 .card-frame,.rarity-5.summary-card{border-color:#ffe47b;box-shadow:0 0 2.8rem #ffcf4499}.card-frame img,.summary-card img{object-fit:contain;background:#030713;width:100%;height:100%}.card-placeholder,.summary-placeholder{color:#a9e9ff;background:radial-gradient(circle,#1b5c8a,#061126 64%);place-items:center;width:100%;height:100%;font-family:Georgia,serif;font-size:6rem;display:grid}.card-sheen{pointer-events:none;background:linear-gradient(110deg,#0000 35%,#ffffffb8 50%,#0000 65%);animation:1.15s ease-out .35s both sheen;position:absolute;inset:-35%;transform:translate(-80%)}.result-copy{text-align:center;width:min(100%,32rem);margin:.8rem auto;animation:.42s ease-out .24s both rise-in}.rarity-stars{color:#ffe071;letter-spacing:.12em;margin:0}.result-copy h2{margin:.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,8vw,3rem)}.result-class{color:#9ecde7;letter-spacing:.12em;text-transform:uppercase;margin:.15rem 0 .6rem;font-size:.875rem;font-weight:800}.result-badges{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.result-badges span{color:#d9f4ff;background:#071930d1;border:1px solid #7dd3fb57;padding:.3rem .55rem;font-size:.75rem;font-weight:800}.result-badges .is-new{color:#ffec9f;border-color:#ffe17b}.result-copy blockquote{color:#c9d7e1;margin:.75rem 0 0;font-family:Georgia,serif;font-size:.875rem;font-style:italic;line-height:1.45}.result-summary{width:min(100%,64rem);min-height:100svh;padding:max(1.25rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));margin:0 auto}.result-summary header>p:last-child{color:#9cb4c7}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;display:grid}.summary-card{background:#050e20eb;border:1px solid #6ec6ef6b;grid-template-rows:minmax(8rem,24vh) auto;min-width:0;animation:.42s ease-out both rise-in;display:grid;overflow:hidden}.summary-card>div:last-child{min-width:0;padding:.6rem;display:grid}.summary-card span{color:#ffe071;font-size:.7rem}.summary-card strong,.summary-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.summary-card strong{margin-top:.2rem;font-size:.875rem}.summary-card small{color:#93adc2;margin-top:.15rem;font-size:.7rem}.summary-footer{justify-content:space-between;align-items:center}.summary-footer p{color:#ffe28a;font-weight:800}@keyframes fade-in{0%{opacity:0}}@keyframes flare{0%{opacity:0;transform:scaleY(.05)}55%{opacity:1;transform:scaleY(1)}to{opacity:.7;transform:scaleX(35)}}@keyframes ritual-turn{to{transform:rotate(180deg)scale(1.08)}}@keyframes card-arrive{0%{opacity:0;transform:perspective(60rem)rotateY(85deg)scale(.72)}to{opacity:1;transform:perspective(60rem)rotateY(0)scale(1)}}@keyframes sheen{to{transform:translate(80%)}}@keyframes rise-in{0%{opacity:0;transform:translateY(1rem)}}@keyframes turn{to{transform:rotate(360deg)}}@media (width>=48rem){.summon-shell{padding-inline:2rem}.summon-stage{min-height:32rem;margin-block:1.5rem}.featured-portrait{opacity:.75;width:46%;right:2%}.banner-copy{text-align:left;margin-right:36%}.rate-strip{justify-content:flex-start}.result-card{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(20rem,1fr) minmax(20rem,1fr);align-items:center;gap:1.5rem;width:min(100%,64rem);margin:0 auto}.result-progress{grid-column:1/-1}.card-frame{grid-row:2;width:min(29vw,21rem);max-height:66vh}.result-copy{text-align:left;grid-area:2/2;margin:0}.result-badges{justify-content:flex-start}.reveal-actions{grid-column:1/-1}.result-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.summary-card{grid-template-rows:minmax(10rem,28vh) auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar{gap:1rem}.brand-lockup{min-width:0}.topbar-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.app-nav{background:#030918c7;border:1px solid #81ccf038;gap:.2rem;padding:.2rem;display:flex}.app-nav a{color:#9eb9cb;letter-spacing:.08em;text-transform:uppercase;padding:.48rem .65rem;font-size:.72rem;font-weight:800;text-decoration:none}.app-nav a:hover,.app-nav a.active{color:#e4f8ff;background:#449ed433}.music-toggle{bottom:max(1rem, env(safe-area-inset-bottom));left:max(1rem, env(safe-area-inset-left));z-index:50;color:#dff5ff;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:#030918e6;border:1px solid #81ccf06b;align-items:center;gap:.45rem;min-height:2.7rem;padding:.55rem .75rem;font-size:.7rem;font-weight:800;display:flex;position:fixed;box-shadow:0 .7rem 1.8rem #0000004d,inset 0 1px #ffffff1f}.music-toggle:hover,.music-toggle:focus-visible{background:#102c4cf5;border-color:#82d8ff}.music-toggle[aria-pressed=true]{color:#fff0ae;border-color:#ffe28b9e}.music-toggle-icon{border:1px solid;border-radius:50%;place-items:center;width:1.15rem;height:1.15rem;font-size:.62rem;line-height:1;display:grid}.collection-shell{gap:.5rem}.collection-panel{background:linear-gradient(145deg,#0a1d39e6,#020714ed);border:1px solid #65c3ef3d;flex:1;width:min(100%,72rem);margin:1rem auto 0;padding:clamp(1rem,3vw,2rem);box-shadow:0 1.5rem 4rem #0000006b,inset 0 0 3rem #2091d214}.collection-heading{border-bottom:1px solid #83d1f42e;justify-content:space-between;align-items:end;gap:1rem;padding-bottom:1rem;display:flex}.collection-heading h2{margin:.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,7vw,3.5rem);font-weight:500}.collection-count{color:#a5c3d4;white-space:nowrap;margin:0;font-size:.8rem;font-weight:800}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:.8rem;padding-top:1rem;display:grid}.collection-card{background:#030c1de0;border:1px solid #6ac5ef4d;grid-template-columns:minmax(6.5rem,8rem) 1fr;min-width:0;display:grid;overflow:hidden;box-shadow:0 .7rem 1.8rem #00000042}.collection-card.rarity-4{border-color:#ffc25c94}.collection-card.rarity-5{border-color:#ffe576e0;box-shadow:0 0 1.6rem #ffce4f24}.collection-portrait{background:radial-gradient(circle at 50% 30%,#27567b,#071328 72%);min-height:10rem}.collection-portrait img{object-fit:cover;width:100%;height:100%;min-height:10rem;display:block}.collection-card-copy{min-width:0;padding:.8rem}.collection-rarity{color:#8fdfff;letter-spacing:.08em;margin:0;font-size:.72rem}.rarity-4 .collection-rarity{color:#ffd378}.rarity-5 .collection-rarity{color:#fff2a2}.collection-card h3{text-overflow:ellipsis;white-space:nowrap;margin:.28rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:600;overflow:hidden}.collection-class{color:#91b7ce;letter-spacing:.12em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin:.2rem 0 .8rem;font-size:.7rem;font-weight:800;overflow:hidden}.collection-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:0;display:grid}.collection-stats div{min-width:0}.collection-stats dt{color:#6f91a8;text-transform:uppercase;font-size:.6rem}.collection-stats dd{color:#e0f2fc;margin:.15rem 0 0;font-size:.76rem;font-weight:800}.collection-empty,.collection-loading{text-align:center;place-content:center;place-items:center;min-height:18rem;padding:2rem 1rem;display:grid}.collection-empty h3{margin:.25rem 0;font-family:Georgia,Times New Roman,serif;font-size:1.65rem}.collection-empty p:not(.sigil-mark){color:#96afc2;margin:0}.sigil-mark{color:#96e6ff;text-shadow:0 0 1.5rem #1ebdff;margin:0;font-size:3rem}.text-link{color:#a8e9ff;margin-top:1rem;font-weight:800;display:inline-block}.collection-panel>.error-banner{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.collection-panel>.error-banner button{color:#fff0b0;cursor:pointer;background:#5a3a08cc;border:1px solid #ffd978;padding:.45rem .7rem;font-weight:800}.summon-shell:after{z-index:-3;content:"";pointer-events:none;background:radial-gradient(at 20% 40%,#469fe014,#0000 26%),radial-gradient(at 80% 65%,#7844cb12,#0000 24%);animation:14s ease-in-out infinite alternate field-breathe;position:fixed;inset:-20%}.summon-stage{background:radial-gradient(circle at 50% 48%,#279de933,#0000 29rem),linear-gradient(170deg,#081b3dd9,#010511f5);border-color:#66caf657;min-height:clamp(23rem,62svh,38rem)}.summon-stage:before{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 4rem,#7ed9fc06 4.05rem 4.1rem),linear-gradient(115deg,#0000 0 48%,#90e0ff14 48.1%,#0000 48.25%);position:absolute;inset:0}.orbit-outer{border-color:#60ccff80;box-shadow:0 0 3.2rem #25b4ff40,inset 0 0 3rem #25b4ff24}.orbit-inner{border-color:#c59dff57;box-shadow:0 0 2.5rem #a16dff33,inset 0 0 2rem #25b4ff24}.summon-sigil{border-color:#ffe28bdb;box-shadow:0 0 2rem #ffcf4452,inset 0 0 2.5rem #ffbe3933}.reveal-overlay{--reveal-accent:#6edcff;--reveal-soft:#29b4ff5c;--reveal-deep:#07162f;background:radial-gradient(circle at 50% 45%, var(--reveal-soft), transparent min(45vw, 34rem)), linear-gradient(160deg, #081b3d 0%, #01030c 78%);isolation:isolate;outline:0}.reveal-overlay.rarity-tone-rare{--reveal-accent:#cc9cff;--reveal-soft:#c26fff57;--reveal-deep:#211136}.reveal-overlay.rarity-tone-ultra{--reveal-accent:#f4ddff;--reveal-soft:#8d6cff6b;--reveal-deep:#170a33;background:radial-gradient(circle at 50% 45%,#ff73d53d,#0000 25rem),radial-gradient(circle at 50% 45%,#57daff47,#0000 35rem),linear-gradient(160deg,#160b3d,#03030e 78%)}.reveal-overlay:before,.reveal-overlay:after{pointer-events:none;content:"";position:absolute;inset:0}.reveal-overlay:before{z-index:-2;background-image:linear-gradient(#8ed5f909 1px,#0000 1px),linear-gradient(90deg,#8ed5f909 1px,#0000 1px);background-size:3.5rem 3.5rem;-webkit-mask-image:radial-gradient(circle,#000,#0000 76%);mask-image:radial-gradient(circle,#000,#0000 76%)}.reveal-overlay:after{z-index:-1;background:radial-gradient(at 50% 100%,#1f7db11f,#0000 48%);animation:9s ease-in-out infinite alternate field-breathe}.ritual-scene{background:radial-gradient(circle,#2284cb1f,#0000 35rem);min-height:100svh}.scene-haze{background:var(--reveal-soft);filter:blur(3rem);opacity:.34;pointer-events:none;border-radius:50%;width:70vw;height:18vw;position:absolute}.haze-one{animation:12s ease-in-out infinite alternate haze-drift;transform:translate(-35vw,18vh)rotate(-18deg)}.haze-two{animation:16s ease-in-out 1s infinite alternate-reverse haze-drift;transform:translate(32vw,-16vh)rotate(24deg)}.particle-field{position:absolute;inset:0;overflow:hidden}.particle-field i{background:var(--reveal-accent);width:.22rem;height:.22rem;box-shadow:0 0 .55rem var(--reveal-accent);opacity:.58;border-radius:50%;animation:7s ease-in-out infinite particle-rise;position:absolute}.particle-field i:nth-child(3n){opacity:.38;width:.12rem;height:.12rem;animation-duration:9s}.particle-field i:nth-child(4n){filter:blur(1px);opacity:.25;width:.35rem;height:.35rem;animation-duration:11s}.summoning-circle{width:min(95vw,43rem);height:min(95vw,43rem);filter:drop-shadow(0 0 1.3rem var(--reveal-soft));position:absolute;overflow:visible}.summoning-circle g{transform-origin:320px 320px;transform-box:fill-box;fill:none;stroke:var(--reveal-accent);stroke-linecap:round}.circle-base{stroke-width:1.2px;opacity:.38;animation:6s ease-in-out infinite circle-breathe}.circle-rings{stroke-width:2.4px;stroke-dasharray:2 13 70 6;opacity:.58;animation:26s linear infinite circle-spin}.circle-glyphs{stroke-width:2px;stroke-dasharray:1 8;opacity:.72;animation:18s linear infinite circle-spin-reverse}.circle-arcs{stroke-width:4px;stroke-dasharray:78 240 20 75;opacity:.86;animation:11s linear infinite circle-spin}.circle-glow{stroke-width:2px;opacity:.9;filter:blur(1px);animation:2.3s ease-in-out infinite orb-ring}.rarity-tone-rare .circle-arcs{stroke-width:5px}.rarity-tone-ultra .circle-base,.rarity-tone-ultra .circle-rings{stroke:#b9f4ff}.rarity-tone-ultra .circle-arcs{stroke:#ffe7ff;stroke-width:6px}.energy-orb{aspect-ratio:1;background:radial-gradient(circle, #f6ffff 0 3%, var(--reveal-accent) 13%, transparent 63%);width:clamp(4rem,14vw,7rem);filter:drop-shadow(0 0 1.2rem var(--reveal-accent));border-radius:50%;place-items:center;animation:1.8s ease-in-out infinite orb-pulse;display:grid;position:absolute}.orb-core{aspect-ratio:1;width:28%;box-shadow:0 0 1rem #fff, 0 0 2.5rem var(--reveal-accent);background:#fff;border-radius:50%}.orb-halo{border:1px solid var(--reveal-accent);opacity:.38;border-radius:50%;animation:2s ease-out infinite orb-ring;position:absolute;inset:-45%}.orb-spark{width:.3rem;height:.3rem;box-shadow:0 0 .6rem var(--reveal-accent);background:#fff;border-radius:50%;animation:2.2s linear infinite spark-orbit;position:absolute}.spark-a{animation-delay:-.7s}.spark-b{animation-delay:-1.45s;transform:scale(.6)}.spark-c{animation-delay:-1.95s;transform:scale(.8)}.rarity-tone-rare .energy-orb{width:clamp(5rem,17vw,8rem)}.rarity-tone-ultra .energy-orb{background:conic-gradient(from 90deg,#8cf8ff,#f8a7ff,#ffe27f,#8cf8ff);width:clamp(6rem,20vw,10rem);box-shadow:0 0 3rem #fff,0 0 6rem #de9cff}.ritual-copy{z-index:3;text-align:center;text-shadow:0 2px 1.25rem #000;align-self:end;margin:0 1rem 11vh;position:relative}.ritual-copy p{color:#eefcff;letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.05rem,3vw,1.35rem)}.ritual-copy .ritual-phase{color:var(--reveal-accent);letter-spacing:.2em;margin-bottom:.4rem;font-family:Inter,ui-sans-serif,sans-serif;font-size:.68rem;font-weight:800}.scene-skip{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:4;color:#ecfaff;cursor:pointer;background:#020713ad;border:1px solid #eaf9ff66;min-height:2.8rem;padding:.6rem 1rem;font-weight:800;position:absolute}.result-card{width:min(100%,76rem);min-height:100svh;padding:max(1.1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 42%,#339ddb24,#0000 25rem);grid-template-rows:auto minmax(14rem,48vh) auto auto;margin:0 auto;display:grid;position:relative}.result-card.rarity-4{background:radial-gradient(circle at 50% 42%,#c26fff29,#0000 25rem)}.result-card.rarity-5{background:radial-gradient(circle at 50% 42%,#ffcf442e,#0000 25rem)}.result-progress{margin:.25rem .5rem 0}.card-frame{aspect-ratio:2/3;border-width:2px;border-color:var(--reveal-accent);background:linear-gradient(150deg, #ffffff3d, var(--reveal-deep) 26%, #030714 72%);width:min(68vw,22rem);max-height:54vh;box-shadow:0 0 1.5rem var(--reveal-soft), 0 1.75rem 5rem #000000bf;transform-style:preserve-3d;align-self:center;padding:.28rem}.card-phase-cardArrival .card-frame{animation:.9s cubic-bezier(.2,.86,.2,1) both card-arrive}.card-phase-reveal .card-frame{animation:1.4s cubic-bezier(.2,.86,.2,1) both card-dissolve-frame}.card-phase-complete .card-frame{animation:.5s ease-out both card-settle}.rarity-4 .card-frame{border-color:#cc9cff;box-shadow:0 0 2.2rem #c26fff80,0 1.75rem 5rem #000000bf}.rarity-5 .card-frame{border-color:#ffe47b;box-shadow:0 0 3rem #ffcf44b8,0 1.75rem 5rem #000000bf}.card-frame img{object-fit:contain;display:block}.card-back{width:100%;height:100%;color:var(--reveal-accent);letter-spacing:.18em;background:radial-gradient(circle,#36b2e873,#061633 62%,#020817);place-content:center;place-items:center;gap:1rem;font-size:.68rem;font-weight:900;display:grid}.card-emblem{aspect-ratio:1;border:1px solid;border-radius:50%;place-items:center;width:4rem;font-size:2rem;display:grid;box-shadow:0 0 1.3rem,inset 0 0 1.3rem}.rarity-4 .card-back{background:radial-gradient(circle,#c26fff80,#211136 64%,#0b0615)}.rarity-5 .card-back{color:#fff;background:conic-gradient(from 180deg,#54d5ff73,#ff8fe06b,#ffd86b66,#54d5ff73)}.card-dissolve{--dissolve-duration:1.4s}.card-dissolve>img:not(.card-layer){z-index:1;width:auto;height:auto;position:absolute;inset:.28rem}.card-dissolve .card-layer-class{z-index:2;width:auto;height:auto;animation:card-dissolve-up var(--dissolve-duration) cubic-bezier(.4, 0, .2, 1) both;position:absolute;inset:.28rem}.card-dissolve-edge{z-index:3;background:linear-gradient(90deg, transparent, var(--reveal-accent) 18%, #fff 50%, var(--reveal-accent) 82%, transparent);width:120%;height:.28rem;box-shadow:0 0 .35rem #fff, 0 0 1rem var(--reveal-accent), 0 0 2rem var(--reveal-soft);filter:blur(.2px);animation:dissolve-edge-rise var(--dissolve-duration) cubic-bezier(.4, 0, .2, 1) both;pointer-events:none;position:absolute;top:100%;left:-10%}.card-dissolve-edge:after{background:var(--reveal-accent);content:"";filter:blur(1rem);opacity:.6;position:absolute;inset:-.7rem 12%}.card-dissolve-particles{z-index:4;pointer-events:none;position:absolute;inset:.28rem;overflow:hidden}.card-dissolve-particles i{top:var(--particle-y);left:var(--particle-x);width:var(--particle-size);height:var(--particle-size);background:radial-gradient(circle, #fff 0 20%, var(--reveal-accent) 48%, transparent 74%);box-shadow:0 0 .45rem #fff, 0 0 .9rem var(--reveal-accent);opacity:0;animation:dissolve-particle .5s var(--particle-delay) ease-out both;border-radius:50%;position:absolute}.card-dissolve-particles i:nth-child(3n){filter:blur(.6px)}.result-copy{max-width:35rem}.result-copy h2{text-shadow:0 0 1rem var(--reveal-soft)}.rarity-stars{color:var(--reveal-accent);text-shadow:0 0 1rem var(--reveal-accent)}.result-badges span{border-color:color-mix(in srgb, var(--reveal-accent), transparent 58%)}.reveal-actions{flex-wrap:wrap;justify-content:center;align-items:center;padding-top:.5rem}.reveal-actions button{min-width:8rem}.reveal-actions .next-result{background:linear-gradient(180deg, color-mix(in srgb, var(--reveal-accent), #402404 45%), #281b08)}.introduction-scene{width:100%;height:100svh;min-height:32rem;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));opacity:1;place-items:center;margin:0 auto;transition:opacity .9s;display:grid;position:relative;overflow:hidden}.introduction-entering,.introduction-exiting{opacity:0}.introduction-backdrop{z-index:-1;background:radial-gradient(at 50% 25%,#fdd17533,#0000 27rem),linear-gradient(160deg,#253958d6,#050a16fa);position:absolute;inset:0}.introduction-art{grid-area:1/1;place-self:stretch stretch;place-items:center;width:100%;height:100%;padding-bottom:clamp(19rem,40svh,23rem);display:grid;position:relative;overflow:hidden}.introduction-art canvas{object-fit:contain;width:100%;height:100%;display:block}.introduction-copy{z-index:2;text-align:center;contain:layout;background:linear-gradient(#040a18b3,#040a18f0);border:1px solid #f4d8873d;grid-area:1/1;align-self:end;width:min(100%,46rem);height:clamp(18rem,38svh,22rem);margin:0 auto;padding:1rem clamp(.85rem,3vw,1.35rem);overflow:auto;box-shadow:0 1rem 3rem #0000007a}.introduction-copy h2{margin:.15rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,6vw,2.7rem);font-weight:500}.introduction-copy .result-class{margin-bottom:.85rem}.introduction-caption{color:#e8eff5;height:4.65rem;font-family:Georgia,Times New Roman,serif;font-size:1rem;line-height:1.55;overflow:auto}.segment-counter{color:#8ba6bb;letter-spacing:.1em;text-transform:uppercase;margin:.75rem 0 0;font-size:.72rem;font-weight:800}.introduction-actions{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:1rem;display:flex}.introduction-actions button{color:#f3fbff;cursor:pointer;background:#091b33eb;border:1px solid #9edaf585;min-height:2.8rem;padding:.55rem .8rem;font-size:.8rem;font-weight:800}.introduction-actions .next-result{background:linear-gradient(#987021,#4c2c07);border-color:#ffe18a}.result-summary{z-index:8;width:min(100%,76rem);min-height:100%;padding:max(1.25rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));background:linear-gradient(170deg,#081731fa,#020610fc);margin:0 auto;position:absolute;inset:0;overflow:auto}.result-summary header{text-align:center}.result-summary header h2{margin:.25rem 0 .3rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,8vw,3.6rem);font-weight:500}.result-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.8rem}.summary-card{border-color:#6bc6ef61;grid-template-rows:minmax(10rem,24vh) auto}.summary-card-art{min-height:0}.summary-card-art img{object-fit:contain;width:100%;height:100%;display:block}.summary-return{color:#fff;cursor:pointer;background:linear-gradient(#9b6c1d,#503006);border:1px solid #ffe082;min-height:3rem;margin:1rem auto 0;padding:.65rem 1rem;font-weight:850;display:block}@keyframes field-breathe{0%{opacity:.55;transform:scale(.96)}to{opacity:1;transform:scale(1.04)}}@keyframes haze-drift{0%{opacity:.22;margin-left:-3vw}to{opacity:.48;margin-left:5vw}}@keyframes particle-rise{0%,to{opacity:0;transform:translateY(1.5rem)scale(.72)}25%{opacity:.65}72%{opacity:.28}to{transform:translate3d(var(--drift), -5rem, 0) scale(1.18)}}@keyframes circle-spin{to{transform:rotate(360deg)}}@keyframes circle-spin-reverse{to{transform:rotate(-360deg)}}@keyframes circle-breathe{50%{opacity:.6;transform:scale(1.02)}}@keyframes orb-pulse{0%,to{opacity:.72;transform:scale(.82)}50%{opacity:1;transform:scale(1.12)}}@keyframes orb-ring{0%{opacity:.8;transform:scale(.72)}to{opacity:0;transform:scale(1.55)}}@keyframes spark-orbit{to{transform:rotate(360deg)translate(clamp(3rem,10vw,5rem))rotate(-360deg)}}@keyframes card-dissolve-frame{0%{filter:brightness(1.15);transform:scale(.985)}18%{filter:brightness(1.32);transform:scale(1.012)}to{filter:brightness();transform:scale(1)}}@keyframes card-dissolve-up{0%{clip-path:inset(0);filter:brightness();opacity:1}15%{filter:brightness(1.24)}82%{filter:brightness(1.12);opacity:.94}to{clip-path:inset(0 0 100%);filter:brightness();opacity:0}}@keyframes dissolve-edge-rise{0%{opacity:0;top:100%;transform:scaleX(.72)}12%{opacity:1;transform:scaleX(1)}88%{opacity:1;transform:scaleX(1)}to{opacity:0;top:0;transform:scaleX(.78)}}@keyframes dissolve-particle{0%{opacity:0;transform:translate(0,0)scale(.35)}18%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate3d(var(--particle-drift), calc(var(--particle-rise) * -1), 0) scale(.08)}}@keyframes card-settle{0%{transform:scale(1.035)}to{transform:scale(1)}}@media (width>=48rem){.result-card{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(20rem,1fr) minmax(20rem,1fr);align-items:center;gap:1.2rem 2rem}.result-progress{grid-column:1/-1}.result-card .card-frame{grid-area:2/1;width:min(29vw,23rem);max-height:66vh}.result-card .result-copy{text-align:left;grid-area:2/2;margin:0}.result-card .result-badges{justify-content:flex-start}.result-card .reveal-actions{grid-column:1/-1}.introduction-art canvas{transform:translateY(-clamp(4rem, 10svh, 8rem)) scale(.92);transform-origin:50%}}@media (width<=47.99rem){.introduction-art{padding-bottom:clamp(16rem,34svh,20rem)}.introduction-art:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(#0000 0%,#050a1614 32%,#050a166b 65%,#040a18db 88%,#040a18fa 100%);position:absolute;inset:38% 0 0}.introduction-art canvas{transform:translateY(4%) scale(clamp(1.4, 1.25 + .55vw, 1.55));transform-origin:50% 78%}}@media (width<=36rem){.topbar{align-items:flex-start}.topbar-right{gap:.4rem}.account-cluster{order:2}.app-nav a{padding-inline:.48rem}.music-toggle{bottom:calc(max(1rem, env(safe-area-inset-bottom)) + 5.75rem)}.collection-card{grid-template-columns:minmax(5.5rem,7rem) 1fr}.collection-portrait,.collection-portrait img{min-height:8.5rem}.ritual-scene,.result-card,.introduction-scene,.result-summary{border-block:1px solid #8ed5f947}}@media (prefers-reduced-motion:reduce){.introduction-scene{opacity:1;transition:none}.summon-shell:after,.scene-haze,.particle-field i,.summoning-circle g,.energy-orb,.orb-halo,.orb-spark,.card-frame,.card-dissolve .card-layer-class,.card-dissolve-edge,.card-dissolve-particles i{animation:none!important}.card-dissolve .card-layer-class{clip-path:inset(0 0 100%);opacity:0}}
