.course-class-page{background:var(--color-bg)}.course-class-page--menu-open{overflow:hidden}.course-class{display:grid;grid-template-columns:minmax(0,1fr) 320px;min-height:calc(100vh - var(--topbar-height));align-items:start}.course-class__main{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);min-width:0}.course-class__aside{position:sticky;top:var(--topbar-height);height:calc(100vh - var(--topbar-height));overflow-y:auto;border-left:1px solid var(--color-border);background:var(--color-surface)}.course-class__aside-inner{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.course-class__title{margin:0;font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:1.15;color:var(--color-text)}.course-class__instructor-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);color:var(--color-text-2);font-size:var(--text-sm)}.course-class__instructor-label{color:var(--color-text-2)}.course-class__instructor-link{color:var(--color-accent);text-decoration:none;font-weight:var(--weight-semibold)}.course-class__instructor-link:hover{text-decoration:underline}.course-class__workload{display:flex;align-items:center;gap:var(--space-1);color:var(--color-text-2)}.course-class__workload-icon{opacity:.6}.course-class__video{position:relative;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);aspect-ratio:16 / 9;overflow:hidden;cursor:pointer;margin-bottom:var(--space-4)}.course-class__video-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-3)}.course-class__video-inner>iframe{width:100%;height:100%}.course-class__video-inner>.plyr{flex:1}.course-class__video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--color-text-2);font-size:var(--text-sm);text-align:center;padding:var(--space-4)}.course-class__progress-area{display:flex;flex-direction:column;gap:var(--space-3)}.course-class__nav-row{display:flex;align-items:center;gap:var(--space-2)}.course-class__nav-row .btn:last-child{margin-left:auto}.course-class__chapters-section{display:flex;flex-direction:column;gap:var(--space-3)}.course-class__chapters{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,220px);gap:var(--space-3);overflow-x:auto;overflow-y:hidden;padding-bottom:var(--space-1);padding-top:3px}.course-class__chapter{display:flex;flex-direction:column;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font:inherit;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base),transform var(--transition-base);position:relative;text-decoration:none}.course-class__chapter:hover{border-color:var(--color-border-2);background:var(--color-surface-2);transform:translateY(-3px);text-decoration:none}.course-class__chapter--active{border-color:var(--color-accent);background:var(--color-accent-dim)}.course-class__chapter--active:hover{border-color:var(--color-accent)}.course-class__chapter-num{margin:0;font-size:var(--text-2xs)}.class-video-chapter__timestamp{align-self:flex-start;font-size:var(--text-2xs);font-family:monospace;color:var(--color-text-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px var(--space-2);background:var(--color-surface-2)}.course-class__chapter--active .class-video-chapter__timestamp{border-color:var(--color-accent);color:var(--color-accent);background:#ffb60014}.course-class__chapter-title{margin:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text);line-height:1.3;flex:1}.course-class__chapter-play{align-self:flex-start;width:28px;height:28px;font-size:10px;border-radius:50%;border:1px solid var(--color-border);color:var(--color-text-2);background:var(--color-surface-2)}.course-class__chapter--active .course-class__chapter-play{border-color:var(--color-accent);color:var(--color-accent);background:#ffb6001a}.course-class__content-section{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.course-class__description{display:flex;flex-direction:column;gap:var(--space-3);color:var(--color-text-2);font-size:var(--text-sm);line-height:1.7}.course-class__description p{margin:0}.course-class__description a{color:var(--color-accent)}.course-class__description ul{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.course-class__description strong{color:var(--color-text);font-weight:var(--weight-semibold)}.course-class__description em{color:var(--color-text)}.course-class__format-hint{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-muted)}.course-class__share{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.course-class__comment-form{display:flex;flex-direction:column;gap:var(--space-3)}.course-class__comment-response{border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5;padding:var(--space-2) var(--space-3)}.course-class__comment-response[x-cloak]{display:none}.course-class__comment-response--success{border-color:var(--color-done-border);color:var(--color-done);background:var(--color-done-dim)}.course-class__comment-response--error{border-color:var(--color-tag-red-text);color:var(--color-tag-red-text);background:var(--color-tag-red-bg)}.course-class__share-textarea{resize:none;min-height:80px;font-size:var(--text-sm)}.course-class__comments-section{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.course-class__comments-empty{margin:0;color:var(--color-text-2);font-size:var(--text-sm)}.course-class__comments-empty[x-cloak]{display:none}.course-class__comments-list{display:flex;flex-direction:column;gap:var(--space-3)}.course-class__comment-item--pending{opacity:.85}.course-class__comment-skeleton{display:flex;flex-direction:column;gap:var(--space-2);padding-block:var(--space-1)}.course-class__comment-skeleton-line{position:relative;overflow:hidden;height:10px;border-radius:var(--radius-sm);background:var(--color-border)}.course-class__comment-skeleton-line:after{content:"";position:absolute;inset-block:0;left:0;width:40%;background:linear-gradient(90deg,transparent,var(--color-muted),transparent);animation:course-class-skeleton-shimmer 1.4s infinite}.course-class__comment-skeleton-line--medium{width:82%}.course-class__comment-skeleton-line--short{width:55%}@keyframes course-class-skeleton-shimmer{0%{transform:translate(-200%)}to{transform:translate(400%)}}@media(prefers-reduced-motion:reduce){.course-class__comment-skeleton-line:after{animation:none}}.course-class__comment-item{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);padding:var(--space-4)}.course-class__comment-header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.course-class__comment-photo{width:40px;height:40px;border-radius:var(--radius-full);flex-shrink:0}.course-class__comment-author{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.course-class__comment-dot{color:var(--color-muted)}.course-class__comment-date{color:var(--color-text-2);font-size:var(--text-xs)}.course-class__comment-body{color:var(--color-text-2);font-size:var(--text-sm);line-height:1.7}.course-class__comment-reply-toggle{align-self:flex-start}.course-class__comment-form--reply{margin-top:var(--space-2)}.course-class__share-textarea--reply{min-height:60px}.course-class__comment-form-actions{display:flex;align-items:center;gap:var(--space-2)}.course-class__comment-replies{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2);margin-left:var(--space-6)}.course-class__comment-item--reply{background:var(--color-surface-2, var(--color-surface));padding:var(--space-3)}.course-class__comment-body a{color:var(--color-accent)}.course-class__attachments-section{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.course-class__attachments{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3)}.course-class__attachment{display:flex;align-items:center;text-decoration-line:none;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base),transform var(--transition-base);text-decoration:none;position:relative;overflow:hidden}.course-class__attachment:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--color-accent);opacity:0;transition:opacity var(--transition-base)}.course-class__attachment:hover{border-color:var(--color-border-2);background:var(--color-surface-2);transform:translate(3px);text-decoration:none}.course-class__attachment:hover:before{opacity:1}.course-class__attachment-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);font-size:16px}.course-class__attachment-body{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;gap:2px}.course-class__attachment-name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-class__attachment-meta{font-size:var(--text-xs);color:var(--color-muted)}.course-class__attachment-download{flex-shrink:0;width:28px;height:28px;font-size:12px}.course-class__lessons-header{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.course-class__lessons-title{margin:0;font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--color-text)}.course-class__lessons-progress{display:flex;align-items:center;gap:var(--space-2)}.course-class__lessons-progress .progress{flex:1}.course-class__lessons-count{font-size:var(--text-xs);color:var(--color-text-2);white-space:nowrap}.course-class__lessons-pct{font-size:var(--text-xs);color:var(--color-accent);white-space:nowrap}.course-class__lessons-list{display:flex;flex-direction:column;gap:var(--space-1)}.course-class__lessons-list a.lesson{text-decoration:none;color:inherit}.course-class__lessons-list a.lesson:hover{text-decoration:none}.course-class__lesson-meta{display:block;font-size:var(--text-xs);color:var(--color-muted);margin-top:2px}.course-class__mobile-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;flex-direction:column;justify-content:flex-end}.course-class__mobile-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.course-class__mobile-drawer-panel{position:relative;z-index:1;background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:80vh;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.course-class__mobile-drawer-header{display:flex;align-items:center;justify-content:space-between}@media(max-width:960px){.content-home__search{display:none}.content-home__search-icon{display:inline-flex}.content-home__hamburger{display:flex}.content-home__top-actions .avatar,.content-home__top-actions .btn--secondary{display:none}}@media(max-width:768px){.course-class{grid-template-columns:1fr}.course-class__aside{position:static;height:auto;overflow-y:visible;border-left:none;border-top:1px solid var(--color-border)}.course-class__main{padding:var(--space-4)}.course-class__chapters{grid-auto-columns:minmax(180px,180px)}}@media(max-width:480px){.course-class__main{padding:var(--space-3)}.course-class__title{font-size:var(--text-lg)}.content-home__topnav{padding:var(--space-3) var(--space-4)}.course-class__attachments{grid-template-columns:repeat(2,1fr)}}.spotlight{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:flex-start;justify-content:center;padding:min(10vh,80px) var(--space-4) var(--space-4);background:#000000b3;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:opacity .15s ease}.spotlight--open{opacity:1;pointer-events:all}.spotlight__panel{display:flex;flex-direction:column;width:100%;max-width:680px;max-height:80vh;background:var(--color-surface);border:1px solid var(--color-border-2);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:0 32px 64px #000000b3,0 0 0 1px #ffffff0a;transform:scale(.96) translateY(-10px);transition:transform .15s ease}.spotlight--open .spotlight__panel{transform:scale(1) translateY(0)}.spotlight__input-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0}.spotlight__search-svg{color:var(--color-text-2);flex-shrink:0}.spotlight__input{flex:1;background:transparent;border:none;outline:none;font-size:var(--text-md);color:var(--color-text);font-family:inherit}.spotlight__input::-moz-placeholder{color:var(--color-text-3)}.spotlight__input::placeholder{color:var(--color-text-3)}.spotlight__esc-badge{font-size:var(--text-2xs);font-family:inherit;font-weight:var(--weight-medium);color:var(--color-text-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px var(--space-2);line-height:1.4;flex-shrink:0}.spotlight__body{overflow-y:auto;flex:1}.spotlight__section{padding:var(--space-4) var(--space-5) var(--space-2)}.spotlight__section-label{margin:0;font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-3);padding:var(--space-3) var(--space-5) var(--space-2)}.spotlight__results-list{display:flex;flex-direction:column}.spotlight__item{display:flex;align-items:center;text-decoration-line:none;gap:var(--space-4);padding:var(--space-3) var(--space-5);color:var(--color-text);cursor:pointer;transition:background var(--transition-base);border:none;text-decoration:none}.spotlight__item:hover,.spotlight__item--selected{background:var(--color-surface-2);text-decoration:none}.spotlight__item--selected{border-left:2px solid var(--color-accent);padding-left:calc(var(--space-5) - 2px)}.spotlight__item-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:16px;flex-shrink:0;overflow:hidden}.spotlight__item-icon img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.spotlight__item-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.spotlight__item-title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotlight__item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-2);line-height:1.3}.spotlight__item-meta-sep{color:var(--color-text-3)}.spotlight__item-tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-top:2px}.spotlight__item-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.spotlight__enter-hint{display:none;align-items:center;justify-content:center;width:22px;height:22px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;color:var(--color-text-2)}.spotlight__item--selected .spotlight__enter-hint{display:flex}.spotlight__highlight{padding-left:0;padding-right:0;background:transparent;color:var(--color-accent);font-weight:var(--weight-semibold)}.spotlight__subject-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-1) var(--space-5) var(--space-4)}.spotlight__subject-tag{display:flex;align-items:center;text-decoration-line:none;gap:var(--space-1);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;transition:opacity var(--transition-base),border-color var(--transition-base)}.spotlight__subject-tag:hover{opacity:.8;text-decoration:none}.spotlight__subject-dot{display:inline-block;width:6px;height:6px;border-radius:var(--radius-round);flex-shrink:0}.spotlight__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center}.spotlight__loading{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--color-text-2);font-size:var(--text-sm);gap:var(--space-2)}.spotlight__spinner{width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-round);animation:spotlight-spin .6s linear infinite}@keyframes spotlight-spin{to{transform:rotate(360deg)}}.spotlight__footer{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-2);flex-shrink:0}.spotlight__footer-hint{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-2xs);color:var(--color-text-3)}.spotlight__kbd{font-size:var(--text-2xs);font-family:inherit;color:var(--color-text-2);background:var(--color-surface);border:1px solid var(--color-border-2);border-radius:var(--radius-sm);padding:1px 5px;line-height:1.5}@media(max-width:640px){.spotlight{padding:var(--space-4) var(--space-2) var(--space-2);align-items:flex-start}.spotlight__panel{max-height:90vh}}
