@charset "UTF-8";
/* Site-specific CSS for CS765 Fall 2026, loaded after the theme's main.scss
   via params.customCSS in hugo.toml. */
/* Inter: compact, high-x-height sans-serif used for the calendar table
   (.calendar-table, below) instead of the site's serif body font, so more
   fits per cell while staying legible. Loaded here via @import rather than
   editing the theme's head partial, matching this file's role as
   site-specific CSS layered on top of the theme. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap");
/* Calendar page: per-module row coloring for the table/row/cell shortcode
   set (content/pages/calendar.md). Class names are calendar-colors-x-y,
   where x is the module number (0-4; 5 reuses module 0's gray) and y is
   the lightness level within the module (0 = the module's title/note row,
   darkest background + light bold text; 1-3 = progressively darker data
   rows). All 4 levels are defined for every module even where the
   calendar doesn't currently use every level. */
.calendar-table {
  font-family: 'Inter', Helvetica, Arial, sans-serif; }

/* Auto table layout sizes the Week column just under what "Reading N-N"
   plus the link arrow needs, so it wraps on nearly every row. Give it a
   floor wide enough to hold that in one line. */
.calendar-table td:first-child {
  min-width: 8.5em; }

/* The theme's default link color (UW red, #c5050c) doesn't have reliable
   contrast against the calendar's module background tints, and links here
   are otherwise distinguished from surrounding text by color alone (the
   theme sets text-decoration: none globally). Rather than rely on a color
   difference, calendar links match the surrounding (black) text and instead
   get a trailing chain-link icon as a color-independent "this is a link"
   cue (Feather Icons "link", MIT licensed). */
.calendar-table a {
  color: inherit;
  text-decoration: none; }

.calendar-table a::after {
  content: "";
  /* inline, not inline-block: inline-block (and other replaced/atomic
	   inline boxes) get a line-break opportunity before them even with no
	   whitespace in between, which stranded the icon alone on the next
	   line. A plain inline box sized via padding + background instead
	   flows with the text like a character would. */
  display: inline;
  margin-left: 0.2em;
  padding-left: 1.05em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E") no-repeat left center/1.05em 1.05em; }

.calendar-header {
  background-color: white;
  color: black;
  font-weight: bold; }

/* Module 0 / 5 — gray */
.calendar-colors-0-0,
.calendar-colors-5-0 {
  background-color: #595959;
  color: white;
  font-weight: bold; }

.calendar-colors-0-1,
.calendar-colors-5-1 {
  background-color: #F2F2F2;
  color: black; }

.calendar-colors-0-2,
.calendar-colors-5-2 {
  background-color: #D9D9D9;
  color: black; }

.calendar-colors-0-3,
.calendar-colors-5-3 {
  background-color: #BFBFBF;
  color: black; }

/* Module 1 — green */
.calendar-colors-1-0 {
  background-color: #375623;
  color: white;
  font-weight: bold; }

.calendar-colors-1-1 {
  background-color: #E2EFDA;
  color: black; }

.calendar-colors-1-2 {
  background-color: #C6E0B4;
  color: black; }

.calendar-colors-1-3 {
  background-color: #A9D18E;
  color: black; }

/* Module 2 — turquoise */
.calendar-colors-2-0 {
  background-color: #0B4F49;
  color: white;
  font-weight: bold; }

.calendar-colors-2-1 {
  background-color: #D6F5F1;
  color: black; }

.calendar-colors-2-2 {
  background-color: #B3ECE5;
  color: black; }

.calendar-colors-2-3 {
  background-color: #8FE3D9;
  color: black; }

/* Module 3 — purple */
.calendar-colors-3-0 {
  background-color: #6A1F66;
  color: white;
  font-weight: bold; }

.calendar-colors-3-1 {
  background-color: #F3D9F0;
  color: black; }

.calendar-colors-3-2 {
  background-color: #EAC0E6;
  color: black; }

.calendar-colors-3-3 {
  background-color: #E0A6DB;
  color: black; }

/* Module 4 — grayblue */
.calendar-colors-4-0 {
  background-color: #1F3A5F;
  color: white;
  font-weight: bold; }

.calendar-colors-4-1 {
  background-color: #DCE6F1;
  color: black; }

.calendar-colors-4-2 {
  background-color: #C3D5E8;
  color: black; }

.calendar-colors-4-3 {
  background-color: #A9C4DE;
  color: black; }

/* Reading kind pills, used by the `reading` and `reading-pill` shortcodes
   (layouts/_shortcodes/), labels/grouping from data/readingkinds.yaml.

   Sizing is in em (scales with whatever text the pill sits in) and kept
   deliberately short of a normal line box (this site's body text runs
   1.1rem/1.48, an ~1.63rem line): a ~1.24rem pill, centered with
   vertical-align rather than sitting on the baseline, rides inside the
   line instead of stretching it — so a reading's citation can still wrap
   to multiple lines without ragged spacing on the line the pill starts. */
.reading-pill {
  display: inline-block;
  font-size: 0.78em;
  line-height: 1.3;
  padding: 0.05em 0.6em;
  border-radius: 1em;
  white-space: nowrap;
  vertical-align: 0.05em; }

/* backbone is the spine of the course — the one kind that should read as
   solid/urgent rather than a quiet tint, so it alone gets a filled pill. */
.reading-pill--backbone {
  background-color: #9c3a1e;
  color: #ffffff;
  font-weight: 700; }

.reading-pill--core {
  background-color: #dbe7f6;
  color: #1a4a86;
  font-weight: 600; }

.reading-pill--advanced {
  background-color: #ecdff4;
  color: #6a3d8e;
  font-weight: 600; }

/* shared by exp-historic and exp-modern (data/readingkinds.yaml "group") */
.reading-pill--exemplar {
  background-color: #f6e8c8;
  color: #7a5a0e;
  font-weight: 600; }

.reading-pill--optional {
  background-color: #e7e5de;
  color: #55524a;
  font-weight: 600; }

.reading-pill--resource {
  background-color: #d8eeed;
  color: #1c6f6f;
  font-weight: 600; }
