.student-rank-badge{color:var(--rank-accent);filter:drop-shadow(0 2px 2px #11244528);flex:none;display:block;overflow:visible}.rank-silhouette{fill:var(--rank-accent);stroke:color-mix(in srgb,var(--rank-accent) 60%,#10264a);stroke-width:4px;stroke-linejoin:round;fill-rule:evenodd}.student-rank-badge text{fill:#fff;stroke:none;font-family:var(--font-gilroy-display),sans-serif;paint-order:stroke;text-shadow:0 1px 2px #18264a70;font-weight:900}.rank-era-ring{fill:none;stroke:#ffdc6a;stroke-width:2px;stroke-dasharray:3 3}.rank-era-star{fill:#ffdc6a;stroke:#a47718;stroke-width:1px}.student-rank-badge.is-muted{filter:grayscale(.65);opacity:.48}.profile-rank-button{cursor:pointer;background:0 0;border:0;border-radius:15px;flex:none;width:64px;height:64px;padding:0}.profile-rank-button svg{width:100%;height:100%}.profile-avatar-with-rank{display:block;position:relative}.profile-avatar-with-rank .profile-rank-button{width:48px;height:48px;position:absolute;bottom:-14px;right:-19px}.student-profile-level-row{gap:8px;min-width:0;margin-top:10px;padding-right:64px;display:grid;position:relative}.student-profile-level-row .identity-level-track{min-width:0}.student-profile-next-rank{width:54px;height:54px;position:absolute;top:6px;right:0;transform:translateY(-50%)}.student-profile-xp-caption{overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.4}.student-profile-xp-caption strong{font-family:var(--font-gilroy-display),sans-serif;font-weight:800}.student-profile-xp-caption span{font-weight:400}.student-rank-badge.is-next{filter:none}.rank-level-up{animation:.9s ease-out rank-unlock}@keyframes rank-unlock{30%{filter:drop-shadow(0 0 10px #ffdf82);transform:scale(1.16)}to{transform:scale(1)}}.rank-gallery-dialog{color:#10264a;background:#fff;border:1px solid #dce8f5;border-radius:26px;width:min(760px,100% - 28px);max-height:calc(100svh - 36px);padding:26px;box-shadow:0 24px 90px #10264a40}.rank-gallery-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b193e70}.rank-gallery-dialog>header{justify-content:space-between;gap:16px;display:flex}.rank-gallery-dialog h2{margin:0;font-size:26px}.rank-gallery-dialog header p,.rank-gallery-note{color:#657b99;font-size:13px;line-height:1.5}.rank-gallery-dialog header button{color:#06f;background:#edf5ff;border:0;border-radius:12px;flex:none;width:38px;height:38px}.rank-gallery-current{grid-template-columns:1fr 1fr;gap:16px;margin:24px 0;display:grid}.rank-gallery-current>div{background:#f5f9ff;border-radius:20px;justify-items:center;gap:8px;padding:20px;display:grid}.rank-gallery-current svg{width:90px;height:90px}.rank-gallery-current span{color:#657b99;font-size:12px}.rank-gallery-milestones{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0;list-style:none;display:grid}.rank-gallery-milestones li{text-align:center;border:1px solid #e4edf8;border-radius:16px;align-content:start;justify-items:center;gap:8px;padding:12px 5px;display:grid}.rank-gallery-milestones svg{width:58px;height:58px}.rank-gallery-milestones strong{font-size:11px}.rank-gallery-milestones span{color:#657b99;font-size:10px}.rank-gallery-milestones .is-unlocked{background:#f2f8ff}.student-avatar-link .student-level-badge{background:0 0;border:0;border-radius:0;width:30px;min-width:0;height:30px;padding:0;bottom:-4px;right:-3px}.student-level-badge .student-rank-badge{width:100%;height:100%}@media (min-width:1024px){.student-avatar-link .student-level-badge{width:34px;height:34px}}@media (max-width:699px){.profile-rank-button{width:48px;height:48px}.rank-gallery-dialog{padding:18px}.rank-gallery-milestones{grid-template-columns:repeat(3,minmax(0,1fr))}.student-profile-level-row{padding-right:50px}.student-profile-next-rank{width:42px;height:42px}.student-profile-xp-caption{font-size:12px}}@media (prefers-reduced-motion:reduce){.rank-level-up{animation:none}}.rank-gallery-dialog h2,.rank-gallery-dialog h3{font-family:var(--font-gilroy-display),sans-serif;font-weight:800}.rank-gallery-current strong{text-align:center;font-size:14px}.level-reward-map{border-bottom:1px solid #e6edf7;padding-block:10px 24px}.level-reward-map>p{color:#657b99;font-size:13px;line-height:1.5}.level-reward-map>ol{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;list-style:none;display:grid}.level-reward-map li{text-align:center;background:#f8faff;border:1px solid #e3e9f4;border-radius:18px;align-content:start;justify-items:center;gap:8px;padding:12px 5px;display:grid;position:relative}.level-reward-map li.is-next{background:#fff6dc;border-color:#edc55c;box-shadow:0 3px 12px #f4cc5f30}.level-reward-map li.is-reached{background:#f1faf6}.level-reward-map li>.student-rank-badge{width:44px;height:44px}.level-reward-map .spin-art{width:42px;height:42px}.level-reward-map li strong{font-size:12px}.level-reward-map li small{color:#74869d;font-size:10px}.level-reward-map li small svg{vertical-align:middle;width:11px;height:11px}.level-reward-map nav{justify-content:space-between;align-items:center;margin-block:12px;display:flex}.level-reward-map nav button{color:#06f;background:#f2f7ff;border:1px solid #dce9fa;border-radius:10px;padding:8px 12px}.level-reward-map nav button:disabled{opacity:.5}.level-reward-map nav span{font-size:12px}.student-avatar-link>.profile-rank-button{z-index:2;cursor:pointer}.level-reward-map>a{color:#06f;font-weight:700}@media (max-width:699px){.level-reward-map>ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
