.sh-course__rows{gap:var(--space-5);display:grid}.sh-course .sh-choices__legend{margin-bottom:var(--space-2);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.sh-course__boards .sh-choices__list{gap:0 var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.sh-course__boards.sh-choices--card .sh-choice{min-height:48px;padding:var(--space-2) 0;border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;align-items:center}.sh-course__boards.sh-choices--card .sh-choice:hover{border-color:var(--line);box-shadow:none;background:0 0}.sh-course__boards.sh-choices--card .sh-choice:has(:checked){border-color:var(--line);box-shadow:none;background:0 0}.sh-course__boards.sh-choices--card .sh-choice:has(:focus-visible){outline:2px solid var(--focus-ring-color);outline-offset:2px;border-radius:var(--radius-1)}.sh-course__boards .sh-choice__label{color:var(--ink);font-size:var(--text-md)}.sh-course__boards .sh-choice:has(:checked) .sh-choice__label{font-weight:var(--weight-semibold)}.sh-course__boards .sh-choice__desc{color:var(--ink-3);font-size:var(--text-sm)}@media (max-width:420px){.sh-course__boards .sh-choices__list{gap:0 var(--space-4)}}.sh-course-row{align-items:baseline;gap:var(--space-1) var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;margin:0;display:flex}.sh-course-row__label{color:var(--ink-3);font-size:var(--text-sm)}.sh-course-row__value{color:var(--ink);flex:auto}.st{gap:var(--space-5);display:grid}.st>.sh-h2{margin:0}.st-group{gap:var(--space-2) var(--space-6);grid-template-columns:minmax(10rem,14rem) minmax(0,1fr);align-items:start;display:grid}.st-group__title{padding-top:var(--space-4);color:var(--ink);font:var(--weight-semibold) var(--text-md) / var(--leading-ui) var(--font-body);margin:0}.st-rows{border-top:1px solid var(--line);display:grid}.st-row{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-5);min-height:calc(var(--tap) + var(--space-4));padding:var(--space-3) 0;border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.st-row__text{gap:var(--space-1);flex:14rem;min-width:0;display:grid}.st-row__label{color:var(--ink);font-size:var(--text-md);line-height:var(--leading-ui);margin:0}.st-row__hint{max-width:var(--measure-narrow);color:var(--ink-3);font-size:var(--text-sm);line-height:var(--leading-ui);margin:0}.st-row__control{flex:none}.st-toggle.sh-toggle{width:100%;display:flex}.st-toggle .sh-toggle__text{gap:var(--space-1)}.st-note{color:var(--ink-3);font-size:var(--text-sm);margin:0}.st-note--foot{margin-inline-end:auto}.st>.st-note{padding-left:calc(14rem + var(--space-6))}.sh-dialog .st-rows{border-top:0}.sh-dialog .st-note{margin-top:var(--space-3)}@media (max-width:760px){.st-group{grid-template-columns:minmax(0,1fr)}.st-group__title{padding-top:var(--space-2)}.st>.st-note{padding-left:0}.st-row__control{flex:100%}}.sh-header{z-index:var(--z-header);border-bottom:1px solid var(--line);background:var(--canvas);font-family:var(--font-body);position:relative}.sh-header.is-sticky{position:sticky;top:0}.sh-header__inner{align-items:center;gap:var(--space-4);max-width:var(--container);min-height:64px;padding:0 var(--gutter);margin:0 auto;display:flex}.sh-header__brand{align-items:center;gap:var(--space-3);min-width:0;margin-right:auto;display:flex}.sh-header__logo{min-height:var(--tap);border-radius:var(--radius-m);color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;margin-left:-8px;padding:0 8px;display:inline-flex}.sh-header__logo .logo-word{white-space:nowrap;font-size:var(--text-md);letter-spacing:-.02em;font-weight:600}.sh-header__sep{background:var(--line-strong);width:1px;height:18px;transform:rotate(18deg)}.sh-header__area{color:var(--ink-2);font-weight:600}.sh-header__actions{align-items:center;gap:var(--space-2);display:flex}.sh-menu{position:relative}.sh-menu__panel{z-index:var(--z-dropdown);width:320px;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface-raised);box-shadow:var(--elev-3);position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.sh-menu__panel[hidden]{display:none}.sh-menu__panel ul,.sh-more__list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sh-menu__head{margin:var(--space-2) var(--space-3) var(--space-1);color:var(--ink-3);font:600 var(--text-sm) / 1.2 var(--font-body)}.sh-menu__item{align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2) var(--space-3);border-radius:var(--radius-1);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease);background:0 0;border:0;display:flex}.sh-menu__item:hover,.sh-menu__item[aria-current=page]{background:var(--surface-2)}.sh-menu__icon{width:20px;height:20px;color:var(--ink-3);flex:none;place-items:center;display:grid}.sh-menu__text{gap:2px;min-width:0;display:grid}.sh-menu__name{align-items:center;gap:var(--space-2);font-weight:400;font-size:var(--text-md);display:inline-flex}.sh-menu__desc{color:var(--ink-3);font-size:var(--text-sm);line-height:1.35}@media (max-width:760px){.sh-header__inner{min-height:56px}}@media (max-width:420px){.sh-header__sep,.sh-header__area{display:none}}.sh-footer{max-width:var(--container);padding:var(--space-4) var(--gutter) var(--space-6);color:var(--ink-3);font-family:var(--font-body);font-size:var(--text-sm);margin:0 auto;position:relative}.sh-footer:before{content:"";top:0;left:var(--gutter);right:var(--gutter);border-top:1px solid var(--line);position:absolute}.sh-footer__inner{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-6);flex-wrap:wrap;display:flex}.sh-footer__line{color:var(--ink-3);margin:0;line-height:1.5}.sh-footer__name{margin-right:var(--space-3);color:var(--ink-2);font-weight:600}.sh-footer__links{gap:0 var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.sh-footer__link{min-height:36px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;text-decoration:none;display:inline-flex}.sh-footer__link:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.sh-footer__soon{color:var(--ink-3);font-size:var(--text-sm)}@media (max-width:1023.98px){.sh-footer__link{min-height:var(--tap)}}.sh-skip{z-index:calc(var(--z-header) + 1);border-radius:var(--radius-m);background:var(--surface-inverse);color:var(--ink-inverse);font:600 var(--text-sm) / 1.2 var(--font-body);padding:12px 16px;text-decoration:none;position:absolute;top:8px;left:8px;transform:translateY(-160%)}.sh-skip:focus{outline:var(--focus-ring);outline-offset:2px;transform:none}.sh-skip:focus-visible{outline:var(--focus-ring);outline-offset:2px;transform:none}#main:focus{outline:none}.sh-coursebtn{border-radius:var(--radius-1);background:var(--surface-2);max-width:300px;min-height:36px;color:var(--ink-2);font:400 var(--text-sm) / 1 var(--font-body);white-space:nowrap;cursor:pointer;border:0;align-items:center;padding:0 12px;display:inline-flex;position:relative}.sh-coursebtn:before{content:"";position:absolute;top:-4px;bottom:-4px;left:0;right:0}.sh-coursebtn:hover{background:var(--surface-3);color:var(--ink)}.sh-coursebtn__long{text-overflow:ellipsis;overflow:hidden}.sh-coursebtn__short{display:none}.sh-course__note{color:var(--ink-2);margin:0;line-height:1.55}.sh-course .sh-dialog__body{gap:var(--space-5);display:grid}@media (max-width:1180px){.sh-coursebtn__long{display:none}.sh-coursebtn__short{display:inline}}@media (max-width:420px){.sh-coursebtn{font-size:var(--text-xs);padding:0 8px}}.sh-pagehead{gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--rule-strong,var(--ink));display:grid}.sh-pagehead:has(.sh-subnav){padding-bottom:0}.sh-pagehead .sh-subnav{border-bottom:0}.sh-pagehead__row{justify-content:space-between;align-items:flex-end;gap:var(--space-4) var(--space-6);flex-wrap:wrap;display:flex}.sh-pagehead__text{gap:var(--space-3);min-width:0;max-width:46em;display:grid}.sh-pagehead__title,.sh-pagehead__over{margin:0}.sh-pagehead__titlerow{align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.sh-pagehead__tag{color:var(--ink-3);font:400 var(--text-sm) / 1.2 var(--font-body);letter-spacing:0}.sh-pagehead__lede{max-width:38em;margin:0}.sh-pagehead__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.sh-crumbs ol{color:var(--ink-3);font:400 var(--text-sm) / 1.2 var(--font-body);flex-wrap:wrap;align-items:center;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sh-crumbs li{align-items:center;gap:2px;display:inline-flex}.sh-crumbs__link{border-radius:var(--radius-1);min-height:32px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:-4px;padding:0 4px;text-decoration:none;position:relative}.sh-crumbs__link:before{content:"";position:absolute;top:-6px;bottom:-6px;left:0;right:0}.sh-crumbs__link:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.sh-crumbs__sep,.sh-crumbs [aria-current=page]{color:var(--ink-3)}.sh-about{border-top:1px solid var(--line-subtle);border-bottom:1px solid var(--line-subtle);color:var(--ink-2);font-size:var(--text-sm)}.sh-about>summary{align-items:center;gap:var(--space-2);min-height:var(--tap);color:var(--ink-2);cursor:pointer;font-weight:600;list-style:none;display:flex}.sh-about>summary::-webkit-details-marker{display:none}.sh-about>summary:after{content:"+";color:var(--ink-3);font:400 1.1rem / 1 var(--font-data);margin-left:auto}.sh-about[open]>summary:after{content:"–"}.sh-about__body{gap:var(--space-2);padding:0 0 var(--space-4);line-height:1.55;display:grid}.sh-about__body p{max-width:48em;margin:0}@media (max-width:960px){.sh-header__actions{gap:var(--space-1)}}.sh-continue{gap:var(--space-3);display:grid}.sh-continue__title{font:var(--weight-semibold) var(--text-xl) / var(--leading-ui) var(--font-body);letter-spacing:-.005em;margin:0}.sh-continue__list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.sh-continue__row{align-items:center;gap:var(--space-4);padding:var(--space-3) 0 var(--space-3) var(--space-4);border-bottom:1px solid var(--line-subtle);box-shadow:inset 2px 0 0 color-mix(in srgb, var(--subject,var(--accent)) 60%, transparent);grid-template-columns:minmax(0,1fr) auto;display:grid}.sh-continue__text{gap:2px;min-width:0;display:grid}.sh-continue__meta{color:var(--ink-3);font:400 var(--text-sm) / 1.3 var(--font-body);margin:0}.sh-continue__name{color:var(--ink);margin:0;font-weight:600}@media (max-width:480px){.sh-continue__row{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.sh-continue__row .sh-btn{justify-self:start}}.sh-subnav{margin-top:var(--space-3);border-bottom:1px solid var(--line);scrollbar-width:none;overflow-x:auto}.sh-subnav::-webkit-scrollbar{display:none}.sh-subnav ul{gap:var(--space-5);margin:0;padding:0;list-style:none;display:flex}.sh-subnav__link{min-height:var(--tap);color:var(--ink-3);font:400 var(--text-md) / 1 var(--font-body);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease);background:0 0;border:0;padding:0;position:relative}.sh-subnav__link:hover{color:var(--ink)}.sh-subnav__link[aria-current=page]{color:var(--ink);font-weight:600}.sh-subnav__link[aria-current=page]:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-1px;left:0;right:0}@media (forced-colors:active){.sh-subnav__link[aria-current=page]{text-decoration:underline}}@media (max-width:480px){.sh-subnav ul{gap:var(--space-4)}.sh-subnav__link{font-size:var(--text-sm)}}.sh-courseline{align-items:baseline;gap:var(--space-1) var(--space-3);color:var(--ink-3);font-size:var(--text-sm);flex-wrap:wrap;margin:0;display:flex}.sh-courseline__change{color:var(--ink-2);font-size:var(--text-sm);font-weight:400;position:relative}.sh-courseline__change:before{content:"";position:absolute;top:-12px;bottom:-12px;left:-4px;right:-4px}.sw-main>.sw-head{padding:var(--space-3) 0 var(--space-4)}.sw-main>.sh-about{max-width:85ch;margin-bottom:var(--space-2)}.sh-subnav__short{display:none}@media (max-width:480px){.sh-subnav ul{justify-content:space-between;gap:var(--space-3)}.sh-subnav__link{font-size:var(--text-md)}.sh-subnav__long{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sh-subnav__short{display:inline}}.sh-kicker{color:var(--ink-3);font:400 var(--text-kicker) / 1.35 var(--font-body);letter-spacing:0;text-transform:none;margin:0 0 12px;display:block}.sh-kicker--subject:before{content:"";vertical-align:1px;background:var(--subject,var(--ink));width:8px;height:8px;margin-right:8px;display:inline-block}.sh-kicker__sep{color:var(--ink-4);font-weight:400}.sh-fig{margin:0}.sh-fig__plate{border-radius:var(--radius-xs);outline:1px solid color-mix(in srgb, var(--ink) 10%, transparent);outline-offset:-1px;width:100%;height:auto;display:block}.sh-fig__cap{margin-top:var(--space-3);color:var(--ink-2);font:400 var(--text-sm) / 1.45 var(--font-body);text-wrap:pretty;display:block}.sh-fig__n{color:var(--ink);margin-right:.45em;font-weight:700}.sh-fig__code{color:var(--ink-3);font:400 .92em / 1 var(--font-data);font-variant-numeric:tabular-nums;margin-left:.35em}.sh-masthead{padding-bottom:var(--space-5);border-bottom:1px solid var(--rule-strong)}:root:has(.ap-rail,.sh-header) :where(.sh-h1,.sh-display,.sh-pagehead__title,.desk__title){font-weight:var(--weight-h1);letter-spacing:var(--tracking-display)}:root:has(.ap-rail,.sh-header) :where(.sh-h2,.sh-dialog__title,.desk__h,.desk-sheet__title,.desk-step--main .desk-step__title){font-weight:var(--weight-h2);letter-spacing:-.015em}:root{--tabbar-h:60px;--app-top:0px}.ap-rail{z-index:var(--z-header);width:var(--rail-w);padding:var(--space-4) var(--space-3) var(--space-3);border-right:1px solid var(--line);background:var(--canvas);font-family:var(--font-body);scrollbar-width:thin;flex-direction:column;display:none;position:fixed;top:0;bottom:0;left:0;right:auto;overflow-y:auto}.ap-rail__brand{margin-bottom:var(--space-4);padding:0 var(--space-1)}.ap-rail__logo,.ap-top__logo{min-height:var(--tap);padding:0 var(--space-2);border-radius:var(--radius-1);color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;display:inline-flex}.ap-nav__item,.ap-search,.ap-course,.ap-account{align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-1);color:var(--ink-2);font:400 var(--text-sm) / var(--leading-ui) var(--font-body);text-align:left;cursor:pointer;transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:0 0;border:0;display:flex;position:relative}.ap-nav__item:hover,.ap-search:hover,.ap-course:hover,.ap-account:hover{background:var(--surface-2);color:var(--ink)}.ap-nav__icon{color:var(--ink-3);flex:none}.ap-nav__label,.ap-search__label{flex:1;min-width:0}.ap-search{color:var(--ink-3)}.ap-search__keys{color:var(--ink-3);font:400 var(--text-xs) / 1 var(--font-body)}.ap-nav{margin-top:var(--space-1)}.ap-nav ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.ap-nav__group-label{margin:var(--space-5) var(--space-3) var(--space-1);color:var(--ink-3);font:600 var(--text-xs) / var(--leading-ui) var(--font-body)}.ap-nav__item[aria-current]{background:var(--surface-2);color:var(--ink);font-weight:600}.ap-nav__item[aria-current] .ap-nav__icon{color:var(--ink)}.ap-nav__item[aria-current]:before{content:"";top:var(--space-2);bottom:var(--space-2);background:var(--hl);width:2px;position:absolute;left:0}.ap-rail__foot>*,.ap-rail__brand,.ap-nav{min-width:0}.ap-rail__foot{padding-top:var(--space-3);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:0;margin-top:auto;display:grid}.ap-course__value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ap-course__chev{color:var(--ink-3);flex:none}.ap-rail__me{align-items:center;gap:var(--space-1);display:flex}.ap-account{gap:var(--space-2);flex:1;min-width:0}.ap-account[aria-current=page]{background:var(--surface-2);color:var(--ink);font-weight:600}.ap-account__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ap-minor{gap:0 var(--space-3);margin:var(--space-2) 0 0;padding:0 var(--space-3);flex-wrap:wrap;list-style:none;display:flex}.ap-minor__link{min-height:32px;color:var(--ink-3);font:400 var(--text-xs) / 1 var(--font-body);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;text-decoration:none;display:inline-flex}.ap-minor__link:hover,.ap-minor__link[aria-current=page]{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--link-line);text-decoration-color:var(--link-line);text-underline-offset:3px}.ap-top{z-index:var(--z-header);justify-content:space-between;align-items:center;gap:var(--space-3);min-height:56px;padding:0 var(--space-2) 0 var(--space-2);border-bottom:1px solid var(--line);background:var(--canvas);font-family:var(--font-body);display:flex;position:sticky;top:0}.ap-top__actions{align-items:center;gap:0;display:flex}.ap-top__icon,.ap-account.is-compact{width:var(--tap);height:var(--tap);border-radius:var(--radius-1);color:var(--ink);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.ap-top__icon:hover{background:var(--surface-2)}.ap-tabbar{z-index:var(--z-header);padding:0 var(--space-1) env(safe-area-inset-bottom,0);border-top:1px solid var(--line);background:var(--canvas);font-family:var(--font-body);position:fixed;top:auto;bottom:0;left:0;right:0}.ap-tabbar ul{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;max-width:640px;margin:0 auto;padding:0;list-style:none;display:grid}.ap-tabbar__tab{justify-items:center;gap:var(--space-1);width:100%;min-height:56px;padding:var(--space-2) 0;color:var(--ink-3);font:400 var(--text-xs) / 1.1 var(--font-body);cursor:pointer;background:0 0;border:0;display:grid;position:relative}.ap-tabbar__tab[aria-current]{color:var(--ink);font-weight:600}.ap-tabbar__tab[aria-current]:before{content:"";background:var(--hl);height:2px;position:absolute;top:-1px;left:30%;right:30%}@media (min-width:1024px){.ap-rail{display:flex}.ap-top,.ap-tabbar{display:none}body:has(.ap-rail){padding-left:var(--rail-w);background:var(--canvas)}}@media (max-width:1023.98px){:root{--app-top:56px}html:has(.ap-tabbar){scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}body:has(.ap-tabbar){padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px))}}@media (forced-colors:active){.ap-nav__item[aria-current],.ap-tabbar__tab[aria-current]{outline:2px solid canvastext}}@media print{.ap-rail,.ap-top,.ap-tabbar{display:none!important}body:has(.ap-rail){padding:0!important}}.ap-account__avatar{flex:none;display:inline-flex;position:relative}.ap-account__provider{background:var(--grey-0);width:16px;height:16px;box-shadow:0 0 0 1px var(--line);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-4px;right:-4px}:root:has(.ap-rail,.sh-header) .sh-tab{color:var(--ink-3);font-weight:400}:root:has(.ap-rail,.sh-header) .sh-tab:hover{color:var(--ink)}:root:has(.ap-rail,.sh-header) .sh-tab[aria-selected=true]{color:var(--ink)}:root:has(.ap-rail,.sh-header) .sh-tab[aria-selected=true]{font-weight:600}:root:has(.ap-rail,.sh-header) .sh-tab__count{min-width:0;color:var(--ink-3);font:400 var(--text-sm) / 1.2 var(--font-body);background:0 0;padding:0}:root:has(.ap-rail,.sh-header) .sh-tab[aria-selected=true] .sh-tab__count{min-width:0;color:var(--ink-3);font:400 var(--text-sm) / 1.2 var(--font-body);background:0 0;padding:0}:root:has(.ap-rail,.sh-header) .sh-tabs--underline .sh-tab:after{background:var(--ink)}.sh-pagehead:has(>.sh-tabs--underline){padding-bottom:0}.sh-pagehead>.sh-tabs--underline{box-shadow:none;margin-bottom:-1px}:root:has(.ap-rail,.sh-header) .sh-seg{border:1px solid var(--line);border-radius:var(--radius-1);box-shadow:none;background:0 0;padding:2px}:root:has(.ap-rail,.sh-header) .sh-seg__item>span{color:var(--ink-3);border-radius:2px;font-weight:400}:root:has(.ap-rail,.sh-header) .sh-seg__item input:checked+span{background:var(--surface-2);color:var(--ink);box-shadow:none;font-weight:600}:root:has(.ap-rail,.sh-header) .sh-tabs--pill{border:1px solid var(--line);border-radius:var(--radius-1);box-shadow:none;background:0 0;padding:2px}:root:has(.ap-rail,.sh-header) .sh-tabs--pill .sh-tab{border-radius:2px}:root:has(.ap-rail,.sh-header) .sh-tabs--pill .sh-tab[aria-selected=true]{background:var(--surface-2);box-shadow:none}:root:has(.ap-rail,.sh-header) .sh-callout{border:1px solid color-mix(in srgb, var(--sh-tone) 38%, var(--line));border-radius:var(--radius-xs);background:var(--surface-2)}:root:has(.ap-rail,.sh-header) .sh-callout--neutral{border-left-color:var(--line-strong)}:root:has(.ap-rail,.sh-header) :-webkit-any(.sh-callout__title,.sh-empty__title,.sh-h3){font-weight:600}:root:has(.ap-rail,.sh-header) :is(.sh-callout__title,.sh-empty__title,.sh-h3){font-weight:600}:root:has(.ap-rail,.sh-header) .sh-field__label{font-weight:600}:root:has(.ap-rail,.sh-header) .sh-btn--secondary{border-color:var(--line-strong)}:root:has(.ap-rail,.sh-header) .sh-btn--secondary:hover:not(:disabled){border-color:var(--ink-3)}:root:has(.ap-rail,.sh-header) .sh-btn--link{color:var(--ink);font-weight:400}.ap-nav__group-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:32px;margin-top:var(--space-4);padding:0 var(--space-3);border-radius:var(--radius-1);color:var(--ink-3);cursor:pointer;background:0 0;border:0;display:flex}.ap-nav__group-toggle .ap-nav__group-label{text-align:left;flex:1;margin:0}.ap-nav__group-toggle:hover{color:var(--ink)}.ap-nav__group-chev{color:var(--ink-3);transition:transform var(--dur-fast) var(--ease)}.ap-nav__group-toggle[aria-expanded=false] .ap-nav__group-chev{transform:rotate(-90deg)}.ap-nav__tag{color:var(--ink-3);font:400 var(--text-xs) / 1.3 var(--font-body)}.sh-more__hint{margin:0 0 var(--space-2);color:var(--ink-3);font-size:var(--text-sm)}.sh-more__group+.sh-more__group{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line)}.sh-more__module{align-items:center;gap:var(--space-2);display:flex}.sh-more__module>.sh-menu__item{flex:1;min-width:0}.sh-more__pin{min-width:64px;min-height:var(--tap);padding:0 var(--space-3);border-radius:var(--radius-1);color:var(--ink-3);font:400 var(--text-sm) / 1 var(--font-body);text-decoration:underline;-webkit-text-decoration-color:var(--link-line);text-decoration-color:var(--link-line);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;flex:none}.sh-more__pin:hover{color:var(--ink)}.sh-more__pin[aria-pressed=true]{color:var(--ink);font-weight:600;text-decoration:none}.sh-palette .sh-dialog__body{gap:var(--space-2);padding-top:var(--space-1);display:grid}.sh-palette__field{align-items:center;display:flex;position:relative}.sh-palette__lens{left:var(--space-3);color:var(--ink-3);pointer-events:none;position:absolute}.sh-palette__input{width:100%;min-height:48px;padding:0 var(--space-3) 0 calc(var(--space-6) + var(--space-3));border:1px solid var(--line-strong);border-radius:var(--radius-1);background:var(--canvas);color:var(--ink);font:400 var(--text-md) / 1.2 var(--font-body)}.sh-palette__input:focus{outline:2px solid var(--focus-ring-color);outline-offset:2px}.sh-palette__list{gap:var(--space-1);max-height:min(56vh,460px);margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.sh-palette__list ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.sh-palette__section{margin:var(--space-3) 0 var(--space-1) var(--space-3);color:var(--ink-3);font:600 var(--text-xs) / 1.2 var(--font-body)}.sh-palette__option{align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) var(--space-3);border-radius:var(--radius-1);color:var(--ink);cursor:pointer;display:flex}.sh-palette__option[aria-selected=true]{background:var(--surface-2)}.sh-palette__option[aria-selected=true] .sh-palette__icon{color:var(--ink)}.sh-palette__icon{color:var(--ink-3);flex:none}.sh-palette__text{align-items:baseline;gap:var(--space-2);flex:1;min-width:0;display:flex}.sh-palette__label{align-items:baseline;gap:var(--space-2);font:400 var(--text-md) / 1.25 var(--font-body);display:flex}.sh-palette__hint{color:var(--ink-3);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sh-palette__tag{color:var(--ink-3);font:400 var(--text-xs) / 1.3 var(--font-body)}.sh-palette__go{color:var(--ink-3)}.sh-palette__none{margin:var(--space-3) 0;color:var(--ink-2)}.sh-palette__keys{padding-top:var(--space-2);border-top:1px solid var(--line);color:var(--ink-3);font-size:var(--text-xs);margin:0}.sh-palette__keys kbd{color:var(--ink-2);font:600 var(--text-xs) / 1.3 var(--font-body);background:0 0;border:0;padding:0}@media (max-width:560px){.sh-palette__keys{display:none}}@media (forced-colors:active){.sh-palette__option[aria-selected=true]{outline:2px solid highlight}.sh-more__pin[aria-pressed=true]{outline:2px solid canvastext}}.ap-workspace-label{color:var(--ink-3);margin:6px 12px 4px;font-size:12px;font-weight:600}.ap-rail>.ap-course{border-bottom:1px solid var(--line);border-radius:0;min-height:52px;margin-bottom:14px;padding-block-start:8px;padding-block-end:8px}.ap-rail>.ap-course .ap-course__value{white-space:normal;line-height:1.5}.ap-rail .ap-nav>ul>li>.ap-nav__item{min-height:44px;font-size:15px}.ap-rail .ap-nav__item[aria-current]{background:var(--page);border-radius:4px}.ap-rail .ap-nav__group-label{margin-top:22px;font-weight:400}.ap-shortcuts{color:var(--ink-2);margin:16px 0}.ap-shortcuts summary{cursor:pointer;min-height:40px;font-size:var(--text-sm);padding:10px 12px}.ap-shortcuts summary:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.ap-rail__foot{margin-top:24px}.workspace{background:var(--surface-2)}.workspace .desk__main{gap:32px;max-width:1320px;padding-top:42px}.workspace .desk__main>.module-first--line{margin-bottom:0}.workspace-welcome{justify-content:space-between;align-items:center;gap:28px;display:flex}.workspace-eyebrow{color:var(--ink-3);font-size:var(--text-sm);margin:0 0 10px}.workspace-welcome h1{color:var(--ink);font:600 clamp(32px, 3.5vw, 46px) / 1.12 var(--font-head);letter-spacing:-.035em;margin:0 0 10px}.workspace-welcome>div>p:last-child{color:var(--ink-2);font-size:var(--text-md);margin:0}.workspace-course{border:1px solid var(--line);background:var(--page);max-width:320px;color:var(--ink);text-align:left;font:inherit;cursor:pointer;border-radius:4px;justify-items:start;gap:6px;padding:16px 20px;display:grid}.workspace:has(.module-first--line) .workspace-course{display:none}.workspace-course>span:first-child{color:var(--ink-3);font-size:var(--text-xs)}.workspace-course strong{font-size:var(--text-sm);font-weight:600}.workspace-course__change{font-size:var(--text-xs);color:var(--ink-2);align-items:center;gap:8px;display:inline-flex}.workspace-focus{grid-template-columns:minmax(0,1.8fr) minmax(240px,.9fr);align-items:stretch;gap:24px;display:grid}.workspace-focus>.desk__next{border:1px solid var(--line);background:var(--page);border-radius:6px;min-width:0;padding:28px}.workspace .desk-sheet,.workspace .desk-step--main{border:0;grid-template-columns:minmax(0,1fr);gap:24px;padding:0}.workspace .desk-next__title{font:600 clamp(23px, 2.3vw, 30px) / 1.25 var(--font-body);letter-spacing:-.025em}.workspace .desk-sheet__bench,.workspace .desk-step__bench{border-radius:3px;order:2;max-height:230px;margin:0;overflow:hidden}.workspace .desk-sheet__bench img,.workspace .desk-step__bench img{object-fit:cover;width:100%;height:230px}.workspace .desk-step__actions,.workspace .desk-sheet__actions{gap:12px}.workspace-plan{border-top:3px solid var(--ink);background:var(--page);min-width:0;padding:28px 24px}.workspace-plan h2,.workspace-activities h2{font:600 23px / 1.25 var(--font-body);letter-spacing:-.02em;margin:0 0 16px}.workspace-plan>p{color:var(--ink-2);line-height:1.6}.workspace-plan .workspace-plan__detail{font-size:var(--text-sm);margin:12px 0 24px}.workspace-plan .desk-course{border-top:1px solid var(--line);font-size:var(--text-sm);margin:28px 0 0;padding-top:24px}.workspace-activities{border-block:1px solid var(--line);grid-template-columns:minmax(0,.9fr) minmax(0,1.8fr);gap:32px;padding:32px 0;display:grid}.workspace-activities__links{gap:0;display:grid}.workspace-activity{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;display:flex}.workspace-activity:first-child{padding-top:0}.workspace-activity:last-child{border-bottom:0;padding-bottom:0}.workspace-activity>span{gap:5px;display:grid}.workspace-activity strong{font-weight:600;font-size:var(--text-md)}.workspace-activity span span{font-size:var(--text-sm);color:var(--ink-2);line-height:1.55}.workspace-activity>svg{flex:none}.workspace-activity:hover strong{text-underline-offset:4px;text-decoration:underline}.workspace .desk__section{background:var(--page);border:1px solid var(--line);border-radius:4px;padding:24px 28px}@media (max-width:1100px){.workspace-focus{grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}}@media (max-width:760px){.workspace .desk__main{gap:24px;padding-top:28px}.workspace-welcome{flex-direction:column;align-items:stretch;gap:20px}.workspace-course{grid-template-columns:minmax(0,1fr) auto;max-width:none;padding:14px 16px}.workspace-course>span:first-child,.workspace-course strong{grid-column:1}.workspace-course__change{grid-area:1/2/3;align-self:center}.workspace-focus,.workspace-activities{grid-template-columns:minmax(0,1fr);gap:24px}.workspace-focus>.desk__next,.workspace-plan,.workspace .desk__section{padding:22px 18px}.workspace-activities{gap:8px;padding:24px 0}.workspace .desk-sheet__bench,.workspace .desk-step__bench{display:block}.workspace .desk-sheet__bench img,.workspace .desk-step__bench img{height:180px}.ap-tabbar__tab{padding-inline-start:2px;padding-inline-end:2px;font-size:11px}.ap-top__actions{gap:2px}}@media (prefers-reduced-motion:reduce){.workspace *{scroll-behavior:auto}}.ap-rail .ap-nav{flex:1}.ap-rail .ap-nav>ul{gap:6px;display:grid}.ap-rail .ap-nav>ul>li>.ap-nav__item{min-height:48px}.ap-rail .ap-nav__item[aria-current]{background:var(--surface-2)}.ap-rail__foot{border-top:1px solid var(--line);gap:12px;padding-top:18px;display:grid}.ap-rail-settings{min-height:44px;color:var(--ink-2);font:500 var(--text-sm)/1.4 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:10px 12px;display:flex}.ap-tabbar>ul{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.home-next{border:1px solid var(--line);background:var(--page);border-radius:4px;padding:28px}.workspace .home-next .desk-sheet{grid-template-columns:1.2fr 1fr;align-items:center}.home-subjects__head{margin-bottom:24px}.home-subjects__head h2{font:600 24px/1.2 var(--font-body);margin:0 0 8px}.home-subjects__head p,.home-subjects__note{color:var(--ink-2);font-size:var(--text-sm);line-height:1.6}.home-subjects__list{border:1px solid var(--line);background:var(--page);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.home-subject{border:0;border-top:3px solid var(--subject,var(--ink));border-right:1px solid var(--line);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:1fr auto;gap:16px;padding:28px;display:grid}.home-subject:last-child{border-right:0}.home-subject:hover{background:var(--surface-2)}.home-subject strong{font:600 27px/1.2 var(--font-head);grid-column:1/-1}.home-subject__number{color:var(--ink-3);font:400 12px/1 var(--font-data);grid-column:1/-1}.home-subject__scope{font-size:var(--text-xs);color:var(--ink-2);line-height:1.5}.home-subjects__note{margin-top:16px}@media (max-width:760px){.home-subjects__list{grid-template-columns:1fr}.home-subject{border-top:2px solid var(--subject,var(--ink));border-right:0;border-bottom:1px solid var(--line);grid-template-columns:26px 1fr auto;gap:10px 14px;padding:20px}.home-subject:last-child{border-bottom:0}.home-subject__number{grid-area:1/1/3;padding-top:6px}.home-subject strong{grid-column:2;font-size:24px}.home-subject__scope{grid-column:2}.home-subject>svg{grid-area:1/3/3;align-self:center}.workspace .home-next .desk-sheet{grid-template-columns:1fr}.home-next{padding:20px}}:root:has(.ws-chrome){--app-top:56px}.ws-chrome{top:0;left:var(--rail-w);z-index:var(--z-header);background:var(--canvas);border-bottom:1px solid var(--line);font-family:var(--font-body);position:fixed;right:0}.ws-chrome-spacer{height:var(--app-top);flex:none}.ws-toolbar{justify-content:space-between;align-items:center;gap:24px;height:56px;padding:0 22px;display:flex}.ws-toolbar__location,.ws-toolbar__actions{align-items:center;gap:12px;min-width:0;display:flex}.ws-toolbar__location{font-size:13px}.ws-toolbar__root,.ws-toolbar__slash{color:var(--ink-3)}.ws-toolbar__location strong{text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.ws-icon{width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:inline-grid}.ws-icon:hover{background:var(--surface-2);color:var(--ink)}.ws-toolbar__search{color:var(--ink-3);font:400 12px/1 var(--font-body);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:flex}.ws-toolbar__search kbd{border:1px solid var(--line);font:400 10px/1 var(--font-body);border-radius:4px;padding:4px 6px}.ws-pagebar{background:var(--canvas);border-top:1px solid var(--line);align-items:stretch;min-width:0;height:40px;padding:0 14px;display:flex}.ws-tabs{scrollbar-width:thin;flex:1;min-width:0;display:flex;overflow-x:auto}.ws-tab{border-right:1px solid var(--line);flex:none;align-items:stretch;max-width:255px;display:flex;position:relative}.ws-tab[data-active=true]:before{content:"";background:var(--hl);height:2px;position:absolute;top:0;left:14px;right:14px}.ws-tab__open{min-width:0;color:var(--ink-2);font:400 12px/1 var(--font-body);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0 13px;display:flex}.ws-tab__open[aria-current]{color:var(--ink);font-weight:600}.ws-tab__open>svg{color:var(--ink-3);flex:none}.ws-tab__open span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ws-tab__open small{color:var(--ink-3);white-space:nowrap;font-size:10px;font-weight:400}.ws-tab__close{width:32px;min-width:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.ws-tab__close:hover,.ws-tab__open:hover{background:var(--surface-3);color:var(--ink)}.ws-context-toggle{border:0;border-left:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font:500 12px/1 var(--font-body);cursor:pointer;flex:none;justify-content:center;align-items:center;gap:9px;padding:0 18px;display:flex}.ws-context-toggle:hover,.ws-context-toggle[aria-expanded=true]{background:var(--canvas);color:var(--ink)}.ws-context{right:0;top:var(--app-top);background:var(--canvas);border-left:1px solid var(--line);z-index:20;scrollbar-width:thin;width:280px;font-family:var(--font-body);padding:0 20px;position:fixed;bottom:0;overflow-y:auto}.ws-context__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:56px;font-size:13px;font-weight:600;display:flex}.ws-context__section{border-bottom:1px solid var(--line);padding:24px 0}.ws-context__task{border-bottom:1px solid var(--line);padding:22px 0}.ws-context__task>p{color:var(--ink-3);margin:0 0 8px;font-size:11px}.ws-context__task h2{font:600 23px/1.2 var(--font-head);letter-spacing:-.02em;margin:0 0 16px}.ws-context__task img{border:1px solid var(--line);border-radius:4px;width:100%;height:auto;display:block}.ws-context__task>span{color:var(--ink-3);margin-top:10px;font-size:11px;line-height:1.5;display:block}.ws-context__links button:disabled{cursor:default;color:var(--ink-3)}.ws-context__links button:disabled:hover{text-decoration:none}.ws-context__section h2{color:var(--ink-3);font:550 11px/1.3 var(--font-body);letter-spacing:.035em;text-transform:uppercase;margin:0 0 14px}.ws-context__section>strong{font-size:16px;font-weight:600}.ws-context__section p{color:var(--ink-2);margin:9px 0 14px;font-size:12px;line-height:1.65}.ws-context__section .sh-link{align-items:center;gap:8px;min-height:32px;font-size:12px;display:inline-flex}.ws-context__links{gap:3px;display:grid}.ws-context__links button,.ws-context__reference{width:100%;min-height:38px;color:var(--ink-2);font:400 13px/1.5 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:6px 0;text-decoration:none;display:flex}.ws-context__links button:hover,.ws-context__reference:hover{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.ws-context__links button>span{flex:1}.ws-context__links button>svg{flex:none}.ws-context__recent{gap:16px;margin:0 0 12px;padding:0;list-style:none;display:grid}.ws-context__recent li{gap:4px;display:grid}.ws-context__recent span,.ws-context__recent small{color:var(--ink-3);font-size:11px}.ws-context__recent strong{font-size:13px;font-weight:500;line-height:1.5}.ws-context__storage{color:var(--ink-3);gap:9px;padding:18px 0;display:flex}.ws-context__storage svg{flex:none;margin-top:2px}.ws-context__storage p{margin:0;font-size:11px;line-height:1.6}.sh-palette__label mark{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--hl);text-decoration-color:var(--hl);text-underline-offset:3px;background:0 0;font-weight:700}.ws-context-dialog .ws-context__head{display:none}.ws-context-dialog .ws-context__section:first-of-type{padding-top:0}html:has(.ws-chrome){scroll-padding-top:calc(var(--app-top) + 20px)}body:has(.ws-chrome) #main{scroll-margin-top:calc(var(--app-top) + 20px)}@media (min-width:1024px){:root:has(.ws-chrome){--rail-w:208px}:root:has(.ws-chrome[data-rail-hidden=true]){--rail-w:0px}body:has(.ws-chrome[data-rail-hidden=true]) .ap-rail{visibility:hidden}body:has(.ws-chrome) .ap-rail{background:var(--surface-2);padding:24px 16px 18px}body:has(.ws-chrome) .ap-rail__brand{margin-bottom:24px;padding:0 3px}body:has(.ws-chrome) .ap-rail__logo{padding:0}body:has(.ws-chrome) .ap-rail>.ap-course{min-height:45px;margin-bottom:18px;padding:0 10px 16px;font-size:12px}body:has(.ws-chrome) .ap-search{background:var(--canvas);border:1px solid var(--line);border-radius:6px;min-height:38px;margin-bottom:22px;padding-inline-start:10px;padding-inline-end:10px;font-size:13px}body:has(.ws-chrome) .ap-nav>ul{gap:5px}body:has(.ws-chrome) .ap-nav>ul>li>.ap-nav__item{min-height:40px;padding:0 11px;font-size:14px}body:has(.ws-chrome) .ap-nav__item[aria-current]{background:color-mix(in srgb, var(--hl) 12%, var(--canvas));box-shadow:none}body:has(.ws-chrome) .ap-nav__item[aria-current]:before{top:10px;bottom:10px;left:0}body:has(.ws-chrome) .ap-rail__foot{gap:5px;margin-top:auto}body:has(.ws-chrome) .ap-account{min-height:38px;font-size:12px}body:has(.ws-chrome) .ap-rail-settings{min-height:38px;font-size:12px}body:has(.ws-chrome) .pg__main{padding-top:36px}}@media (min-width:1280px){body:has(.ws-chrome[data-context-open=true]){padding-right:280px}}@media (max-width:1023.98px){.ws-chrome{top:56px;left:0}.ws-toolbar{gap:8px;height:40px;padding:0 12px}.ws-toolbar__location>.ws-icon,.ws-toolbar__search,.ws-theme{display:none}.ws-toolbar__actions{gap:4px}.ws-toolbar__location{font-size:12px}.ws-toolbar__location strong{font-weight:500}.ws-recents-toggle>span{display:none}.ws-recents-toggle{width:40px;padding:0}.ws-chrome-spacer{height:var(--app-top)}.ws-context-toggle{width:44px;padding:0}.ws-context-toggle>span{display:none}.ws-tab{max-width:220px}.ws-tab__open{gap:7px;font-size:11px}body:has(.ws-chrome) .ap-top{background:var(--surface-2)}}@media (prefers-reduced-motion:no-preference){.ws-tab__open,.ws-context-toggle,.ws-icon{transition:background-color .12s,color .12s}}@media (forced-colors:active){.ws-tab[data-active=true]{outline:1px solid highlight}}@media print{.ws-chrome,.ws-chrome-spacer,.ws-context{display:none!important}body:has(.ws-chrome){padding:0!important}}:root:has(.ws-chrome[data-recent-open=true]){--app-top:96px}.ws-pagebar[hidden]{display:none}.ws-tabs{align-items:center;gap:4px}.ws-tab{border-right:0;border-radius:4px;height:32px}.ws-tab[data-active=true]{background:var(--surface-2)}.ws-tab[data-active=true]:before{height:2px;top:auto;bottom:0}.ws-toolbar__actions{flex:none;gap:6px}.ws-toolbar__location{flex:1}.ws-recents-toggle,.ws-toolbar .ws-context-toggle{min-height:36px;color:var(--ink-2);font:400 12px/1 var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:7px;padding:0 10px;display:inline-flex}.ws-recents-toggle:hover,.ws-recents-toggle[aria-expanded=true],.ws-toolbar .ws-context-toggle:hover,.ws-toolbar .ws-context-toggle[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.ws-toolbar__search{color:var(--ink-2)}@media (min-width:1024px){.ws-chrome[data-rail-hidden=false] .ws-toolbar__search{display:none}body:has(.ws-chrome) .ap-rail__foot{padding-top:12px}body:has(.ws-chrome) .ap-rail__foot .ap-course{border-bottom:1px solid var(--line);border-radius:0;min-height:48px;margin-bottom:6px;padding:0 10px 10px;font-size:11px}body:has(.ws-chrome) .ap-rail__foot .ap-course__value{white-space:normal;line-height:1.65}body:has(.ws-chrome) .ap-rail-settings{padding-inline-start:10px;padding-inline-end:10px}body:has(.ws-chrome) .ap-account{padding-inline-start:10px;padding-inline-end:10px}}@media (max-width:1023.98px){.ws-toolbar .ws-context-toggle,.ws-recents-toggle{min-width:40px;min-height:40px;padding:0}.ws-toolbar__location{overflow:hidden}}:root,[data-theme=light]{--workspace-action:#1458e9;--workspace-action-hover:#1045be;--workspace-action-ink:#fff;--workspace-link:#1458e9;--workspace-selected:#edf3ff;--workspace-rail:#f7f9fc}:root[data-theme=dark],[data-theme=dark]{--workspace-link:#9bbaff;--workspace-selected:#1c3055;--workspace-rail:#111a2c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--workspace-link:#9bbaff;--workspace-selected:#1c3055;--workspace-rail:#111a2c}}:root:has(body .ws-chrome){--font-display:var(--font-body);--font-head:var(--font-body);--accent:var(--workspace-action);--accent-hover:var(--workspace-action-hover);--accent-pressed:#0b3698;--accent-ink:var(--workspace-action-ink);--accent-text:var(--workspace-link);--accent-soft:var(--workspace-selected);--focus-ring-color:var(--workspace-link)}body:has(.ws-chrome) .ap-rail{background:var(--workspace-rail)}body:has(.ws-chrome) .ap-nav>ul>li>.ap-nav__item{border-radius:7px;min-height:46px;font-weight:500}body:has(.ws-chrome) .ap-nav__item[aria-current]{color:var(--workspace-link);background:var(--workspace-selected)}body:has(.ws-chrome) .ap-nav__item[aria-current]:before{display:none}body:has(.ws-chrome) .ap-nav__item[aria-current] .ap-nav__icon{color:currentColor}body:has(.ws-chrome) .ap-rail__foot .ap-course{border:1px solid var(--line);background:var(--canvas);border-radius:7px;margin:0 0 7px;padding:11px}body:has(.ws-chrome) .ap-search{min-height:40px;font-size:12px}body:has(.ws-chrome) .ap-rail-settings{color:var(--ink-3)}body:has(.ws-chrome) .ap-tabbar__tab[aria-current]{color:var(--workspace-link)}body:has(.ws-chrome) .ap-tabbar__tab[aria-current]:before{background:var(--workspace-action)}.ws-toolbar{background:var(--canvas)}.ws-toolbar__location strong{font-weight:650}.ws-toolbar .ws-context-toggle{border:1px solid var(--line);background:var(--canvas);padding-inline-start:12px;padding-inline-end:12px;font-weight:550}.ws-toolbar .ws-context-toggle[aria-expanded=true]{border-color:var(--workspace-link);background:var(--workspace-selected);color:var(--workspace-link)}.ws-context__task h2{font-weight:700}@media (min-width:1024px){body:has(.ws-chrome) .ap-rail{padding:27px 14px 18px}body:has(.ws-chrome) .ap-rail__brand{margin-bottom:30px}body:has(.ws-chrome) .ap-search{margin-bottom:20px}}@media (max-width:1023.98px){body:has(.ws-chrome) .ap-top{background:var(--canvas)}.ws-toolbar .ws-context-toggle{padding:0}}@media (forced-colors:active){body:has(.ws-chrome) .ap-nav__item[aria-current]{outline:1px solid highlight}}:root{--nv-foot-w:140px;--nv-ws-w:140px;--nv-pagebar-h:40px}@media (min-width:1440px){:root{--nv-foot-w:300px}}@media (min-width:1600px){:root{--nv-foot-w:360px;--nv-ws-w:290px}}@media (max-width:1023.98px){:root{--nav-h:52px;--nav-inset:8px;--tabbar-h:88px}}@media (min-width:1024px){:root:has(.ws-chrome){--rail-w:0px;--app-top:var(--nav-total)}:root:has(.ws-chrome[data-rail-hidden=true]){--rail-w:0px;--app-top:var(--nav-total)}:root:has(.ws-chrome[data-recent-open=true]){--app-top:calc(var(--nav-total) + var(--nv-pagebar-h))}html:root body:has(.ap-rail){padding-left:0}html:root body:has(.ws-chrome[data-context-open=true]) .ws-context{top:var(--app-top)}}@media (max-width:1023.98px){:root{--app-top:var(--ws-bars-bottom,var(--nav-total))}:root:has(.ws-chrome){--app-top:var(--ws-bars-bottom,calc(var(--nav-inset) + var(--nav-h) + var(--space-2) + 41px))}:root:has(.ws-chrome[data-recent-open=true]){--app-top:var(--ws-bars-bottom,calc(var(--nav-inset) + var(--nav-h) + var(--space-2) + 41px + var(--nv-pagebar-h)))}}@media (min-width:1024px){html:root body .ap-rail{inset:var(--nav-inset) var(--nav-inset) auto var(--nav-inset);align-items:center;gap:var(--space-2);width:auto;height:var(--nav-h);padding:0 var(--space-3) 0 var(--space-4);border:1px solid var(--glass-line);border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--elev-2);visibility:visible;flex-direction:row;display:flex;overflow:visible}html:root body:has(.ws-chrome[data-rail-hidden=true]) .ap-rail{inset:var(--nav-inset) var(--nav-inset) auto var(--nav-inset);align-items:center;gap:var(--space-2);width:auto;height:var(--nav-h);padding:0 var(--space-3) 0 var(--space-4);border:1px solid var(--glass-line);border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--elev-2);visibility:visible;flex-direction:row;display:flex;overflow:visible}html:root body .ap-rail__brand{flex:none;order:1;margin:0;padding:0}html:root body .ap-rail__logo{min-height:var(--tap);padding:0 var(--space-2);border-radius:var(--radius-pill)}html:root body .ap-logo-mark{display:none}html:root body .ap-rail .ap-nav{min-width:0;margin:0 0 0 var(--space-3);flex:1;order:2}html:root body .ap-rail .ap-nav>ul{gap:var(--space-1);display:flex}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item{width:auto;min-height:40px;padding:0 var(--space-4);gap:var(--space-2);border-radius:var(--radius-pill);color:var(--ink-2);font:600 var(--text-sm) / 1 var(--font-body);box-shadow:none;background:0 0}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:hover{background:var(--glass-hover);color:var(--ink)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]{background:var(--accent-soft);color:var(--accent-text)}html:root body .ap-rail .ap-nav__item[aria-current]:before{display:none}html:root body .ap-rail .ap-nav__item .ap-nav__icon,html:root body .ap-rail .ap-nav__item[aria-current] .ap-nav__icon{color:currentColor}html:root body .ap-rail .ap-nav__label{flex:none}html:root body .ap-rail>.ap-search{width:auto;min-height:40px;margin:0 var(--nv-ws-w) 0 0;padding:0 var(--space-3);gap:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--ink-3);font-size:var(--text-sm);flex:none;order:3}html:root body .ap-rail>.ap-search:hover{border-color:var(--line-strong);color:var(--ink)}html:root body .ap-rail>.ap-search .ap-search__label,html:root body .ap-rail>.ap-search .ap-search__keys{display:none}html:root body .ap-rail .ap-rail__foot{justify-content:flex-end;align-items:center;gap:var(--space-1);width:var(--nv-foot-w);border:0;flex-direction:row;flex:none;order:5;margin:0;padding:0;display:flex}html:root body .ap-rail .ap-rail__foot>*{flex:none}html:root body .ap-rail .ap-rail__foot .ap-course{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-1);width:40px;min-height:40px;color:var(--ink-2);justify-content:center;margin:0;padding:0}html:root body .ap-rail .ap-rail__foot .ap-course:hover{border-color:var(--line-strong);color:var(--ink)}html:root body .ap-rail .ap-rail__foot .ap-course__icon{color:currentColor}html:root body .ap-rail .ap-rail__foot .ap-course__value{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html:root body .ap-rail .ap-rail__foot .ap-course__chev{display:none}html:root body .ap-rail .ap-rail__foot .ap-account{border-radius:var(--radius-pill);width:40px;min-height:40px;color:var(--ink-2);background:0 0;justify-content:center;padding:0}html:root body .ap-rail .ap-rail__foot .ap-account:hover,html:root body .ap-rail .ap-rail__foot .ap-account[aria-current=page]{background:var(--glass-hover);color:var(--ink)}html:root body .ap-rail .ap-rail__foot .ap-account__name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html:root body .ap-rail .ap-rail__foot .ap-rail-settings{border-radius:var(--radius-pill);width:40px;min-height:40px;color:var(--ink-2);background:0 0;flex:none;justify-content:center;gap:0;padding:0;font-size:0}html:root body .ap-rail .ap-rail__foot .ap-rail-settings:hover{background:var(--glass-hover);color:var(--ink)}html:root body .ws-chrome{top:var(--nav-inset);left:auto;right:calc(var(--nav-inset) + var(--space-3) + var(--nv-foot-w) + var(--space-2) + 1px);width:var(--nv-ws-w);height:var(--nav-h);z-index:calc(var(--z-header) + 1);background:0 0;border:0}html:root body .ws-chrome .ws-toolbar{height:var(--nav-h);background:0 0;justify-content:flex-end;padding:0}html:root body .ws-chrome .ws-toolbar__location,html:root body .ws-chrome .ws-toolbar__search{display:none}html:root body .ws-chrome .ws-toolbar__actions{justify-content:flex-end;gap:var(--space-1);flex:1}html:root body .ws-chrome .ws-recents-toggle,html:root body .ws-chrome .ws-toolbar .ws-context-toggle{border-radius:var(--radius-pill);min-width:40px;min-height:40px;color:var(--ink-2);font:600 var(--text-sm) / 1 var(--font-body);background:0 0;border:1px solid #0000;padding:0}html:root body .ws-chrome .ws-recents-toggle>span,html:root body .ws-chrome .ws-context-toggle>span{display:none}html:root body .ws-chrome .ws-recents-toggle:hover,html:root body .ws-chrome .ws-toolbar .ws-context-toggle:hover{background:var(--glass-hover);color:var(--ink)}html:root body .ws-chrome .ws-recents-toggle[aria-expanded=true],html:root body .ws-chrome .ws-toolbar .ws-context-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}html:root body .ws-chrome .ws-pagebar{top:var(--nav-total);left:var(--nav-inset);right:var(--nav-inset);height:var(--nv-pagebar-h);padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--elev-2);position:fixed}html:root body .ws-chrome .ws-pagebar[hidden]{display:none}}@media (min-width:1360px){html:root body .ap-rail>.ap-search{justify-content:flex-start;width:200px}html:root body .ap-rail>.ap-search .ap-search__label{display:inline}html:root body .ap-rail>.ap-search .ap-search__keys{padding:var(--space-0) var(--space-2);border:1px solid var(--line);border-radius:var(--radius-0);display:inline}}@media (min-width:1440px){html:root body .ap-rail .ap-rail__foot .ap-course{width:150px;padding:0 var(--space-3);gap:var(--space-2);justify-content:flex-start}html:root body .ap-rail .ap-rail__foot .ap-course__value{clip-path:none;width:auto;height:auto;font-size:var(--text-sm);font-weight:600;position:static;overflow:hidden}html:root body .ap-rail .ap-rail__foot .ap-course__chev{display:inline}html:root body .ap-rail .ap-rail__foot .ap-account.is-signin{width:100px;padding:0 var(--space-3) 0 var(--space-2);gap:var(--space-2);justify-content:flex-start}html:root body .ap-rail .ap-rail__foot .ap-account.is-signin .ap-account__name{clip-path:none;width:auto;height:auto;font-size:var(--text-sm);font-weight:600;position:static;overflow:hidden}}@media (min-width:1600px){html:root body .ap-rail .ap-rail__foot .ap-account{width:152px;padding:0 var(--space-3) 0 var(--space-2);gap:var(--space-2);justify-content:flex-start}html:root body .ap-rail .ap-rail__foot .ap-account .ap-account__name{clip-path:none;width:auto;height:auto;font-size:var(--text-sm);font-weight:600;position:static;overflow:hidden}html:root body .ws-chrome .ws-recents-toggle,html:root body .ws-chrome .ws-toolbar .ws-context-toggle{padding:0 var(--space-3);gap:var(--space-2)}html:root body .ws-chrome .ws-recents-toggle>span,html:root body .ws-chrome .ws-context-toggle>span{display:inline}}@media (min-width:1024px) and (max-width:1179.98px){html:root body .ap-logo-full{display:none}html:root body .ap-logo-mark{display:inline-flex}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:not([aria-current]){padding:0 var(--space-3)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:not([aria-current]) .ap-nav__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:1023.98px){html:root body .ap-top{inset:var(--nav-inset) var(--nav-inset) auto var(--nav-inset);min-height:0;height:var(--nav-h);padding:0 var(--space-2) 0 var(--space-3);border:1px solid var(--glass-line);border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--elev-2);position:fixed}html:root body .ap-top__logo{padding:0}html:root body .ap-top__icon,html:root body .ap-account.is-compact{border-radius:50%}html:root body .ap-top__icon:hover{background:var(--glass-hover)}html:root body .ws-chrome{top:calc(var(--nav-inset) + var(--nav-h));padding-top:var(--space-2);border-bottom:1px solid var(--line);background:var(--canvas);left:0;right:0}html:root body .ws-chrome .ws-toolbar{height:40px}html:root body .ws-chrome .ws-pagebar{height:var(--nv-pagebar-h);border-top:1px solid var(--line);background:var(--canvas);position:absolute;top:100%;left:0;right:0}html:root body .ap-tabbar{inset:auto var(--nav-inset) calc(var(--nav-inset) + env(safe-area-inset-bottom,0px)) var(--nav-inset);padding:var(--space-1);border:1px solid var(--glass-line);border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--elev-3)}html:root body .ap-tabbar ul{gap:var(--space-1);max-width:none}html:root body .ap-tabbar__tab{min-height:52px;padding:var(--space-1) 0;border-radius:var(--radius-pill);color:var(--ink-2);font-size:var(--text-xs);font-weight:600}html:root body .ap-tabbar__tab[aria-current]{background:var(--accent-soft);color:var(--accent-text)}html:root body .ap-tabbar__tab[aria-current]:before{display:none}html:root body:has(.ap-tabbar){padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px))}html:root body:has(.ap-tabbar) #root:after{content:"";height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));display:block}html:root body:has(.hm-page) .ws-chrome{display:none}}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){html:root body .ap-rail,html:root body .ap-top,html:root body .ap-tabbar,html:root body .ws-chrome .ws-pagebar{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.3);backdrop-filter:blur(var(--glass-blur)) saturate(1.3)}}@media (forced-colors:active){html:root body .ap-rail,html:root body .ap-top,html:root body .ap-tabbar{border:1px solid canvastext}}:root{--nav-h:64px;--nav-inset:0px;--gn-tab-h:56px}@media (max-width:1023.98px){:root{--nav-h:56px;--nav-inset:0px;--tabbar-h:calc(var(--gn-tab-h) + 1px)}}html:root:has(.ws-chrome){--app-top:var(--nav-h)}html:root:has(.ws-chrome[data-recent-open=true]){--app-top:var(--nav-h)}html:root body .ws-chrome{display:none}html:root body .ws-chrome-spacer{height:var(--nav-h)}@media (min-width:1024px){html:root body .ap-rail{gap:var(--space-4);height:var(--nav-h);padding:0 var(--gutter);border:0;border-bottom:1px solid var(--line);background:var(--canvas);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;top:0;bottom:auto;left:0;right:0}html:root body:has(.ws-chrome[data-rail-hidden=true]) .ap-rail{gap:var(--space-4);height:var(--nav-h);padding:0 var(--gutter);border:0;border-bottom:1px solid var(--line);background:var(--canvas);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;top:0;bottom:auto;left:0;right:0}html:root body .ap-rail .ap-nav{margin:0 0 0 var(--space-5);align-self:stretch}html:root body .ap-rail .ap-nav>ul{gap:var(--space-2);height:100%}html:root body .ap-rail .ap-nav>ul>li{display:flex}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item{min-height:var(--nav-h);padding:0 var(--space-3);gap:var(--space-2);color:var(--ink-2);font:600 var(--text-sm) / 1 var(--font-body);background:0 0;border:0;border-radius:0;text-decoration:none;position:relative}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:hover,html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-expanded=true],html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]{color:var(--ink);background:0 0}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:after{content:"";left:var(--space-3);right:var(--space-3);background:0 0;height:2px;position:absolute;bottom:-1px}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]:after{background:var(--ink)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-expanded=true]:after{background:var(--line-strong)}html:root body .ap-rail .ap-nav__item[aria-current]:before{display:none}html:root body .gn-lab__chev{color:var(--ink-3);transition:transform var(--dur-fast) var(--ease)}html:root body .gn-lab[aria-expanded=true] .gn-lab__chev{transform:rotate(180deg)}html:root body .ap-rail>.ap-search{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--canvas);justify-content:center;width:40px;min-height:40px;margin:0 0 0 auto}html:root body .ap-rail>.ap-search:hover{border-color:var(--line-strong)}html:root body .ap-rail .ap-rail__foot{gap:var(--space-2);width:auto}html:root body .ap-rail .ap-rail__foot .ap-course{border-radius:var(--radius-1);background:var(--canvas)}html:root body .ap-rail .ap-rail__foot .ap-account,html:root body .ap-rail .ap-rail__foot .ap-rail-settings{border-radius:var(--radius-1)}html:root body .ap-rail .ap-rail__foot .ap-account:hover,html:root body .ap-rail .ap-rail__foot .ap-account[aria-current=page],html:root body .ap-rail .ap-rail__foot .ap-rail-settings:hover,html:root body .ap-rail .ap-rail__foot .ap-rail-settings[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}html:root body .ap-rail .ap-rail__foot .ap-rail-settings{width:auto;padding:0 var(--space-3);gap:var(--space-2);color:var(--ink-2);font:600 var(--text-sm) / 1 var(--font-body)}}@media (min-width:1024px) and (max-width:1279.98px){html:root body .gn-menu-word{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html:root body .ap-rail .ap-rail__foot .ap-rail-settings{width:40px;padding:0}}@media (min-width:1280px){html:root body .ap-rail>.ap-search{width:240px;padding:0 var(--space-2) 0 var(--space-3);color:var(--ink-3);justify-content:flex-start}html:root body .ap-rail>.ap-search .ap-search__label{text-align:left;flex:1;display:inline}html:root body .ap-rail>.ap-search .ap-search__keys{padding:var(--space-0) var(--space-2);border:1px solid var(--line);border-radius:var(--radius-0);font:400 var(--text-xs) / 1.4 var(--font-data);display:inline}html:root body .ap-rail .ap-rail__foot .ap-course{width:auto;max-width:220px;padding:0 var(--space-3);gap:var(--space-2);justify-content:flex-start}html:root body .ap-rail .ap-rail__foot .ap-course__value{clip-path:none;text-overflow:ellipsis;white-space:nowrap;width:auto;height:auto;font-size:var(--text-sm);font-weight:600;position:static;overflow:hidden}html:root body .ap-rail .ap-rail__foot .ap-course__chev{display:inline}html:root body .ap-rail .ap-rail__foot .ap-account.is-signin{width:auto;padding:0 var(--space-3) 0 var(--space-2);gap:var(--space-2)}html:root body .ap-rail .ap-rail__foot .ap-account.is-signin .ap-account__name{clip-path:none;width:auto;height:auto;font-size:var(--text-sm);font-weight:600;position:static}}html:root body .ap-rail:has(.gn-lab[aria-expanded=true]){z-index:var(--z-dropdown)}.gn-mega{top:var(--nav-h);z-index:var(--z-dropdown);max-height:calc(100vh - var(--nav-h));border-bottom:1px solid var(--line);background:var(--canvas);box-shadow:var(--elev-4);font-family:var(--font-body);position:fixed;left:0;right:0;overflow-y:auto}.gn-mega[hidden]{display:none}.gn-mega__in{gap:var(--space-7);max-width:var(--container);padding:var(--space-6) var(--gutter) var(--space-7);grid-template-columns:minmax(240px,280px) 1fr;margin:0 auto;display:grid}.gn-readout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.gn-readout>span{gap:var(--space-1);padding:var(--space-3) 0 var(--space-3) var(--space-3);color:var(--ink-3);font:400 var(--text-xs) / 1.2 var(--font-data);text-transform:uppercase;letter-spacing:.06em;display:grid}.gn-readout>span:first-child{padding-left:0}.gn-readout>span+span{border-left:1px solid var(--line)}.gn-readout b{color:var(--ink);font:400 var(--text-xl) / 1 var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:0}.gn-mega__course{margin:var(--space-3) 0 var(--space-4);color:var(--ink-3);font-size:var(--text-sm)}.gn-mega__links,.gn-mega__col ul{margin:0;padding:0;list-style:none;display:grid}.gn-mega__link{justify-content:space-between;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--line-subtle);min-height:40px;color:var(--ink-2);font:400 var(--text-md) / 1.3 var(--font-body);text-decoration:none;display:flex}.gn-mega__link svg{color:var(--ink-4)}.gn-mega__link:hover,.gn-mega__link:hover svg{color:var(--ink)}.gn-mega__link.is-key{color:var(--ink);font-weight:600}.gn-resume{gap:var(--space-1);margin-top:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-color:color-mix(in srgb, var(--yours) 45%, var(--line));border-radius:var(--radius-1);color:var(--ink);text-decoration:none;display:grid}.gn-resume__k{color:var(--ink-3);font:400 var(--text-xs) / 1.3 var(--font-data);text-transform:uppercase;letter-spacing:.06em}.gn-resume__t{font:600 var(--text-lg) / 1.25 var(--font-display)}.gn-resume__s{align-items:center;gap:var(--space-1);color:var(--yours);font-size:var(--text-sm);font-weight:600;display:inline-flex}.gn-resume:hover .gn-resume__t{text-underline-offset:3px;text-decoration:underline}.gn-mega__cols{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.gn-mega__col{--gn-subject:var(--ink);border-top:2px solid var(--gn-subject)}.gn-mega__col[data-subject=biology]{--gn-subject:var(--biology)}.gn-mega__col[data-subject=chemistry]{--gn-subject:var(--chemistry)}.gn-mega__col[data-subject=physics]{--gn-subject:var(--physics)}.gn-mega__h{margin:0 0 var(--space-2);padding-top:var(--space-3);justify-content:space-between;align-items:baseline;display:flex}.gn-mega__subject{color:var(--ink);font:600 var(--text-lg) / 1.2 var(--font-display);text-decoration:none}.gn-mega__subject:hover{text-decoration:underline;-webkit-text-decoration-color:var(--gn-subject);text-decoration-color:var(--gn-subject);text-underline-offset:4px}.gn-mega__count{color:var(--ink-3);font:400 var(--text-xs) / 1 var(--font-data)}.gn-mega__practical{grid-template-columns:var(--space-6) 1fr auto;min-height:32px;color:var(--ink-2);font-size:var(--text-sm);align-items:center;line-height:1.3;text-decoration:none;display:grid}.gn-mega__num{color:var(--ink-4);font:400 var(--text-xs) / 1 var(--font-data);font-variant-numeric:tabular-nums}.gn-mega__practical:hover{color:var(--ink)}.gn-mega__practical:hover .gn-mega__title{text-underline-offset:3px;text-decoration:underline}.gn-mega__state{margin-left:var(--space-2);place-items:center;display:inline-grid}.gn-mega__state.is-done{color:var(--yours)}.gn-mega__state.is-open{background:var(--yours);border-radius:50%;width:8px;height:8px}.gn-mega__free{margin-left:var(--space-2);color:var(--ink-3);font:400 var(--text-xs) / 1 var(--font-data);text-transform:uppercase;letter-spacing:.06em}@media (max-width:1023.98px){.gn-mega{display:none}}.gn-trail{max-width:var(--container);padding:var(--space-4) var(--gutter) 0;font:400 var(--text-sm) / 1.4 var(--font-body);margin:0 auto}.gn-trail ol{gap:var(--space-1) var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.gn-trail li{align-items:center;gap:var(--space-2);color:var(--ink-3);display:inline-flex}.gn-trail li+li:before{content:"/";color:var(--ink-4)}.gn-trail__a{color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--link-line);text-decoration-color:var(--link-line);text-underline-offset:3px}.gn-trail__a:hover{color:var(--ink);text-decoration-color:currentColor}.gn-trail [aria-current=page]{color:var(--ink);font-weight:600}html:root body:has(main .sh-crumbs) .gn-trail{display:none}@media (max-width:1023.98px){html:root body .ap-top{height:var(--nav-h);padding:0 var(--space-2) 0 var(--space-4);border:0;border-bottom:1px solid var(--line);background:var(--canvas);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;top:0;bottom:auto;left:0;right:0}html:root body .ap-top__logo{text-decoration:none}html:root body .ap-top__icon,html:root body .ap-account.is-compact{border-radius:var(--radius-1)}html:root body .ap-top__icon:hover{background:var(--surface-2)}html:root body .ap-tabbar{padding:0 0 env(safe-area-inset-bottom,0px);border:0;border-top:1px solid var(--line);background:var(--canvas);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;top:auto;bottom:0;left:0;right:0}html:root body .ap-tabbar ul{gap:0}html:root body .ap-tabbar__tab{min-height:var(--gn-tab-h);padding:var(--space-2) 0;color:var(--ink-3);font:600 var(--text-xs) / 1.1 var(--font-body);background:0 0;border-radius:0;text-decoration:none;position:relative}html:root body .ap-tabbar__tab[aria-current],html:root body .ap-tabbar__tab[aria-expanded=true]{color:var(--ink);background:0 0}html:root body .ap-tabbar__tab[aria-current]:before{content:"";background:var(--ink);height:2px;display:block;position:absolute;top:-1px;left:30%;right:30%}.gn-trail{padding-top:var(--space-3)}}.gn-sheet .sh-drawer__body{gap:var(--space-5);font-family:var(--font-body);display:grid}.gn-sheet__label{margin:0 0 var(--space-2);color:var(--ink-3);font:400 var(--text-xs) / 1.3 var(--font-data);text-transform:uppercase;letter-spacing:.06em;padding:0}.gn-sheet__search{align-items:center;gap:var(--space-2);width:100%;min-height:var(--tap);padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-1);background:var(--canvas);color:var(--ink-3);font:400 var(--text-md) / 1.2 var(--font-body);text-align:left;cursor:pointer;display:flex}.gn-sheet__search span{flex:1}.gn-sheet__search kbd{padding:var(--space-0) var(--space-2);border:1px solid var(--line);border-radius:var(--radius-0);font:400 var(--text-xs) / 1.4 var(--font-data)}.gn-sheet__search:hover{border-color:var(--line-strong);color:var(--ink)}.gn-sheet__course{width:100%;padding:var(--space-3) 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:1fr auto;align-items:end;display:grid}.gn-sheet__course .gn-sheet__label{grid-column:1/-1}.gn-sheet__value{font-size:var(--text-md);font-weight:600}.gn-sheet__change{color:var(--ink-2);font-size:var(--text-sm);text-decoration:underline;-webkit-text-decoration-color:var(--link-line);text-decoration-color:var(--link-line);text-underline-offset:3px}.gn-sheet__areas{gap:var(--space-5) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gn-sheet__area ul,.gn-sheet__rows{margin:0;padding:0;list-style:none;display:grid}.gn-sheet__link{align-items:center;gap:var(--space-2);width:100%;min-height:36px;color:var(--ink-2);font:400 var(--text-md) / 1.3 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none;display:flex;position:relative}.gn-sheet__link:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.gn-sheet__link[aria-current]{color:var(--ink);font-weight:600}.gn-sheet__link[aria-current]:before{content:"";left:calc(-1 * var(--space-3));top:var(--space-2);bottom:var(--space-2);background:var(--ink);width:2px;position:absolute}.gn-sheet__settings{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line);display:grid}.gn-theme{border:0;margin:0;padding:0}.gn-theme__row{border:1px solid var(--line);border-radius:var(--radius-1);grid-auto-flow:column;display:inline-grid;overflow:hidden}.gn-theme__opt{min-height:40px;padding:0 var(--space-4);color:var(--ink-2);font-size:var(--text-sm);cursor:pointer;align-items:center;font-weight:600;display:inline-flex;position:relative}.gn-theme__opt+.gn-theme__opt{border-left:1px solid var(--line)}.gn-theme__opt input{opacity:0;pointer-events:none;position:absolute}.gn-theme__opt.is-on{background:var(--surface-inverse);color:var(--ink-inverse)}.gn-theme__opt:has(input:focus-visible){outline:2px solid var(--focus-ring-color);outline-offset:-4px}.gn-sheet__more{padding-top:var(--space-4);border-top:1px solid var(--line)}.gn-sheet__storage{color:var(--ink-3);font-size:var(--text-sm);margin:0}@media (max-width:1023.98px){.gn-sheet__search kbd{display:none}}@media (max-width:599.98px){.gn-sheet__areas{grid-template-columns:1fr}.gn-sheet__link{min-height:var(--tap)}}.gn-footer .sh-footer__inner{justify-content:stretch;gap:var(--space-6);grid-template-columns:minmax(0,1fr);display:grid}.gn-footer__map{gap:var(--space-5) var(--space-6);padding-top:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}@media (min-width:1024px){.gn-footer__map{grid-template-columns:repeat(5,minmax(0,1fr))}}.gn-footer__head{margin:0 0 var(--space-2);color:var(--ink-3);font:400 var(--text-xs) / 1.3 var(--font-data);text-transform:uppercase;letter-spacing:.06em}.gn-footer .sh-footer__links{gap:0;display:grid}.gn-footer .sh-footer__link{text-align:left;min-height:32px}.gn-footer .sh-footer__line{padding-top:var(--space-4);border-top:1px solid var(--line-subtle)}@media (max-width:1023.98px){.gn-footer .sh-footer__link{min-height:var(--tap)}}@media (prefers-reduced-motion:reduce){html:root body .gn-lab__chev{transition:none}}@media (forced-colors:active){html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]:after,html:root body .ap-tabbar__tab[aria-current]:before,.gn-sheet__link[aria-current]:before{background:canvastext}.gn-mega{border:1px solid canvastext}}@media print{.gn-trail,.gn-mega{display:none!important}}.ap-areabar{border-bottom:1px solid var(--line-subtle);background:var(--canvas)}.ap-areabar__in{align-items:center;gap:var(--space-2) var(--space-4);max-width:var(--container);padding:var(--space-2) var(--gutter);flex-wrap:wrap;margin:0 auto;display:flex}.ap-areabar__name{color:var(--ink);font:600 var(--text-sm) / 1.3 var(--font-body);margin:0}.ap-areabar__actions{gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}@media print{.ap-areabar{display:none}}.gn-footer__lead{gap:var(--space-1);max-width:var(--measure);margin:var(--space-5) 0 0;color:var(--ink-2);font-size:var(--text-md);line-height:var(--leading-snug);display:grid}.gn-footer__mark{color:var(--ink);font-family:var(--font-display);font-size:var(--text-h3);font-weight:var(--weight-head)}@media (min-width:1024px){html:root body .ap-rail{border-bottom-color:var(--line-subtle)}html:root body .ap-rail .ap-nav>ul{gap:var(--space-1)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item{padding:0 var(--space-4);color:var(--ink-3);font-size:var(--text-sm);transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease)}html:root body .ap-rail .ap-nav__item .ap-nav__icon,html:root body .ap-rail>.ap-search .ap-nav__icon,html:root body .ap-rail .ap-rail__foot .sh-icon{width:calc(var(--icon) - var(--space-0));height:calc(var(--icon) - var(--space-0))}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:hover,html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-expanded=true]{color:var(--ink);background:0 0}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]{color:var(--accent-text);background:0 0}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current] .gn-lab__chev{color:var(--accent-text)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:after{left:var(--space-4);right:var(--space-4);border-radius:var(--radius-pill) var(--radius-pill) 0 0;height:3px}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]:after{background:var(--accent)}html:root body .ap-rail>.ap-search,html:root body .ap-rail .ap-rail__foot .ap-course{border-radius:var(--radius-pill);color:var(--ink-3);background:0 0;border-color:#0000}html:root body .ap-rail>.ap-search{background:var(--surface-2)}html:root body .ap-rail .ap-rail__foot :-webkit-any(.ap-course,.ap-account,.ap-rail-settings){color:var(--ink-2)}html:root body .ap-rail .ap-rail__foot :is(.ap-course,.ap-account,.ap-rail-settings){color:var(--ink-2)}html:root body .ap-rail>.ap-search:hover,html:root body .ap-rail .ap-rail__foot .ap-course:hover{border-color:var(--line-strong);background:var(--canvas)}html:root body .ap-rail .ap-rail__foot .ap-account,html:root body .ap-rail .ap-rail__foot .ap-rail-settings{border-radius:var(--radius-pill)}}@media (min-width:1280px){html:root body .ap-rail>.ap-search .ap-search__keys{background:var(--canvas);color:var(--ink-3);font-family:var(--font-body);border-color:#0000}}@media (max-width:1023.98px){html:root body .ap-top{border-bottom-color:var(--line-subtle)}html:root body .ap-top__icon,html:root body .ap-account.is-compact{border-radius:var(--radius-pill);color:var(--ink-2)}html:root body .ap-tabbar{border-top-color:var(--line-subtle)}html:root body .ap-tabbar__tab[aria-current],html:root body .ap-tabbar__tab[aria-expanded=true]{color:var(--accent-text)}html:root body .ap-tabbar__tab[aria-current] .sh-icon{box-sizing:content-box;padding:var(--space-0) var(--space-4);border-radius:var(--radius-pill);background:var(--tint-blue)}html:root body .ap-tabbar__tab[aria-current]:before{border-radius:0 0 var(--radius-pill) var(--radius-pill);background:var(--accent);height:3px;left:34%;right:34%}}html:root body .gn-sheet__label,html:root body .gn-readout>span,html:root body .gn-resume__k{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:0;text-transform:none;font-weight:600}html:root body .gn-readout b{font-family:var(--font-display);font-weight:600}html:root body .gn-mega{border-bottom-color:var(--line-subtle);border-radius:0 0 var(--radius-3) var(--radius-3)}html:root body .gn-resume{border:1px solid var(--tint-phys-line);border-radius:var(--radius-2);background:var(--tint-blue)}html:root body .gn-sheet__search,html:root body .gn-sheet__course{border-radius:var(--radius-2)}html:root body .gn-trail{font-family:var(--font-body)}@media (forced-colors:active){html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]:after,html:root body .ap-tabbar__tab[aria-current]:before{background:canvastext}}html:root body .gn-footer{border-top:1px solid var(--line-subtle);background:var(--canvas)}html:root body .gn-footer:before{content:none}html:root body .gn-footer__head{color:var(--ink);font:700 var(--text-md) / 1.3 var(--font-display);letter-spacing:0;text-transform:none}:where(h1,h2,h3,.sh-display,.sh-h1,.sh-h2){font-kerning:normal;font-optical-sizing:auto;text-wrap:balance}:where(p,li,dd,figcaption,blockquote){text-wrap:pretty}:where(td,th,dd,kbd,time,output,.sh-data,.sh-label,.rx-data,.la-num,.lh-num,.la-of,.lh-of){font-variant-numeric:tabular-nums}:where(.sh-lede,.la-mast__lede,.rx-hero__lede,.rx-phead__lede,.lh-lede){max-inline-size:var(--measure-narrow)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item{min-height:var(--tap);letter-spacing:0;font-weight:600}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:not([aria-current]){color:var(--ink-3)}html:root body .ap-tabbar ul{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}html:root body .ap-tabbar__tab{min-width:0;min-height:var(--tap)}html:root body .ap-tabbar__tab span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:root,[data-theme=light]{--b-cobalt:#1f4fd8;--b-cobalt-deep:#173ea8;--b-cobalt-ink:#1d47c4;--b-cobalt-soft:#e8eefc;--b-teal:#14a3a0;--b-teal-ink:#0b7f7c;--b-teal-soft:#e3f5f4;--b-lime:#7ac943;--b-lime-ink:#3f7d14;--b-lime-soft:#eef8e4;--b-bg:#fff;--b-bg-soft:#f3f6fb;--b-surface:#fff;--b-surface-2:#f7f9fd;--b-ink:#0f1a33;--b-ink-2:#44506a;--b-ink-3:#5d6984;--b-line:#e3e8f2;--b-line-strong:#cfd7e6;--b-on-cobalt:#fff;--b-on-cobalt-2:#ffffffd1;--b-band:linear-gradient(135deg, #2457e6 0%, #1f4fd8 45%, #173ea8 100%);--b-band-card:#ffffff14;--b-band-card-hover:#ffffff24;--b-band-line:#fff3;--b-band-deep:linear-gradient(120deg, #0f1f5c 0%, #15338f 42%, #0f6e86 100%);--b-purple:#7b4fd6;--b-tint-lab:linear-gradient(160deg, #eaf1ff 0%, #d8e5ff 55%, #c7d9ff 100%);--b-tint-practise:linear-gradient(160deg, #f6fbe9 0%, #e7f6cf 55%, #d7efb4 100%);--b-tint-course:linear-gradient(160deg, #eefaf6 0%, #d9f3ea 55%, #c4ecdf 100%);--b-tint-line:#0f1a330f;--b-bio:#2f9e5b;--b-chem:#7b4fd6;--b-phys:#2d7ff0;--b-bio-ink:#237a46;--b-chem-ink:#6a3fc4;--b-phys-ink:#1b64c9;--b-bio-soft:#e6f5ec;--b-chem-soft:#efe9fb;--b-phys-soft:#e6f0fe;--b-radius:20px;--b-radius-md:16px;--b-radius-sm:12px;--b-radius-pill:999px;--b-shadow:0 1px 2px #1018280f, 0 8px 24px #10182814;--b-shadow-lift:0 2px 4px #1018280f, 0 16px 40px #1018281f;--b-shadow-cta:0 1px 2px #173ea833, 0 8px 20px #1f4fd847;--b-focus:0 0 0 2px var(--b-bg), 0 0 0 4px var(--b-cobalt);--b-font:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--b-font-serif:"Newsreader", "Iowan Old Style", Georgia, serif;--b-font-hand:"Caveat", "Segoe Print", "Bradley Hand", cursive;--b-font-num:"IBM Plex Mono", "JetBrains Mono", ui-monospace, Menlo, monospace;--b-h1:clamp(2.5rem, 1.6rem + 3.6vw, 4.5rem);--b-h2:clamp(1.75rem, 1.35rem + 1.6vw, 2.5rem);--b-h3:1.375rem;--b-text-lg:1.1875rem;--b-text:1rem;--b-text-sm:.875rem;--b-text-xs:.8125rem;--b-ease:cubic-bezier(.2, .7, .2, 1);--b-dur:.18s;--dh-navy-950:#050f28;--dh-navy-900:#081738;--dh-navy-800:#0c2149;--dh-navy-700:#12305f;--dh-blue:#1a66f0;--dh-blue-hover:#2f78ff;--dh-glow:#2d8cff;--dh-lime:#c5f24b;--dh-lime-hover:#d6f875;--dh-on-lime:#081738;--dh-on-dark:#fff;--dh-on-dark-2:#ffffffd6;--dh-on-dark-3:#ffffffb3;--dh-line-on-dark:#ffffff29;--dh-hero-fallback:radial-gradient(60% 70% at 78% 18%, #1c5bb8 0%, transparent 70%), radial-gradient(40% 50% at 12% 88%, #1673d9 0%, transparent 72%), linear-gradient(180deg, #081738 0%, #0a1f4a 58%, #0c2a5e 100%);--dh-hero-scrim:linear-gradient(90deg, #050f28db 0%, #050f2894 42%, #050f281f 100%), linear-gradient(180deg, #050f2880 0%, transparent 26%, transparent 70%, #081738db 100%);--dh-hero-scrim-phone:linear-gradient(180deg, #050f28c7 0%, #050f28b3 60%, #081738e6 100%);--dh-band:linear-gradient(115deg, #081738 0%, #0c2a5e 56%, #0e3a7c 100%);--dh-strip:#081a40;--dh-glass:linear-gradient(160deg, #2848849e 0%, #0e2048bd 100%);--dh-glass-line:#ffffff47;--dh-tick:#5fd35f;--dh-teal-hero:linear-gradient(100deg, #061a33 0%, #07263f 46%, #0a3a4f 100%);--dh-teal-scrim:linear-gradient(90deg, #061d36 0%, #061d36d1 34%, #061d3600 62%);--dh-chip-biology:#c5f24b;--dh-chip-chemistry:#2bd9d6;--dh-chip-physics:#7a55f0;--dh-chip-on:#081738;--dh-chip-on-physics:#fff;--dh-metal:linear-gradient(180deg, #2b3243 0%, #151a26 100%);--dh-metal-base:linear-gradient(180deg, #c5cbd8 0%, #8c94a6 62%, #6a7284 100%);--dh-screen:#0a0f1c;--dh-device-drop:0 24px 40px #0208188c;--dh-radius-tick:6px;--dh-radius-screen:4px;--dh-radius-tablet:8px;--dh-ground:#f6f8fc;--dh-card:#fff;--dh-card-line:#e3e8f2;--dh-card-ink:#0d1b3e;--dh-card-ink-2:#48546e;--dh-teal-ink:#0a7a77;--dh-blue-ink:#1558d6;--dh-purple-ink:#6535c4;--dh-wash-teal:linear-gradient(180deg, #bdeee8 0%, #dcf6f2 62%, #fff 100%);--dh-wash-blue:linear-gradient(180deg, #bfdcff 0%, #deecff 62%, #fff 100%);--dh-wash-purple:linear-gradient(180deg, #d8c9fb 0%, #ece4fd 62%, #fff 100%);--dh-lens-glass:#eef6fb;--dh-lens-ink:#0d1b3e;--dh-lens-liquid:#2a8fe0;--elev-dh-card:0 1px 2px #0d1b3e0a, 0 8px 24px #0d1b3e0f;--elev-dh-card-lift:0 2px 4px #0d1b3e0f, 0 20px 48px #0d1b3e26;--elev-dh-lime:0 6px 24px #c5f24b52;--elev-dh-device:0 24px 64px #02081899;--elev-dh-glass:0 24px 56px #02081880, inset 0 1px 0 #fff3;--elev-dh-lens:0 8px 24px #0d1b3e38;--focus-dh:0 0 0 2px var(--dh-navy-900), 0 0 0 5px var(--dh-lime);--focus-dh-card:0 0 0 2px var(--dh-ground), 0 0 0 5px var(--dh-blue);--dh-h1:clamp(2.5rem, min(4.2vw, 8vh), 4.5rem);--dh-h1-page:clamp(2.25rem, min(4.2vw, 7.6vh), 4rem);--dh-h1-sub:clamp(2.25rem, min(3.6vw, 7vh), 3.5rem);--dh-sheet-radius:32px;--dh-h3-section:2rem;--dh-h2:clamp(1.75rem, 1.3rem + 1.7vw, 2.75rem);--dh-h3:clamp(1.375rem, 1.25rem + .4vw, 1.625rem);--dh-bar-h:56px;--dh-bar:color-mix(in srgb, var(--dh-navy-900) 90%, transparent);--dh-column:1360px;--dh-gutter:clamp(16px, 4.4vw, 64px);--dh-edge:max(var(--dh-gutter), calc((100% - var(--dh-column)) / 2 + var(--dh-gutter)))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--b-cobalt:#3a64e6;--b-cobalt-deep:#2f55cc;--b-cobalt-ink:#8eabff;--b-cobalt-soft:#17244a;--b-teal:#3cc7c3;--b-teal-ink:#5fd6d2;--b-teal-soft:#0f2d33;--b-lime:#93db5f;--b-lime-ink:#a6e47a;--b-lime-soft:#1a2a17;--b-bg:#0b1220;--b-bg-soft:#0e1628;--b-surface:#121a2b;--b-surface-2:#172036;--b-ink:#eef2fb;--b-ink-2:#c3cbe0;--b-ink-3:#9aa5c0;--b-line:#222d45;--b-line-strong:#2f3b57;--b-on-cobalt:#fff;--b-on-cobalt-2:#fffc;--b-band:linear-gradient(135deg, #12235a 0%, #0f1d4b 50%, #0b1638 100%);--b-band-card:#ffffff0f;--b-band-card-hover:#ffffff1a;--b-band-line:#ffffff24;--b-band-deep:linear-gradient(120deg, #0a1438 0%, #0f2366 45%, #0b4d5e 100%);--b-purple:#a585f0;--b-tint-lab:linear-gradient(160deg, #15224a 0%, #142350 55%, #13265a 100%);--b-tint-practise:linear-gradient(160deg, #18261a 0%, #1b2f1c 55%, #1e371f 100%);--b-tint-course:linear-gradient(160deg, #0f2a29 0%, #11312f 55%, #133936 100%);--b-tint-line:#ffffff14;--b-bio-ink:#6fd396;--b-chem-ink:#b99bf5;--b-phys-ink:#7fb2ff;--b-bio-soft:#13291d;--b-chem-soft:#221a3a;--b-phys-soft:#13223d;--b-shadow:0 1px 2px #0006, 0 8px 24px #00000059;--b-shadow-lift:0 2px 4px #0006, 0 16px 40px #00000073;--b-shadow-cta:0 1px 2px #0006, 0 8px 20px #4f7bff4d;--b-focus:0 0 0 2px var(--b-bg), 0 0 0 4px #ffd566;--dh-ground:#081738;--dh-card:#0f2149;--dh-card-line:#ffffff1f;--dh-card-ink:#fff;--dh-card-ink-2:#ffffffc7;--dh-teal-ink:#6fe0da;--dh-blue-ink:#8fbcff;--dh-purple-ink:#c3adff;--dh-wash-teal:linear-gradient(180deg, #125a63 0%, #103f55 62%, #0f2149 100%);--dh-wash-blue:linear-gradient(180deg, #17498f 0%, #13346f 62%, #0f2149 100%);--dh-wash-purple:linear-gradient(180deg, #41308f 0%, #2a2569 62%, #0f2149 100%);--elev-dh-card:0 12px 32px #02081866;--elev-dh-card-lift:0 20px 48px #0208188c;--focus-dh-card:0 0 0 2px var(--dh-ground), 0 0 0 5px var(--dh-lime)}}:root[data-theme=dark],[data-theme=dark]{--b-cobalt:#3a64e6;--b-cobalt-deep:#2f55cc;--b-cobalt-ink:#8eabff;--b-cobalt-soft:#17244a;--b-teal:#3cc7c3;--b-teal-ink:#5fd6d2;--b-teal-soft:#0f2d33;--b-lime:#93db5f;--b-lime-ink:#a6e47a;--b-lime-soft:#1a2a17;--b-bg:#0b1220;--b-bg-soft:#0e1628;--b-surface:#121a2b;--b-surface-2:#172036;--b-ink:#eef2fb;--b-ink-2:#c3cbe0;--b-ink-3:#9aa5c0;--b-line:#222d45;--b-line-strong:#2f3b57;--b-on-cobalt:#fff;--b-on-cobalt-2:#fffc;--b-band:linear-gradient(135deg, #12235a 0%, #0f1d4b 50%, #0b1638 100%);--b-band-card:#ffffff0f;--b-band-card-hover:#ffffff1a;--b-band-line:#ffffff24;--b-band-deep:linear-gradient(120deg, #0a1438 0%, #0f2366 45%, #0b4d5e 100%);--b-purple:#a585f0;--b-tint-lab:linear-gradient(160deg, #15224a 0%, #142350 55%, #13265a 100%);--b-tint-practise:linear-gradient(160deg, #18261a 0%, #1b2f1c 55%, #1e371f 100%);--b-tint-course:linear-gradient(160deg, #0f2a29 0%, #11312f 55%, #133936 100%);--b-tint-line:#ffffff14;--b-bio-ink:#6fd396;--b-chem-ink:#b99bf5;--b-phys-ink:#7fb2ff;--b-bio-soft:#13291d;--b-chem-soft:#221a3a;--b-phys-soft:#13223d;--b-shadow:0 1px 2px #0006, 0 8px 24px #00000059;--b-shadow-lift:0 2px 4px #0006, 0 16px 40px #00000073;--b-shadow-cta:0 1px 2px #0006, 0 8px 20px #4f7bff4d;--b-focus:0 0 0 2px var(--b-bg), 0 0 0 4px #ffd566;--dh-ground:#081738;--dh-card:#0f2149;--dh-card-line:#ffffff1f;--dh-card-ink:#fff;--dh-card-ink-2:#ffffffc7;--dh-teal-ink:#6fe0da;--dh-blue-ink:#8fbcff;--dh-purple-ink:#c3adff;--dh-wash-teal:linear-gradient(180deg, #125a63 0%, #103f55 62%, #0f2149 100%);--dh-wash-blue:linear-gradient(180deg, #17498f 0%, #13346f 62%, #0f2149 100%);--dh-wash-purple:linear-gradient(180deg, #41308f 0%, #2a2569 62%, #0f2149 100%);--elev-dh-card:0 12px 32px #02081866;--elev-dh-card-lift:0 20px 48px #0208188c;--focus-dh-card:0 0 0 2px var(--dh-ground), 0 0 0 5px var(--dh-lime)}.b-page{background:var(--b-bg);color:var(--b-ink);font-family:var(--b-font)}.b-wrap{width:min(100% - 32px,1240px);margin-inline-start:auto;margin-inline-end:auto}.b-h1{font-family:var(--b-font);font-size:var(--b-h1);letter-spacing:-.035em;color:var(--b-ink);text-wrap:balance;margin:0;font-weight:700;line-height:1.02}.b-h2{font-family:var(--b-font);font-size:var(--b-h2);letter-spacing:-.025em;color:var(--b-ink);text-wrap:balance;margin:0;font-weight:700;line-height:1.1}.b-lede{font-size:var(--b-text-lg);color:var(--b-ink-2);text-wrap:pretty;margin:0;line-height:1.5}.b-kicker{font-size:var(--b-text-sm);letter-spacing:.02em;color:var(--b-cobalt-ink);margin:0;font-weight:600}.b-hl{color:var(--b-teal-ink)}.b-serif{font-family:var(--b-font-serif);letter-spacing:-.02em;color:var(--b-cobalt-ink);font-style:italic;font-weight:600}.b-hand{font-family:var(--b-font-hand);color:var(--b-ink-2);font-size:1.375rem;font-weight:600;line-height:1.1}.b-num{font-family:var(--b-font-num);font-variant-numeric:tabular-nums}@media screen{html:root,html [data-theme]{--font-data:var(--b-font);--b-font-num:var(--b-font)}html .rx-data{font-family:var(--b-font);font-variant-numeric:tabular-nums}html .ph{--ph-mono:var(--b-font)}html .rx{--rx-mono:var(--b-font)}}.b-card{background:var(--b-surface);color:var(--b-ink);border:1px solid var(--b-line);border-radius:var(--b-radius);box-shadow:var(--b-shadow)}.b-card--hover{transition:transform var(--b-dur) var(--b-ease), box-shadow var(--b-dur) var(--b-ease)}.b-card--hover:hover{box-shadow:var(--b-shadow-lift);transform:translateY(-2px)}.b-band{background:var(--b-band);color:var(--b-on-cobalt)}.b-band--deep{isolation:isolate;background:var(--b-band-deep);position:relative}.b-lines{z-index:-1;fill:none;stroke:#ffffff24;stroke-width:1.25px;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.b-band__card{background:var(--b-band-card);border:1px solid var(--b-band-line);border-radius:var(--b-radius);color:var(--b-on-cobalt);transition:background var(--b-dur) var(--b-ease), transform var(--b-dur) var(--b-ease)}.b-band__card:hover{background:var(--b-band-card-hover)}.b-tint{border:1px solid var(--b-tint-line);border-radius:var(--b-radius);color:var(--b-ink);background:var(--b-tint-lab)}.b-tint--lab{background:var(--b-tint-lab)}.b-tint--practise{background:var(--b-tint-practise)}.b-tint--course{background:var(--b-tint-course)}.b-tab{border-radius:var(--b-radius) var(--b-radius) 0 0;background:var(--b-cobalt);min-height:56px;color:var(--b-on-cobalt);font-size:var(--b-text-sm);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:12px;padding:8px 20px 8px 12px;font-weight:700;display:flex}.b-tab .b-icon{background:#fff;width:40px;height:40px}.b-tab .b-icon svg{width:20px;height:20px}.b-tab--teal{background:#0c7d7a}.b-tab--teal .b-icon{color:#0b7f7c}.b-tab--cobalt{background:#1f4fd8}.b-tab--cobalt .b-icon{color:#1d47c4}.b-tab--purple{background:#6a3fc4}.b-tab--purple .b-icon{color:#6a3fc4}.b-ticks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.b-ticks>*{padding-left:28px;line-height:1.4;position:relative}.b-ticks>:before{content:"";background:var(--b-bio) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px no-repeat;border-radius:50%;width:20px;height:20px;position:absolute;top:.1em;left:0}.b-btn{border-radius:var(--b-radius-pill);min-height:44px;font:inherit;font-size:var(--b-text);cursor:pointer;transition:background var(--b-dur) var(--b-ease), transform var(--b-dur) var(--b-ease), box-shadow var(--b-dur) var(--b-ease), border-color var(--b-dur) var(--b-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.b-btn:focus-visible{box-shadow:var(--b-focus);outline:none}.b-btn svg{transition:transform var(--b-dur) var(--b-ease);flex:none}.b-btn:hover svg{transform:translate(2px)}.b-btn--lg{min-height:56px;font-size:var(--b-text-lg);padding:0 32px}.b-btn--cta{background:var(--b-cobalt);color:var(--b-on-cobalt);box-shadow:var(--b-shadow-cta)}.b-btn--cta:hover{background:var(--b-cobalt-deep);transform:translateY(-1px)}.b-btn--cta:focus-visible{box-shadow:var(--b-focus), var(--b-shadow-cta)}.b-band .b-btn--cta{background:var(--b-lime);color:#10230a;box-shadow:0 1px 2px #0003,0 8px 20px #7ac9434d}.b-band .b-btn--cta:hover{background:#8bd655}.b-band .b-card .b-btn--cta{background:var(--b-cobalt);color:var(--b-on-cobalt);box-shadow:var(--b-shadow-cta)}.b-band .b-card .b-btn--cta:hover{background:var(--b-cobalt-deep)}.b-btn--ghost{background:var(--b-surface);color:var(--b-cobalt-ink);border-color:var(--b-cobalt)}.b-btn--ghost:hover{background:var(--b-cobalt-soft)}.b-btn--round{background:var(--b-surface);width:44px;height:44px;min-height:44px;color:var(--b-cobalt-ink);border-color:var(--b-line);box-shadow:var(--b-shadow);padding:0}.b-band .b-btn--round{color:var(--b-cobalt-deep);background:#fff;border-color:#0000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .b-btn--round{background:var(--b-cobalt);color:#fff;border-color:#0000}}:root[data-theme=dark] .b-btn--round{background:var(--b-cobalt);color:#fff;border-color:#0000}.b-chip{border-radius:var(--b-radius-pill);background:var(--b-cobalt-soft);min-height:28px;color:var(--b-cobalt-ink);font-size:var(--b-text-xs);align-items:center;gap:8px;padding:0 12px;font-weight:600;line-height:1;display:inline-flex}.b-icon{background:var(--b-cobalt-soft);width:56px;height:56px;color:var(--b-cobalt-ink);border-radius:50%;flex:none;place-items:center;display:inline-grid}.b-icon svg{width:26px;height:26px}.b-chip--cobalt,.b-icon--cobalt{background:var(--b-cobalt-soft);color:var(--b-cobalt-ink)}.b-chip--teal,.b-icon--teal{background:var(--b-teal-soft);color:var(--b-teal-ink)}.b-chip--lime,.b-icon--lime{background:var(--b-lime-soft);color:var(--b-lime-ink)}.b-chip--bio,.b-icon--bio{background:var(--b-bio-soft);color:var(--b-bio-ink)}.b-chip--chem,.b-icon--chem{background:var(--b-chem-soft);color:var(--b-chem-ink)}.b-chip--phys,.b-icon--phys{background:var(--b-phys-soft);color:var(--b-phys-ink)}[data-subject=biology]{--b-subject:var(--b-bio);--b-subject-ink:var(--b-bio-ink);--b-subject-soft:var(--b-bio-soft)}[data-subject=chemistry]{--b-subject:var(--b-chem);--b-subject-ink:var(--b-chem-ink);--b-subject-soft:var(--b-chem-soft)}[data-subject=physics]{--b-subject:var(--b-phys);--b-subject-ink:var(--b-phys-ink);--b-subject-soft:var(--b-phys-soft)}@media (prefers-reduced-motion:reduce){.b-card--hover,.b-band__card,.b-btn,.b-btn svg{transition:none}.b-card--hover:hover,.b-btn--cta:hover,.b-btn:hover svg{transform:none}}html:root body .ap-rail,html:root body .ap-top,html:root body .ap-tabbar{font-family:var(--b-font)}@media (min-width:1024px){html:root body .ap-rail{border-bottom-color:var(--b-line);background:color-mix(in srgb, var(--b-surface) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item .ap-nav__icon{display:none}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:not([aria-current]) .ap-nav__label{clip-path:none;width:auto;height:auto;position:static;overflow:visible}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item{color:var(--b-ink-2);font-size:var(--b-text);font-weight:600}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item:hover,html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-expanded=true]{color:var(--b-ink)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current],html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current] .gn-lab__chev{color:var(--b-cobalt-ink)}html:root body .ap-rail .ap-nav>ul>li>.ap-nav__item[aria-current]:after{background:var(--b-cobalt)}html:root body .ap-rail>.ap-search{border-color:var(--b-line);background:var(--b-bg-soft);color:var(--b-ink-3)}html:root body .ap-rail .ap-rail__foot .ap-course{border-color:var(--b-line);color:var(--b-ink-2)}html:root body .ap-rail>.ap-search:hover,html:root body .ap-rail .ap-rail__foot .ap-course:hover{border-color:var(--b-cobalt);background:var(--b-surface)}}@media (max-width:1023.98px){html:root body .ap-tabbar__tab[aria-current],html:root body .ap-tabbar__tab[aria-expanded=true]{color:var(--b-cobalt-ink)}html:root body .ap-tabbar__tab[aria-current] .sh-icon{background:var(--b-cobalt-soft)}html:root body .ap-tabbar__tab[aria-current]:before{background:var(--b-cobalt)}}html:root body .gn-footer{border-top:1px solid var(--b-line);background:var(--b-bg-soft);font-family:var(--b-font)}html:root body .gn-footer__mark{color:var(--b-ink);letter-spacing:-.02em;font-weight:700}html:root body .gn-footer__mark b{color:var(--b-cobalt-ink);font-weight:700}html:root body .gn-footer__head{color:var(--b-ink);font:700 var(--b-text) / 1.3 var(--b-font)}html:root body .gn-footer .sh-footer__link{color:var(--b-ink-2)}html:root body .gn-footer .sh-footer__link:hover{color:var(--b-cobalt-ink)}.gn-footer__art{align-items:flex-end;gap:16px;margin-top:16px;display:flex}.gn-footer__art svg{fill:none;stroke:var(--b-cobalt);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none}.gn-footer__art .gn-footer__liquid{fill:color-mix(in srgb, var(--b-cobalt) 18%, transparent);stroke:none}.gn-footer__hand{color:var(--b-ink-2);margin:0 0 8px;transform:rotate(-4deg)}.gn-footer__hand:after{content:"";border-radius:var(--b-radius-pill);background:var(--b-lime);width:70%;height:3px;margin-top:2px;display:block}html:root body .gn-footer__lead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;max-width:none;display:flex}.gn-footer__lead-text{gap:4px;max-width:36rem;margin:0;display:grid}html:root body .gn-footer__mark{font-family:var(--b-font)}html:root body .gn-footer{box-sizing:border-box;width:100%;max-width:none;margin-inline-start:0;margin-inline-end:0}html:root body .gn-footer .sh-footer__inner{max-width:1184px;margin-inline-start:auto;margin-inline-end:auto}html:root body .gn-trail{font:400 var(--b-text-sm) / 1.4 var(--b-font)}html:root body .gn-trail li{color:var(--b-ink-3)}html:root body .gn-trail li+li:before{content:"";opacity:.6;border-top:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transform:rotate(45deg)}html:root body .gn-trail__a{color:var(--b-cobalt-ink);font-weight:600;text-decoration:none}html:root body .gn-trail__a:hover{color:var(--b-cobalt-ink);text-underline-offset:3px;text-decoration:underline}html:root body .gn-trail [aria-current=page]{color:var(--b-ink-2)}html:root body:has(.pg__main>.sh-pagehead:first-child) .gn-trail{z-index:1;background:var(--b-bg-soft);box-shadow:0 0 0 100vmax var(--b-bg-soft);clip-path:inset(0 -100vmax);position:relative}html:root body:has(.lh-book .lh-mast) .gn-trail{z-index:1;background:var(--b-bg-soft);box-shadow:0 0 0 100vmax var(--b-bg-soft);clip-path:inset(0 -100vmax);position:relative}
