:root{color-scheme:light;font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;--bg: radial-gradient(circle at 14% 8%, rgba(15, 111, 143, .12), transparent 28rem), radial-gradient(circle at 84% 0%, rgba(191, 125, 22, .12), transparent 24rem), linear-gradient(180deg, #fffaf0 0%, #f3ede1 100%);--panel: #fffdf8;--panel-hover: #f1eadf;--card: #ffffff;--card-elevated: #fffffc;--border: #ded5c7;--text: #1f2933;--muted: #667085;--accent: #0f6f8f;--accent-strong: #0b5d78;--accent-soft: rgba(15, 111, 143, .12);--accent-border: rgba(15, 111, 143, .28);--topbar-bg: rgba(255, 253, 248, .92);--code-bg: #edf3f5;--warning-bg: rgba(191, 125, 22, .12);--warning-border: rgba(191, 125, 22, .32);--warning-text: #7a4700;--button-text: #ffffff;--disabled-bg: #ece6dc;--disabled-text: #8a8174;--error: #a64234;--shadow-soft: 0 1.25rem 3.5rem rgba(80, 65, 42, .11);--shadow-row: 0 .65rem 1.6rem rgba(80, 65, 42, .08)}*{box-sizing:border-box}html,body{min-height:100%;margin:0;background:var(--bg);color:var(--text)}body{min-width:20rem}a{color:inherit}h1,h2,h3,p{margin:0}button,input,textarea{font:inherit}.app-shell{width:min(76rem,100%);margin:0 auto;padding:2.25rem 1rem 3.5rem}.topbar{position:sticky;top:0;z-index:10;display:flex;gap:1rem;align-items:center;width:100%;border-bottom:.0625rem solid var(--accent-border);padding:.75rem clamp(1rem,4vw,2rem);background:var(--topbar-bg);box-shadow:0 .45rem 1.5rem #1f29330f;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem)}.topbar-menu{display:flex;flex:1;align-items:center;gap:1rem;min-width:0}.topbar-brand,.topbar-link,.topbar-menu-button{border:0;color:inherit;background:transparent;cursor:pointer}.topbar-brand{border-radius:999rem;padding:.45rem .7rem;color:var(--accent);font-weight:800;letter-spacing:.03em;text-transform:uppercase}.topbar-brand:hover,.topbar-brand:focus-visible,.topbar-brand.active{color:var(--text);background:var(--accent-soft);outline:none}.topbar-nav,.topbar-auth{display:flex;align-items:center;gap:.5rem}.topbar-nav{flex:1;flex-wrap:wrap;justify-content:flex-start}.topbar-link{border-radius:999rem;padding:.5rem .7rem;color:var(--muted)}.topbar-link:hover,.topbar-link:focus-visible,.topbar-link.active{color:var(--text);background:var(--panel-hover);outline:none}.topbar-auth{margin-left:auto;justify-content:flex-end;color:var(--muted);font-size:.9rem}.topbar-auth p{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-auth-muted{display:none}.topbar-menu-button{display:none;width:2.5rem;height:2.5rem;margin-left:auto;align-items:center;justify-content:center;border-radius:999rem;flex-direction:column;gap:.25rem}.topbar-menu-button span{width:1.1rem;height:.125rem;border-radius:999rem;background:currentColor}.topbar-menu-button:hover,.topbar-menu-button:focus-visible{color:var(--text);background:var(--panel-hover);outline:none}.page-header,.page-section,.panel,.page-message{border:.0625rem solid var(--border);background:var(--panel);border-radius:1rem;box-shadow:var(--shadow-soft)}.page-header,.page-section,.page-message{padding:1.25rem}.page-header{margin-bottom:1rem;border-color:var(--accent-border);background:linear-gradient(135deg,rgba(15,111,143,.09),transparent 42%),var(--panel)}.page-header h1,.thread-header h1,.page-message h1{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.1}.page-kicker{margin-bottom:.35rem;color:var(--accent);font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.page-section{margin-bottom:1rem}.section-header{margin-bottom:.9rem}.section-header h2,.subsection-header h2{font-size:1.1rem}.subsection-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.card-grid,.stack,.reply-list{display:grid;gap:.75rem}.card-grid,.two-column-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card,.discussion-preview-card,.activity-card,.reply-card{border:.0625rem solid var(--border);border-radius:.9rem;background:var(--card-elevated)}.card,.activity-card,.reply-card{padding:1rem}.course-card-button,.post-card-button{width:100%;cursor:pointer;text-align:left;color:inherit}.post-card-button{display:grid;gap:.55rem;min-height:13rem;align-content:start;border-color:#0f6f8f38;background:linear-gradient(145deg,rgba(15,111,143,.09),transparent 58%),var(--card-elevated);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.post-card-author-row{display:flex;align-items:center;gap:.55rem}.post-card-main{display:grid;min-width:0;gap:.25rem}.post-card-author{color:var(--muted);font-size:.82rem}.course-card-button:hover,.course-card-button:focus-visible,.post-card-button:hover,.post-card-button:focus-visible{background:var(--panel-hover);box-shadow:var(--shadow-row);transform:translateY(-.0625rem);outline:none}.card h3,.discussion-preview-card h3,.activity-card h3{margin-bottom:.35rem;font-size:1rem}.activity-list{display:grid;gap:.75rem}.discussion-create-panel{margin-bottom:1rem;border:.0625rem solid var(--accent-border);border-radius:.75rem;padding:1rem;background:var(--accent-soft)}.discussion-preview-card{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(6.5rem,auto);gap:.9rem;align-items:center;padding:.95rem;cursor:pointer;text-align:left;color:inherit;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.activity-card-button{width:100%;cursor:pointer;text-align:left;color:inherit}.discussion-preview-card:hover,.discussion-preview-card:focus-visible,.activity-card-button:hover,.activity-card-button:focus-visible{background:var(--panel-hover);box-shadow:var(--shadow-row);transform:translateY(-.0625rem);outline:none}.discussion-preview-card.compact{grid-template-columns:1fr;gap:.65rem;align-items:stretch;padding:.9rem .95rem}.avatar{display:inline-grid;width:2.75rem;height:2.75rem;place-items:center;flex:0 0 auto;border:.125rem solid var(--panel);border-radius:999rem;color:#fff;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent),var(--accent);box-shadow:0 .35rem .8rem #0f6f8f2e;font-size:.9rem;font-weight:800;object-fit:cover}.avatar-small{width:2.2rem;height:2.2rem;font-size:.75rem}.topic-main{display:grid;min-width:0;gap:.4rem}.topic-title-row{display:flex;align-items:center;gap:.55rem;min-width:0}.topic-title-row h1,.topic-title-row h3{min-width:0}.topic-title-row h3{margin-bottom:0}.status-pill,.topic-badge{display:inline-flex;width:max-content;align-items:center;border-radius:999rem;white-space:nowrap;font-size:.72rem;font-weight:750;letter-spacing:.02em;text-transform:uppercase}.status-pill{border:.0625rem solid rgba(15,111,143,.18);padding:.12rem .45rem;color:var(--accent-strong);background:#0f6f8f14}.topic-excerpt{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.93rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.topic-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;color:var(--muted);font-size:.82rem}.topic-meta-row-spaced{margin-top:.75rem}.topic-badge{border:.0625rem solid var(--border);padding:.15rem .42rem;color:#5f513f;background:#f7efe2}.post-card-excerpt{display:-webkit-box;overflow:hidden;color:var(--muted);-webkit-box-orient:vertical;-webkit-line-clamp:4}.topic-stats{display:grid;gap:.3rem;justify-items:end;color:var(--muted);font-size:.82rem;text-align:right}.topic-stats strong{display:block;color:var(--text);font-size:1.25rem;line-height:1}.discussion-compact-meta{display:flex;min-width:0;align-items:center;gap:.5rem;color:var(--muted);font-size:.82rem}.discussion-compact-author{overflow:hidden;color:var(--text);font-weight:750;text-overflow:ellipsis;white-space:nowrap}.discussion-compact-preview{display:grid;min-width:0;gap:.25rem}.discussion-compact-title{overflow:hidden;color:var(--text);font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.discussion-preview-card.compact .topic-excerpt{-webkit-line-clamp:2}.discussion-compact-replies{color:var(--muted);font-size:.78rem;font-weight:700}.muted-copy,.meta-line,.empty-state{color:var(--muted)}.muted-copy{max-width:44rem}.meta-line{margin-top:.5rem;font-size:.9rem}.empty-state{padding:.25rem 0}.back-link,.secondary-link,.secondary-button,.compose-button{display:inline-flex;align-items:center;justify-content:center;border-radius:.65rem;border:.0625rem solid var(--border);padding:.65rem .85rem;text-decoration:none}.back-link{margin-bottom:1rem;background:transparent;color:var(--text);cursor:pointer}.auth-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;border:.0625rem solid var(--accent-border);border-radius:.75rem;padding:.75rem;color:var(--muted);background:var(--accent-soft)}.secondary-button{flex:0 0 auto;color:var(--accent);background:var(--panel);cursor:pointer}.secondary-button:hover,.secondary-button:focus-visible,.back-link:hover,.back-link:focus-visible{background:var(--panel-hover);outline:none}.thread-view{display:grid;gap:1rem}.panel{padding:1.25rem}.thread-header{margin-bottom:1rem}.discussion-detail-panel{display:grid;gap:.95rem}.discussion-detail-header{display:grid;gap:.7rem;margin-bottom:0}.discussion-detail-meta{display:flex;min-width:0;align-items:center;gap:.55rem;color:var(--muted);font-size:.86rem}.discussion-detail-replies{width:max-content;color:var(--muted);font-size:.82rem;font-weight:750}.forum-thread-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:start}.forum-thread-title{min-width:0}.thread-count-card{display:grid;min-width:5rem;justify-items:center;border:.0625rem solid var(--accent-border);border-radius:.85rem;padding:.7rem;color:var(--muted);background:var(--accent-soft);font-size:.8rem;text-transform:uppercase}.thread-count-card strong{color:var(--text);font-size:1.5rem;line-height:1}.post-hero-panel{overflow:hidden;border-color:var(--accent-border);background:radial-gradient(circle at 95% 0%,rgba(15,111,143,.16),transparent 15rem),radial-gradient(circle at 0% 100%,rgba(191,125,22,.12),transparent 14rem),var(--panel)}.post-hero{display:grid;gap:.9rem}.post-hero-meta{display:flex;align-items:center;gap:.65rem;min-width:0}.post-hero-summary{max-width:none;color:var(--muted);font-size:1.08rem}.post-reading-panel{width:100%;padding:clamp(1.25rem,3vw,2rem)}.panel-actions{margin-top:1rem}.thread-copy{display:grid;gap:.85rem}.reply-author{color:var(--text);font-weight:750}.reply-card{display:grid;gap:.8rem}.reply-meta-row{display:flex;min-width:0;align-items:center;gap:.55rem;color:var(--muted);font-size:.86rem}.reply-copy{min-width:0}.outline-list,.lesson-list{display:grid;gap:1rem}.outline-chapter h3{margin-bottom:.75rem;font-size:1rem}.lesson-row{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:.75rem;align-items:start;border-top:.0625rem solid var(--border);padding-top:.75rem}.lesson-row-button{width:100%;cursor:pointer;text-align:left;color:inherit;background:transparent}.lesson-row-button:hover,.lesson-row-button:focus-visible{background:var(--panel-hover);outline:none;border-radius:.5rem}.lesson-row:first-child{border-top:0;padding-top:0}.lesson-index{color:var(--muted);font-size:.9rem}.lesson-title{font-weight:600}.lesson-summary{margin-top:.35rem;color:var(--muted)}.markdown-content{display:grid;gap:.85rem}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{line-height:1.15}.markdown-content h1{font-size:1.8rem}.markdown-content h2{font-size:1.35rem}.markdown-content h3{font-size:1.1rem}.markdown-content p,.markdown-content li,.markdown-content blockquote{color:var(--text)}.markdown-content ul,.markdown-content ol{margin:0;padding-left:1.4rem}.markdown-content li+li{margin-top:.35rem}.markdown-content code{border-radius:.35rem;padding:.12rem .35rem;background:var(--code-bg);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.92em}.markdown-content pre{overflow-x:auto;margin:0;border:.0625rem solid var(--border);border-radius:.75rem;padding:.85rem .95rem;background:var(--code-bg)}.markdown-content pre code{padding:0;background:transparent}.markdown-content blockquote{margin:0;border-left:.2rem solid var(--accent);padding-left:.9rem}.markdown-content a{color:var(--accent)}.markdown-content img{max-width:100%;border:.0625rem solid var(--border);border-radius:.75rem}.markdown-content hr{width:100%;height:.0625rem;margin:0;border:0;background:var(--border)}.compose-box{display:grid;gap:.85rem}.asset-list{display:grid;gap:.75rem}.asset-link{display:grid;gap:.2rem;border:.0625rem solid var(--border);border-radius:.75rem;padding:.85rem;color:inherit;background:var(--card);text-decoration:none}.asset-link:hover,.asset-link:focus-visible{background:var(--panel-hover);outline:none}.asset-link .meta-line{margin-top:0}.signin-page{display:grid}.signin-panel{max-width:42rem}.signin-actions{display:grid;gap:.85rem;justify-items:start}.signin-callout{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:.0625rem solid var(--warning-border);border-radius:.75rem;padding:.75rem;color:var(--warning-text);background:var(--warning-bg)}.form-label{color:var(--muted);font-size:.9rem;font-weight:600}.compose-input,.token-input{width:100%;border:.0625rem solid var(--border);border-radius:.75rem;padding:.85rem .95rem;color:var(--text);background:var(--card)}.compose-input{min-height:9rem;resize:vertical}.compose-input:focus,.token-input:focus{border-color:var(--accent);outline:none}.compose-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.compose-button{border-color:var(--accent);color:var(--button-text);background:var(--accent);cursor:pointer;font-weight:700;transition:background .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.compose-button:hover:not(:disabled),.compose-button:focus-visible:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong);outline:none}.compose-button:disabled{border-color:var(--border);color:var(--disabled-text);background:var(--disabled-bg);cursor:not-allowed;opacity:.72}.compose-error{color:var(--error)}.secondary-link{color:var(--accent)}@media(max-width:48rem){.topbar{display:grid;grid-template-columns:auto auto;gap:.75rem}.topbar-menu-button{display:inline-flex}.topbar-menu{display:none;grid-column:1 / -1;width:100%;border-top:.0625rem solid var(--border);padding-top:.75rem}.topbar-menu.open{display:grid;gap:.75rem}.topbar-nav,.topbar-auth{width:100%;justify-content:flex-start}.topbar-nav{align-items:stretch;flex-direction:column}.topbar-link{width:100%;text-align:left}.topbar-auth{margin-left:0}.card-grid,.two-column-grid{grid-template-columns:1fr}.discussion-preview-card{grid-template-columns:auto minmax(0,1fr)}.discussion-preview-card.compact{grid-template-columns:1fr}.topic-stats{grid-column:2;justify-items:start;text-align:left}.topic-title-row{flex-wrap:wrap}.forum-thread-header{grid-template-columns:auto minmax(0,1fr)}.thread-count-card{grid-column:1 / -1;width:100%;justify-items:start}.compose-actions,.auth-bar,.signin-callout,.subsection-header{align-items:flex-start;flex-direction:column}}
