.CheckItem_row__Q5oof{display:flex;align-items:flex-start;gap:12px;padding:9px 10px;margin:0 -10px;border-radius:var(--radius-xs);scroll-margin-top:calc(var(--tabbar-h) + 76px);transition:background .15s ease}.CheckItem_row__Q5oof:hover{background:var(--surface-2)}.CheckItem_session__kag_G{padding-left:14px}.CheckItem_next__YgPU8,.CheckItem_next__YgPU8:hover{background:var(--cyan-soft)}.CheckItem_nextTag__5LQwp{margin-left:auto;align-self:center;flex:0 0 auto;font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--cyan);border-radius:999px;padding:2px 8px;white-space:nowrap}.CheckItem_box__7Nwti{flex:0 0 auto;width:22px;height:22px;margin-top:1px;padding:0;border:2px solid var(--border);border-radius:7px;background:var(--surface-2);cursor:pointer;display:grid;place-items:center;transition:border-color .15s ease,background .15s ease,transform .12s ease}.CheckItem_box__7Nwti:hover{border-color:var(--cyan)}.CheckItem_box__7Nwti:active{transform:scale(.92)}.CheckItem_session__kag_G .CheckItem_box__7Nwti{width:19px;height:19px;border-radius:6px}.CheckItem_check__H_W8V{width:14px;height:14px;color:var(--on-accent);opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}.CheckItem_done__8_Sfh .CheckItem_box__7Nwti{background:var(--apple);border-color:var(--apple)}.CheckItem_done__8_Sfh .CheckItem_check__H_W8V{opacity:1;transform:scale(1)}.CheckItem_badge___pqID{flex:0 0 auto;font-weight:700;font-size:13px;color:var(--ocean);min-width:22px;margin-top:1px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.CheckItem_done__8_Sfh .CheckItem_badge___pqID{color:var(--text-faint)}.CheckItem_mark__R_RpH{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;min-width:26px;margin-top:3px}.CheckItem_glyph__Ms1fx{display:inline-flex;color:var(--text-faint)}.CheckItem_glyph__Ms1fx svg{width:14px;height:14px}.CheckItem_done__8_Sfh .CheckItem_glyph__Ms1fx{opacity:.5}.CheckItem_dot__Dc1HG{width:7px;height:7px;border-radius:50%;background:var(--text-faint)}.CheckItem_dot__Dc1HG[data-tier=beginner]{background:var(--tier-beginner)}.CheckItem_dot__Dc1HG[data-tier=intermediate]{background:var(--tier-intermediate)}.CheckItem_dot__Dc1HG[data-tier=advanced]{background:var(--tier-advanced)}.CheckItem_dot__Dc1HG[data-tier=all]{background:var(--tier-all)}.CheckItem_done__8_Sfh .CheckItem_dot__Dc1HG{opacity:.45}.CheckItem_label__JgJMr{font-size:15px;line-height:1.45;color:var(--text);display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;min-width:0}.CheckItem_step__Zavsz .CheckItem_label__JgJMr{font-weight:650}.CheckItem_session__kag_G .CheckItem_label__JgJMr{font-size:14px;font-weight:500;color:var(--text-dim)}.CheckItem_done__8_Sfh .CheckItem_label__JgJMr{color:var(--text-faint)}.CheckItem_done__8_Sfh.CheckItem_session__kag_G .CheckItem_label__JgJMr{text-decoration:line-through;-webkit-text-decoration-color:var(--text-faint);text-decoration-color:var(--text-faint)}.CheckItem_done__8_Sfh.CheckItem_step__Zavsz .CheckItem_label__JgJMr{text-decoration:none}.CheckItem_link__HjWBG{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:650;color:var(--cyan);padding:2px 9px;border:1px solid var(--border);border-radius:999px;background:var(--cyan-soft);transition:background .15s ease,border-color .15s ease;transform:translateY(-1px);text-decoration:none}.CheckItem_link__HjWBG:hover{background:var(--ocean-soft);border-color:var(--cyan)}.CheckItem_link__HjWBG svg{width:11px;height:11px}.MonthSection_month__EBGZJ{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);animation:MonthSection_rise__XuGvS .5s cubic-bezier(.16,1,.3,1) backwards}@keyframes MonthSection_rise__XuGvS{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.MonthSection_complete__0QqO1{border-color:var(--apple)}.MonthSection_locked__DJYzK{border-style:dashed;border-color:var(--border-soft);background:transparent}.MonthSection_locked__DJYzK .MonthSection_headerWrap__YUSDz{background:transparent;position:static}.MonthSection_locked__DJYzK .MonthSection_header__RH_Sa{cursor:not-allowed;opacity:.55}.MonthSection_locked__DJYzK .MonthSection_header__RH_Sa:hover{background:transparent}.MonthSection_locked__DJYzK .MonthSection_ghost__TEyWE{color:var(--surface-2)}.MonthSection_locked__DJYzK .MonthSection_eyebrow__WTLxR{color:var(--text-faint)}.MonthSection_locked__DJYzK .MonthSection_title__CXuMw{color:var(--text-dim)}.MonthSection_locked__DJYzK .MonthSection_bar__R4XbY{display:none}.MonthSection_lockHint__yX839{font-size:12.5px;color:var(--text-faint)}.MonthSection_lockIcon__sVE6t{width:16px;height:16px;color:var(--text-faint)}.MonthSection_headerWrap__YUSDz{position:-webkit-sticky;position:sticky;top:var(--tabbar-h);z-index:5;background:var(--surface);border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.MonthSection_header__RH_Sa{width:100%;display:flex;align-items:center;gap:18px;padding:20px 22px;background:transparent;border:none;cursor:pointer;text-align:left;position:relative}.MonthSection_header__RH_Sa:hover{background:var(--surface-2)}.MonthSection_ghost__TEyWE{font-size:52px;font-weight:800;line-height:.8;color:var(--surface-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.03em;flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.MonthSection_complete__0QqO1 .MonthSection_ghost__TEyWE{color:var(--apple-soft)}.MonthSection_headText__ct_8x{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.MonthSection_eyebrow__WTLxR{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ocean)}.MonthSection_complete__0QqO1 .MonthSection_eyebrow__WTLxR{color:var(--apple)}.MonthSection_title__CXuMw{font-size:19px;font-weight:750;color:var(--text);letter-spacing:-.01em}.MonthSection_subtitle__zbKyM{font-size:13px;color:var(--text-dim);font-style:italic}.MonthSection_headMeta__CUeAW{display:flex;align-items:center;gap:14px;flex:0 0 auto}.MonthSection_pctRing__VegON{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--cyan) calc(var(--p, 0) * 1%),var(--surface-3) 0);position:relative}.MonthSection_pctRing__VegON:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--surface)}.MonthSection_header__RH_Sa:hover .MonthSection_pctRing__VegON:after{background:var(--surface-2)}.MonthSection_header__RH_Sa:hover .MonthSection_pctRing__VegON[data-complete=true]:after,.MonthSection_pctRing__VegON[data-complete=true],.MonthSection_pctRing__VegON[data-complete=true]:after{background:var(--apple)}.MonthSection_pctNum__F_WeX{position:relative;z-index:1;font-size:11px;font-weight:700;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.MonthSection_pctRing__VegON[data-complete=true] .MonthSection_pctNum__F_WeX{color:var(--on-accent)}.MonthSection_count__c3Eni{font-size:13px;font-weight:600;color:var(--text-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:44px;text-align:right}.MonthSection_chevron__XUwif{width:18px;height:18px;color:var(--text-dim);transition:transform .2s ease}.MonthSection_chevronOpen__R6Tw1{transform:rotate(180deg)}.MonthSection_bar__R4XbY{height:3px;background:var(--surface-3)}.MonthSection_barFill__HAqoU{height:100%;background:var(--cyan);transition:width .4s cubic-bezier(.16,1,.3,1)}.MonthSection_complete__0QqO1 .MonthSection_barFill__HAqoU{background:var(--apple)}.MonthSection_body__M0_Nk{padding:8px 22px 20px;animation:MonthSection_fade__u7W1J .3s ease}@keyframes MonthSection_fade__u7W1J{0%{opacity:0}to{opacity:1}}.MonthSection_allDone___qpwB{margin:18px 0;padding:18px;text-align:center;font-size:14px;color:var(--apple);background:var(--apple-soft);border:1px solid var(--border);border-radius:var(--radius-sm)}.MonthSection_intro__xKevN{padding:10px 0 4px}.MonthSection_intro__xKevN p{margin:0 0 12px;font-size:14px;line-height:1.6;color:var(--text-dim)}.MonthSection_intro__xKevN p:nth-child(2){font-weight:650;color:var(--text)}.MonthSection_blockTag__8l4Ob{display:block;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--ocean);margin-bottom:10px}.MonthSection_objective__efmX9{background:var(--ocean-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 18px;margin:6px 0 14px}.MonthSection_objectiveLead__x5_b7{margin:0 0 8px;font-size:14px;font-weight:650;color:var(--text)}.MonthSection_objectiveList__dsrwm{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.MonthSection_objectiveList__dsrwm li{position:relative;padding-left:22px;font-size:14px;line-height:1.5;color:var(--text-dim);font-style:italic}.MonthSection_objectiveList__dsrwm li:before{content:"✔";position:absolute;left:0;color:var(--apple);font-style:normal;font-weight:700}.MonthSection_objectiveOutro__o_wMY{margin:0;font-size:13px;color:var(--text-faint)}.MonthSection_focus__O6P9O{border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 18px;margin:0 0 14px;background:var(--surface-2)}.MonthSection_focusTitle__w9qBH{margin:0 0 8px;font-size:16px;font-weight:750;color:var(--text);letter-spacing:-.01em}.MonthSection_focus__O6P9O p{margin:0 0 8px;font-size:14px;line-height:1.55;color:var(--text-dim)}.MonthSection_focusList__vykJQ{margin:0 0 8px;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--text-dim)}.MonthSection_focusOutro__V6IFA{margin:0;font-size:13px;color:var(--text-faint);font-style:italic}.MonthSection_stepsTag__qe6er{display:block;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--ocean);padding:8px 0 6px;border-bottom:2px solid var(--border);margin-bottom:2px}.MonthSection_step___UVNq{padding:8px 0;border-top:1px solid var(--border-soft)}.MonthSection_step___UVNq:first-of-type{border-top:none}.MonthSection_stepBody__k8xTj{margin-left:36px;padding:2px 0 6px}.MonthSection_stepBody__k8xTj p{margin:0 0 10px;font-size:13.5px;line-height:1.6;color:var(--text-dim)}.MonthSection_stepBody__k8xTj p:last-child{margin-bottom:0}.MonthSection_resource__BS4hZ{display:inline-flex;align-items:center;gap:7px;margin:2px 0 6px 36px;font-size:13.5px;font-weight:700;color:var(--cyan);text-decoration:none;border-bottom:1px solid transparent}.MonthSection_resource__BS4hZ:hover{border-bottom-color:var(--cyan)}.MonthSection_homework__73oKG{background:var(--vermillion-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 18px;margin:12px 0 4px}.MonthSection_homeworkTag__kKYvT{display:block;font-size:11px;font-weight:800;letter-spacing:.09em;color:var(--vermillion);margin-bottom:8px}.MonthSection_homeworkIntro__gGFds{margin:0 0 8px;font-size:14px;font-weight:650;line-height:1.55;color:var(--text)}.MonthSection_homeworkList__sJIo0{margin:0 0 8px;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.5;color:var(--text-dim)}.MonthSection_homeworkOutro__3coN3{margin:0;font-size:13px;font-style:italic;color:var(--text-faint)}.MonthSection_blockCheck__9UZch{margin-top:10px;padding-top:8px;border-top:1px dashed var(--border)}.MonthSection_blockCheck__9UZch>div{padding:2px 10px}.MonthSection_weekRow__1bZCz{display:flex;flex-wrap:wrap;gap:0 16px}.MonthSection_report__C7OQS{background:var(--ocean-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 18px;margin:12px 0 4px}.MonthSection_reportTag__8fJu_{display:block;font-size:11px;font-weight:800;letter-spacing:.09em;color:var(--ocean);margin-bottom:8px}.MonthSection_reportText__NsYx6{margin:0;font-size:14px;font-weight:650;line-height:1.55;color:var(--text)}.MonthSection_reminder__cOvRI{background:var(--pinewood);border:1px solid var(--border);border-radius:var(--radius-sm);padding:18px 20px;margin-top:14px}.MonthSection_reminder__cOvRI .MonthSection_blockTag__8l4Ob{color:var(--cyan)}.MonthSection_reminderQuote__BPV8t{margin:0 0 10px;font-size:17px;line-height:1.4;font-weight:750;font-style:italic;color:var(--text);letter-spacing:-.01em}.MonthSection_reminderText__w7wRs{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-dim)}.MonthSection_sessions__Kwdu_{margin-left:36px;padding:4px 0 6px}.MonthSection_sessionsLabel__b4xLC{display:block;font-size:10px;font-weight:700;letter-spacing:.07em;color:var(--text-faint);margin-bottom:2px}@media (max-width:560px){.MonthSection_ghost__TEyWE{font-size:38px}.MonthSection_title__CXuMw{font-size:16px}.MonthSection_subtitle__zbKyM{display:none}.MonthSection_header__RH_Sa{padding:16px;gap:12px}.MonthSection_resource__BS4hZ,.MonthSection_sessions__Kwdu_,.MonthSection_stepBody__k8xTj{margin-left:18px}}.RightRail_rail__n6p7d{display:flex;flex-direction:column;gap:12px;position:-webkit-sticky;position:sticky;top:calc(var(--tabbar-h) + 16px);align-self:start}.RightRail_card__tugdC{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 16px 18px}.RightRail_cardHead__JIsGZ{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.RightRail_cardTitle___QU_h{margin:0;font-size:14px;font-weight:750;color:var(--text);letter-spacing:-.01em}.RightRail_muted__I8zA6{margin:0;font-size:13px;color:var(--text-dim)}.RightRail_nextBtn___XVvz{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:13px 14px;cursor:pointer;transition:background .16s ease,border-color .16s ease}.RightRail_nextBtn___XVvz:hover{background:var(--surface-3);border-color:var(--text-faint)}.RightRail_nextKind__DbPpb{font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--cyan)}.RightRail_nextLabel__uTMII{font-size:14px;font-weight:650;line-height:1.4;color:var(--text)}.RightRail_nextMonth__POX9z{font-size:11.5px;color:var(--text-dim)}.RightRail_nextGo__kPRXF{margin-top:8px;font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--cta)}.RightRail_doneBox__Tr_hR{display:flex;gap:12px;align-items:flex-start;background:var(--apple-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px}.RightRail_doneMark__HTVlB{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--apple);color:var(--on-accent);display:grid;place-items:center;font-weight:800;font-size:14px}.RightRail_doneText___hHyK{margin:0;font-size:13px;line-height:1.5;color:var(--text)}.RightRail_pctRow__rkUAH{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.RightRail_pctNum__BJoJC{font-size:32px;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.RightRail_pctMeta__5vFQE{font-size:12px;color:var(--text-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.RightRail_spineTrack__zLKZe{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:6px;gap:6px}.RightRail_spineSeg__F_sGz{display:flex;flex-direction:column;gap:6px;background:none;border:none;padding:2px 0;cursor:pointer}.RightRail_segTrack__zY_hy{display:block;height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}.RightRail_segFill__GsP_p{display:block;height:100%;background:var(--cyan);border-radius:999px;transition:width .5s cubic-bezier(.16,1,.3,1)}.RightRail_segComplete__fBUXm{background:var(--apple)}.RightRail_segLabel__Dzzb_{font-size:10px;font-weight:700;color:var(--text-faint);letter-spacing:.03em;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.RightRail_segCurrent__cDWxn{color:var(--cyan)}.RightRail_segLabelDone__VApuM{color:var(--apple)}.RightRail_spineSeg__F_sGz:hover .RightRail_segLabel__Dzzb_{color:var(--text)}.RightRail_spineSeg__F_sGz[data-locked] .RightRail_segTrack__zY_hy{background:var(--surface-2)}.RightRail_segLock__64_N0{width:11px;height:11px;color:var(--text-faint);display:block;margin:0 auto}.RightRail_links__NEgoh{display:flex;flex-direction:column;gap:2px}.RightRail_link__neufW{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-xs);padding:9px 10px;margin:0 -10px;font-size:13.5px;font-weight:600;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease}.RightRail_link__neufW:hover{background:var(--surface-2);color:var(--cyan)}@media (max-width:960px){.RightRail_rail__n6p7d{position:static;display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.RightRail_refCard__2PxUJ{grid-column:1/-1}.RightRail_links__NEgoh{flex-direction:row;flex-wrap:wrap;gap:8px}.RightRail_link__neufW{margin:0;border:1px solid var(--border);background:var(--surface-2);width:auto;flex:1 1}}@media (max-width:620px){.RightRail_rail__n6p7d{grid-template-columns:1fr}.RightRail_refCard__2PxUJ{display:none}.RightRail_card__tugdC{padding:14px}.RightRail_pctNum__BJoJC{font-size:27px}}.Reference_section__ue17a{scroll-margin-top:calc(var(--tabbar-h) + 16px)}.Reference_panelHead__fdjca{padding:4px 2px 18px}.Reference_tag__pn9IK{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--cyan);margin:0 0 8px}.Reference_panelHead__fdjca[data-accent=vermillion] .Reference_tag__pn9IK{color:var(--vermillion)}.Reference_title__6dKll{font-size:clamp(22px,3.6vw,30px);font-weight:800;letter-spacing:-.02em;color:var(--text);margin:0 0 8px}.Reference_lede__4qwc7{font-size:14px;line-height:1.55;color:var(--text-dim);max-width:62ch;margin:0}.Reference_card__Ogx6c{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.Reference_dividerText__Hh7RZ{font-size:14px;line-height:1.6;color:var(--text-dim);max-width:62ch;margin:0 0 20px}.Reference_key__q3PSV{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:14px 16px;margin-bottom:20px}.Reference_keyTag__AnuWb{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;color:var(--text-faint);margin-bottom:10px}.Reference_keyRow__gS3Vn{display:flex;flex-wrap:wrap;gap:10px 26px}.Reference_keyItem__9gSZU{display:flex;align-items:center;gap:9px}.Reference_keyMeaning__fcFs4{font-size:13px;color:var(--text-dim)}.Reference_tierChip__NoIub{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:4px 11px;border-radius:999px;color:var(--on-accent)}.Reference_tierChip__NoIub[data-tier=beginner]{background:var(--tier-beginner)}.Reference_tierChip__NoIub[data-tier=intermediate]{background:var(--tier-intermediate)}.Reference_tierChip__NoIub[data-tier=advanced]{background:var(--tier-advanced)}.Reference_tierChip__NoIub[data-tier=all]{background:var(--tier-all)}.Reference_group__fbq_e{margin-bottom:20px}.Reference_group__fbq_e:last-child{margin-bottom:0}.Reference_groupHead__hcHwq{display:flex;align-items:center;gap:8px;margin-bottom:10px}.Reference_groupDot__ktKto{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.Reference_groupDot__ktKto[data-tier=beginner]{background:var(--tier-beginner)}.Reference_groupDot__ktKto[data-tier=intermediate]{background:var(--tier-intermediate)}.Reference_groupDot__ktKto[data-tier=advanced]{background:var(--tier-advanced)}.Reference_groupDot__ktKto[data-tier=all]{background:var(--tier-all)}.Reference_groupLabel__5AoQB{font-size:14px;font-weight:800;letter-spacing:.03em;color:var(--text)}.Reference_groupCount__uWOBI{font-size:12.5px;color:var(--text-faint)}.Reference_pillGrid__i9eri{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.Reference_pill__Fgs9X{font-size:12.5px;font-weight:650;line-height:1.35;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:9px 12px}.Reference_pill__Fgs9X[data-tier=beginner]{background:var(--tier-beginner-fill);border-color:var(--tier-beginner-line)}.Reference_pill__Fgs9X[data-tier=intermediate]{background:var(--tier-intermediate-fill);border-color:var(--tier-intermediate-line)}.Reference_pill__Fgs9X[data-tier=advanced]{background:var(--tier-advanced-fill);border-color:var(--tier-advanced-line)}.Reference_pill__Fgs9X[data-tier=all]{background:var(--tier-all-fill);border-color:var(--tier-all-line)}.Reference_pillDone__vrlx3{display:inline-flex;align-items:center;gap:7px;border-color:var(--apple);box-shadow:inset 0 0 0 1px var(--apple)}.Reference_pillCheck__G7cpz{flex:0 0 auto;width:14px;height:14px;color:var(--apple)}.Reference_coach__F5IYy{display:flex;flex-direction:column;gap:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:9px 12px}.Reference_coach__F5IYy[data-tier=beginner]{background:var(--tier-beginner-fill);border-color:var(--tier-beginner-line)}.Reference_coach__F5IYy[data-tier=intermediate]{background:var(--tier-intermediate-fill);border-color:var(--tier-intermediate-line)}.Reference_coach__F5IYy[data-tier=advanced]{background:var(--tier-advanced-fill);border-color:var(--tier-advanced-line)}.Reference_coach__F5IYy[data-tier=all]{background:var(--tier-all-fill);border-color:var(--tier-all-line)}.Reference_coachName__UjAju{font-size:13px;font-weight:750;color:var(--text)}.Reference_coachNote__jXVSF{font-size:11px;color:var(--text-dim)}.Reference_termGrid__xJP39{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.Reference_term___iP6l{display:flex;gap:10px;align-items:flex-start;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px}.Reference_termDot__S0ufQ{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--cyan);margin-top:6px}.Reference_termName__JfrF0{font-size:14px;font-weight:750;color:var(--text);letter-spacing:-.01em}.Reference_termDef__pBydy{margin:4px 0 0;font-size:13px;line-height:1.55;color:var(--text-dim)}@media (max-width:900px){.Reference_pillGrid__i9eri{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.Reference_pillGrid__i9eri,.Reference_termGrid__xJP39{grid-template-columns:1fr}.Reference_card__Ogx6c{padding:18px}}.ThemeToggle_toggle__03nAw{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-dim);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.ThemeToggle_toggle__03nAw:hover{background:var(--surface-3);border-color:var(--text-faint);color:var(--text)}.ThemeToggle_toggle__03nAw svg{width:17px;height:17px}.RoadmapApp_page__PC5KH{min-height:100vh;background:var(--canvas)}.RoadmapApp_band__j6Nng{height:84px;background:var(--gradient-band)}.RoadmapApp_shell__OCu_M{max-width:1180px;margin:0 auto;padding:0 24px 64px}.RoadmapApp_spaceHead__sW19u{display:flex;align-items:center;gap:16px;padding:22px 0 18px;flex-wrap:wrap}.RoadmapApp_icon__Y3i2f{flex:0 0 auto;width:54px;height:54px;border-radius:15px;background:linear-gradient(150deg,var(--cyan),var(--ocean-deep));color:#fff;display:grid;place-items:center;box-shadow:var(--shadow)}.RoadmapApp_icon__Y3i2f svg{width:28px;height:28px}.RoadmapApp_spaceTitleWrap__s37hx{flex:1 1 240px;min-width:0}.RoadmapApp_spaceTitle__BXfaK{margin:0;display:flex;flex-direction:column;font-size:clamp(21px,3.4vw,27px);font-weight:700;line-height:1.02;letter-spacing:.01em;color:var(--ocean);text-transform:uppercase}.RoadmapApp_spaceSub__KQxZ3{margin:7px 0 0;font-size:13.5px;color:var(--text-dim)}.RoadmapApp_edition__8NdlX{flex:0 0 auto;font-size:10px;font-weight:800;letter-spacing:.09em;color:var(--cyan);background:var(--pinewood);border:1px solid var(--border);padding:7px 13px;border-radius:999px}.RoadmapApp_headPct__ZC7az{flex:0 0 auto;font-size:13px;font-weight:800;color:var(--on-accent);background:var(--lime);border-radius:999px;padding:7px 14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.RoadmapApp_headPct__ZC7az[data-complete]{background:var(--apple)}.RoadmapApp_tabs__8HqTY{position:-webkit-sticky;position:sticky;top:0;z-index:20;height:var(--tabbar-h);margin:0 -24px;padding:0 24px;background:color-mix(in srgb,var(--canvas) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.RoadmapApp_tabsInner__2wqP9{display:flex;gap:6px;height:100%;overflow-x:auto;scrollbar-width:none}.RoadmapApp_tabsInner__2wqP9::-webkit-scrollbar{display:none}.RoadmapApp_tab__2iHp1{position:relative;flex:0 0 auto;background:none;border:none;cursor:pointer;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);padding:0 12px;white-space:nowrap;transition:color .15s ease}.RoadmapApp_tab__2iHp1:hover{color:var(--text)}.RoadmapApp_tabActive__32a5S{color:var(--cyan)}.RoadmapApp_tabActive__32a5S:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:var(--cyan);border-radius:2px 2px 0 0}.RoadmapApp_layout__stbcr{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:24px;gap:24px;align-items:start;padding-top:22px}.RoadmapApp_main__ypZdz{min-width:0;display:flex;flex-direction:column;gap:14px}.RoadmapApp_welcome__KMWNF{display:flex;gap:22px;align-items:center;background:var(--pinewood);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.RoadmapApp_welcomePhoto__dRvnx{flex:0 0 auto;width:116px;height:116px;border-radius:50%;object-fit:cover;object-position:65% 20%;border:3px solid var(--cyan)}.RoadmapApp_welcomeBody__mT38D{min-width:0}.RoadmapApp_welcomeTag__WpjiR{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--cyan)}.RoadmapApp_welcomeTitle__XUPo3{font-size:21px;font-weight:800;color:var(--text);letter-spacing:-.01em;margin:6px 0 10px}.RoadmapApp_welcomeQuote__0iU5i{font-size:14px;line-height:1.55;font-style:italic;color:var(--text-dim);margin:0 0 10px}.RoadmapApp_welcomeAttr__wxUXu{font-size:11px;font-weight:700;letter-spacing:.07em;color:var(--apple);margin:0}.RoadmapApp_howto__JwMO1{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.RoadmapApp_howtoHead__4ab9f{width:100%;display:flex;align-items:center;gap:16px;padding:18px 20px;background:none;border:none;cursor:pointer;text-align:left;border-radius:var(--radius)}.RoadmapApp_howtoHead__4ab9f:hover{background:var(--surface-2)}.RoadmapApp_howtoHeadText__8EMI_{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.RoadmapApp_sectionTag__8l0nX{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--cyan);margin:0}.RoadmapApp_howtoTitle__FLv6G{font-size:17px;font-weight:750;color:var(--text);letter-spacing:-.01em}.RoadmapApp_howtoHint__8H95e{flex:1 1 auto;min-width:0;font-size:13px;color:var(--text-faint);font-style:italic}.RoadmapApp_chevron__INBhH{flex:0 0 auto;width:18px;height:18px;color:var(--text-dim);transition:transform .2s ease}.RoadmapApp_chevronOpen__3cfuU{transform:rotate(180deg)}.RoadmapApp_howtoBody__y0Joa{padding:0 20px 22px}.RoadmapApp_howtoCols__0Qw0t{column-count:2;column-gap:30px;margin:4px 0 20px}.RoadmapApp_howtoCols__0Qw0t p{margin:0 0 13px;font-size:14px;line-height:1.6;color:var(--text-dim);page-break-inside:avoid;break-inside:avoid}.RoadmapApp_rules__lj05g{background:var(--pinewood);border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px;margin-bottom:16px}.RoadmapApp_rulesTag__IBaxe{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--cyan);margin-bottom:16px}.RoadmapApp_rulesGrid__L4H5E{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.RoadmapApp_rule__lL4Ux{display:flex;flex-direction:column;gap:5px}.RoadmapApp_ruleNum__hLdNV{font-size:13px;font-weight:800;color:var(--cyan);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.RoadmapApp_ruleTitle___Pw_W{font-size:15px;font-weight:750;color:var(--text);letter-spacing:-.01em}.RoadmapApp_ruleBody__nLN4y{font-size:13px;line-height:1.55;color:var(--text-dim)}.RoadmapApp_howtoOutro__cB67l{font-size:14px;line-height:1.6;font-style:italic;color:var(--text-faint);margin:0}.RoadmapApp_toolbar__BMB0v{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:6px 2px 0}.RoadmapApp_toolbarLede__zsF4j{margin:0;flex:1 1 240px;min-width:0;font-size:13.5px;color:var(--text-dim)}.RoadmapApp_toolbarActions__rU_b0{display:flex;gap:8px;flex-wrap:wrap}.RoadmapApp_chip__LdBKr{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:12px;font-weight:650;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.RoadmapApp_chip__LdBKr:hover{background:var(--surface-2);color:var(--text);border-color:var(--text-faint)}.RoadmapApp_chipDot__Pt_ij{width:8px;height:8px;border-radius:50%;background:var(--surface-3);transition:background .15s ease}.RoadmapApp_chip__LdBKr[data-on]{border-color:var(--lime)}.RoadmapApp_chip__LdBKr[data-on],.RoadmapApp_chip__LdBKr[data-on]:hover{background:var(--lime);color:var(--on-accent)}.RoadmapApp_chip__LdBKr[data-on] .RoadmapApp_chipDot__Pt_ij{background:var(--on-accent)}.RoadmapApp_months__n3CX2{display:flex;flex-direction:column;gap:14px}.RoadmapApp_footer__XeDyo{margin-top:44px;padding-top:20px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11.5px;color:var(--text-faint);letter-spacing:.04em}.RoadmapApp_toTop__pbwjO{background:none;border:none;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--cyan);letter-spacing:.05em;padding:6px 0}@media (max-width:960px){.RoadmapApp_layout__stbcr{grid-template-columns:1fr}.RoadmapApp_main__ypZdz{order:2}}@media (max-width:640px){.RoadmapApp_shell__OCu_M{padding:0 14px 44px}.RoadmapApp_tabs__8HqTY{margin:0 -14px;padding:0 14px}.RoadmapApp_band__j6Nng{height:60px}.RoadmapApp_howtoCols__0Qw0t{column-count:1}.RoadmapApp_rulesGrid__L4H5E{grid-template-columns:1fr}.RoadmapApp_welcome__KMWNF{flex-direction:column;text-align:center;gap:16px}.RoadmapApp_howtoHint__8H95e{display:none}.RoadmapApp_toolbar__BMB0v{align-items:flex-start}}.RoadmapApp_signIn__dzzDc{max-width:460px;margin:72px auto;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:16px;text-align:center}.RoadmapApp_signInTitle__XosEa{margin:0 0 10px;font-size:20px;font-weight:650;color:var(--text)}.RoadmapApp_signInBody__zgKqk{margin:0 0 22px;font-size:15px;line-height:1.55;color:var(--text-dim)}.RoadmapApp_signInButton__lflFx{display:inline-block;padding:11px 22px;border-radius:999px;background:var(--cyan);color:var(--on-cyan);font-size:15px;font-weight:650;text-decoration:none}.RoadmapApp_signInButton__lflFx:hover{filter:brightness(1.08)}.RoadmapApp_signInButton__lflFx:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.RoadmapApp_signInError__2a_ny{margin:0 0 18px;padding:10px 14px;border-radius:10px;background:rgba(242,105,65,.12);border:1px solid rgba(242,105,65,.4);font-size:14px;color:var(--text)}