.rank-emblem{display:block;width:100%;height:100%;overflow:visible}.rank-header{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:2px calc(7px + var(--rank-header-optical-inset,8.5px)) 2px 7px;border-radius:0;color:var(--color-fg);white-space:nowrap;font-family:var(--font-geist-sans),sans-serif;font-size:13px;transition:background .2s}.rank-header:hover{background:color-mix(in srgb,var(--color-fg) 6%,transparent)}.rank-header:focus-visible,.rank-promotion button:focus-visible,.rank-requirement-button:focus-visible{outline:2px solid var(--rank-color,#dca779);outline-offset:4px}.rank-header-icon{position:relative;width:32px;height:36px;isolation:isolate}.rank-header-icon:before{content:"";position:absolute;inset:8px 4px;background:var(--rank-color);filter:blur(10px);opacity:.28;z-index:-1;transition:opacity .2s}.rank-header:hover .rank-header-icon:before{opacity:.48}.rank-popover[data-slot=popover-content]{width:384px;max-width:calc(100vw - 24px);background:var(--color-bg);color:var(--color-fg);border:1px solid var(--color-hairline);border-radius:0;padding:24px;max-height:min(620px,80dvh,var(--radix-popover-content-available-height));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-hairline) transparent;transform-origin:center;box-shadow:0 12px 32px #0003}.rank-popover[data-state=open]{animation:rank-panel-in .16s cubic-bezier(.2,.8,.2,1)}.rank-popover[data-state=closed]{animation:rank-panel-out .1s ease-in}@keyframes rank-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes rank-panel-out{0%{opacity:1}to{opacity:0}}.rank-popover .rank-requirement-title:first-child{margin-top:0}.rank-popover .rank-requirements{gap:0;margin-top:20px}.rank-popover .rank-requirements li{border-top:1px solid var(--color-hairline)}.rank-popover .rank-lesson-row{display:flex;align-items:flex-start;justify-content:flex-start;gap:12px;width:100%;min-height:48px;padding:14px 8px;border:0;border-radius:0;background:transparent;font-family:var(--font-geist-sans),sans-serif;font-size:13px;line-height:1.6;text-align:left;color:var(--color-fg);text-decoration:none}.rank-popover a.rank-lesson-row:hover{background:var(--color-glass-hover)}.rank-popover a.rank-lesson-row:focus-visible{outline:2px solid var(--color-fg);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.rank-popover[data-state]{animation:none}}.rank-detail-identity,.rank-progress-identity{display:flex;align-items:center;gap:12px}.rank-detail-identity>span{width:55px;height:62px}.rank-detail-identity h2{font-size:20px;font-weight:600}.rank-detail-identity p,.rank-progress-identity small{font-size:12px;color:var(--color-muted)}.rank-outcome{font-size:13px;line-height:1.65;color:var(--color-muted);margin-top:12px}.rank-family{display:flex;gap:8px;margin:22px 0}.rank-family>div{flex:1;min-width:0;opacity:.45}.rank-family>div[data-current]{opacity:1}.rank-requirement-title{font-size:14px;font-weight:600;margin-top:18px}.rank-requirements{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:12px}.rank-requirements li{display:flex;gap:9px;font-size:13px;line-height:1.5}.rank-lesson-state{padding-top:3px;width:14px;flex-shrink:0;color:var(--color-muted)}.rank-requirements a:hover{text-decoration:none}.rank-progress-panel{flex-shrink:0;border-top:1px solid var(--color-hairline);padding:16px 20px 18px}.rank-progress-identity>span{width:38px;height:44px}.rank-progress-identity p{font-size:15px;font-weight:500}.rank-progress-identity>span{flex-shrink:0}.rank-progress-description{min-width:0}.rank-progress-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.rank-certificate-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:26px;padding:3px 7px;border:1px solid var(--color-hairline);border-radius:0;color:var(--color-fg);font-size:10px;line-height:1.2;white-space:nowrap;background:var(--color-glass)}.rank-certificate-badge svg{flex-shrink:0}.rank-certificate-badge:hover{border-color:var(--rank-color);background:var(--color-glass-hover)}.rank-certificate-badge:focus-visible{outline:2px solid var(--rank-color);outline-offset:3px}.rank-progress-description small{display:block;margin-top:3px}.rank-progress-caption{display:flex;justify-content:space-between;gap:8px;margin-top:17px;font-size:12px;color:var(--color-muted);font-variant-numeric:tabular-nums}.rank-progress-track{display:flex;gap:3px;margin-top:9px;height:4px}.rank-progress-track i{flex:1;border-radius:1px;background:color-mix(in srgb,var(--color-fg) 13%,transparent)}.rank-progress-track i[data-filled]{background:var(--rank-color)}.rank-progress-note{font-size:12px;color:var(--color-muted);margin-top:9px;line-height:1.5}.rank-requirement-button{display:flex;justify-content:space-between;width:100%;margin-top:13px;font-size:12px;color:var(--color-fg);min-height:28px;align-items:center}.rank-promotion-backdrop{position:fixed;inset:0;z-index:100;background:#080b11;animation:rank-curtain .45s ease-out both}.rank-promotion{--color-fg:#f4f4f6;--color-bg:#080b11;position:fixed;inset:0;z-index:101;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#f4f4f6;padding:52px 24px;overflow-y:auto;outline:none}.rank-ceremony{width:min(520px,100%);text-align:center}.rank-promotion-stage{position:relative;width:220px;height:246px;margin:0 auto 24px}.rank-new,.rank-old{position:absolute;inset:0;opacity:0}.rank-new{filter:drop-shadow(0 16px 30px #0008)}.rank-confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}.rank-promotion-copy{position:relative;opacity:0}.rank-promotion-copy h2{font-size:clamp(40px,7vw,60px);font-weight:500;letter-spacing:-.03em;line-height:1.1}.rank-promotion-earned{font-size:13px;color:var(--rank-color);margin:12px 0 18px}.rank-promotion-copy p:last-child{font-size:15px;color:#a8aeba;line-height:1.6;max-width:360px;margin-inline:auto}.rank-promotion-actions{opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .3s ease-out,transform .3s ease-out;margin-top:30px;text-align:center;z-index:1}.rank-promotion-actions p{color:#ffc3b8;font-size:13px;margin-top:12px}.rank-promotion-skip{position:absolute;right:24px;top:22px;padding:10px;font-size:12px;color:#a8aeba}.rank-refresh-error{position:fixed;bottom:14px;right:14px;z-index:80;padding:10px 14px;border-radius:10px;background:var(--color-bg);color:var(--color-fg);font-size:12px;border:1px solid var(--color-hairline)}@keyframes rank-curtain{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.site-nav-ranked .site-nav-beta,.site-nav-ranked [data-nav-course],.site-nav-ranked [data-nav-wordmark]{display:none}}@media(max-width:639px){.site-nav-ranked [data-nav-surface]{padding-inline:12px}.site-nav-ranked nav{gap:8px}}@media(max-width:400px){.site-nav-ranked [data-nav-brand]{display:none}.site-nav-ranked nav{gap:4px;width:100%;justify-content:space-between}}@media(max-height:650px){.rank-promotion-stage{width:150px;height:168px;margin-bottom:12px}.rank-promotion{justify-content:flex-start}.rank-promotion-actions{margin-top:20px}}@media(prefers-reduced-motion:reduce){.rank-promotion-backdrop{animation:none}.rank-header,.rank-header-icon:before{transition:none}.rank-old{display:none}.rank-new,.rank-promotion-copy{opacity:1}}.rank-promotion-actions[data-ready]{opacity:1;visibility:visible;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.rank-promotion-actions{transition:none}}.rank-assessment-notification{position:fixed;z-index:80;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));width:360px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:22px 44px 22px 24px;border:1px solid color-mix(in srgb,var(--rank-color) 45%,var(--color-hairline));background:var(--color-bg);color:var(--color-fg);box-shadow:0 12px 40px #0005,inset 3px 0 var(--rank-color);font-family:var(--font-geist-sans),sans-serif;animation:rank-notification-in .2s ease-out}.rank-assessment-notification__label{margin:0 0 8px;color:var(--rank-color);font-family:var(--font-geist-mono),monospace;font-size:11px}.rank-assessment-notification h2{margin:0 0 8px;font-size:17px;font-weight:500;line-height:1.4}.rank-assessment-notification h2+p{margin:0;color:var(--color-muted);font-size:13px;line-height:1.6}.rank-assessment-notification a{display:inline-flex;gap:12px;align-items:center;min-height:44px;margin-top:8px;color:var(--color-fg);font-size:13px;text-decoration:underline;text-underline-offset:4px}.rank-assessment-notification button{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:transparent;color:var(--color-muted);cursor:pointer;font-size:24px}.rank-assessment-notification button:hover{color:var(--color-fg)}.rank-assessment-notification :is(a,button):focus-visible{outline:2px solid var(--rank-color);outline-offset:3px}@keyframes rank-notification-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.rank-assessment-notification{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.rank-assessment-notification{animation:none}}.CourseRail_scroll__RwFNT{overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--color-muted) transparent}.CourseRail_scroll__RwFNT::-webkit-scrollbar{width:5px}.CourseRail_scroll__RwFNT::-webkit-scrollbar-track{background:transparent}.CourseRail_scroll__RwFNT::-webkit-scrollbar-thumb{background:var(--color-muted)}.CourseRail_scroll__RwFNT::-webkit-scrollbar-thumb:hover{background:var(--color-fg-mid)}.CourseRail_scroll__RwFNT:focus-visible{outline:2px solid var(--color-fg);outline-offset:-2px}.CourseRail_infinity__q_rnb{position:relative;height:88px;margin:0 0 24px;overflow:hidden;background:var(--mirror-bg);border:1px solid var(--mirror-border);contain:paint;box-shadow:inset 0 0 12px var(--mirror-shadow)}.CourseRail_tunnel__C0P67{display:block;width:100%;height:100%;transform:perspective(500px) rotateY(-3deg);transform-origin:center;animation:CourseRail_infinity-light__aD2FS 8s ease-in-out infinite}@keyframes CourseRail_infinity-light__aD2FS{0%,to{opacity:.85}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.CourseRail_tunnel__C0P67{animation:none;opacity:1}}.CourseRail_infinityMessage__5vJOo{color:var(--mirror-text);overflow:visible}.CourseRail_infinityMessage__5vJOo>svg{width:100%;height:100%}.CourseRail_infinity__q_rnb{--mirror-wall-top:#183026;--mirror-wall-mid:#050d09;--mirror-wall-end:#010403;--mirror-light-start:#c3ffda;--mirror-light-mid:#41f78d;--mirror-light-low:#15b85a;--mirror-light-end:#77ffb1;--mirror-depth:#062416;--mirror-floor:#102a1c;--mirror-left:#092117;--mirror-right:#020906;--mirror-back:#030b07;--mirror-seam:#87ffb7;--mirror-frame:#00170a;--mirror-highlight:#baffd2;--mirror-edge:#53645b;--mirror-rim:#000;--mirror-bg:#020604;--mirror-border:#24312b;--mirror-shadow:#000;--mirror-text:#fff;--mirror-hover:#54ff98}[data-theme=light] .CourseRail_infinity__q_rnb{--mirror-wall-top:#edf1ee;--mirror-wall-mid:#f8faf8;--mirror-wall-end:#ffffff;--mirror-light-start:#ffffff;--mirror-light-mid:#bfd1c5;--mirror-light-low:#91ad9c;--mirror-light-end:#e3ece6;--mirror-depth:#c8d8ce;--mirror-floor:#dce5df;--mirror-left:#eaf0ec;--mirror-right:#f5f8f6;--mirror-back:#ffffff;--mirror-seam:#7f9e8b;--mirror-frame:#d3dfd7;--mirror-highlight:#ffffff;--mirror-edge:#9db2a5;--mirror-rim:#f5f8f6;--mirror-bg:#f7faf8;--mirror-border:#c4d2c9;--mirror-shadow:#dce5df;--mirror-text:#294b38;--mirror-hover:#91ad9c;box-shadow:inset 0 0 12px var(--mirror-shadow),0 4px 18px #345b4310}