
.academy-page .site-nav, .category-page .site-nav, .module-page .site-nav { gap: 16px; }
.academy-hero, .category-hero, .module-hero { max-width: var(--content-width); margin: 0 auto; padding: 28px 24px 8px; position: relative; z-index: 2; }
.academy-hero .eyebrow, .category-hero .eyebrow, .module-hero .eyebrow { margin-bottom: 14px; }
.academy-hero h1, .category-hero h1, .module-hero h1 { margin: 0 0 18px; font-size: clamp(2.4rem, 4vw, 4.5rem); line-height: 0.98; letter-spacing: -0.05em; }
.academy-hero p, .category-hero p, .module-hero p { color: var(--muted); line-height: 1.8; max-width: 880px; }
.academy-meta, .academy-chip-row { display:flex; flex-wrap:wrap; gap:10px; }
.academy-chip, .academy-stat, .academy-card-meta, .module-no, .module-meta, .breadcrumb a, .breadcrumb span { padding: 8px 12px; border-radius: 999px; border:1px solid rgba(143,255,122,0.12); background: rgba(255,255,255,0.03); color: var(--signal-3); font-family: var(--font-mono); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.academy-meta { margin-top: 22px; }
.academy-toolbar, .academy-grid-wrap, .academy-content-wrap, .category-layout, .module-layout, .academy-section { max-width: var(--content-width); margin:0 auto; padding-left:24px; padding-right:24px; position:relative; z-index:2; }
.academy-toolbar { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:22px; padding-top:20px; }
.academy-search-panel, .academy-stats-panel, .academy-section .panel, .module-content-card, .module-side-card { padding:22px; overflow:hidden; }
.academy-search-label { display:block; margin-bottom:12px; color:var(--signal); font-family: var(--font-mono); font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; }
.academy-search-input { width:100%; min-height:56px; padding:16px 18px; border-radius:16px; border:1px solid rgba(143,255,122,.14); background: rgba(4,9,4,.82); color: var(--text); font:inherit; outline:none; }
.academy-search-input:focus { border-color: rgba(168,255,96,.32); box-shadow:0 0 0 4px rgba(168,255,96,.08); }
.academy-search-hint { margin:14px 0 0; color: var(--muted); }
.academy-stats-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.academy-stat { display:flex; flex-direction:column; gap:10px; border-radius:16px; }
.academy-stat strong { font-size:1.5rem; letter-spacing:-.04em; color:var(--text); }
.academy-section { padding-top:28px; }
.academy-section-head { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px; }
.academy-section-head h2 { margin:0; font-size:1.5rem; }
.academy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.academy-card, .module-card { padding:22px; position:relative; overflow:hidden; background: linear-gradient(180deg, rgba(12,18,12,.94), rgba(8,12,8,.98)); border:1px solid rgba(143,255,122,.1); box-shadow:0 14px 32px rgba(0,0,0,.2); }
.academy-card::before, .module-card::before, .module-content-card::before, .module-side-card::before { content:''; position:absolute; inset:0; background: radial-gradient(circle at top right, rgba(168,255,96,.08), transparent 34%); pointer-events:none; }
.academy-card h3, .module-card h3 { position:relative; margin:12px 0 12px; font-size:1.2rem; line-height:1.25; }
.academy-card h3 a, .module-card h3 a { color:var(--text); }
.academy-card p, .module-card p, .module-content-card p, .module-side-card p { position:relative; margin:0 0 14px; color:var(--muted); line-height:1.8; }
.module-card-top { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.category-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; padding-top:24px; }
.module-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; padding-top:24px; }
.module-content-card, .module-side-card { position:relative; background: var(--panel-strong); border:1px solid rgba(143,255,122,.1); border-radius:22px; box-shadow: var(--shadow); }
.module-content-card .imported-note h1 { font-size:1.55rem; margin:0 0 18px; }
.module-content-card .imported-note h3 { margin:26px 0 12px; color:var(--signal-3); font-size:1.08rem; letter-spacing:.02em; }
.module-content-card .imported-note h4 { margin:18px 0 10px; color:var(--signal-2); font-size:.98rem; }
.module-content-card .imported-note p, .module-content-card .imported-note li { color:var(--muted); line-height:1.82; }
.module-content-card .imported-note ul, .module-content-card .imported-note ol { padding-left:20px; }
.module-content-card .imported-note pre { margin:14px 0; padding:16px; border-radius:16px; background: rgba(2,6,2,.92); border:1px solid rgba(143,255,122,.12); overflow:auto; color:#e9ffd7; font-family: var(--font-mono); font-size:.88rem; line-height:1.6; white-space:pre-wrap; word-break:break-word; }
.module-content-card .imported-note code { font-family: var(--font-mono); }
.module-content-card .imported-note a { color:var(--signal-2); text-decoration:underline; }
.module-side-card h3 { margin:0 0 12px; font-size:1rem; }
.module-side-list, .resource-list { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.module-side-list li a, .resource-list li a { display:block; padding:12px 14px; border-radius:14px; border:1px solid rgba(143,255,122,.1); background:rgba(255,255,255,.02); color:var(--text); }
.module-side-list small, .resource-list small { display:block; margin-top:4px; color:var(--muted); }
.breadcrumb { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.academy-empty { padding:26px 22px; color:var(--muted); text-align:center; }
.home-surface-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.home-surface-card { padding:20px; position:relative; }
.home-surface-card h3 { margin:8px 0 10px; font-size:1.1rem; }
.home-surface-card p { margin:0 0 12px; color:var(--muted); line-height:1.75; }
.surface-link-list { display:grid; gap:8px; }
.surface-link-list a { color:var(--signal-2); }
@media (max-width: 1100px) { .academy-toolbar, .category-layout, .module-layout { grid-template-columns:1fr; } .academy-grid, .home-surface-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px) { .academy-hero, .category-hero, .module-hero, .academy-toolbar, .academy-grid-wrap, .academy-content-wrap, .category-layout, .module-layout, .academy-section { padding-left:18px; padding-right:18px; } .academy-grid, .home-surface-grid, .academy-stats-grid { grid-template-columns:1fr; } }
