/* Six paid stages: violet night, increasing orbital detail, then a warm gold crown. */
.star-medal.activity-button{position:absolute}.star-medal.activity-button>.button-gleam{inset:0 6% 26%;border-radius:50%;mask-image:radial-gradient(ellipse,#000 35%,transparent 70%)}
.star-gallery{position:relative;isolation:isolate;overflow:hidden;border:1px solid #bba3f234;border-radius:28px;padding:34px;background:radial-gradient(ellipse at 34% 35%,#49347770,transparent 55%),linear-gradient(145deg,#14132d,#20183b 65%,#121126);color:#eee5ff;box-shadow:inset 0 1px #e4caff15,0 20px 80px #07051133;--ink:#f2e5ff;--muted:#a89bbc;--line:#c0a5ed2b}
.star-gallery[data-tier='6']{background:radial-gradient(ellipse at 38% 42%,#77633e36,transparent 52%),linear-gradient(145deg,#19132d,#251b3c 65%,#171326);border-color:#ffe1a25e}.star-ambient{position:absolute;inset:0;z-index:-1;pointer-events:none}.star-ambient i{position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;border-radius:50%;background:#e0cfff;box-shadow:0 0 8px #c9a0ff;opacity:.4;animation:star-twinkle 5s var(--delay) ease-in-out infinite}.star-gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.star-eyebrow{font-size:8px;letter-spacing:2.6px;color:#ac96d2;line-height:1.8}.star-gallery-heading h1{font-size:32px;font-weight:500;letter-spacing:2px;margin:12px 0 9px}.star-gallery-heading h1>span{color:#d8b8ff;font-size:36px;margin-left:5px}.star-gallery-heading p{font-size:12px;color:#ac9fc2;line-height:1.8}.star-preview-link,.star-text-button{border:0;background:transparent;color:#cbb3f0;display:flex;align-items:center;gap:8px;font-size:11px;min-height:44px;text-align:left}.star-preview-link{border:1px solid #b799e449;background:#b99ee80c;border-radius:12px;padding:10px 15px;white-space:nowrap}.star-status-strip{display:flex;justify-content:space-between;gap:12px;margin:27px 0 0;border-block:1px solid #b49bd724;padding:14px 0;color:#a99bbb;font-size:10px}.star-status-strip>span{display:flex;align-items:center;gap:8px}.star-status-strip i{width:5px;height:5px;border-radius:50%;background:#c6adff;box-shadow:0 0 8px #b692ff}.star-status-strip b{font-size:15px;letter-spacing:.4px;color:#e7ceff;font-variant-numeric:tabular-nums}
.star-gallery-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:28px;align-items:center}.star-universe{min-width:0}.star-map{position:relative;aspect-ratio:1;max-width:640px;margin:30px auto 15px;isolation:isolate}.star-map-nebula{position:absolute;inset:18%;border-radius:50%;filter:blur(12px);background:radial-gradient(ellipse,#825ddc45,#343d8722 45%,transparent 68%);z-index:-1;transition:filter 1.2s,opacity 1.2s}.star-map[data-tier='0'] .star-map-nebula{opacity:.4}.star-map[data-tier='5'] .star-map-nebula,.star-map[data-tier='6'] .star-map-nebula{filter:blur(6px);background:conic-gradient(from 90deg,#d7a3ff22,#6cbef133,#ffa4d329,#d7a3ff22);animation:star-spin 36s linear infinite}.star-map-rings{position:absolute;inset:19% 7%;pointer-events:none;transform:rotate(-18deg)}.star-map-rings i{position:absolute;inset:0;border:1px solid #ab91e13e;border-radius:50%;box-shadow:0 0 15px #ac85ee13}.star-map-rings i:nth-child(2){inset:13% 5%;transform:rotate(35deg);border-color:#8cc4ff2e}.star-map-rings i:nth-child(3){inset:28% 4%;transform:rotate(-36deg);border-color:#daabec30}.star-map[data-tier='0'] .star-map-rings i:nth-child(n+2){opacity:.3}.star-map[data-tier='3'] .star-map-rings,.star-map[data-tier='4'] .star-map-rings,.star-map[data-tier='5'] .star-map-rings,.star-map[data-tier='6'] .star-map-rings{animation:star-ring-drift 18s ease-in-out infinite}.star-map-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.star-map-links path{stroke:#b49ddb23;stroke-width:.25;stroke-dasharray:1 1.5;fill:none;transition:stroke 1.5s}.star-map-links path.charged{stroke:#bca0f588;stroke-width:.4;stroke-dasharray:2 1;filter:drop-shadow(0 0 2px #b69aff);animation:star-trace 9s linear infinite}.star-map[data-tier='6'] .star-map-links path.charged{stroke:#ffdfacb5;filter:drop-shadow(0 0 2px #ffd580)}
.star-map-core{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:30%;text-align:center;pointer-events:none}.star-core-aura{position:absolute;inset:12% -20%;border-radius:50%;background:radial-gradient(ellipse,#9167d952,transparent 70%);filter:blur(5px)}.star-map-core img{width:100%;position:relative;filter:drop-shadow(0 0 17px #659aff55);animation:star-float 6s ease-in-out infinite}.star-map-core b{display:block;color:#d2c0ed;font-size:6px;letter-spacing:3px;font-weight:400;margin-top:6px}.star-map-core small{display:block;color:#9c8bb4;font-size:9px;line-height:1.7;letter-spacing:1px;margin-top:8px}.star-map-core.crowned .star-core-aura{background:radial-gradient(ellipse,#ffd39060,transparent 70%);inset:-10% -25%}.star-map-core.crowned b{letter-spacing:1px;color:#f5daa8}.star-map-core.crowned small{color:#e3c79b}
.star-medal{position:absolute;left:var(--mx);top:var(--my);width:25%;max-width:144px;transform:translate(-50%,-50%);padding:0;border:0;background:none;color:#d3c9e6;text-align:center;isolation:isolate;border-radius:14px;z-index:2}.star-medal-glass{display:block;position:relative;aspect-ratio:1;width:80%;margin:0 auto 8px;border:1px solid #bfa7eb38;border-radius:50%;background:radial-gradient(ellipse at 30% 15%,#d3d2f816,transparent 55%),#9785b10b;box-shadow:inset 0 0 15px #c6baff0f,0 9px 22px #08041550;transition:transform .7s,box-shadow 1s}.star-medal .medal-art{width:114%;max-width:none;left:-7%;top:-8%;filter:drop-shadow(0 5px 7px #03021355)}.star-medal strong{display:block;font-size:12px;font-weight:500;line-height:1.5;letter-spacing:.7px}.star-medal>small{display:flex;align-items:center;justify-content:center;gap:3px;font-size:8px;color:#988bab;margin-top:5px;line-height:1.6}.star-medal>small .icon{width:9px;height:9px}.star-stage-index{position:absolute;top:1%;right:11%;border-radius:7px;padding:2px 4px;font-size:8px;color:#b49ccc;background:#221a36e0;border:1px solid #b99dd53d}.star-medal.is-next .star-stage-index{background:#73509e;color:#f7e7ff;border-color:#c4a3ea}.star-medal.is-next .star-medal-glass{border-color:#cfacf78f;box-shadow:0 0 24px #ac77df2c,inset 0 0 15px #b288e21b;animation:star-next-glow 4s ease-in-out infinite}.star-medal.is-next>small{color:#e4b8ff}.star-medal.is-lit .star-medal-glass{border-color:color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:0 0 calc(8px + var(--tier)*4px) color-mix(in srgb,var(--accent) 28%,transparent),inset 0 0 15px #d8bdff19;background:radial-gradient(ellipse,color-mix(in srgb,var(--accent) 12%,transparent),#35234833)}.star-medal.is-lit>small{color:var(--accent)}.star-medal-orbit{position:absolute;inset:-4% 7% 29%;border:1px solid color-mix(in srgb,var(--accent) 48%,transparent);border-radius:50%;transform:rotate(-26deg) scaleY(.75);opacity:0;pointer-events:none}.star-medal.is-lit[data-stage='2'] .star-medal-orbit,.star-medal.is-lit[data-stage='3'] .star-medal-orbit,.star-medal.is-lit[data-stage='4'] .star-medal-orbit,.star-medal.is-lit[data-stage='5'] .star-medal-orbit,.star-medal.is-lit[data-stage='6'] .star-medal-orbit{opacity:1;animation:star-personal-orbit 10s linear infinite}.star-medal-orbit.second{inset:0 3% 32%;animation-direction:reverse!important;animation-duration:15s!important;transform:rotate(35deg) scaleY(.75)}.star-medal[data-stage='2'] .star-medal-orbit.second,.star-medal[data-stage='3'] .star-medal-orbit.second{display:none}.star-medal-particles{position:absolute;inset:-4% 3% 30%;color:var(--accent);font-size:14px;pointer-events:none;opacity:0;text-align:left}.star-medal-particles i,.star-medal-particles em{position:absolute;right:0;bottom:12%;font-style:normal}.star-medal-particles em{right:20%;bottom:100%;font-size:28px}.star-medal.is-lit[data-stage='4'] .star-medal-particles,.star-medal.is-lit[data-stage='5'] .star-medal-particles,.star-medal.is-lit[data-stage='6'] .star-medal-particles{opacity:.8;animation:star-twinkle 4s ease-in-out infinite}.star-medal.is-lit[data-stage='6'] .star-medal-glass:after{content:'';position:absolute;inset:-10%;border-radius:50%;background:repeating-conic-gradient(#ffe0ac00 0 13deg,#ffe0ac45 15deg 16deg,#ffe0ac00 19deg 30deg);mask-image:radial-gradient(transparent 50%,#000 65%,transparent 72%);animation:star-spin 25s linear infinite}.star-medal:hover .star-medal-glass{transform:translateY(-4px) scale(1.04)}.star-gallery button:focus-visible,.star-ceremony-dialog button:focus-visible,.star-unlock-dialog button:focus-visible{outline:2px solid #e7bdff;outline-offset:4px}.star-map-caption{display:flex;align-items:center;justify-content:center;gap:12px;color:#a698bc;font-size:9px;letter-spacing:1px;margin:12px 0 24px}.star-map-caption>span{width:30px;height:1px;background:linear-gradient(90deg,transparent,#bd9cdb)}.star-map-caption>span:last-child{transform:rotate(180deg)}
.star-journey{border:1px solid #bda2dc2a;background:linear-gradient(140deg,#b99be00b,#a58ed504);border-radius:20px;padding:24px;min-width:0}.star-journey h2{font-size:12px;font-weight:400;color:#c9b8df;overflow-wrap:anywhere;line-height:1.8;margin:9px 0}.star-completion-count{font:68px Georgia,serif;color:#eddaff;display:flex;align-items:center;gap:12px;margin:22px 0}.star-completion-count>span{font-size:22px;color:#9c89b2}.star-completion-count small{display:block;font:9px 'Microsoft YaHei',sans-serif;line-height:1.8;margin-top:6px}.star-step-progress{display:flex;gap:5px}.star-step-progress i{height:4px;flex:1;border-radius:4px;background:#b494d921}.star-step-progress i.lit{background:linear-gradient(90deg,#9c80e9,#e0b6ff);box-shadow:0 0 9px #b08cfa55}.star-journey-copy{font-size:12px;line-height:2.1;color:#ab99bd;margin:25px 0}.star-journey-copy strong{color:#dfc9f7;font-weight:500}.star-journey .btn{margin-top:9px;font-size:11px;min-height:46px}.star-ignite-main{justify-content:space-between;gap:7px}.star-ignite-main b{font-size:10px;font-weight:500;white-space:nowrap}.star-balance-note{display:block;font-size:9px;color:#a897b5;line-height:1.8;margin-top:12px}.star-spend-summary{border-top:1px solid #bd9fd92b;display:grid;gap:13px;margin-top:23px;padding-top:20px}.star-spend-summary>span{display:flex;gap:10px;justify-content:space-between;font-size:10px;color:#9685aa}.star-spend-summary b{font-weight:500;color:#c7b6da}.star-journey .star-text-button{font-size:9px;margin-top:10px}
.star-ladder{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid #c2a2e929;border-radius:15px;overflow:hidden;margin:8px 0 24px;background:#0807151f}.star-ladder>button{border:0;border-right:1px solid #baa3df1c;background:transparent;color:#998bad;padding:16px 11px;text-align:left;min-width:0}.star-ladder>button:last-child{border:0}.star-ladder span{display:block;font-size:7px;line-height:1.7;letter-spacing:.3px;white-space:nowrap}.star-ladder strong{display:block;font-size:11px;font-weight:400;margin:7px 0;white-space:nowrap}.star-ladder small{font:18px Georgia,serif;color:#b7a4cb}.star-ladder em{font:6px 'Segoe UI',sans-serif;margin-left:4px}.star-ladder .next{background:#b593df18;color:#e5c5ff;box-shadow:inset 0 -2px #c09ce3}.star-ladder .lit{background:#9b82c909;color:#ccb8e3}.star-ladder .lit small{color:#e2cbf9}.star-reward-vault{display:flex;align-items:center;gap:23px;padding:24px;border:1px solid #d4b27b3b;border-radius:20px;background:linear-gradient(110deg,#b5893e12,#a988b909 70%)}.star-vault-emblem{width:62px;height:68px;display:grid;place-items:center;border:1px solid #d4b27866;border-radius:18px;background:linear-gradient(135deg,#e9c58720,#9268a419);color:#f4d1a3;font-size:40px;flex-shrink:0;box-shadow:inset 0 0 15px #eac6ff12}.star-vault-copy{flex:1;min-width:0}.star-vault-copy .star-eyebrow{color:#c6ad8f;font-size:7px}.star-vault-copy h2{font-size:17px;font-weight:500;color:#e7d5bc;margin:7px 0}.star-vault-copy p{font-size:10px;color:#b7a58f;line-height:1.9}.star-vault-copy small{display:block;font-size:8px;line-height:1.8;color:#948594;margin-top:8px}.star-reward-vault>.btn{font-size:10px;white-space:nowrap;min-height:43px}.star-reward-vault.unsealed{border-color:#e8c58b66;box-shadow:0 0 26px #d6b2710e}.star-rule-foot{font-size:8px;line-height:2;color:#857493;margin-top:21px;text-align:center}
dialog.star-unlock-dialog{width:450px;max-width:calc(100vw - 24px);background:radial-gradient(ellipse at 50% 15%,#3d285d,#171329 60%);border:1px solid #b28bda66;color:#e9d9fb;border-radius:25px;--ink:#edddff;--muted:#a99abc;--line:#a98bce33}.star-unlock-dialog .modal-head{border-bottom-color:#b997dd20}.star-unlock-dialog .modal-head h2{font-size:11px;color:#b9a4ce}.star-unlock-card{text-align:center}.star-unlock-art{position:relative;width:210px;height:210px;margin:5px auto 15px;display:grid;place-items:center}.star-unlock-art .medal-art{width:190px;max-width:90%;filter:drop-shadow(0 8px 22px #0007);z-index:1}.star-unlock-ring{position:absolute;inset:13%;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:50%;transform:rotate(-20deg) scaleY(.7);box-shadow:0 0 25px color-mix(in srgb,var(--accent) 15%,transparent)}.star-unlock-spark{position:absolute;right:10px;top:15px;font-size:27px;color:var(--accent)}.star-unlock-card h3{font-size:25px;font-weight:500;letter-spacing:2px;margin:10px 0}.star-unlock-sub{font-size:11px;color:#ab97bf}.star-unlock-price{display:flex;align-items:center;justify-content:space-between;margin-top:26px;border-top:1px solid #b38bd933;padding-top:19px;font-size:11px;color:#ac97bc}.star-unlock-price strong{font:30px Georgia,serif;color:#ead3ff}.star-unlock-price small{font:10px 'Microsoft YaHei',sans-serif;color:#b49ac7;margin-left:7px}.star-unlock-receipt{display:grid;gap:11px;margin-top:18px;font-size:10px;color:#9d89ae}.star-unlock-receipt>span{display:flex;justify-content:space-between;gap:10px}.star-unlock-receipt b{color:#d6bedf;font-weight:400}.star-unlock-explain{margin-top:18px;font-size:10px;color:#b4a1c5;line-height:1.9;text-align:left;background:#07051033;border-radius:10px;padding:12px}.star-unlock-actions{display:grid;grid-template-columns:1fr 1.5fr;gap:9px;margin-top:20px}.star-unlock-actions .btn{font-size:11px;min-height:47px}.star-unlock-foot{display:block;color:#897797;font-size:8px;margin-top:15px}
dialog.star-ceremony-dialog{width:860px;max-width:calc(100vw - 20px);max-height:96dvh;padding:0;border-radius:25px;border:1px solid #d1abff66;background:#100c21;color:#f5e6ff;box-shadow:0 0 100px #9c6ace30,0 25px 90px #000a;--ink:#efdcff;--muted:#b29ec3;--line:#c6a1eb33}.star-ceremony-dialog::backdrop{background:#060311dc;backdrop-filter:blur(12px)}.star-ceremony-dialog .modal-head{position:sticky;top:0;border:0;z-index:20;background:linear-gradient(#100c21f2,#100c2100);padding:16px 22px 5px;min-height:44px}.star-ceremony-dialog .modal-head h2{font-size:10px;color:#b29ac7;font-weight:400;letter-spacing:1px}.star-ceremony-dialog .modal-body{padding:0}.star-ceremony{position:relative;isolation:isolate;overflow:hidden;text-align:center;min-height:680px;padding:18px 42px 27px;background:radial-gradient(ellipse at 50% 40%,#5f3f9149,transparent 60%)}.star-flight-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none}.star-ceremony-aurora{position:absolute;inset:-30%;background:conic-gradient(from 0deg,transparent,#9573db25,transparent,#7edcff15,transparent,#efb1d722,transparent);filter:blur(23px);z-index:-1;opacity:.5}.star-ceremony.is-finale .star-ceremony-aurora{background:conic-gradient(transparent,#ae83dd45,transparent,#80dfff38,transparent,#ffc68245,transparent);opacity:.8}.star-ceremony.is-running .star-ceremony-aurora{animation:star-spin 18s linear infinite}.star-ceremony-rays{position:absolute;left:8%;right:8%;top:0;height:75%;background:repeating-conic-gradient(from 10deg,transparent 0 13deg,#c499f216 15deg 16deg,transparent 19deg 30deg);mask-image:radial-gradient(ellipse,#000 5%,transparent 65%);pointer-events:none;opacity:.2}.star-ceremony.is-finale .star-ceremony-rays{background:repeating-conic-gradient(from 10deg,transparent 0 10deg,#ffd9a839 12deg 13deg,transparent 16deg 25deg);opacity:.7}.star-ceremony.is-running .star-ceremony-rays{animation:star-ray-arrive 9s ease-out both}.star-ceremony-rings{position:absolute;inset:3% 15% 42%;pointer-events:none}.star-ceremony-rings i{position:absolute;inset:10%;border:1px solid #caa5ee36;border-radius:50%;transform:rotate(-25deg) scaleY(.6);box-shadow:0 0 18px #cfafff14}.star-ceremony-rings i:nth-child(2){inset:18% 0;transform:rotate(35deg) scaleY(.7);border-color:#8dd9f94c}.star-ceremony-rings i:nth-child(3){inset:2% 18%;transform:rotate(70deg) scaleY(.7);border-color:#f2b7d83a}.star-ceremony-rings i:nth-child(4){inset:-7%;transform:rotate(-12deg) scaleY(.8);border-color:#ffda9c51}.star-ceremony[data-stage='1'] .star-ceremony-rings i:nth-child(n+2),.star-ceremony[data-stage='2'] .star-ceremony-rings i:nth-child(n+3),.star-ceremony[data-stage='3'] .star-ceremony-rings i:nth-child(4){display:none}.star-ceremony.is-running .star-ceremony-rings{animation:star-ring-drift 10s ease-in-out both}.star-ceremony-label{position:relative;color:#b093cc;letter-spacing:4px;font-size:8px;margin:9px 0 0;z-index:7}.star-ceremony-orbit{position:relative;width:100%;max-width:560px;height:345px;margin:0 auto;--orbit-radius:148px}.star-ceremony-center{position:absolute;left:50%;top:53%;width:230px;transform:translate(-50%,-50%);z-index:4}.star-ceremony-center .star-crown-art{width:100%;filter:drop-shadow(0 8px 32px #c293fb65)}.star-ceremony-medal{width:100%}.star-ceremony-medal .medal-art{width:100%;max-width:none;filter:drop-shadow(0 8px 28px color-mix(in srgb,var(--accent) 35%,transparent))}.star-ceremony-satellite{position:absolute;top:50%;left:50%;width:74px;height:74px;margin:-37px;transform:rotate(var(--angle)) translateY(calc(var(--orbit-radius)*-1)) rotate(calc(var(--angle)*-1));z-index:3}.star-ceremony-satellite .medal-art{width:100%;max-width:none;filter:drop-shadow(0 0 9px #d3a7ff80)}.star-ceremony-shockwave{position:absolute;inset:0;border:1px solid #e1b6ff8c;border-radius:50%;opacity:0;pointer-events:none}.star-ceremony.is-running .star-ceremony-shockwave{animation:star-shockwave 3s 1s ease-out both}.star-ceremony.is-finale .star-ceremony-shockwave{border-color:#ffe2ad;box-shadow:0 0 25px #ffd8a544;animation-delay:2.4s}.star-ceremony-copy{position:relative;z-index:7}.star-ceremony-overline{color:#b293d0;font-size:8px;letter-spacing:3px}.star-ceremony-copy h2{font-size:31px;font-weight:500;letter-spacing:2px;line-height:1.5;color:#f4ddff;margin:12px 0}.star-ceremony.is-finale .star-ceremony-copy h2{color:#ffe4b8;text-shadow:0 0 22px #dfb27340}.star-ceremony-copy p{color:#bca5cd;font-size:12px;line-height:1.9;overflow-wrap:anywhere}.star-ceremony-result{display:flex;align-items:center;justify-content:center;gap:10px;margin:25px 0;position:relative;z-index:7;flex-wrap:wrap}.star-ceremony-result>span{font-size:10px;color:#d5bfdf;background:#c2a0df0d;border:1px solid #c4a4df32;border-radius:30px;padding:9px 13px;line-height:1.6}.star-ceremony.is-finale .star-ceremony-result>span{border-color:#d3ac723b;color:#d9c3a3;background:#e9bf7910}.star-ceremony-actions{position:relative;z-index:9;display:flex;justify-content:center;gap:12px;margin-top:8px}.star-ceremony-actions .btn{min-width:175px;min-height:47px;font-size:11px}.star-ceremony-note{display:block;position:relative;z-index:7;font-size:9px;color:#8c779e;line-height:1.9;margin-top:16px}.star-ceremony-skip{position:absolute;top:35px;right:24px;z-index:15;border:1px solid #b89ad735;border-radius:20px;background:#151024a0;padding:7px 11px;font-size:8px;color:#c0a3d8}.star-ceremony.settled .star-ceremony-skip{display:none}.star-ceremony.settled .star-ceremony-center,.star-ceremony.settled .star-ceremony-copy,.star-ceremony.settled .star-ceremony-result,.star-ceremony.settled .star-ceremony-satellite .medal-art{opacity:1!important}.star-ceremony.settled .star-ceremony-copy,.star-ceremony.settled .star-ceremony-result{transform:none!important}.star-ceremony.settled .star-ceremony-rays{opacity:.25}.profile-avatar.constellation-elite{outline:1px solid #f1cf90;outline-offset:3px;box-shadow:0 0 15px #d2a1ff65}.star-elite-label{font-size:9px;color:#edd39e;margin-left:5px}.star-reward-locked{border-color:#c9a56c44!important}
@keyframes star-twinkle{0%,100%{opacity:.25}50%{opacity:.85}}@keyframes star-spin{to{transform:rotate(360deg)}}@keyframes star-ring-drift{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@keyframes star-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes star-trace{to{stroke-dashoffset:-30}}@keyframes star-next-glow{0%,100%{box-shadow:0 0 15px #b98ae025}50%{box-shadow:0 0 30px #c58cff44}}@keyframes star-personal-orbit{to{transform:rotate(334deg) scaleY(.75)}}@keyframes star-shockwave{0%{transform:scale(.4);opacity:0}22%{opacity:.65}100%{transform:scale(2.6);opacity:0}}@keyframes star-ray-arrive{0%{transform:rotate(-30deg) scale(.5);opacity:0}30%{opacity:.7}100%{transform:rotate(12deg) scale(1.2);opacity:.25}}
@media(max-width:1100px){.star-gallery{padding:26px}.star-gallery-layout{grid-template-columns:minmax(0,1.25fr) minmax(225px,1fr);gap:18px}.star-journey{padding:21px}.star-ladder{grid-template-columns:repeat(3,minmax(0,1fr))}.star-ladder>button:nth-child(-n+3){border-bottom:1px solid #baa3df1c}.star-ladder>button:nth-child(3){border-right:0}.star-reward-vault{flex-wrap:wrap}.star-reward-vault>.btn{margin-left:85px}}
@media(max-width:800px){.star-gallery-layout{grid-template-columns:1fr}.star-map{max-width:520px;margin-top:35px}.star-journey{margin-bottom:18px}.star-completion-count{margin:13px 0;font-size:48px}.star-gallery-heading{gap:12px}.star-gallery-heading h1{font-size:28px}.star-preview-link{font-size:9px;padding:9px 11px}}
@media(max-width:680px){body[data-page='passport'] .content{padding:13px 12px 110px}.star-gallery{padding:23px 16px 18px;border-radius:22px}.star-gallery-heading{display:block;text-align:center}.star-eyebrow{font-size:7px;letter-spacing:2px}.star-gallery-heading h1{font-size:29px;letter-spacing:2px;margin:10px 0 8px}.star-gallery-heading p{font-size:10px}.star-preview-link{margin:17px auto 0;min-height:38px;font-size:9px;padding:7px 12px}.star-status-strip{margin-top:21px;font-size:9px;padding:13px 0}.star-status-strip b{font-size:14px}.star-gallery-layout{gap:0}.star-map{aspect-ratio:.82;margin:32px auto 16px}.star-medal{width:28%;max-width:120px}.star-medal-glass{width:87%;margin-bottom:7px}.star-medal strong{font-size:11px;letter-spacing:.3px}.star-medal>small{font-size:7px;margin-top:3px;white-space:nowrap}.star-stage-index{font-size:7px;padding:1px 3px;right:4%}.star-map-core{width:33%;top:49%}.star-map-core b{font-size:5px;letter-spacing:2px}.star-map-core small{font-size:8px;letter-spacing:.2px;margin-top:7px}.star-map-core.crowned b{font-size:5px;letter-spacing:.3px}.star-map-caption{font-size:8px;letter-spacing:.2px;gap:8px;margin:16px 0 24px}.star-map-caption>span{width:20px}.star-journey{padding:20px;border-radius:16px}.star-journey h2{font-size:11px;margin:8px 0}.star-completion-count{font-size:48px;margin:13px 0}.star-completion-count>span{font-size:18px}.star-journey-copy{font-size:11px;margin:16px 0}.star-spend-summary{margin-top:18px;padding-top:16px}.star-ladder{margin-top:5px;margin-bottom:18px}.star-ladder>button{padding:13px 10px;min-height:94px}.star-ladder span{font-size:6px}.star-ladder strong{font-size:10px;margin:8px 0}.star-ladder small{font-size:18px}.star-reward-vault{padding:18px;gap:15px;border-radius:16px}.star-vault-emblem{width:44px;height:51px;border-radius:13px;font-size:30px}.star-vault-copy h2{font-size:13px;line-height:1.6}.star-vault-copy p{font-size:9px}.star-vault-copy small{font-size:8px}.star-reward-vault>.btn{margin:0;width:100%}.star-rule-foot{font-size:7px;text-align:left}.star-unlock-dialog .modal-body{padding:0 21px 23px}.star-unlock-art{width:178px;height:178px;margin:4px auto 10px}.star-unlock-art .medal-art{width:166px}.star-unlock-card h3{font-size:23px}.star-unlock-actions .btn{font-size:10px;padding:10px 7px}.star-unlock-price{margin-top:21px}.star-ceremony-dialog{border-radius:21px!important;max-width:calc(100vw - 12px)!important;max-height:97dvh!important}.star-ceremony-dialog .modal-head{padding:12px 14px 4px}.star-ceremony-dialog .modal-head h2{font-size:9px}.star-ceremony{padding:14px 20px 23px;min-height:600px}.star-ceremony-label{font-size:6px;letter-spacing:2px;margin:12px 0}.star-ceremony-orbit{height:280px;--orbit-radius:111px;margin:7px auto 6px}.star-ceremony-center{width:170px}.star-ceremony-satellite{width:59px;height:59px;margin:-29.5px}.star-ceremony-rings{inset:8% 2% 48%}.star-ceremony-copy h2{font-size:25px;letter-spacing:1px;margin:12px 0}.star-ceremony-overline{font-size:6px;letter-spacing:1.9px}.star-ceremony-copy p{font-size:10px}.star-ceremony-result{gap:7px;margin:21px 0}.star-ceremony-result>span{font-size:8px;padding:7px 9px}.star-ceremony-actions{gap:8px}.star-ceremony-actions .btn{min-width:0;flex:1;font-size:10px;padding:10px 8px;min-height:46px}.star-ceremony-note{font-size:8px;line-height:1.8}.star-ceremony-skip{font-size:7px;right:15px;top:39px;padding:6px 9px}}
@media(max-width:370px){.star-gallery{padding-inline:12px}.star-medal strong{font-size:10px}.star-medal>small{font-size:6px}.star-ceremony-center{width:151px}.star-ceremony-orbit{--orbit-radius:98px;height:260px}.star-ceremony-satellite{width:54px;height:54px;margin:-27px}.star-ceremony-copy h2{font-size:22px}.star-ceremony-result>span{font-size:7px}}
[data-motion='reduced'] .star-gallery *,[data-motion='reduced'] .star-ceremony *{animation:none!important;transition:none!important}
.star-ceremony.settled .star-ceremony-center{transform:translate(-50%,-50%)!important}.star-ceremony.settled .star-ceremony-satellite .medal-art{transform:none!important}
@media(prefers-reduced-motion:reduce){.star-gallery *,.star-ceremony *{animation:none!important;transition:none!important}}

/* Cinematic scenes: distinct stage geometry and a five-act, 24-second finale. */
.star-cinema{--scene-a:#c464d3;--scene-b:#493390;--scene-c:#eeaacd;--show-progress:0;background:radial-gradient(ellipse at 50% 34%,color-mix(in srgb,var(--scene-a) 24%,transparent),transparent 65%),linear-gradient(150deg,#090818,#18102d 65%,#080917);transition:background 2s}
.star-cinema[data-stage="2"]:not(.is-finale){--scene-a:#e07626;--scene-b:#73133b;--scene-c:#ffd391}
.star-cinema[data-stage="3"]:not(.is-finale){--scene-a:#148bb4;--scene-b:#115155;--scene-c:#8cffd6}
.star-cinema[data-stage="4"]:not(.is-finale){--scene-a:#cd398d;--scene-b:#185881;--scene-c:#87dfff}
.star-cinema[data-stage="5"]:not(.is-finale){--scene-a:#9d38d5;--scene-b:#2735a2;--scene-c:#f998e6}
.star-cinema[data-stage="6"]{--scene-a:#b48b3d;--scene-b:#482b77;--scene-c:#ffe6a2}
.star-cinema .star-ceremony-rings{display:none}
.star-cinema .star-ceremony-label{letter-spacing:4px;font-size:8px;color:#e3c9f5}
.star-cinema .star-ceremony-orbit{height:350px;max-width:620px;--orbit-radius:151px;z-index:3;perspective:900px}
.star-cinema .star-ceremony-center{top:50%;width:240px;z-index:4;pointer-events:none}
.star-center-flight{width:100%;transform-style:preserve-3d;will-change:transform,opacity}
.star-cinema .star-crown-art{filter:drop-shadow(0 0 23px #dba4ff99) drop-shadow(0 8px 12px #06001499)}
.star-cinema .star-flight-canvas{z-index:5;opacity:.95;mask-image:linear-gradient(#000 0 68%,#0006 80%,transparent 92%)}
.star-scene-depth{position:absolute;inset:0 0 22%;z-index:-1;overflow:hidden;pointer-events:none}
.star-scene-depth i{position:absolute;width:65%;height:56%;left:-10%;top:10%;border-radius:50%;background:radial-gradient(ellipse,var(--scene-a),transparent 66%);opacity:.27;filter:blur(30px)}
.star-scene-depth i:nth-child(2){left:45%;top:15%;background:radial-gradient(ellipse,var(--scene-b),transparent 68%);opacity:.6}
.star-scene-depth i:nth-child(3){left:16%;top:40%;width:70%;height:30%;background:radial-gradient(ellipse,var(--scene-c),transparent 66%);opacity:.15;filter:blur(40px)}
.star-cinema.is-running .star-scene-depth i{animation:cinema-cloud 8s ease-in-out infinite alternate}
.star-cinema.is-running .star-scene-depth i:nth-child(2){animation-direction:alternate-reverse;animation-duration:11s}
.star-show-status{position:relative;z-index:8;display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 10px 10px;font-size:12px;color:#e3cbf6;letter-spacing:1px}
.star-show-status>small{font-size:9px;color:#b4a1c8;letter-spacing:0;white-space:nowrap}
.star-show-progress{position:relative;z-index:8;height:2px;background:#d9bbff19;margin:0 10px 13px;overflow:hidden}
.star-show-progress i{display:block;height:100%;width:100%;transform:scaleX(var(--show-progress));transform-origin:left;background:linear-gradient(90deg,#a77aff,#80e5ff,#ffe2b7);box-shadow:0 0 10px #ca9efc}
.star-acts{position:relative;z-index:8;display:flex;gap:10px;justify-content:center;margin:15px 0 5px}
.star-act{font-size:8px;color:#6d627e;display:flex;align-items:center;gap:5px;transition:color .8s,text-shadow .8s}
.star-act b{font:9px Georgia,serif;padding:4px;border-radius:50%;border:1px solid #ac8ecd22;color:#736582}
.star-act.current{color:#f7e2b7;text-shadow:0 0 15px #ffdcaf;}.star-act.current b{color:#ffdf9f;border-color:#e3c38d88;box-shadow:0 0 12px #e2b77833}
.star-act.passed{color:#bd9fcd}.star-act.passed b{color:#cfa9ec;border-color:#c29dde55}
.star-scene-emblem{position:absolute;inset:0;pointer-events:none;z-index:0;display:grid;place-items:center}
.star-scene-emblem i{position:absolute;width:74%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--scene-c) 45%,transparent);box-shadow:inset 0 0 35px color-mix(in srgb,var(--scene-a) 14%,transparent),0 0 40px color-mix(in srgb,var(--scene-c) 9%,transparent);opacity:.3}
.star-scene-emblem i:nth-child(2){width:63%}.star-scene-emblem i:nth-child(3){width:50%}
.star-cinema[data-stage="1"] .star-scene-emblem i{clip-path:polygon(50% 0,61% 35%,98% 36%,68% 59%,79% 95%,50% 73%,21% 95%,32% 59%,2% 36%,39% 35%);background:linear-gradient(130deg,#e9b8ff33,#ffa8cc05);border:0}
.star-cinema[data-stage="2"] .star-scene-emblem i{border-radius:50%;border-width:2px 0 0 2px;transform:rotate(-35deg) scaleY(.5);box-shadow:0 -7px 22px #ff9f6244}
.star-cinema[data-stage="3"] .star-scene-emblem i{clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%);background:linear-gradient(145deg,#aaffde33,#67c7ff05);border:0;opacity:.25}
.star-cinema[data-stage="4"] .star-scene-emblem i{border-radius:50%;transform:rotate(30deg) scaleY(.35);border-color:#fdb5dd55;box-shadow:0 0 30px #ec93cc15}
.star-cinema[data-stage="4"] .star-scene-emblem i:nth-child(2){transform:rotate(-30deg) scaleY(.5);border-color:#85dfff66}
.star-cinema[data-stage="5"] .star-scene-emblem i{border:0;border-radius:50%;background:conic-gradient(from 60deg,transparent,#c383ff44,transparent,#94e7ff55,transparent,#ff9bd344,transparent);mask-image:radial-gradient(transparent 20%,#000 42%,transparent 72%);opacity:.8}
.star-cinema[data-stage="6"] .star-scene-emblem i{border-radius:50%;border:1px dashed #f1cc8680;box-shadow:0 0 20px #e4b55f22,inset 0 0 20px #e4b55f22}
.star-cinema.is-running[data-stage="1"] .star-scene-emblem{animation:cinema-bloom 6s ease-in-out infinite}
.star-cinema.is-running[data-stage="2"] .star-scene-emblem{animation:cinema-turn 9s linear infinite}
.star-cinema.is-running[data-stage="3"] .star-scene-emblem{animation:cinema-shield 3s ease-in-out infinite}
.star-cinema.is-running[data-stage="5"] .star-scene-emblem{animation:cinema-turn 16s linear infinite}
.star-cinema.is-running[data-stage="6"] .star-scene-emblem{animation:cinema-turn 36s linear infinite}
.star-twin-cores{position:absolute;inset:5% 12%;display:none;pointer-events:none}
.star-cinema[data-stage="4"]:not(.is-finale) .star-twin-cores{display:block}
.star-twin-cores i{position:absolute;left:8%;top:50%;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle,#fff 0,#f6b8dc 18%,#f077bb55 45%,transparent 72%);box-shadow:0 0 40px #f886cb88;filter:blur(1px)}
.star-twin-cores i:nth-child(2){left:auto;right:8%;background:radial-gradient(circle,#fff 0,#a8f0ff 18%,#54c3fa55 45%,transparent 72%);box-shadow:0 0 40px #66d2fa88}
.star-cinema.is-running .star-twin-cores{animation:cinema-turn 5s linear infinite}
.star-temple-pillars{position:absolute;left:10%;right:10%;top:8%;height:64%;z-index:0;pointer-events:none;display:none;mask-image:linear-gradient(transparent,#000 25% 75%,transparent)}
.star-temple-pillars i{position:absolute;left:calc(var(--pillar)*12.5%);width:3px;height:100%;background:linear-gradient(transparent,#ffdbad77,#9e88ed44,transparent);box-shadow:0 0 18px #efcf8b55;transform:rotate(calc((var(--pillar) - 4)*3deg));opacity:.4}
.star-cinema[data-stage="6"] .star-temple-pillars{display:block}
.star-cinema.is-running .star-temple-pillars i{animation:cinema-pillar 4s calc(var(--pillar)*.2s) ease-in-out infinite alternate}
.star-cinema.is-finale{--scene-a:#6e32bb;--scene-b:#185179;--scene-c:#cfb4ff}
.star-cinema.is-finale[data-act="2"]{--scene-a:#267b94;--scene-b:#723bac;--scene-c:#a6f5ff}
.star-cinema.is-finale[data-act="3"],.star-cinema.is-finale[data-act="4"],.star-cinema.is-finale.settled{--scene-a:#b79040;--scene-b:#6d2f8c;--scene-c:#ffe6ac}
.star-cinema.is-finale .star-scene-emblem{opacity:.65;transition:opacity 2s,transform 2s}
.star-cinema.is-finale[data-act="2"] .star-scene-emblem{transform:scale(.5)}
.star-cinema.is-finale[data-act="0"] .star-temple-pillars,.star-cinema.is-finale[data-act="1"] .star-temple-pillars,.star-cinema.is-finale[data-act="2"] .star-temple-pillars{display:none}
.star-cinema.is-finale .star-ceremony-satellite{width:78px;height:78px;margin:-39px;will-change:transform,opacity}
.star-cinema .star-ceremony-satellite.is-featured .medal-art{filter:drop-shadow(0 0 22px #ffe4ad) brightness(1.25);transition:filter .45s}
.star-convergence-core{position:absolute;inset:30%;display:grid;place-items:center;pointer-events:none;z-index:0;transition:opacity 1.5s,transform 2s}
.star-convergence-core i{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#dbb5ff50,#87ccff22,transparent 68%);box-shadow:0 0 50px #a78cff44}
.star-convergence-core b{font-size:90px;font-weight:400;color:#d3b7ff;text-shadow:0 0 25px #f3ceff,0 0 65px #8a8cff}
.star-cinema.is-running .star-convergence-core{animation:cinema-bloom 5s ease-in-out infinite}
.star-cinema.is-finale[data-act="2"] .star-convergence-core b{color:#e6faff;text-shadow:0 0 35px #b5e8ff,0 0 80px #faf0ff}
.star-cinema.is-finale[data-act="3"] .star-convergence-core,.star-cinema.is-finale[data-act="4"] .star-convergence-core,.star-cinema.settled .star-convergence-core{opacity:0;transform:scale(.3);animation:none}
.star-cinema.is-finale.is-running[data-act="0"] .star-center-flight,.star-cinema.is-finale.is-running[data-act="1"] .star-center-flight,.star-cinema.is-finale.is-running[data-act="2"] .star-center-flight{visibility:hidden}
.star-cinema .star-ceremony-copy{z-index:8}.star-cinema .star-ceremony-result{z-index:8;margin:17px 0}.star-cinema .star-ceremony-copy h2{font-size:30px}
.star-cinema .star-ceremony-skip{top:12px;right:22px;font-size:9px;background:#0b091bbd;border-color:#d3b6f866}
.star-cinema.settled .star-center-flight{opacity:1!important;transform:none!important;visibility:visible}
.star-cinema.settled .star-scene-depth i{opacity:.18}.star-cinema.settled .star-ceremony-satellite{opacity:1!important}

/* Distinct ambient effects on the collected medals themselves. */
.star-mini-scene{position:absolute;inset:-5% 4% 30%;pointer-events:none;z-index:-1;opacity:0}
.star-medal.is-lit .star-mini-scene{opacity:1}
.star-mini-scene i{position:absolute;inset:5%;border-radius:50%}
.star-medal[data-stage="1"] .star-mini-scene i:first-child{background:radial-gradient(ellipse,#ffc8e253,transparent 65%);animation:cinema-bloom 4s ease-in-out infinite}
.star-medal[data-stage="2"] .star-mini-scene i:first-child{border-top:3px solid #ffc68f;border-left:1px solid #ffb58a44;box-shadow:0 -5px 12px #ffac7b66;animation:cinema-turn 3.5s linear infinite}
.star-medal[data-stage="3"] .star-mini-scene i{clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);border-radius:0;background:linear-gradient(130deg,#86ffdd55,#8ad7ff08);animation:cinema-shield 4s ease-in-out infinite}
.star-medal[data-stage="3"] .star-mini-scene i:nth-child(2){inset:-5%;opacity:.5;animation-delay:1s}
.star-medal[data-stage="4"] .star-mini-scene{animation:cinema-turn 7s linear infinite}
.star-medal[data-stage="4"] .star-mini-scene i:nth-child(-n+2){inset:auto;top:50%;left:0;width:8px;height:8px;background:#ffd2ed;box-shadow:0 0 15px #ff90cd,0 0 23px #ff90cd}
.star-medal[data-stage="4"] .star-mini-scene i:nth-child(2){left:auto;right:0;background:#b5eeff;box-shadow:0 0 15px #83dfff,0 0 23px #83dfff}
.star-medal[data-stage="5"] .star-mini-scene{background:conic-gradient(transparent,#d991ff77,transparent,#85d6ff55,transparent,#ecb2f677,transparent);border-radius:50%;filter:blur(4px);animation:cinema-turn 12s linear infinite}
.star-medal[data-stage="6"] .star-mini-scene{inset:-13% -4% 22%;background:repeating-conic-gradient(transparent 0 20deg,#ffdfa657 23deg 24deg,transparent 27deg 45deg);mask-image:radial-gradient(transparent 35%,#000 56%,transparent 75%);animation:cinema-turn 18s linear infinite}
.star-medal[data-stage="6"].is-lit .star-medal-glass{box-shadow:0 0 28px #f4c87875,inset 0 0 20px #ffe1a126}
@keyframes cinema-cloud{to{transform:translate(25%,10%) scale(1.25)}}
@keyframes cinema-turn{to{transform:rotate(360deg)}}
@keyframes cinema-bloom{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.12);opacity:1}}
@keyframes cinema-shield{0%,100%{opacity:.35;transform:scale(.97)}50%{opacity:.85;transform:scale(1.04)}}
@keyframes cinema-pillar{to{opacity:.8;filter:brightness(1.3)}}
@media(max-width:680px){
 .star-cinema{padding:16px 14px 21px;min-height:640px}
 .star-cinema .star-ceremony-label{font-size:6px;letter-spacing:2.5px;margin:9px 0 25px}
 .star-cinema .star-show-status{margin:10px 4px 8px;font-size:10px;letter-spacing:.1px}
 .star-show-status>small{font-size:8px}
 .star-show-progress{margin:0 4px 9px}
 .star-acts{gap:7px;margin:12px -2px 6px;justify-content:space-between}
 .star-act{display:grid;justify-items:center;gap:5px;font-size:7px}.star-act b{font-size:8px;padding:3px 5px}
 .star-cinema .star-ceremony-orbit{height:288px;--orbit-radius:112px;margin:5px auto}
 .star-cinema .star-ceremony-center{width:174px}
 .star-cinema.is-finale .star-ceremony-satellite{width:60px;height:60px;margin:-30px}
 .star-cinema .star-ceremony-copy h2{font-size:24px;margin:10px 0}
 .star-cinema .star-ceremony-copy p{font-size:10px}
 .star-cinema .star-ceremony-result{gap:5px;margin:14px 0}
 .star-cinema .star-ceremony-result>span{padding:6px 8px;font-size:8px}
 .star-cinema .star-ceremony-skip{top:13px;right:14px;padding:6px 9px;font-size:8px}
 .star-convergence-core b{font-size:65px}
 .star-cinema .star-scene-depth i{filter:blur(20px)}
}
@media(max-width:370px){
 .star-cinema .star-ceremony-orbit{--orbit-radius:100px;height:266px}
 .star-cinema .star-ceremony-center{width:157px}
 .star-cinema.is-finale .star-ceremony-satellite{width:53px;height:53px;margin:-26.5px}
 .star-act{font-size:6px}.star-cinema .star-ceremony-copy h2{font-size:22px}
 .star-cinema .star-ceremony-result>span{font-size:7px}
}
[data-motion='reduced'] .star-cinema *,[data-motion='reduced'] .star-mini-scene *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.star-cinema *,.star-mini-scene *{animation:none!important;transition:none!important}}

/* Annual medal terms and compact benefit progression; existing ceremonies preserved. */
.star-point-progress{padding:15px 0;border-top:1px solid #ae95d52d;margin-top:18px}.star-point-progress>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px}.star-point-progress strong{color:#f2d5f5;font-weight:600}.star-point-progress small{display:block;font-size:11px;color:#c3b4d6;margin-top:9px;line-height:1.6}.star-point-track{height:6px;background:#ffffff12;border-radius:9px;overflow:hidden;margin-top:12px}.star-point-track i{display:block;height:100%;background:linear-gradient(90deg,#b4a6ff,#f5b8d4);border-radius:inherit}.star-benefit-panel{padding:25px;margin:24px 0;border:1px solid #ac91d331;border-radius:22px;background:linear-gradient(115deg,#2c20442b,#1f25443b);color:#e9dff7}.star-benefit-panel header>small{font-size:9px;letter-spacing:.18em;color:#bda4d0}.star-benefit-panel h2{font-size:20px;margin:10px 0}.star-benefit-panel p{font-size:12px;line-height:1.8;color:#baafcb}.star-signin-steps{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:20px 0}.star-signin-steps>div{padding:13px 3px;border:1px solid #c1a5dd22;border-radius:12px;text-align:center;background:#ffffff04}.star-signin-steps span{font-size:11px;color:#b9a8cd}.star-signin-steps strong{display:block;font-size:22px;margin-top:8px;color:#f1d7fa}.star-signin-steps strong small{display:block;font-size:9px;font-weight:400;color:#b4a5c5}.star-signin-steps .current{border-color:#d1b3f7;background:linear-gradient(135deg,#a983dd30,#e3a6be20)}.star-benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.star-benefit-grid article{padding:14px;border:1px solid #c1a5dd22;border-radius:13px}.star-benefit-grid b{font-size:13px;color:#eddaee}.star-benefit-grid p{margin-bottom:0}.star-ladder button>small:last-of-type{display:block;font:9px/1.5 "Segoe UI",sans-serif;margin-top:7px;opacity:.75}@media(max-width:560px){.star-benefit-panel{padding:18px 14px}.star-benefit-panel h2{font-size:18px}.star-signin-steps{gap:4px}.star-signin-steps strong{font-size:19px}.star-signin-steps span{font-size:10px}.star-benefit-grid{gap:8px}.star-benefit-grid article{padding:11px}.star-benefit-grid p{font-size:11px}.star-medal small{font-size:8px}}

/* Daily check-in: the club's amethyst palette and supplied calendar artwork. */
.daily-entry{display:flex;align-items:center;gap:18px;position:relative;overflow:hidden;margin:20px 0;padding:20px 25px;border:1px solid #c7a0e955;border-radius:23px;background:radial-gradient(ellipse at 6% 10%,#b27deb26,transparent 55%),linear-gradient(115deg,#352052,#1b162a);box-shadow:inset 0 1px #efe4f926,0 7px 28px #170c2128}
.daily-entry:after{content:'✧';position:absolute;right:22%;top:-28px;font-size:130px;color:#caa5ea0e;pointer-events:none}
.daily-entry-icon{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:17px;color:#ede1f8;background:linear-gradient(135deg,#a465db61,#612f8d26);border:1px solid #dcc3f170;box-shadow:0 0 25px #8f42d32b,inset 0 1px 2px #f5eefb40}
.daily-logo-image{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:50% 48%}.daily-entry-icon{position:relative;overflow:hidden}.daily-orb{position:relative}.daily-entry-copy{flex:1;min-width:0}
.daily-eyebrow{font-size:9px;letter-spacing:2px;color:#bea3d5;display:block}
.daily-entry h2{font-size:17px;margin:6px 0;color:#f8f3fc}.daily-entry h2 span{margin-left:12px;font-size:11px;font-weight:500;color:#dfc9f2}.daily-entry p{margin:0;font-size:11px;color:#bfabd1}
.daily-entry-button{flex:none;display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid #e2cef499;border-radius:13px;color:#faf6fd;background:linear-gradient(120deg,#7541ad,#a06bd0);font-size:12px;cursor:pointer;box-shadow:inset 0 1px #f1e8f960,0 3px 0 #3d1d59,0 6px 18px #733aa433}
.daily-entry-button:hover{filter:brightness(1.14)}.daily-entry-button:active{transform:translateY(2px);box-shadow:inset 0 1px #f1e8f940,0 1px 0 #3d1d59}
dialog.daily-dialog{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 36px);padding:0;border:1px solid #dcc3f180;border-radius:26px;background:radial-gradient(ellipse at 50% 5%,#66358c50,transparent 62%),linear-gradient(155deg,#2d1f40,#171222 55%,#231b34);color:#f8f3fc;box-shadow:inset 0 1px #ecdff830,0 30px 120px #0009,0 0 75px #9a55d726}
.daily-dialog::backdrop{background:#0f0816c9;backdrop-filter:blur(6px)}
.daily-dialog .modal-head{padding:17px 22px;border-bottom:1px solid #ddc5f226;background:#23152f60}.daily-dialog .modal-head h2{font-size:14px;color:#eee2f8}.daily-dialog .modal-close{color:#dac5ed;border-color:#caa8e730;background:#c097e314}.daily-dialog .modal-body{padding:0}
.daily-panel,.daily-success{text-align:center;padding:22px 25px 25px;position:relative;overflow:hidden;isolation:isolate}
.daily-panel:before,.daily-success:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 17%,#ecdff870 0 1px,transparent 1.6px),radial-gradient(circle at 87% 31%,#b481e180 0 1px,transparent 1.8px),radial-gradient(circle at 20% 67%,#c49be760 0 1px,transparent 1.7px),radial-gradient(circle at 80% 81%,#dcc3f170 0 1px,transparent 1.5px),radial-gradient(ellipse at 50% 18%,#8a45c722,transparent 54%)}
.daily-date{font-size:10px;letter-spacing:1px;color:#c1afd1}
.daily-dialog .daily-orb,.daily-dialog .daily-orb.is-claimed{width:116px;height:116px;margin:8px auto 10px;border:0;background:none;box-shadow:none;transform:none}.daily-orb img{mask-image:radial-gradient(ellipse,#000 51%,transparent 73%);-webkit-mask-image:radial-gradient(ellipse,#000 51%,transparent 73%)}
.daily-orb{display:grid;place-items:center;width:66px;height:66px;margin:20px auto 19px;border:1px solid #e3cff49c;border-radius:22px;background:linear-gradient(135deg,#b785e275,#793fab4d);box-shadow:0 0 35px #9f5dd938,inset 0 1px 3px #fff6;transform:rotate(-7deg)}.daily-orb .icon{width:34px;height:34px;color:#f2e8fa;transform:rotate(7deg)}
.daily-panel h3,.daily-success h3{font-size:23px;line-height:1.5;margin:10px 0 13px;color:#f7f1fc;text-shadow:0 2px 18px #ae76df2b}
.daily-reward{display:flex;align-items:baseline;justify-content:center;gap:10px}.daily-reward strong{font-family:Georgia,serif;font-size:59px;font-weight:400;line-height:1.1;background:linear-gradient(150deg,#fff 10%,#e8d8f6 42%,#b684e2 85%);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 2px 12px #a05ed930)}.daily-reward>span{font-size:12px;color:#dbc6ee}
.daily-formula{font-size:11px;color:#c5b2d6;line-height:1.7;margin:12px 0 20px}
.daily-levels{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:18px 0 20px}.daily-levels>div{padding:10px 0;border:1px solid #c19fde2f;border-radius:10px;background:#ad74df09;display:grid;gap:7px}.daily-levels span{font-size:9px;color:#b39ec6}.daily-levels b{font-size:14px;font-weight:500;color:#e4d3f2}.daily-levels .current{border-color:#dcc4f1bb;background:linear-gradient(140deg,#975ec85c,#6c379b40);box-shadow:inset 0 1px #f3ebfa55,0 0 17px #a160da30}.daily-levels .current span,.daily-levels .current b{color:#f8f3fc}
.daily-note{padding:13px 14px;border-radius:13px;background:#c399e707;border:1px solid #c5a6e026;text-align:left}.daily-note p{display:flex;gap:8px;font-size:10px;line-height:1.75;color:#c7b6d6;margin:0}.daily-note p+p{margin-top:6px}.daily-note .icon{flex:none;width:14px;height:14px;margin-top:2px;color:#caa6ea}
.daily-message{font-size:10px;line-height:1.7;min-height:34px;margin:13px 0;color:#b49ec8}.daily-message.error{padding:10px;color:#ffd4b2;background:#f28c5f12;border:1px solid #ffc49a2e;border-radius:10px}
.daily-claim-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:14px 10px;background:linear-gradient(110deg,#8152b7,#b27deb);color:#fbf8fd;border:1px solid #dbc2f199;box-shadow:inset 0 1px 1px #f6f0fc75,0 3px 0 #3a1a56,0 8px 24px #6f35a235;font-size:13px;font-weight:600;cursor:pointer;transition:filter .2s,transform .2s}
.daily-claim-button:hover:not(:disabled){filter:brightness(1.12)}.daily-claim-button:active:not(:disabled){transform:translateY(2px)}.daily-claim-button:disabled{cursor:default;opacity:.5;box-shadow:none}.daily-claim-button:focus-visible,.daily-entry-button:focus-visible{outline:2px solid #e1ccf3;outline-offset:4px}
.daily-footnote{display:block;font-size:9px;color:#ab96bd;line-height:1.8;margin-top:13px}.daily-success{padding-top:13px}.daily-success p{font-size:11px;line-height:1.7;color:#c9b5da;margin:17px 0 25px}
.daily-bloom{height:244px;position:relative;display:grid;place-items:center;margin:0 auto 7px}
.daily-success-logo{position:relative;width:244px;height:244px;z-index:2;filter:drop-shadow(0 0 17px #8845c22e);transform:translateY(0) scale(1);will-change:auto}
.daily-success-logo img{mask-image:radial-gradient(ellipse 51% 52% at 50% 50%,#000 59%,#000b 78%,transparent 99%);-webkit-mask-image:radial-gradient(ellipse 51% 52% at 50% 50%,#000 59%,#000b 78%,transparent 99%)}
.daily-logo-shine{position:absolute;inset:15% 18%;border-radius:24%;overflow:hidden;pointer-events:none}.daily-logo-shine:after{content:'';position:absolute;inset:-30% -80%;background:linear-gradient(110deg,transparent 43%,#efe3f970 50%,transparent 57%);transform:translateX(-60%);opacity:0}
.daily-logo-fallback{display:none;position:absolute;inset:23%;place-items:center;border:1px solid #dfcaf2;border-radius:24px;background:linear-gradient(135deg,#8b4dc1,#502c70);box-shadow:0 0 30px #9852d655}.daily-logo-fallback .icon{width:60px;height:60px;color:#f2e8fa}.daily-success-logo[data-image-error=true] img{visibility:hidden}.daily-success-logo[data-image-error=true] .daily-logo-fallback{display:grid}
.daily-ring{position:absolute;width:190px;height:190px;border-radius:50%;border:1px solid #cfadec65;box-shadow:0 0 24px #964dd524;opacity:0;pointer-events:none}.daily-ring.second{width:218px;height:218px;border-color:#e5d3f550}
.daily-bloom i{position:absolute;left:50%;top:50%;z-index:3;font-style:normal;font-size:16px;color:#e3d0f4;opacity:0;pointer-events:none}
.daily-success.playing .daily-success-logo{animation:daily-logo-arrive 1.8s cubic-bezier(.2,.8,.2,1) both;will-change:transform}.daily-success.playing .daily-logo-shine:after{animation:daily-logo-sheen 1.2s ease-in-out .3s both}.daily-success.playing .daily-ring{animation:daily-ring-bloom 1.65s ease-out both}.daily-success.playing .daily-ring.second{animation-delay:90ms}.daily-success.playing .daily-bloom i{animation:daily-spark 1.5s ease-out var(--delay) both}.daily-success.playing .daily-reward{animation:daily-points 1.8s ease both}
@keyframes daily-logo-arrive{0%{transform:translateY(17px) scale(.82);opacity:0;filter:drop-shadow(0 0 3px #9e5bd9)}28%{transform:translateY(-5px) scale(1.035);opacity:1;filter:drop-shadow(0 0 22px #9e5bd855)}60%{transform:translateY(-3px) scale(1.01)}100%{transform:translateY(0) scale(1);opacity:1;filter:drop-shadow(0 0 17px #8845c22e)}}
@keyframes daily-logo-sheen{0%{transform:translateX(-60%);opacity:0}25%{opacity:.55}75%{opacity:.45}100%{transform:translateX(60%);opacity:0}}
@keyframes daily-ring-bloom{0%{transform:scale(.65) rotateX(60deg);opacity:0}28%{opacity:.8}100%{transform:scale(1.45) rotateX(60deg);opacity:0}}
@keyframes daily-spark{0%,10%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(52px) scale(.2);opacity:0}30%{opacity:.85}100%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(-1*var(--reach))) scale(.5);opacity:0}}
@keyframes daily-points{0%,15%{opacity:0;transform:translateY(9px) scale(.9)}55%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:none}}
html[data-theme=day] .daily-entry{background:linear-gradient(115deg,#f2e9fa,#faf7fd);border-color:#d0b9e4}html[data-theme=day] .daily-entry h2{color:#422759}html[data-theme=day] .daily-entry p,html[data-theme=day] .daily-entry h2 span{color:#6c4f85}html[data-theme=day] .daily-entry .daily-eyebrow{color:#82669a}html[data-theme=day] .daily-entry-icon{color:#613884}
@media(max-width:600px){.daily-entry{gap:11px;padding:15px 13px;border-radius:18px}.daily-entry-icon{width:46px;height:46px;border-radius:13px}.daily-entry-icon .icon{width:22px;height:22px}.daily-entry .daily-eyebrow{display:none}.daily-entry h2{font-size:14px;margin:0 0 6px}.daily-entry h2 span{display:block;margin:5px 0 0;font-size:10px}.daily-entry p{font-size:9px}.daily-entry-button{padding:10px;font-size:10px;gap:4px}.daily-entry-button .icon{width:14px}.daily-panel,.daily-success{padding:18px}.daily-panel h3,.daily-success h3{font-size:21px}.daily-orb{margin:15px auto}.daily-levels{gap:3px}.daily-levels b{font-size:13px}.daily-success{padding-top:7px}.daily-bloom{height:210px;margin-bottom:3px}.daily-success-logo{width:214px;height:214px}.daily-ring{width:166px;height:166px}.daily-ring.second{width:190px;height:190px}}
@media(prefers-reduced-motion:reduce){.daily-dialog *,.daily-dialog *:after{animation:none!important}.daily-claim-button{transition:none}}html[data-motion=reduced] .daily-dialog *,html[data-motion=reduced] .daily-dialog *:after{animation:none!important}

/* Crystal-cut website entrance, shared by the mobile header and desktop rail. */
.ecosystem-link{position:relative;isolation:isolate;display:flex;align-items:center;gap:10px;text-decoration:none!important;color:#f3e7ff!important;min-height:58px;padding:10px 12px;border:1px solid #dcb6ff70;border-radius:15px;background:linear-gradient(135deg,#554580 0%,#342652 45%,#1c203d 100%);box-shadow:inset 0 1px 1px #f2dfff9c,inset 0 -2px 1px #080a2999,0 4px 0 #1b122f,0 6px 0 #bf9bed4a,0 10px 22px #0d062b80,0 0 24px #9762eb18;transition:transform .22s,box-shadow .22s,border-color .22s;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;flex-shrink:0}
.ecosystem-link:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(ellipse at 12% 0%,#60dfff50,transparent 65%),linear-gradient(100deg,transparent 20%,#f1c5ff26 48%,transparent 72%);pointer-events:none}
.ecosystem-link:after{content:'';position:absolute;top:-70%;bottom:-70%;width:28%;left:-65%;transform:rotate(28deg);background:linear-gradient(90deg,transparent,#dec0fa40,transparent);animation:eco-glint 9s ease-in-out infinite;pointer-events:none}
.ecosystem-edge{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}.ecosystem-edge rect{fill:none;vector-effect:non-scaling-stroke}.eco-edge-inner{stroke:#b28ae633;stroke-width:.7}.eco-edge-halo{stroke:#9953d5;stroke-width:3;stroke-linecap:round;stroke-dasharray:24 76;opacity:.4;filter:blur(2px);animation:eco-edge-travel 9s linear infinite}.eco-edge-flow{stroke:#c69af1;stroke-width:1.1;stroke-linecap:round;stroke-dasharray:15 85;opacity:.85;animation:eco-edge-travel 9s linear infinite}.eco-edge-tip{stroke:#f0ddff;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:2 98;opacity:.85;filter:drop-shadow(0 0 2px #b785ef);animation:eco-edge-travel 9s linear infinite}
@supports (background-clip:text) or (-webkit-background-clip:text){.ecosystem-link .ecosystem-copy strong{background:linear-gradient(105deg,#e7cff9 0%,#f4e6ff 28%,#d8b7f2 44%,#fff1ff 51%,#dfc0f6 59%,#efe2ff 76%,#e7cff9 100%);background-size:240% 100%;background-position:100% 50%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 9px #c69af12b;animation:eco-title-glow 9s ease-in-out infinite}}
.ecosystem-link .ecosystem-logo{width:38px;height:38px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 3px 1px #07152a) drop-shadow(0 0 9px #49d2ff50)}
.ecosystem-copy{min-width:0;display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}.ecosystem-copy strong{font-family:'Microsoft YaHei','Segoe UI',sans-serif;font-size:15px;line-height:1.35;font-weight:650;letter-spacing:.5px;white-space:nowrap;text-shadow:0 2px 1px #170e35}
.ecosystem-copy small{font-size:8px;line-height:1;letter-spacing:1.2px;color:#b7d4f5;white-space:nowrap}.ecosystem-copy small b{font-weight:400;color:#d8b9f4;letter-spacing:.2px;margin-left:5px}
.sidebar .ecosystem-link{margin:0 0 39px;gap:7px;padding:10px 8px}.sidebar .ecosystem-copy strong{font-size:14px}.sidebar .ecosystem-logo{width:30px;height:34px}
.mobile-brand.ecosystem-link{display:none;letter-spacing:0}.ecosystem-link:focus-visible,.sound-toggle:focus-visible{outline:2px solid #8ce5ff;outline-offset:5px}
@media(hover:hover){.ecosystem-link:hover{transform:translateY(-2px);border-color:#d7b3ff;box-shadow:inset 0 1px 1px #fff9,0 6px 0 #1b122f,0 8px 0 #bf9bed4a,0 14px 28px #120b3e99,0 0 24px #9975ff35}}
.ecosystem-link:active{transform:translateY(3px);box-shadow:inset 0 2px 5px #08091e80,0 1px 0 #211234,0 4px 12px #09092188}
.sound-toggle{border:1px solid #b89bd532;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 9px;min-width:36px;min-height:36px;color:var(--text-soft,#d7bcec);background:#8b58bf12;font:inherit;font-size:10px;cursor:pointer;flex-shrink:0;transition:background .2s,box-shadow .2s}.sound-toggle svg{width:19px;height:19px}.sound-toggle[aria-pressed=true]{color:#d9bcfb;border-color:#b58ee345;box-shadow:inset 0 1px #e5cfff0d}.sound-toggle[aria-pressed=true] .sound-slash,.sound-toggle[aria-pressed=false] .sound-waves{display:none}.sound-toggle:hover{background:#a371d52a}.sound-toggle:active{transform:translateY(1px)}.sound-toggle:disabled{opacity:.45;cursor:default}
.star-ceremony-sound{position:absolute;left:18px;top:12px;z-index:16}.star-ceremony-sound .sound-toggle{background:#211431c9;backdrop-filter:blur(8px)}
[data-theme=day] .sound-toggle[aria-pressed=true]{color:#74429b;background:#eee3fa;border-color:#c3a4de}[data-theme=day] .ecosystem-link{box-shadow:inset 0 1px 1px #fff9,0 4px 0 #382445,0 6px 0 #bda3d3,0 9px 21px #573a7435}
@keyframes eco-glint{0%,65%{left:-65%;opacity:0}68%{opacity:.7}85%,100%{left:155%;opacity:0}}
@keyframes eco-edge-travel{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@keyframes eco-title-glow{0%,12%{background-position:100% 50%}70%,100%{background-position:-80% 50%}}
@media(max-width:1200px) and (min-width:681px){.sidebar .ecosystem-link{flex-wrap:wrap;justify-content:center;gap:6px;min-height:86px;padding:9px 4px}.sidebar .ecosystem-copy{flex-basis:100%;align-items:center;order:2}.sidebar .ecosystem-logo{width:31px;height:30px}}
@media(max-width:970px){.topbar-right>.sound-toggle .sound-label{display:none}}
@media(max-width:680px){.topbar{height:82px!important;padding:0 12px!important;gap:8px}.mobile-brand.ecosystem-link{display:flex;min-height:54px;padding:7px 9px;gap:7px;border-radius:12px}.mobile-brand.ecosystem-link .ecosystem-logo{width:30px;height:32px}.mobile-brand .ecosystem-copy strong{font-size:14px;letter-spacing:.2px}.mobile-brand .ecosystem-copy small{font-size:7px;letter-spacing:.9px}.mobile-brand .ecosystem-copy small b{display:none}.topbar-right{gap:5px!important;flex-wrap:nowrap}.topbar-right .visual-controls{gap:0}.topbar-right .visual-toggle{min-width:26px;padding:4px}.topbar-right>.sound-toggle{min-width:30px;min-height:32px;padding:4px}.topbar-right .bell-wrap{display:none}.topbar-right .profile-account-button{padding:0}.star-ceremony-sound{left:10px;top:9px}.star-ceremony-sound .sound-label{display:none}.star-ceremony-label{padding-left:34px;padding-right:34px}}
@media(max-width:370px){.topbar{padding:0 8px!important;gap:5px}.mobile-brand.ecosystem-link{padding:7px;gap:5px}.mobile-brand .ecosystem-copy strong{font-size:12px}.mobile-brand.ecosystem-link .ecosystem-logo{width:26px}.topbar-right{gap:3px!important}.topbar-right .visual-toggle{min-width:23px;padding:3px}.topbar-right .profile-account-button .avatar{width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){.ecosystem-link:after,.ecosystem-edge rect,.ecosystem-copy strong{animation:none!important}.ecosystem-link,.sound-toggle{transition:none}.ecosystem-link:hover,.ecosystem-link:active{transform:none}}
[data-motion=reduced] .ecosystem-link:after,[data-motion=reduced] .ecosystem-edge rect,[data-motion=reduced] .ecosystem-copy strong{animation:none!important}
.sound-activation{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;border-bottom:1px solid #c5a4ec30;background:linear-gradient(100deg,#37254b,#1b1834);color:#e1c9f4;font-size:12px}.sound-activation[hidden]{display:none}.sound-activation button{flex-shrink:0;border:1px solid #d6b5ff70;border-radius:9px;padding:8px 12px;background:#6a4195;color:#fff;font:inherit;cursor:pointer}.sound-activation button:focus-visible{outline:2px solid #95dfff;outline-offset:3px}[data-theme=day] .sound-activation{background:#f0e8fa;color:#684487}@media(max-width:680px){.sound-activation{padding:9px 12px;gap:7px;font-size:10px}.sound-activation button{padding:8px;font-size:11px}}
