.ct-profile,.ct-section{color:var(--text,var(--ink));letter-spacing:0;min-width:0}
.ct-section{margin:24px 0;padding:16px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none;box-shadow:none;scroll-margin-top:75px}
.ct-section h2{font-size:18px}.ct-section h2 small{font-size:13px;font-weight:400}
.ct-muted,.ct-note{color:var(--muted)}.ct-note,.ct-period{font-size:12px;line-height:1.65;margin:8px 0;overflow-wrap:anywhere}
.ct-row{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px 12px;padding:12px 0;border-top:1px solid var(--line);align-items:start}
.ct-course{font-size:22px;font-weight:700;line-height:1.2;text-align:center}.ct-course small{display:block;font-size:10px;font-weight:400;margin-top:4px}
.ct-assignment{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px;min-width:0;font-size:13px;line-height:1.55}
.ct-assignment strong{font-size:14px;overflow-wrap:anywhere}.ct-assignment>small{flex-basis:100%;font-size:11px}
.ct-status{font-size:11px;color:var(--good,var(--hit))}
.ct-results{grid-column:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:4px}
.ct-results>div{min-width:0}.ct-results dt{font-size:11px;color:var(--muted)}.ct-results dd{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;margin:2px 0 0;white-space:nowrap}.ct-results dd small{font-size:10px;font-weight:400}
.ct-link{display:inline-block;min-height:36px;padding:8px 0;color:var(--accent);font-size:13px;text-decoration:underline;text-underline-offset:3px}
.ct-course-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:16px 0}.ct-course-links a{padding:10px 0;color:var(--accent);font-size:14px;text-decoration:underline}
.ct-table-wrap{overflow-x:auto}.ct-table{border-collapse:collapse;width:100%;min-width:440px;font-size:13px}.ct-table th,.ct-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:right}.ct-table th:first-child{text-align:left;max-width:220px;overflow-wrap:anywhere}.ct-table th small{display:block;font-weight:400;font-size:11px;color:var(--muted)}.ct-table caption{text-align:left;font-size:12px;color:var(--muted);padding:8px 0}.ct-table tbody th{font-weight:500}
@media(min-width:760px){.ct-profile:not(.ct-compact) .ct-row{grid-template-columns:42px minmax(0,1fr) 280px}.ct-profile:not(.ct-compact) .ct-results{grid-column:3}}
