/* Course hub */
.course-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.course-card{display:block;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(17,32,53,.035);transition:.18s ease}.course-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.course-card h3{font-family:Georgia,serif;font-size:1.35rem;line-height:1.25;margin:13px 0 10px}.course-card p{color:var(--muted);margin:0 0 18px}.course-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.course-card-meta{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.course-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:#eef6f3;color:#245b54;border:1px solid #bfd3ce;font-size:.72rem;font-weight:800;letter-spacing:.04em}.course-head .course-status{margin-bottom:16px}.course-meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:24px;color:var(--muted)}.course-meta span{display:grid;gap:2px}.course-meta strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.course-table{width:100%;border-collapse:collapse;min-width:690px}.course-table th,.course-table td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:top}.course-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);background:#f4f8f6}.course-table td:first-child{font-weight:800;width:72px}.course-table tr:last-child td{border-bottom:0}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.resource-card{display:grid;gap:4px;text-decoration:none;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--surface)}.resource-card strong{color:var(--ink)}.resource-card span{font-size:.86rem;color:var(--muted)}.muted-card{opacity:.78}.teaching-cta{margin-top:28px}@media(max-width:950px){.course-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.course-cards,.resource-grid{grid-template-columns:1fr}}.note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.note-card{display:grid;gap:7px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;transition:.18s ease}.note-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.note-card strong{font-family:Georgia,serif;font-size:1.15rem}.note-card>span:last-child{color:var(--accent);font-weight:800;font-size:.84rem}.note-section{font-size:.73rem;font-weight:800;color:var(--accent);letter-spacing:.08em;text-transform:uppercase}.lead-note{font-family:Georgia,serif;font-size:1.15rem;color:#293747}.web-note-section{padding:24px 0;border-top:1px solid var(--line)}.web-note-section:first-of-type{margin-top:12px}.formula-grid{display:grid;gap:10px}.formula-card{display:grid;grid-template-columns:minmax(150px,.35fr) 1fr;gap:15px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f8faf9}.formula-card code{white-space:normal;color:#234b47;font-size:.95rem}@media(max-width:700px){.note-grid{grid-template-columns:1fr}.formula-card{grid-template-columns:1fr}}

/* Course and teaching archive refinements */
.crumb{color:var(--accent);text-decoration:none;font-weight:800}
.course-section{margin:0 0 44px}.course-section:first-child h2{margin-top:0}
.course-section .resource-card{max-width:600px}
.course-head .course-status{margin-top:8px}
.course-head h1{margin-top:8px}
.material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.material-card{display:block;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px}
.material-card h3{font-family:Georgia,serif;margin:0 0 8px;font-size:1.1rem}.material-card p{color:var(--muted)}
.material-open{font-weight:800;color:var(--accent)}
.material-document{padding:18px 22px;border:1px solid var(--line);background:var(--surface);border-radius:14px}
.material-document pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem;line-height:1.55}
@media(max-width:700px){.material-grid{grid-template-columns:1fr}}
