.challenges-page main.challenges-main,.quiz-page main.quiz-main,.labs-page main.labs-main,.leaderboard-page main.leaderboard-main{width:min(1180px,100% - 48px);margin:0 auto;padding:32px 0 80px}.learn-page main.learn-shell{width:100%;margin:0;padding:0 0 80px}.learn-hero{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);justify-content:space-between;align-items:center;gap:24px;max-width:1200px;min-height:200px;margin:32px auto 0;padding:24px 32px;display:flex}.learn-content-wrapper{align-items:flex-start;gap:24px;max-width:1200px;margin:0 auto;padding:24px 24px 80px;display:flex}.learn-main{flex:1;min-width:0}.learn-hero__copy,.learn-hero__status{flex-direction:column;gap:14px;display:flex}.learn-hero__copy{flex:auto;align-items:flex-start}.learn-hero__title{color:var(--text-primary);font-family:var(--font-body);font-size:32px;font-weight:700;line-height:1.1}.learn-hero__subhead{color:var(--text-muted);font-size:14px}.learn-xp-pill{background:var(--accent-subtle);min-height:28px;color:var(--accent);font-family:var(--font-mono);border-radius:999px;align-items:center;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.learn-resume{border:1px solid color-mix(in srgb,var(--accent)22%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent)6%,transparent);min-height:48px;color:var(--text-primary);justify-content:space-between;align-items:stretch;gap:8px;padding:0 8px 0 14px;display:flex}.learn-resume__main{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;text-decoration:none;display:flex}.learn-resume__label,.learn-resume__cta{color:var(--accent);font-family:var(--font-mono);font-size:12px}.learn-resume__text{color:var(--text-primary);font-size:13px}.learn-resume__dismiss{width:28px;min-width:28px;min-height:28px;color:var(--text-muted);cursor:pointer;transition:background-color var(--transition),color var(--transition),transform var(--transition);background:0 0;border:0;border-radius:999px;margin:auto 0;font-size:16px}.learn-resume__dismiss:hover{background:var(--bg-elevated);color:var(--text-primary);transform:scale(1.04)}.learn-hero__signin{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.learn-hero__signin-copy{color:var(--text-muted);font-size:13px}.learn-hero__signin-button{border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent);min-height:36px;color:var(--text-primary);cursor:pointer;padding:0 16px;font-size:14px;font-weight:600}.stats-strip{gap:16px;padding:16px 0;display:flex}.stat-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;flex:1;gap:6px;padding:12px 16px;display:flex}.stat-card__label{color:var(--text-secondary);font-size:13px}.stat-card__value{color:var(--text-primary);font-family:var(--font-mono);font-size:16px;font-weight:700}.learn-platform{align-items:flex-start;gap:32px;display:flex}.learn-platform__main{flex-direction:column;flex:auto;gap:24px;min-width:0;display:flex}.learn-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);padding:24px}.learn-panel__header-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.learn-panel__title{color:var(--text-primary);font-size:20px;font-weight:700}.learn-panel__meta{color:var(--text-muted);font-size:13px}.learn-panel__link{color:var(--accent);font-family:var(--font-mono);font-size:12px}.progress-ring{width:120px;height:120px;position:relative}.progress-ring svg{width:120px;height:120px;transform:rotate(-90deg)}.progress-ring__track,.progress-ring__value{fill:none;stroke-width:8px}.progress-ring__track{stroke:var(--border)}.progress-ring__value{stroke:var(--accent);stroke-linecap:round}.progress-ring__content{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.progress-ring__content strong{color:var(--text-primary);font-size:20px;font-weight:700}.progress-ring__content span{color:var(--text-muted);font-size:12px}.learn-badges{flex-direction:column;gap:8px;display:flex}.learn-badges__label{color:var(--text-muted);font-size:12px}.learn-badges__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.learn-badges__empty{color:var(--text-muted);font-size:12px}.badge-icon{background:var(--accent-subtle);width:24px;height:24px;color:var(--accent);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.badge-icon svg{width:14px;height:14px}.curriculum-tree{width:100%}.lesson-tree{max-width:600px;margin:32px auto 80px;padding:0 16px;position:relative}.lesson-path-line{background:linear-gradient(to bottom,var(--accent)0%,var(--accent)var(--progress-pct),var(--border)var(--progress-pct),var(--border)100%);pointer-events:none;width:2px;position:absolute;top:0;bottom:0;left:25px}.lesson-phase-divider{align-items:center;gap:12px;margin:28px 0 16px;display:flex}.lesson-phase-divider:first-child{margin-top:0}.lesson-phase-divider__line{background:var(--border);flex:1;height:1px}.lesson-phase-divider__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;white-space:nowrap;font-family:Geist Mono,monospace;font-size:10px;font-weight:600}.lesson-row{align-items:center;gap:0;margin-bottom:0;text-decoration:none;display:flex;position:relative}.lesson-row__left{flex-direction:column;flex-shrink:0;align-items:center;width:52px;display:flex}.lesson-row__circle{z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-family:Geist Mono,monospace;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.lesson-row:hover .lesson-row__circle{transform:scale(1.08)}.lesson-row__connector{background:var(--border);width:2px;height:16px;margin:2px 0}.lesson-row:last-child .lesson-row__connector,.lesson-row--terminal .lesson-row__connector{display:none}.lesson-row--locked .lesson-row__circle{background:var(--bg-elevated);border:2px solid var(--border);color:var(--text-muted)}.lesson-row--available .lesson-row__circle{background:var(--bg-surface);border:2px solid var(--border);color:var(--text-primary)}.lesson-row--available:hover .lesson-row__circle{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.lesson-row--in-progress .lesson-row__circle{background:var(--bg-surface);border:2.5px solid var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.lesson-row--completed .lesson-row__circle{background:var(--accent);color:#fff;border:none}.lesson-row--available .lr-circle--beginner,.lesson-row--locked .lr-circle--beginner{border-color:#22c55e66}.lesson-row--available .lr-circle--advanced,.lesson-row--locked .lr-circle--advanced{border-color:#fb923c66}.lesson-row__content{flex:1;min-width:0;padding:12px 16px 12px 12px}.lesson-row__header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.lesson-row__title{color:var(--text-primary);font-family:Geist,sans-serif;font-size:15px;font-weight:600;line-height:1.3}.lesson-row--locked .lesson-row__title{color:var(--text-muted)}.lesson-row__badges{flex-shrink:0;gap:4px;display:flex}.lesson-badge{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:4px;align-items:center;padding:2px 7px;font-family:Geist Mono,monospace;font-size:9px;font-weight:600;display:inline-flex}.lesson-badge--ece{background:var(--accent-subtle);color:var(--accent);border:1px solid var(--accent-border)}.lesson-badge--beginner{color:#22c55e;background:#22c55e1a;border:1px solid #22c55e33}.lesson-badge--intermediate{color:#ca8a04;background:#eab3081a;border:1px solid #eab30833}.lesson-badge--advanced{color:#ea580c;background:#fb923c1a;border:1px solid #fb923c33}.lesson-row__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-family:Geist,sans-serif;font-size:12px;display:flex}.challenge-dot{border:1px solid var(--border);background:0 0;border-radius:50%;width:8px;height:8px;display:inline-block}.challenge-dot--available{border-color:var(--border)}.challenge-dot--attempted{border-color:var(--accent)}.challenge-dot--passed{border-color:var(--accent);background:var(--accent)}.lesson-row__progress-bar{background:var(--border);border-radius:2px;width:60px;height:3px;overflow:hidden}.lesson-row__progress-fill{background:var(--accent);border-radius:2px;height:100%}.lesson-row__challenge-dots{gap:4px;margin-top:6px;display:flex}.lesson-row__right{flex-shrink:0;padding-left:8px}.lesson-row-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;padding:6px 14px;font-family:Geist,sans-serif;font-size:12px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.lesson-row-btn--start{background:var(--accent);color:#fff}.lesson-row-btn--start:hover{background:var(--accent-hover)}.lesson-row-btn--continue{background:var(--accent-subtle);color:var(--accent);border:1px solid var(--accent-border)}.lesson-row-btn--review{color:var(--text-muted);border:1px solid var(--border);background:0 0}.lesson-row-btn--locked{color:var(--text-muted);border:1px solid var(--border);cursor:not-allowed;opacity:.6;background:0 0}.lesson-row--available,.lesson-row--in-progress,.lesson-row--completed{border-radius:10px;padding:4px 4px 4px 0;transition:background .15s}.lesson-row--available:hover,.lesson-row--in-progress:hover,.lesson-row--completed:hover{background:var(--bg-elevated)}.lesson-tree__tooltip{border:1px solid var(--border);background:var(--bg-elevated);max-width:260px;color:var(--text-primary);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;z-index:2;border-radius:6px;padding:8px 10px;font-family:Geist,sans-serif;font-size:12px;line-height:1.45;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:70px;transform:translateY(-50%)translate(8px)}.lesson-tree__tooltip.is-visible{opacity:1;transform:translateY(-50%)translate(0)}.cp-gate-group{gap:12px;margin:0 0 16px 52px;display:grid}.cp-gate-card{border:1px solid var(--border);background:var(--bg-base);border-radius:12px;align-items:center;gap:16px;padding:18px 20px;transition:border-color .2s,background .2s,opacity .2s;display:flex}.cp-gate-card[data-state=unlocked]{border:1.5px solid var(--accent);background:var(--accent-subtle);animation:2s ease-in-out infinite cp-gate-pulse}.cp-gate-card[data-state=completed]{background:#22c55e0f;border:1.5px solid #22c55e}.cp-gate-card[data-state=locked]{opacity:.65}.cp-gate-card[data-state=locked-tier]{opacity:.8}@keyframes cp-gate-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent)30%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent)10%,transparent)}}.cp-gate-card__left{flex-shrink:0}.cp-gate-card__icon-wrap{border:1px solid var(--border);background:var(--bg-surface);border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;display:inline-flex}.cp-gate-card[data-state=unlocked] .cp-gate-card__icon-wrap{border-color:var(--accent);color:var(--accent)}.cp-gate-card[data-state=completed] .cp-gate-card__icon-wrap{color:var(--bg-surface);background:#22c55e;border-color:#22c55e}.cp-gate-card__body{flex:1;min-width:0}.cp-gate-card__title{color:var(--text-primary);font-family:Geist,sans-serif;font-size:15px;font-weight:600}.cp-gate-card__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-family:Geist Mono,monospace;font-size:10px;font-weight:700}.cp-gate-card__meta{color:var(--text-muted);margin-top:4px;font-family:Geist Mono,monospace;font-size:11px}.cp-gate-card__desc{color:var(--text-secondary);margin-top:8px;font-size:13px}.cp-gate-card__action{flex-shrink:0}.cp-gate-card__action-stack{justify-items:end;gap:4px;display:grid}.cp-gate-card__button,.cp-gate-card__link{border:1px solid var(--accent);background:var(--accent);min-height:36px;color:var(--bg-surface);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.cp-gate-card__link{color:var(--accent);background:0 0;border-color:#0000;min-height:auto;padding:0}.cp-gate-card__done{color:#22c55e;font-size:13px;font-weight:700}.cp-gate-card__done-date,.cp-gate-card__lock-copy{color:var(--text-muted);text-align:right;font-size:12px}.leaderboard-sidebar{background:var(--bg-surface);border:1px solid var(--border);scrollbar-width:thin;border-radius:12px;flex-shrink:0;align-self:flex-start;width:280px;max-height:calc(100vh - 120px);margin-top:24px;padding:16px;position:sticky;top:80px;overflow-y:auto}.leaderboard-sidebar__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.leaderboard-sidebar__title{color:var(--text-primary);font-size:14px;font-weight:600}.leaderboard-sidebar__meta,.leaderboard-sidebar__current-label{color:var(--text-muted);font-size:11px}.leaderboard-sidebar__toggle{color:var(--accent);font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;font-size:11px}.leaderboard-sidebar__list{flex-direction:column;gap:6px;display:flex}.leaderboard-sidebar__tabs{gap:8px;margin-bottom:12px;display:flex}.leaderboard-sidebar__tab{min-height:28px;color:var(--text-muted);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:0 10px;font-size:12px}.leaderboard-sidebar__tab.is-active{border-bottom-color:var(--accent);color:var(--accent)}.leaderboard-row{border-radius:var(--radius-sm);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:34px;padding:0 8px;display:grid}.leaderboard-row.is-current{background:var(--accent-subtle)}.leaderboard-row__rank{color:var(--text-muted);font-family:var(--font-mono);font-size:13px}.leaderboard-row__rank--gold{color:color-mix(in srgb,var(--warning)68%,var(--text-primary))}.leaderboard-row__rank--silver{color:color-mix(in srgb,var(--text-primary)68%,var(--text-muted))}.leaderboard-row__rank--bronze{color:color-mix(in srgb,var(--warning)55%,var(--accent))}.leaderboard-row__name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.leaderboard-row__xp{color:var(--accent);font-family:var(--font-mono);font-size:12px}.learn-challenge-summary__list{flex-direction:column;gap:10px;display:flex}.learn-challenge-summary__item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-base);justify-content:space-between;align-items:center;min-height:40px;padding:0 12px;display:flex}.learn-challenge-summary__name{color:var(--text-primary);font-size:14px}.learn-challenge-summary__score{color:var(--accent);font-family:var(--font-mono);font-size:12px}.learn-challenge-summary__empty{color:var(--text-muted);font-size:13px}.challenges-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.challenges-header__title{color:var(--text-primary);font-size:32px;font-weight:700}.challenges-header__subhead{color:var(--text-muted);margin-top:8px;font-size:14px}.challenges-header__stats{gap:12px;display:flex}.challenges-header__stat{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-height:42px;color:var(--text-primary);font-family:var(--font-mono);align-items:center;padding:0 14px;font-size:13px;display:inline-flex}.challenge-filters{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.challenge-filter-row{flex-wrap:wrap;gap:8px;display:flex}.challenge-filter,.challenge-lesson-filter{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-height:34px;color:var(--text-secondary);padding:0 12px;font-size:13px}.challenge-filter{cursor:pointer}.challenge-filter.is-active{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.challenge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.labs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.challenge-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);min-height:240px;box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:20px;display:flex}.challenge-card__header,.challenge-card__footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.challenge-card__status{color:var(--accent);font-family:var(--font-mono);font-size:14px}.challenge-card__difficulty{min-height:22px;font-family:var(--font-mono);border-radius:999px;align-items:center;padding:0 8px;font-size:11px;display:inline-flex}.challenge-card__difficulty--easy{background:color-mix(in srgb,var(--success)12%,transparent);color:var(--success)}.challenge-card__difficulty--medium{background:color-mix(in srgb,var(--warning)12%,transparent);color:var(--warning)}.challenge-card__difficulty--hard{background:color-mix(in srgb,var(--danger)12%,transparent);color:var(--danger)}.challenge-card__title{color:var(--text-primary);font-size:15px;font-weight:600}.challenge-card__lesson,.challenge-card__body,.challenge-card__best{color:var(--text-secondary);font-size:13px}.challenge-card__points{color:var(--accent);font-family:var(--font-mono);font-size:12px}.challenge-card__status-label{color:var(--text-muted);text-transform:capitalize;font-size:12px}.quiz-session{flex-direction:column;gap:24px;min-height:calc(100vh - 80px);padding:32px 0 80px;display:flex}.quiz-session__header{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:0 4px;display:grid}.quiz-session__title{color:var(--text-primary);font-size:20px;font-weight:700}.quiz-session__progress,.quiz-session__timer{color:var(--text-muted);font-family:var(--font-mono);font-size:13px}.quiz-session__timer.is-danger{color:var(--danger)}.quiz-question{width:100%;max-width:760px;box-shadow:var(--shadow-sm);margin:0 auto}.quiz-question__meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.quiz-question__prompt{color:var(--text-primary);margin-bottom:18px;font-size:18px;line-height:1.6}.quiz-question__choices{flex-direction:column;gap:12px;display:flex}.quiz-choice{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);color:var(--text-primary);text-align:left;cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:12px;padding:16px 20px;transition:border-color .16s,background-color .16s,transform .12s,box-shadow .16s;display:grid;box-shadow:0 0 #0000}.quiz-choice:hover{background:var(--bg-elevated);border-color:var(--accent-border);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.quiz-choice:active{background:color-mix(in srgb,var(--accent)8%,var(--bg-elevated));transform:translateY(0)}.quiz-choice.is-selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent)24%,transparent)}.quiz-input-row{flex-direction:column;gap:8px;display:flex}.quiz-input-row--actions{margin-top:12px}.quiz-assembly{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-base);width:100%;min-height:200px;color:var(--text-primary);padding:14px}.quiz-fill-blank{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-family:var(--font-mono);margin-bottom:12px;padding:14px 16px;font-size:14px}.quiz-question__nav{grid-template-columns:120px minmax(0,1fr) 120px;align-items:center;gap:12px;margin-top:20px;display:grid}.quiz-action-button{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);min-height:40px;color:var(--text-primary);font-family:"Geist",var(--font-body);cursor:pointer;appearance:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;transition:border-color .15s,background-color .15s,color .15s,transform .12s,box-shadow .16s;display:inline-flex}.quiz-action-button:hover:not(:disabled){border-color:var(--accent-border);background:color-mix(in srgb,var(--accent)8%,var(--bg-elevated));box-shadow:var(--shadow-sm);transform:translateY(-1px)}.quiz-action-button:active:not(:disabled){transform:translateY(0)}.quiz-action-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.quiz-action-button--primary{border-color:var(--accent);background:var(--accent);color:var(--bg-base)}.quiz-action-button--primary:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover)}.quiz-action-button--secondary{color:var(--text-secondary)}.quiz-action-button--submit{min-width:180px}.quiz-page .learn-hero+.challenge-grid{margin-top:24px}.quiz-question__dots{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.quiz-dot{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;width:10px;height:10px}.quiz-dot.is-answered{border-color:var(--accent)}.quiz-dot.is-current{background:var(--accent);border-color:var(--accent);transform:scale(1.15)}.quiz-submit-row{margin-top:18px}.quiz-results__actions{gap:16px;margin-bottom:16px;display:flex}.quiz-review{flex-direction:column;gap:12px;display:flex}.quiz-review__item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-base);padding:16px}.quiz-review__header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.quiz-review__title{color:var(--text-primary);margin-bottom:10px;font-size:15px;line-height:1.5}.quiz-review__answer{color:var(--text-secondary);font-size:13px}.quiz-review__answer.is-correct{color:var(--success)}.quiz-review__answer.is-wrong{color:var(--warning)}.quiz-review__explanation{color:var(--text-muted);margin-top:10px;font-size:13px;line-height:1.6}.quiz-hero,.quizzes-hero,.quiz-page-header{margin-bottom:32px;padding-bottom:32px}.quiz-hero-card,.quizzes-header-card{margin-bottom:32px}.quiz-grid,.quiz-cards-grid,.quizzes-grid{gap:20px;padding-top:8px;padding-bottom:48px}.quiz-page,.quizzes-page,.quiz-container{padding-bottom:64px}.quiz-hero{border-radius:12px;margin-bottom:32px;padding:32px}.leaderboard-page__controls{justify-content:space-between;align-items:center;gap:16px;margin:24px 0 16px;display:flex}.leaderboard-tabs{gap:8px;display:flex}.leaderboard-tab{min-height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:0 12px}.leaderboard-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.leaderboard-search{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:min(320px,100%);min-height:38px;color:var(--text-primary);padding:0 12px}.leaderboard-page__list{flex-direction:column;gap:8px;display:flex}.leaderboard-page__row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-base);grid-template-columns:72px minmax(0,1fr) auto auto auto auto;align-items:center;gap:12px;min-height:44px;padding:0 14px;display:grid}.leaderboard-page__row.is-current{background:var(--accent-subtle)}.leaderboard-page__rank,.leaderboard-page__xp{font-family:var(--font-mono)}.leaderboard-page__rank{color:var(--text-muted);font-size:13px}.leaderboard-page__name{color:var(--text-primary);font-size:13px}.leaderboard-page__meta{color:var(--text-muted);font-size:12px}.leaderboard-page__xp{color:var(--accent);font-size:13px;font-weight:700}@media (width<=1200px){.leaderboard-sidebar{display:none}}@media (width<=900px){.challenge-grid,.labs-grid{grid-template-columns:1fr}}@media (width<=768px){.learn-page main.learn-shell,.learn-page main.learn-main,.challenges-page main.challenges-main,.quiz-page main.quiz-main,.labs-page main.labs-main,.leaderboard-page main.leaderboard-main{width:min(100%,100% - 32px);padding-top:24px}.learn-hero{margin-top:24px}.learn-content-wrapper{padding:0 16px}.learn-hero,.challenges-header,.challenge-filters{flex-direction:column;align-items:flex-start}.stats-strip{flex-direction:column}.curriculum-tree{max-width:100%;min-height:auto;overflow:visible}.cp-gate-group{margin-left:0}.cp-gate-card{flex-direction:column;align-items:flex-start}.cp-gate-card__action,.cp-gate-card__action-stack{justify-items:stretch;width:100%}.cp-gate-card__button,.cp-gate-card__link{justify-content:center;width:100%}.leaderboard-page__controls,.quiz-question__nav,.quiz-results__actions,.quiz-session__header{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.leaderboard-page__row{grid-template-columns:64px minmax(0,1fr)}}@media (width<=480px){.lesson-tree{padding:0 8px}.lesson-row__right{display:none}.lesson-row__title{font-size:14px}.lesson-row__badges{display:none}}.learn-sidebar{flex-direction:column;flex-shrink:0;gap:24px;width:280px;display:flex}.leaderboard-digest{margin-bottom:24px}.leaderboard-announcement{border:1px solid var(--accent-border);background:linear-gradient(135deg,var(--accent-subtle),var(--bg-elevated));border-radius:14px;align-items:center;gap:14px;margin-bottom:24px;padding:16px 18px;display:flex}.leaderboard-announcement__icon{background:var(--bg-base);border:1px solid var(--border);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.leaderboard-announcement__copy{gap:4px;display:grid}.leaderboard-announcement__copy strong{color:var(--text-primary);font-size:15px}.leaderboard-announcement__copy span{color:var(--text-muted);font-size:12px}.leaderboard-digest__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:18px;display:grid}.leaderboard-digest__metric{border:1px solid var(--border);background:var(--bg-elevated);border-radius:12px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.leaderboard-digest__metric span,.leaderboard-digest__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-family:Geist Mono,monospace;font-size:11px}.leaderboard-digest__metric strong,.leaderboard-digest__rows strong{color:var(--text-primary);font-size:16px}.leaderboard-digest__rows{gap:12px;margin-top:18px;display:grid}.leaderboard-digest__rows>div{gap:6px;display:grid}.leaderboard-digest__cta{margin-top:16px;display:inline-flex}.weekly-challenge-card{border:1px solid var(--accent);background:linear-gradient(135deg,var(--accent-subtle),var(--bg-elevated));border-radius:16px;margin-bottom:24px;padding:24px;position:relative;overflow:hidden}.weekly-challenge-card:before{content:"";border:1px solid color-mix(in srgb,var(--accent)24%,transparent);border-radius:inherit;pointer-events:none;animation:4s linear infinite weekly-card-shimmer;position:absolute;inset:0}@keyframes weekly-card-shimmer{0%{opacity:.45}50%{opacity:1}to{opacity:.45}}.weekly-challenge-card__eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-family:Geist Mono,monospace;font-size:11px}.weekly-challenge-card__reset,.weekly-challenge-card__meta{color:var(--text-muted);font-size:13px}.weekly-challenge-card__title{color:var(--text-primary);margin-top:18px;font-size:28px;font-weight:700;line-height:1.15}.weekly-challenge-card__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.weekly-challenge-card__stat{border:1px solid var(--border);background:var(--bg-surface);border-radius:12px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.weekly-challenge-card__stat span{color:var(--text-muted);font-size:12px}.weekly-challenge-card__stat strong{color:var(--text-primary);font-size:18px}.weekly-challenge-card__cta{margin-top:18px;display:inline-flex}.weekly-challenge-card__leaderboard-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:22px 0 10px;font-family:Geist Mono,monospace;font-size:11px}.weekly-challenge-card__row{border-bottom:1px solid var(--border);color:var(--text-secondary);grid-template-columns:44px 1fr 64px 64px;gap:12px;padding:10px 0;font-size:13px;display:grid}.weekly-challenge-card__row:last-child{border-bottom:none}.weekly-challenge-card__row--top-1{color:var(--warning)}.weekly-challenge-card__row--top-2{color:var(--accent)}.weekly-challenge-card__row--top-3{color:var(--success)}.learn-study-groups{gap:12px;display:grid}.learn-study-groups__list{gap:10px;display:grid}.learn-study-groups__item{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.learn-study-groups__name{color:var(--text-primary);font-weight:600}.learn-study-groups__meta{color:var(--text-muted);font-size:12px}.profile-app,.groups-app{gap:24px;display:grid}.profile-hero__avatar{border:1px solid var(--border);background:var(--bg-surface);width:76px;height:76px;color:var(--accent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex;overflow:hidden}.profile-hero__avatar-image{object-fit:cover;width:100%;height:100%}.profile-hero__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-family:Geist Mono,monospace;font-size:11px}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.profile-grid__wide{grid-column:1/-1}.profile-badges{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.profile-badge-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:12px;gap:8px;padding:14px;display:grid}.profile-badge-card--featured{border-color:var(--accent);background:color-mix(in srgb,var(--accent-subtle)60%,var(--bg-surface))}.profile-badge-card__icon{font-size:24px}.profile-badge-card__name{color:var(--text-primary);font-size:14px;font-weight:600}.profile-badge-card__meta{color:var(--text-muted);font-size:12px;line-height:1.5}.profile-activity-list{gap:10px;display:grid}.profile-activity-item{border-bottom:1px solid var(--border);grid-template-columns:88px 1fr;gap:12px;padding:12px 0;display:grid}.profile-activity-item:last-child{border-bottom:none}.profile-activity-item__type{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-family:Geist Mono,monospace;font-size:11px}.profile-activity-item__title{color:var(--text-primary);font-size:14px;font-weight:600}.profile-activity-item__meta{color:var(--text-muted);margin-top:4px;font-size:12px}.groups-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.groups-action-card{gap:14px;display:grid}.groups-form-row{align-items:center;gap:12px;display:flex}.groups-code-input{letter-spacing:.16em;text-transform:uppercase;font-family:Geist Mono,monospace}.groups-list,.group-card__members{gap:12px;display:grid}.group-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:12px;padding:16px}.group-card.is-active{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent)24%,transparent)}.group-card__header{justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.group-card__title{color:var(--text-primary);font-size:16px;font-weight:700}.group-card__meta,.group-detail__lead{color:var(--text-muted);font-size:13px}.group-member-card{align-items:center;gap:12px;display:flex}.group-member-card__avatar{background:var(--accent-subtle);width:34px;height:34px;color:var(--accent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.group-member-card__name{color:var(--text-primary);font-size:14px;font-weight:600}.group-member-card__meta{color:var(--text-muted);margin-top:3px;font-size:12px}.group-detail__toolbar{gap:10px;margin-bottom:16px;display:flex}.group-detail__table{gap:0;margin-top:16px;display:grid}.group-notification-banner{border:1px solid var(--accent);background:var(--accent-subtle);color:var(--text-secondary);border-radius:10px;padding:12px 14px;font-size:13px}.quiz-choice{appearance:none}.quiz-choice span:first-child{border:1px solid var(--border);background:var(--bg-base);width:20px;height:20px;color:var(--text-muted);border-radius:999px;justify-content:center;align-items:center;font-family:Geist Mono,monospace;font-size:11px;display:inline-flex}.quiz-choice.is-selected span:first-child{border-color:var(--accent);background:var(--accent);color:var(--bg-surface)}@media (width<=1199px){.learn-sidebar{width:100%}}@media (width<=768px){.groups-actions,.profile-grid,.weekly-challenge-card__stats{grid-template-columns:1fr}.weekly-challenge-card__row{grid-template-columns:36px 1fr 56px 56px}}
