.pg-auth{min-height:100vh;padding:var(--s-8) var(--gutter);place-items:center;display:grid}.pg-auth__sheet{width:min(480px,100%)}.pg-auth__intro{color:var(--cf-text-muted);margin-bottom:var(--s-5)}.pg-auth__foot{text-align:center;color:var(--cf-text-muted);font-size:var(--fs-small);margin-top:var(--s-6)}.pg-labelrow{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.pg-pw{position:relative}.pg-pw .cf-input{padding-right:48px}.pg-pw .cf-btn.pg-pw__toggle{width:36px;height:36px;min-height:0;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.pg-enrol{gap:var(--gap);align-items:start;display:grid}@media (min-width:1024px){.pg-enrol{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.pg-choice{gap:var(--s-3);margin-bottom:var(--s-4);display:grid}.pg-price{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h2);font-variant-numeric:tabular-nums}.pg-price__note,.pg-inst__note{color:var(--cf-text-muted);font-size:var(--fs-small)}.pg-summary{position:sticky;top:88px}.pg-cards{align-items:center;gap:var(--s-2);color:var(--cf-text-muted);font-size:var(--fs-small);margin-top:var(--s-3);display:flex}.pg-gateway{gap:var(--s-2);color:var(--cf-text-muted);font-size:var(--fs-small);margin-top:var(--s-3);display:flex}.pg-hero-price{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h2)}.pg-hero-price small{font-family:var(--font-body);font-weight:400;font-size:var(--fs-small);color:var(--cf-text-muted);display:block}.pg-paymethods{gap:var(--s-3);display:grid}.pg-grid{gap:var(--gap);align-items:start;display:grid}@media (min-width:1024px){.pg-grid--a{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.pg-grid--b{grid-template-columns:1fr 1fr}}.pg-map__req{margin:0}.pg-map__unlock{gap:var(--s-2);color:var(--cf-text-muted);align-items:flex-start;display:inline-flex}.pg-map__foot{justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.pg-lessons h3{font-size:var(--fs-h3);margin:var(--s-4) 0 var(--s-2);justify-content:space-between;align-items:baseline;display:flex}.pg-lessons h3 small{color:var(--cf-text-muted);font-family:var(--font-body);font-weight:400;font-size:var(--fs-small)}.pg-lesson{align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-top:1px solid var(--cf-border);color:inherit;min-height:44px;text-decoration:none;display:flex}a.pg-lesson:hover{color:var(--cf-purple-soft)}.pg-lesson>span{flex:1}.pg-lesson time{color:var(--cf-text-muted);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.pg-lesson.is-done .ph{color:var(--cf-success)}.pg-lesson[aria-current=true] .ph{color:var(--cf-purple-bright)}.pg-lesson.is-locked{color:var(--cf-text-faint)}.pg-lesson__sub{color:var(--cf-text-muted);font-size:var(--fs-small);display:block}.pg-mod__grid{gap:var(--gap);display:grid}@media (min-width:1024px){.pg-mod__grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.pg-mod__foot{justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.pg-unlock{gap:var(--s-2);color:var(--cf-text-muted);align-items:flex-start;display:flex}.pg-lessonpage{gap:var(--gap);align-items:start;display:grid}@media (min-width:1280px){.pg-lessonpage{grid-template-columns:300px minmax(0,1fr)}}.pg-outline__list{flex-direction:column;display:flex}.pg-outline__week{font-family:var(--font-display);margin:var(--s-4) 0 var(--s-1);justify-content:space-between;font-weight:600;display:flex}.pg-outline__week.is-locked{color:var(--cf-text-faint)}.pg-outline__group{color:var(--cf-text-muted);font-size:var(--fs-small);margin:var(--s-2) 0 var(--s-1);justify-content:space-between;display:flex}.pg-item{align-items:center;gap:var(--s-2);padding:var(--s-2) 0;color:inherit;font-size:var(--fs-small);min-height:40px;text-decoration:none;display:flex}.pg-item>span{flex:1}.pg-item time{color:var(--cf-text-muted);font-variant-numeric:tabular-nums}.pg-item.is-done .ph{color:var(--cf-success)}.pg-item[aria-current=true]{color:var(--cf-purple-soft)}.pg-item.is-locked{color:var(--cf-text-faint)}.pg-video{aspect-ratio:16/9;border-radius:var(--r-frame);background:var(--cf-surface-raised);border:1px solid var(--cf-border);width:100%;overflow:hidden}.pg-video iframe,.pg-video>div{border:0;width:100%;height:100%;display:block}.pg-video--empty{color:var(--cf-text-muted);text-align:center;padding:var(--s-6);place-items:center;display:grid}.pg-video--native{background:#000;position:relative}.pg-video--native video{object-fit:contain;background:#000;width:100%;height:100%;display:block}.pg-video--native:fullscreen{aspect-ratio:auto;border:0;border-radius:0}.pg-video__mark{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;color:#ffffff8c;text-shadow:0 0 2px #0009;font-family:system-ui,sans-serif;font-size:14px;position:absolute;transform:translate(-50%,-50%)}.pg-video__bar{align-items:center;gap:var(--s-3);display:flex}.pg-video__bar .cf-progress{flex:1}.pg-resource{align-items:center;gap:var(--s-3);display:flex}.pg-resource>span{flex-direction:column;flex:1;display:flex}.pg-resource__sub{color:var(--cf-text-muted);font-size:var(--fs-small)}.pg-assign{gap:var(--gap);align-items:start;display:grid}@media (min-width:1024px){.pg-assign{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.pg-links{gap:var(--s-3);display:grid}.pg-link{gap:var(--s-3);grid-template-columns:32px minmax(0,1fr);align-items:center;display:grid}.pg-link__num{font-family:var(--font-display);color:var(--cf-text-faint);font-variant-numeric:tabular-nums}.pg-status__row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-5);border-top:1px solid var(--cf-border);display:flex}.pg-status__row>div span{color:var(--cf-text-muted);font-size:var(--fs-small);display:block}.pg-next{gap:var(--gap);display:grid}@media (min-width:1024px){.pg-next{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.pg-next__when{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h3)}.pg-next__when small{font-family:var(--font-body);font-weight:400;font-size:var(--fs-small);color:var(--cf-text-muted);display:block}.pg-next__agenda{margin:var(--s-4) 0;padding:0;list-style:none}.pg-next__agenda li{gap:var(--s-3);padding:var(--s-2) 0;border-top:1px solid var(--cf-border);grid-template-columns:56px 1fr;display:grid}.pg-next__agenda time{color:var(--cf-text-muted);font-variant-numeric:tabular-nums}.pg-replays{gap:var(--gap);display:grid}@media (min-width:768px){.pg-replays{grid-template-columns:repeat(2,1fr)}}@media (min-width:1280px){.pg-replays{grid-template-columns:repeat(3,1fr)}}.pg-discord{gap:var(--gap);display:grid}@media (min-width:1024px){.pg-discord{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pg-roster{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.pg-help__row{gap:var(--s-3);padding:var(--s-3) 0;border-top:1px solid var(--cf-border);display:flex}.pg-help__row .ph{color:var(--cf-purple-bright);flex:none;font-size:20px}.pg-help__row strong{display:block}.pg-admin-grid{gap:var(--gap);display:grid}@media (min-width:1024px){.pg-admin-grid{grid-template-columns:repeat(2,1fr)}}.pg-inline-form{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.pg-inline-form .cf-input{width:auto;min-width:160px}.pg-prose p+p{margin-top:var(--s-3)}.driver-popover.cf-tour{background:var(--cf-surface-raised);color:var(--cf-text);border:1px solid var(--cf-border-strong);border-radius:var(--r-sheet);box-shadow:var(--cf-shadow);font-family:var(--font-body);max-width:360px}.driver-popover.cf-tour .driver-popover-title{font-family:var(--font-display);color:var(--cf-text);font-size:1.05rem;font-weight:600}.driver-popover.cf-tour .driver-popover-description{color:var(--cf-text-muted);font-size:var(--fs-small)}.driver-popover.cf-tour .driver-popover-progress-text{color:var(--cf-text-faint);font-size:var(--fs-micro)}.driver-popover.cf-tour button{background:var(--cf-purple);color:var(--cf-on-purple);border-radius:var(--r-pill);text-shadow:none;border:0;padding:8px 14px;font-weight:600}.driver-popover.cf-tour button.driver-popover-prev-btn{color:var(--cf-text);border:1px solid var(--cf-border-strong);background:0 0}.driver-popover.cf-tour .driver-popover-close-btn{color:var(--cf-text-muted);background:0 0}.driver-popover.cf-tour .driver-popover-arrow-side-left.driver-popover-arrow{border-left-color:var(--cf-surface-raised)}.driver-popover.cf-tour .driver-popover-arrow-side-right.driver-popover-arrow{border-right-color:var(--cf-surface-raised)}.driver-popover.cf-tour .driver-popover-arrow-side-top.driver-popover-arrow{border-top-color:var(--cf-surface-raised)}.driver-popover.cf-tour .driver-popover-arrow-side-bottom.driver-popover-arrow{border-bottom-color:var(--cf-surface-raised)}.pg-slots{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.pg-slot{gap:var(--s-2);flex-direction:column;display:flex}.pg-slot .cf-frame img{object-fit:cover;width:100%;height:100%}.pg-slot__title{font-family:var(--font-display);margin-top:var(--s-1);font-weight:600}.pg-avatar-row{gap:var(--s-4);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.pg-items{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.pg-item-card{gap:var(--s-2);flex-direction:column;display:flex}.pg-item-card.is-private .cf-frame{opacity:.55}.pg-item-card .cf-frame img{object-fit:cover;width:100%;height:100%}.pg-item-card__title{font-weight:500;font-size:var(--fs-small);line-height:1.3}.pg-item-card__ops{flex-wrap:wrap;gap:2px;display:flex}.pg-item-card__ops form{display:contents}.pg-add-item{padding-top:var(--s-5);border-top:1px solid var(--cf-border)}.pg-add-item h3{font-size:var(--fs-h3)}.pg-thumbs__empty{color:var(--cf-text-faint);place-items:center;font-size:28px;display:grid;position:absolute;inset:0}.cf-btn-group label.cf-btn{cursor:pointer;position:relative}.cf-btn-group label.cf-btn input{opacity:0;width:1px;height:1px;position:absolute}.cf-btn-group label.cf-btn:has(input:checked){background:var(--cf-purple-ink);color:var(--cf-purple-soft)}.cf-btn-group label.cf-btn:has(input:focus-visible){outline:2px solid var(--cf-purple-bright);outline-offset:-2px}.pg-intro{gap:var(--gap);padding-top:var(--s-8);display:grid}.pg-intro .cf-sheet__body p+p{margin-top:var(--s-4)}.pg-intro .cf-list--rows{margin-top:var(--s-5);font-size:var(--fs-body)}.pg-intro .cf-list--rows li{gap:var(--s-3);grid-template-columns:28px minmax(0,1fr);align-items:start;display:grid}.pg-intro .cf-list--rows .ph{color:var(--cf-purple-soft);margin-top:3px;font-size:20px}.pg-intro .cf-list--rows strong{font-weight:600;display:block}.pg-intro .cf-list--rows span{color:var(--cf-text-muted);font-size:var(--fs-small)}.pg-intro .cf-figure figcaption{flex-direction:column;gap:0}@media (min-width:1024px){.pg-intro{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch}.pg-intro .cf-figure .cf-frame{aspect-ratio:auto;flex:auto;min-height:300px}}.pg-filters{gap:var(--s-4);padding:var(--s-10) 0 var(--s-5);flex-direction:column;display:flex}.pg-filters .cf-chips{gap:var(--s-2)}.pg-filters .cf-chip[aria-pressed=true]{border-color:var(--cf-purple);background:var(--cf-purple-ink);color:var(--cf-purple-soft)}.pg-filters__side{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.pg-filters .cf-search{flex:220px;min-width:0}.pg-filters .cf-search .cf-input{width:100%}@media (min-width:1024px){.pg-filters{justify-content:space-between;align-items:center;gap:var(--s-6);flex-direction:row}.pg-filters .cf-chips{flex:auto}.pg-filters__side{flex-wrap:nowrap;flex:none}.pg-filters .cf-search{flex:0 0 280px}}.pg-results{justify-content:space-between;gap:var(--s-3);font-variant-numeric:tabular-nums;margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.pg-crew .cf-table{table-layout:auto}.pg-crew td{vertical-align:middle}.pg-crew .cf-person{min-width:220px}.pg-crew .cf-person__name{white-space:normal}.pg-crew .cf-person__name a{color:inherit;text-decoration:none}.pg-crew .cf-person__name a:hover{color:var(--cf-purple-soft)}.pg-crew .cf-person__sub{margin-top:2px;display:inline-flex}.pg-crew .pg-no{color:var(--cf-text-faint);width:40px}.pg-thumbs{gap:6px;display:flex}.pg-thumbs .cf-frame{width:56px;transition:transform var(--t-hover) var(--ease-out);border-radius:10px}.pg-crew tbody tr:hover .cf-frame{transform:translateY(-2px)}.pg-crew .pg-view{text-align:right;white-space:nowrap}.pg-crew .cf-stamp{white-space:nowrap}@media (min-width:768px){.pg-crew .cf-sheet__body{overflow-x:auto}.pg-crew .cf-table{min-width:760px}}@media (max-width:767px){.pg-crew .cf-table--stack tr{gap:var(--s-3) var(--s-4);padding-block:var(--s-5);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.pg-crew .pg-no{display:none}.pg-crew .pg-who,.pg-crew .pg-thumbs-cell{grid-column:1/-1}.pg-crew .cf-person{min-width:0}.pg-crew .cf-table--stack td{grid-template-columns:1fr;gap:2px;padding:0}.pg-crew .cf-table--stack td>*{grid-column:1}.pg-thumbs .cf-frame{width:72px}}.pg-cta{margin-top:var(--s-10)}.pg-cta__body{justify-content:space-between;align-items:center;gap:var(--s-6);flex-wrap:wrap;display:flex}.pg-cta__body h2{font-size:var(--fs-h3);margin-bottom:var(--s-1)}main#main>.cf-container>.pg-cta{margin-bottom:var(--s-12)}.pg-back{margin-top:var(--s-6);font-size:var(--fs-small);color:var(--cf-text-muted);transition:color var(--t-hover);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.pg-back:hover{color:var(--cf-text)}.pg-back .ph{font-size:18px}.pg-profile .cf-head{padding-top:var(--s-6)}.pg-profile .cf-head__title{gap:var(--s-4) var(--s-5);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.pg-profile .cf-head__title h1{font-size:clamp(2rem,4.5vw,3.25rem)}.pg-profile .cf-head__context{grid-column:2;margin-top:0}.pg-profile .cf-head__title .cf-chips{margin-top:var(--s-2);gap:var(--s-2);grid-column:1/-1}.pg-profile .cf-head__title .cf-avatar{--size:72px}.pg-profile .cf-head__side .cf-cluster{gap:var(--s-2)}.pg-profile .cf-head__meta .cf-handle{color:var(--cf-text);text-decoration:none}@media (min-width:1024px){.pg-profile .cf-head__title .cf-avatar{--size:96px}.pg-profile .cf-head__side .cf-cluster{justify-content:flex-end}}.pg-featured{padding-top:var(--s-10)}.pg-featured .cf-split{margin-bottom:var(--s-5)}.pg-featured h2{font-size:1.75rem}.pg-featured .cf-figure{color:inherit;text-decoration:none}.pg-featured .cf-figure figcaption{flex-direction:column;align-items:flex-start;gap:2px}.pg-featured .cf-frame{transition:transform var(--t-hover) var(--ease-out)}.pg-featured .cf-figure:hover .cf-frame{transform:translateY(-3px)}@media (min-width:768px){.pg-featured .cf-col-4{grid-column-end:span 4}}.pg-about{padding-top:var(--gap);gap:var(--gap);display:grid}.pg-about .cf-sheet__body p+p{margin-top:var(--s-4)}.pg-about .cf-kv{font-size:var(--fs-small)}.pg-about .cf-kv dd{text-align:left}@media (min-width:1024px){.pg-about{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch}}.pg-locked{margin-top:var(--gap);margin-bottom:var(--s-16)}.pg-locked .cf-sheet__body{gap:var(--s-6);display:grid}.pg-locked__title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:var(--s-3);color:var(--cf-text);max-width:24ch;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;line-height:1.15}.pg-locked p{max-width:52ch}.pg-locked__rows{display:grid}.pg-locked__rows>div{gap:var(--s-3);border-bottom:1px dashed var(--cf-border-strong);font-size:var(--fs-small);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:12px 0;display:grid}.pg-locked__rows>div:last-child{border-bottom:0}.pg-locked__rows strong{color:var(--cf-text);font-weight:600;display:block}.pg-locked__rows span{color:var(--cf-text-muted)}.pg-locked__rows .ph{color:var(--cf-text-faint);font-size:20px}.pg-locked__actions{align-items:center;gap:var(--s-4);margin-top:var(--s-6)}@media (min-width:1024px){.pg-locked .cf-sheet__body{align-items:center;gap:var(--s-10);grid-template-columns:minmax(0,6fr) minmax(0,6fr)}}.pg-more{padding-bottom:var(--s-16)}.pg-more h2{margin-bottom:var(--s-6);font-size:1.5rem}.pg-more__list{gap:var(--s-3);display:grid}@media (min-width:768px){.pg-more__list{grid-template-columns:repeat(3,1fr)}}.pg-more__item{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-4);border:1px solid var(--cf-border);border-radius:var(--r-sheet);color:inherit;background:var(--cf-surface);transition:border-color var(--t-hover);text-decoration:none;display:flex}.pg-more__item:hover{border-color:var(--cf-purple)}.pg-rs .cf-input-wrap>i{font-style:normal;font-size:var(--fs-small);color:var(--cf-text-muted);pointer-events:none;font-weight:500;position:absolute;top:50%;left:14px;translate:0 -50%}.pg-rs .cf-input-wrap .cf-input{padding-left:42px}.pg-linkbox{gap:var(--s-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.pg-linkbox .cf-input{font-family:ui-monospace,monospace;font-size:var(--fs-micro)}.pg-video-item{object-fit:cover;background:var(--cf-surface-raised);width:100%;height:100%;display:block}.pg-shield{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.pg-shield input,.pg-shield textarea,.pg-shield select,.pg-shield [contenteditable=true]{-webkit-user-select:text;user-select:text}.pg-shield__mark{z-index:60;pointer-events:none;background-repeat:repeat;background-size:460px 240px;position:fixed;inset:0}.pg-shield__cover{z-index:70;padding:var(--gutter);text-align:center;background:var(--cf-bg);color:var(--cf-text);place-items:center;display:grid;position:fixed;inset:0}.pg-shield__cover .ph{color:var(--cf-text-muted);font-size:40px}.pg-shield__cover p{margin:var(--s-2) 0 0}.pg-shield[data-covered]>:not(.pg-shield__cover):not(.pg-shield__mark){visibility:hidden}@media print{body:has(.pg-shield) *{visibility:hidden!important}body:has(.pg-shield):before{content:"Course material cannot be printed.";visibility:visible;padding:2rem;font:600 16px system-ui,sans-serif;display:block}}.pg-upload__head{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.pg-upload label.cf-btn{cursor:pointer}.pg-upload label.cf-btn:focus-within{outline:2px solid var(--cf-purple-bright);outline-offset:2px}.pg-play{background:var(--cf-surface-raised);width:100%;height:100%;color:var(--cf-text);cursor:pointer;border:0;padding:0;display:block;position:relative}.pg-play img{object-fit:cover;width:100%;height:100%;display:block}.pg-play__icon{place-items:center;display:grid;position:absolute;inset:0}.pg-play__icon .ph{background:rgb(var(--cf-bg-rgb) / .7);border-radius:50%;place-items:center;width:56px;height:56px;font-size:24px;display:grid}.pg-play:hover .pg-play__icon .ph,.pg-play:focus-visible .pg-play__icon .ph{background:var(--cf-purple);color:var(--cf-on-purple)}.pg-play:focus-visible{outline:2px solid var(--cf-purple-bright);outline-offset:2px}.pg-play__error{padding:var(--s-2) var(--s-3);background:rgb(var(--cf-bg-rgb) / .85);font-size:var(--fs-micro);position:absolute;bottom:0;left:0;right:0}.pg-play[disabled]{cursor:progress}.pg-play .ph-circle-notch{animation:1s linear infinite pg-spin}@keyframes pg-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pg-play .ph-circle-notch{animation:none}}
