.tsb-coursesx .cx-page{width:auto;max-width:430px;padding:22px 0 calc(118px + env(safe-area-inset-bottom));color:var(--tsb-text);margin:0 auto}.tsb-coursesx{--cx-gutter:20px}.tsb-coursesx .cx-head,.tsb-coursesx .cx-searchwrap,.tsb-coursesx .cx-summary,.tsb-coursesx .cx-start,.tsb-coursesx .cx-sec-head,.tsb-coursesx .cx-empty,.tsb-coursesx .cx-note-pad{margin-left:var(--cx-gutter);margin-right:var(--cx-gutter)}.tsb-coursesx .cx-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.tsb-coursesx .cx-title{color:#fff;font-family:var(--tsb-display);font-size:var(--text-lg);line-height:var(--leading-lg);letter-spacing:var(--track-display);margin:0;font-weight:800}.tsb-coursesx .cx-sub:empty{display:none}.tsb-coursesx .cx-sub{margin:var(--space-2) 0 0;color:var(--tsb-muted);font-size:var(--text-sm);line-height:var(--leading-sm)}.tsb-coursesx .cx-search-btn{border:1px solid var(--tsb-line);background:var(--tsb-surface);width:44px;height:44px;color:var(--tsb-text-2);cursor:pointer;transition:border-color var(--tsb-ease), color var(--tsb-ease);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.tsb-coursesx .cx-search-btn:hover{border-color:var(--tsb-line-strong);color:#fff}.tsb-coursesx .cx-search-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:17px;height:17px}.tsb-coursesx .cx-searchwrap[hidden]{display:none}.tsb-coursesx .cx-searchwrap{margin-top:var(--space-3)}.tsb-coursesx .cx-search{width:100%;min-height:44px;padding:0 var(--space-4);border-radius:var(--tsb-radius);border:1px solid var(--tsb-line);background:var(--tsb-well);color:var(--tsb-text);font-family:var(--tsb-body);font-size:var(--text-sm);line-height:var(--leading-sm)}.tsb-coursesx .cx-search::placeholder{color:var(--tsb-muted)}.tsb-coursesx .cx-search:focus{outline:2px solid var(--tsb-focus-ring);outline-offset:1px}.tsb-coursesx .cx-summary[hidden]{display:none}.tsb-coursesx .cx-summary{margin-top:var(--space-4);padding:var(--space-5);border-radius:var(--tsb-radius-xl);background:linear-gradient(180deg, var(--tsb-surface-2), var(--tsb-bg-raised));box-shadow:var(--tsb-elev-2)}.tsb-coursesx .cx-summary-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.tsb-coursesx .cx-summary-lead{align-items:baseline;gap:var(--space-2);min-width:0;margin:0;display:flex}.tsb-coursesx .cx-summary-lead b{color:#fff;font-family:var(--tsb-body);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1}.tsb-coursesx .cx-summary-lead span{color:var(--tsb-text-2);font-size:var(--text-xs);line-height:var(--leading-xs);letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:600}.tsb-coursesx .cx-pips{margin-top:var(--space-3);gap:2px;display:flex}.tsb-coursesx .cx-pip{background:var(--tsb-well);border-radius:2px;flex:1;height:6px}.tsb-coursesx .cx-pip[data-state=Open]{background:var(--tsb-green)}.tsb-coursesx .cx-pip[data-state=Completed]{background:#35c57973}.tsb-coursesx .cx-pip[data-state=Prereq]{background:#d4ae5566}.tsb-coursesx .cx-legend{column-gap:var(--space-4);row-gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.tsb-coursesx .cx-legend span{align-items:center;gap:var(--space-2);color:var(--tsb-muted);font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:700;display:flex}.tsb-coursesx .cx-legend i{background:currentColor;border-radius:2px;width:7px;height:7px}.tsb-coursesx .cx-start[hidden]{display:none}.tsb-coursesx .cx-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tsb-coursesx .cx-start{align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-4);border-radius:var(--tsb-radius-lg);background:var(--tsb-red);color:#fff;cursor:pointer;box-shadow:var(--tsb-elev-2);transition:background var(--tsb-ease), box-shadow var(--tsb-ease), transform var(--tsb-ease);text-decoration:none;display:flex}.tsb-coursesx .cx-start:hover{background:var(--tsb-red-hover);box-shadow:var(--tsb-elev-2);transform:translateY(-1px)}.tsb-coursesx .cx-start-icon svg{fill:currentColor;width:16px;height:16px;display:block}.tsb-coursesx .cx-start-copy{min-width:0;margin-right:auto}.tsb-coursesx .cx-start-eyebrow{font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:#fff;font-weight:700;display:block}.tsb-coursesx .cx-start-title{margin-top:var(--space-1);font-family:var(--tsb-display);font-size:var(--text-sm);line-height:var(--leading-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:700;display:block;overflow:hidden}.tsb-coursesx .cx-start-chev{flex:none;display:flex}.tsb-coursesx .cx-start-chev svg{width:15px;height:15px}.tsb-coursesx .cx-filters{gap:var(--space-2);margin:var(--space-5) var(--cx-gutter) 0;flex-wrap:wrap;display:flex}.tsb-coursesx .cx-chip{min-width:44px;min-height:44px;padding:0 var(--space-3);border:1px solid var(--tsb-line);background:var(--tsb-surface);color:var(--tsb-text-2);cursor:pointer;font-family:var(--tsb-body);font-size:var(--text-xs);-webkit-tap-highlight-color:transparent;transition:background var(--tsb-ease), border-color var(--tsb-ease), color var(--tsb-ease), transform .12s ease-out;border-radius:999px;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.tsb-coursesx .cx-chip:hover{color:var(--tsb-text);border-color:var(--tsb-line-strong)}.tsb-coursesx .cx-chip[aria-checked=true]{color:#fff;background:#58b7e824;border-color:#58b7e873}.tsb-coursesx .cx-chip:focus-visible{outline:2px solid var(--tsb-blue);outline-offset:2px}.tsb-coursesx .cx-sec{margin-top:var(--space-6)}.tsb-coursesx .cx-sec-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.tsb-coursesx .cx-sec-title{color:#fff;min-width:0;font-family:var(--tsb-display);font-size:var(--text-xs);letter-spacing:var(--track-eyebrow);text-transform:uppercase;margin:0;font-weight:700;line-height:1.5}.tsb-coursesx .cx-sec-count{color:var(--tsb-muted);font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-caps);text-transform:uppercase;white-space:nowrap;flex:none;font-weight:700}.tsb-coursesx .cx-load{gap:var(--space-3);margin:var(--space-6) var(--cx-gutter) 0;display:flex;overflow:hidden}.tsb-coursesx .cx-load i{border-radius:var(--tsb-radius-xl);flex:none;width:250px;height:260px}.tsb-coursesx .cx-rail{gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-2) var(--cx-gutter) var(--space-5);scrollbar-width:none;scroll-snap-type:x mandatory;scroll-padding-left:var(--cx-gutter);overscroll-behavior-x:contain;align-items:flex-start;display:flex;overflow-x:auto}.tsb-coursesx .cx-rail::-webkit-scrollbar{display:none}.tsb-coursesx .cx-card{scroll-snap-align:start;border-radius:var(--tsb-radius-xl);background:linear-gradient(180deg, var(--tsb-surface-2), var(--tsb-bg-raised));width:264px;box-shadow:var(--tsb-elev-2);transition:transform var(--tsb-ease), box-shadow var(--tsb-ease);flex-direction:column;flex:none;display:flex;overflow:hidden}.tsb-coursesx .cx-card:hover{box-shadow:var(--tsb-elev-3);transform:translateY(-3px)}.tsb-coursesx .cx-card[data-flat]{background:var(--tsb-bg-raised);box-shadow:0 0 0 1px #ffffff0f}.tsb-coursesx .cx-card[data-flat]:hover{box-shadow:0 0 0 1px var(--tsb-line-strong);transform:none}.tsb-coursesx .cx-card-hit{width:100%;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;flex:1;padding:0;display:block}.tsb-coursesx .cx-cover{aspect-ratio:16/9;background:repeating-linear-gradient(135deg, var(--tsb-well), var(--tsb-well) 6px, var(--tsb-bg-raised) 6px, var(--tsb-bg-raised) 12px);position:relative;overflow:hidden}.tsb-coursesx .cx-cover img{object-fit:cover;width:100%;height:100%;display:block}.tsb-coursesx .cx-cover:after{content:"";background:linear-gradient(#06070a1a,#06070ad9);position:absolute;inset:0}.tsb-coursesx .cx-state{align-self:flex-start;align-items:center;gap:var(--space-2);margin:var(--space-3) var(--space-4) 0;padding:var(--space-2) var(--space-3);font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-caps);text-transform:uppercase;border:1px solid #0000;border-radius:999px;font-weight:700;display:inline-flex}.tsb-coursesx .cx-state svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:11px;height:11px}.tsb-coursesx .cx-state-txt{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tsb-coursesx [data-kind=open] .cx-state{color:var(--tsb-green);background:#35c57924;border-color:#35c5794d}.tsb-coursesx [data-kind=done] .cx-state{color:var(--tsb-green);background:#35c5791a;border-color:#35c57938}.tsb-coursesx [data-kind=prereq] .cx-state{color:var(--tsb-gold);background:#d4ae551f;border-color:#d4ae5547}.tsb-coursesx [data-kind=locked] .cx-state{color:var(--tsb-gold);background:#d4ae551a;border-color:#d4ae553d}.tsb-coursesx .cx-card-copy{padding:var(--space-3) var(--space-4) var(--space-3)}.tsb-coursesx .cx-card-title{min-height:calc(var(--leading-md) * var(--text-sm) * 2);color:#fff;font-family:var(--tsb-display);font-size:var(--text-sm);line-height:var(--leading-md);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-weight:700;display:-webkit-box;overflow:hidden}.tsb-coursesx .cx-card[data-kind=locked] .cx-card-title{color:var(--tsb-text-2)}.tsb-coursesx .cx-card-note{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--tsb-text-2);font-size:var(--text-xs);line-height:var(--leading-xs);background:#ffffff05;border-top:1px solid #ffffff0f;display:flex}.tsb-coursesx [data-kind=prereq] .cx-card-note{background:#d4ae5512;border-top-color:#d4ae5533}.tsb-coursesx .cx-card-note svg{width:12px;height:12px;color:var(--tsb-gold);fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;margin-top:2px}.tsb-coursesx .cx-note{color:var(--tsb-muted);font-size:var(--text-sm);line-height:var(--leading-sm)}.tsb-coursesx .cx-note-pad{margin-top:var(--space-6)}.tsb-coursesx .cx-empty{margin-top:var(--space-5);padding:var(--space-6);border-radius:var(--tsb-radius-xl);background:var(--tsb-bg-raised);text-align:center;border:1px solid #ffffff0f}.tsb-coursesx .cx-empty b{color:#fff;font-family:var(--tsb-display);font-size:var(--text-xs);line-height:var(--leading-xs);letter-spacing:var(--track-eyebrow);text-transform:uppercase;font-weight:700}.tsb-coursesx .cx-empty p{margin:0}.cx-sheet{box-sizing:border-box;width:100%;max-width:min(520px,100%);max-height:88dvh;padding:var(--space-5) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom));background:linear-gradient(180deg, var(--tsb-surface-2), var(--tsb-surface));color:var(--tsb-text);font-family:var(--tsb-body);border:0;border-radius:26px 26px 0 0;margin:auto auto 0;overflow-y:auto;box-shadow:0 -8px 30px #0009,0 0 0 1px #ffffff1a}.cx-sheet::backdrop{background:#040507b8}@media (prefers-reduced-motion:no-preference){.cx-sheet[open]{animation:.26s cubic-bezier(.16,1,.3,1) cx-rise}}@keyframes cx-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.cx-sheet-grab{margin:calc(var(--space-3) * -1) 0 var(--space-2);justify-content:center;display:flex}.cx-sheet-grab button{cursor:pointer;border-radius:var(--tsb-radius);background:0 0;border:0;place-items:center;width:88px;height:44px;padding:0;display:grid}.cx-sheet-grab button:focus-visible{outline:2px solid var(--tsb-blue);outline-offset:-2px}.cx-sheet-grab button:before{content:"";background:#ffffff2e;border-radius:999px;width:44px;height:4px}.cx-sheet-program{color:var(--tsb-muted);font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-eyebrow);text-transform:uppercase;font-weight:700}.cx-sheet-top{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.cx-sheet-top .cx-state{margin:0}.cx-sheet-cover{aspect-ratio:16/9;margin-bottom:var(--space-4);border-radius:var(--tsb-radius-lg);background:var(--tsb-well);box-shadow:inset 0 0 0 1px var(--tsb-line);overflow:hidden}.cx-sheet-cover img{object-fit:cover;width:100%;height:100%;display:block}.cx-sheet-video{aspect-ratio:16/9;margin-bottom:var(--space-4);border-radius:var(--tsb-radius-lg);box-shadow:inset 0 0 0 1px var(--tsb-line);background:#000;position:relative;overflow:hidden}.cx-sheet-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}@media (width<=600px){.cx-sheet-video{margin-inline:calc(var(--space-5) * -1);box-shadow:none;border-radius:0}}@media (height<=480px) and (orientation:landscape){.cx-sheet{max-width:min(720px,100%);max-height:100dvh}.cx-sheet-video{border-radius:var(--tsb-radius-lg);width:min(100%,177.778dvh - 312.889px);box-shadow:inset 0 0 0 1px var(--tsb-line);margin-inline:auto}}.tsb-coursesx .cx-cover-video{position:relative}.tsb-coursesx .cx-playbadge{z-index:1;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.tsb-coursesx .cx-playbadge span{background:#0000008c;border-radius:50%;place-items:center;width:52px;height:52px;display:grid;box-shadow:inset 0 0 0 1px #fff6}.tsb-coursesx .cx-playbadge svg{fill:#fff;stroke:#fff;stroke-width:1px;width:22px;height:22px}.cx-sheet-title{color:#fff;font-family:var(--tsb-display);font-size:var(--text-md);line-height:var(--leading-md);margin:0;font-weight:700}.cx-sheet-blurb{margin:var(--space-3) 0 0;color:var(--tsb-muted);font-size:var(--text-sm);line-height:var(--leading-base)}.cx-sheet-rows{margin-top:var(--space-5);padding:0 var(--space-4);border-radius:var(--tsb-radius-lg);background:var(--tsb-well);box-shadow:inset 0 0 0 1px #ffffff12}.cx-sheet-rows>div{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid #ffffff0f;display:flex}.cx-sheet-rows>div:first-child{border-top:0}.cx-sheet-rows dt,.cx-sheet-rows .cx-row-k{color:var(--tsb-muted);font-size:var(--text-2xs);line-height:var(--leading-2xs);letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:700}.cx-sheet-rows .cx-row-v{text-align:right;font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--tsb-text);font-weight:600}.cx-sheet-cta{justify-content:center;align-items:center;gap:var(--space-2);width:100%;margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--tsb-radius-lg);background:var(--tsb-red);color:#fff;cursor:pointer;font-family:var(--tsb-body);font-size:var(--text-xs);letter-spacing:var(--track-eyebrow);text-transform:uppercase;box-shadow:var(--tsb-elev-2);transition:background var(--tsb-ease), box-shadow var(--tsb-ease);border:0;font-weight:700;line-height:1;text-decoration:none;display:flex}.cx-sheet-cta:hover{background:var(--tsb-red-hover);box-shadow:var(--tsb-elev-2)}.cx-sheet-cta svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:15px;height:15px}.cx-sheet-shut{justify-content:center;align-items:center;gap:var(--space-2);width:100%;margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--tsb-radius-lg);color:var(--tsb-gold);font-size:var(--text-xs);line-height:var(--leading-xs);letter-spacing:var(--track-caps);text-transform:uppercase;text-align:center;background:#d4ae551a;border:1px solid #d4ae5547;font-weight:700;display:flex}.cx-sheet-foot{margin:var(--space-3) 0 0;color:var(--tsb-muted);font-size:var(--text-xs);line-height:var(--leading-xs);text-align:center}.cx-sheet-foot:empty{display:none}.tsb-coursesx .cx-card-hit,.tsb-coursesx .cx-start,.cx-sheet-cta{-webkit-tap-highlight-color:transparent}.tsb-coursesx .cx-card:has(.cx-card-hit:active),.tsb-coursesx .cx-start:active,.cx-sheet-cta:active{transition-duration:80ms;transform:scale(.98)}.tsb-coursesx .cx-chip:active,.tsb-coursesx .cx-search-btn:active,.tsb-coursesx .cx-reset:active{transform:scale(.95)}.tsb-coursesx .cx-card-hit:focus-visible{outline:2px solid var(--tsb-blue);outline-offset:-2px;border-radius:var(--tsb-radius-xl)}.tsb-coursesx .cx-start:focus-visible,.cx-sheet-cta:focus-visible,.tsb-coursesx .cx-search-btn:focus-visible{outline:2px solid var(--tsb-blue);outline-offset:2px}.cx-sheet-cta{transition:background var(--tsb-ease), box-shadow var(--tsb-ease), transform .12s ease-out}.tsb-coursesx .cx-reset{min-height:44px;margin-top:var(--space-4);padding:0 var(--space-5);border:1px solid var(--tsb-line-strong);background:var(--tsb-surface);color:var(--tsb-text);cursor:pointer;font-family:var(--tsb-body);font-size:var(--text-xs);transition:border-color var(--tsb-ease), transform .12s ease-out;border-radius:999px;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.tsb-coursesx .cx-reset:hover{border-color:#58b7e873}.tsb-coursesx .cx-reset:focus-visible{outline:2px solid var(--tsb-blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tsb-coursesx *{transition:none!important;animation:none!important}.tsb-coursesx .cx-card:has(.cx-card-hit:active),.tsb-coursesx .cx-start:active,.tsb-coursesx .cx-chip:active,.tsb-coursesx .cx-search-btn:active,.tsb-coursesx .cx-reset:active,.cx-sheet-cta:active{transform:none}}@media (width<=600px){.tsb-coursesx{--cx-gutter:20px}}
