.open-source_page__J0A2_{max-width:1200px;margin:0 auto;padding:36px 0 64px;color:var(--ink);--lab-green:#276854;--lab-line:#dce5e0;--lab-muted:#64766f;--lab-paper:#f5f7f4}.open-source_page__J0A2_ a{text-underline-offset:4px}.open-source_page__J0A2_ button,.open-source_page__J0A2_ input,.open-source_page__J0A2_ select,.open-source_page__J0A2_ textarea{font:inherit}.open-source_page__J0A2_ button:disabled{opacity:.5;cursor:not-allowed}.open-source_page__J0A2_ :focus-visible{outline:3px solid #377e65;outline-offset:3px}.open-source_heading__eebzk{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.open-source_heading__eebzk h1{font-size:clamp(28px,3.3vw,43px);letter-spacing:-.055em;line-height:1.25;margin:14px 0}.open-source_heading__eebzk p{max-width:650px;color:var(--lab-muted);font-size:14px;line-height:1.9;margin:0}.open-source_eyebrow__QaaXC{font-size:11px;letter-spacing:.1em;color:var(--lab-green);font-weight:700}.open-source_archive__Qm_43{display:inline-flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;color:var(--lab-muted)}.open-source_hero__US8OB{display:grid;grid-template-columns:1fr 1fr;background:#eef3ee;border:1px solid #dce6dd;border-radius:14px;overflow:hidden;margin-bottom:30px}.open-source_hero__US8OB>div:first-child{padding:36px 40px}.open-source_hero__US8OB h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.04em;line-height:1.45;margin:12px 0}.open-source_hero__US8OB p{font-size:14px;line-height:1.9;color:#53685e;max-width:390px;margin-bottom:24px}.open-source_heroMeta__rci4P{display:block;font-size:11px;color:#607469;margin-top:14px}.open-source_codePreview__qMdt6{margin:24px 24px 24px 0;padding:20px;background:#183c32;color:#e5eee6;border-radius:9px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.open-source_codeBar___r4Hm{display:flex;align-items:center;gap:8px;padding-bottom:14px;border-bottom:1px solid #ffffff22;font:12px ui-monospace,monospace;color:#c1d6cb}.open-source_codeBar___r4Hm span{margin-left:auto;color:#8eafa0}.open-source_codePreview__qMdt6 pre{font:15px/1.8 ui-monospace,monospace;white-space:pre-wrap;margin:20px 0;color:#e1ebd0}.open-source_flow__ZRMg1{display:flex;align-items:center;justify-content:space-between;gap:10px}.open-source_flow__ZRMg1 span:nth-child(odd){padding:9px 14px;border:1px solid #6b8b7a;border-radius:4px;font:12px ui-monospace,monospace}.open-source_codePreview__qMdt6 small{color:#9bb7a9;margin-top:16px;font-size:10px}.open-source_routes__UWf1j{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:34px 0 48px}.open-source_routes__UWf1j article{display:flex;gap:14px;border-top:1px solid var(--lab-line);padding-top:18px}.open-source_routeNumber__sw11d{font:20px Georgia,serif;color:#829789}.open-source_routes__UWf1j h2{font-size:15px;margin:0 0 8px}.open-source_routes__UWf1j p{font-size:12px;color:var(--lab-muted);margin:0 0 12px}.open-source_routes__UWf1j article div div{font-size:11px;line-height:2;color:var(--lab-green)}.open-source_sectionHead__9s0Jn{display:flex;align-items:center;justify-content:space-between;gap:16px}.open-source_sectionHead__9s0Jn h2{font-size:24px;margin:8px 0 0;letter-spacing:-.03em}.open-source_switches__M1KE0{display:flex;border-bottom:1px solid var(--lab-line)}.open-source_switches__M1KE0 button{border:0;background:none;padding:12px;font-size:12px;color:var(--lab-muted);cursor:pointer;border-bottom:2px solid transparent}.open-source_switches__M1KE0 button[aria-pressed=true]{color:var(--lab-green);border-bottom-color:var(--lab-green)}.open-source_filters__9QNdu{display:grid;grid-template-columns:1fr 180px;gap:16px;margin-top:24px}.open-source_filters__9QNdu label{display:grid;gap:7px;font-size:12px}.open-source_filters__9QNdu input,.open-source_filters__9QNdu select{width:100%;border:1px solid var(--lab-line);border-radius:6px;background:var(--surface,#fff);padding:12px;color:inherit}.open-source_search__HUD21{position:relative}.open-source_search__HUD21 svg{position:absolute;left:12px;top:13px;color:var(--lab-muted)}.open-source_search__HUD21 input{padding-left:38px}.open-source_trackBar__r2PbH{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.open-source_trackBar__r2PbH>span{font-size:11px;color:var(--lab-muted);white-space:nowrap}.open-source_trackTabs__0IMxT{display:flex;gap:7px;flex-wrap:wrap}.open-source_trackTabs__0IMxT button{border:1px solid var(--lab-line);background:transparent;border-radius:5px;padding:7px 12px;color:var(--lab-muted);font-size:12px;cursor:pointer}.open-source_trackTabs__0IMxT button[aria-pressed=true]{background:#234e3f;color:#fff;border-color:#234e3f}.open-source_cards__l4I_j{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.open-source_card__F3We3{min-width:0;border:1px solid var(--lab-line);border-radius:10px;padding:22px;background:var(--surface,#fff);display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}.open-source_card__F3We3:hover{border-color:#99b3a5;box-shadow:0 5px 15px #27423209}.open-source_cardTop__A2tBx{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--lab-muted)}.open-source_cardTop__A2tBx>span:first-child{color:var(--lab-green)}.open-source_projectMark__pIz1S{display:flex;justify-content:space-between;align-items:center;margin:24px 0 16px}.open-source_projectMark__pIz1S span:first-child{display:grid;place-items:center;width:42px;height:42px;background:#eef2ec;border:1px solid #e0e6da;border-radius:8px;color:#40583d;font:700 20px Georgia,serif}.open-source_projectMark__pIz1S span:last-child{font:13px ui-monospace,monospace;color:#a1afa6}.open-source_card__F3We3 h3{font-size:23px;letter-spacing:-.04em;margin:0 0 7px}.open-source_card__F3We3 h3 a{color:inherit;text-decoration:none}.open-source_repo__P5qii{display:flex;align-items:center;gap:4px;font:10px ui-monospace,monospace;color:var(--lab-muted);overflow-wrap:anywhere}.open-source_card__F3We3>p{font-size:13px;line-height:1.85;min-height:48px;margin:18px 0;color:#53635c}.open-source_deliverable__NF2Es{font-size:12px;line-height:1.8;color:#53635c;background:var(--lab-paper);padding:12px;border-radius:5px;margin-bottom:18px;flex:1}.open-source_deliverable__NF2Es span{display:block;font-size:10px;color:#748578;margin-bottom:3px}.open-source_cardBottom__O_l7_{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e6ebe6;padding-top:15px;font-size:10px}.open-source_cardBottom__O_l7_>span{color:var(--lab-muted)}.open-source_cardBottom__O_l7_>a{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;color:var(--lab-green)}.open-source_continue__8TYW_{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f6f8f5;padding:20px 24px;border-left:3px solid var(--lab-green);border-radius:5px}.open-source_continue__8TYW_ h2{font-size:20px;margin:6px 0}.open-source_continue__8TYW_ p{font-size:12px;color:var(--lab-muted);margin:0}.open-source_continue__8TYW_>a{display:flex;align-items:center;gap:6px;color:var(--lab-green);font-size:13px}.open-source_empty__NsmrW{padding:50px;text-align:center;background:var(--lab-paper);border-radius:8px}.open-source_empty__NsmrW svg{margin:auto;color:var(--lab-muted)}.open-source_empty__NsmrW h3{font-size:18px}.open-source_empty__NsmrW p{font-size:13px;color:var(--lab-muted)}.open-source_empty__NsmrW button{border:1px solid var(--lab-line);background:white;padding:9px 15px;border-radius:6px;cursor:pointer}.open-source_catalogFooter__vxPHE{display:flex;align-items:flex-start;gap:16px;border-top:1px solid var(--lab-line);padding-top:24px;margin-top:40px;color:var(--lab-muted);font-size:12px;line-height:1.85}.open-source_catalogFooter__vxPHE svg{flex-shrink:0}.open-source_catalogFooter__vxPHE p{margin:6px 0 12px}.open-source_catalogFooter__vxPHE strong{color:#435b4e;font-size:13px}.open-source_breadcrumb__x42p_{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--lab-muted);margin-bottom:25px}.open-source_breadcrumb__x42p_ a{display:flex;align-items:center;gap:6px}.open-source_detailHead__oh9nv{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:28px}.open-source_detailHead__oh9nv h1{font-size:clamp(32px,4vw,48px);letter-spacing:-.05em;margin:10px 0}.open-source_detailHead__oh9nv p{font-size:15px;color:var(--lab-muted)}.open-source_badges__edadq{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.open-source_badges__edadq span{font-size:11px;border:1px solid var(--lab-line);padding:4px 9px;border-radius:4px;color:var(--lab-muted)}.open-source_brief__7ysT7{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:var(--lab-paper);border:1px solid var(--lab-line);border-radius:10px;padding:26px 30px}.open-source_brief__7ysT7 h2{font-size:22px;line-height:1.6;margin:10px 0}.open-source_brief__7ysT7 strong{font-size:12px}.open-source_brief__7ysT7 p{font-size:12px;color:var(--lab-muted);line-height:1.8;margin:5px 0 12px}.open-source_notice__IqHFW{background:#fff8e6;border-left:3px solid #b79140;color:#775f33;font-size:12px;padding:14px 18px;line-height:1.85;border-radius:4px}.open-source_workspace__zj5GD{display:grid;grid-template-columns:220px minmax(0,1fr);gap:44px;margin-top:36px}.open-source_sidebar__mGWYw{position:sticky;top:100px;align-self:start}.open-source_sidebar__mGWYw nav{display:grid;gap:6px;margin-top:15px}.open-source_sidebar__mGWYw nav a{display:flex;gap:12px;align-items:center;padding:12px;font-size:13px;border-radius:6px;color:#617469;text-decoration:none}.open-source_sidebar__mGWYw nav a>span{font:11px ui-monospace,monospace;min-width:18px}.open-source_sidebar__mGWYw nav a[aria-current=step]{background:#eaf1ea;color:#244e3a;font-weight:600}.open-source_sidebar__mGWYw>p{font-size:11px;line-height:1.9;color:var(--lab-muted);margin:18px 10px}.open-source_sourceMeta__BObSs{display:grid;gap:10px;border-top:1px solid var(--lab-line);margin-top:26px;padding:22px 12px;font-size:11px;color:var(--lab-muted)}.open-source_sourceMeta__BObSs strong{color:var(--ink)}.open-source_sourceMeta__BObSs>a{overflow-wrap:anywhere}.open-source_lesson__PaoSv{min-width:0}.open-source_lessonTitle__scFCo{padding-bottom:22px;border-bottom:1px solid var(--lab-line);margin-bottom:24px}.open-source_lessonTitle__scFCo h2{font-size:28px;margin:10px 0}.open-source_lesson__PaoSv p{font-size:14px;line-height:1.9;color:#55695e}.open-source_lesson__PaoSv h3{font-size:17px;margin:24px 0 12px}.open-source_lesson__PaoSv pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#183c32;color:#e0ecdf;border-radius:7px;padding:20px;font:12px/1.85 ui-monospace,monospace;margin:20px 0}.open-source_sourceFiles__Ky6Na{display:grid;gap:10px}.open-source_sourceFiles__Ky6Na>a{display:flex;align-items:center;gap:12px;border:1px solid var(--lab-line);border-radius:7px;padding:16px;color:var(--lab-green);text-decoration:none}.open-source_sourceFiles__Ky6Na>a>div{min-width:0;flex:1}.open-source_sourceFiles__Ky6Na strong{display:block;overflow-wrap:anywhere;font:12px ui-monospace,monospace;line-height:1.7}.open-source_sourceFiles__Ky6Na span{display:block;margin-top:4px;font-size:11px;color:var(--lab-muted)}.open-source_sourceFiles__Ky6Na svg{flex-shrink:0}.open-source_sourceLink__n1ub0{display:inline-flex;align-items:center;gap:8px;font-size:13px}.open-source_fine__aID8h,.open-source_lesson__PaoSv .open-source_fine__aID8h{font-size:11px;line-height:1.85;color:var(--lab-muted)}.open-source_hint__9i4Tg{padding:14px 16px;border-left:3px solid #8eac95;background:var(--lab-paper)}.open-source_criteria__L5u_s{padding-left:24px}.open-source_criteria__L5u_s li{padding:9px 4px;font-size:14px;line-height:1.85;color:#4d6256}.open-source_stepLinks__l4X8C{display:flex;gap:24px;font-size:13px}.open-source_record__BTIKi{margin-top:30px;border:1px solid var(--lab-line);border-radius:9px;padding:22px;background:#fafbf9}.open-source_record__BTIKi h3{margin-top:0}.open-source_record__BTIKi>label:not(.open-source_checkbox__C4asr){display:grid;gap:9px;font-size:12px}.open-source_record__BTIKi textarea{resize:vertical;min-height:160px;border:1px solid #cddacf;background:#fff;border-radius:6px;padding:12px;line-height:1.8;width:100%;color:#263e30}.open-source_checkbox__C4asr{display:flex;align-items:center;gap:9px;font-size:12px;margin:16px 0;color:#4e6656}.open-source_checkbox__C4asr input{width:16px;height:16px;accent-color:var(--lab-green)}.open-source_actions__6iLVp{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.open-source_export__BI7oA{border:0;background:transparent;display:flex;gap:6px;align-items:center;color:var(--lab-green);cursor:pointer;font-size:12px!important;padding:8px 0}.open-source_record__BTIKi [role=alert]{font-size:12px;color:#9b4337}.open-source_record__BTIKi [role=status]{color:#276854;font-size:12px}.open-source_pager__Frhdq{display:flex;justify-content:space-between;gap:20px;padding:25px 0;font-size:13px}.open-source_history__lrxhP{border-top:1px solid var(--lab-line);margin-top:20px;padding-top:10px}.open-source_history__lrxhP h3 span{font-weight:400;color:var(--lab-muted);font-size:12px}.open-source_history__lrxhP details{padding:14px 0;border-bottom:1px solid var(--lab-line)}.open-source_history__lrxhP summary{font-size:12px;cursor:pointer;color:#4f6859}.open-source_history__lrxhP details strong{font-size:12px}.open-source_noteText__k9sJG{white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width:1000px){.open-source_cards__l4I_j{grid-template-columns:repeat(2,minmax(0,1fr))}.open-source_routes__UWf1j{gap:16px}.open-source_hero__US8OB>div:first-child{padding:28px}.open-source_workspace__zj5GD{gap:25px;grid-template-columns:190px minmax(0,1fr)}}@media (max-width:700px){.open-source_page__J0A2_{padding-top:22px}.open-source_heading__eebzk{display:block}.open-source_archive__Qm_43{margin-top:18px}.open-source_hero__US8OB{grid-template-columns:1fr}.open-source_hero__US8OB>div:first-child{padding:26px}.open-source_codePreview__qMdt6{margin:0 16px 16px;padding:18px}.open-source_codePreview__qMdt6 pre{font-size:13px}.open-source_routes__UWf1j{grid-template-columns:1fr;margin:28px 0}.open-source_routes__UWf1j article{padding-top:15px}.open-source_sectionHead__9s0Jn{align-items:flex-start}.open-source_sectionHead__9s0Jn h2{font-size:21px}.open-source_switches__M1KE0 button{padding:10px 7px;white-space:nowrap;font-size:11px}.open-source_filters__9QNdu{grid-template-columns:1fr 110px;gap:10px}.open-source_trackBar__r2PbH{align-items:flex-start;flex-direction:column;gap:12px}.open-source_cards__l4I_j{grid-template-columns:1fr}.open-source_card__F3We3>p{min-height:0}.open-source_card__F3We3{padding:20px}.open-source_projectMark__pIz1S{margin:18px 0 12px}.open-source_continue__8TYW_{padding:17px}.open-source_continue__8TYW_>a{white-space:nowrap;font-size:12px}.open-source_detailHead__oh9nv{display:block}.open-source_detailHead__oh9nv>a{margin-top:14px}.open-source_brief__7ysT7{grid-template-columns:1fr;gap:15px;padding:20px}.open-source_workspace__zj5GD{grid-template-columns:1fr;gap:22px;margin-top:24px}.open-source_sidebar__mGWYw{position:static}.open-source_sidebar__mGWYw nav{grid-template-columns:1fr 1fr}.open-source_sidebar__mGWYw>p{display:none}.open-source_sourceMeta__BObSs{grid-template-columns:1fr 1fr;margin-top:15px;padding:15px 12px}.open-source_lessonTitle__scFCo h2{font-size:24px}.open-source_lesson__PaoSv p{font-size:13px}.open-source_record__BTIKi{padding:17px}.open-source_actions__6iLVp .open-source_button__1Y_Ld{font-size:12px}.open-source_sourceFiles__Ky6Na>a{padding:12px}.open-source_catalogFooter__vxPHE{font-size:11px}.open-source_flow__ZRMg1 span:nth-child(odd){padding:8px}.open-source_empty__NsmrW{padding:30px 15px}.open-source_notice__IqHFW{font-size:11px}}@media (prefers-reduced-motion:reduce){.open-source_card__F3We3{transition:none}}