/* Shared course shortcuts: visible without JavaScript, comfortable to tap. */
:is(.card-actions, .sidebar-tools) > a,
.page-intro .button-row > a.small-button,
.button-row > a[href$=".pdf"],
.button-row > a[download] {
  --action-tint: var(--sage);
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%206c-3-2-6-2-9-1v14c3-1%206-1%209%201%203-2%206-2%209-1V5c-3-1-6-1-9%201Z%22%2F%3E%3Cpath%20d%3D%22M12%206v14%22%2F%3E%3C%2Fsvg%3E");
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 52px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #d9e0d3;
  border-radius: 13px;
  background: var(--white);
  color: var(--ink);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
  text-align: left;
  touch-action: manipulation;
  transition: background-color .16s, border-color .16s, box-shadow .16s;
}
:is(.card-actions, .sidebar-tools) > a::before,
.page-intro .button-row > a.small-button::before,
.button-row > a[href$=".pdf"]::before,
.button-row > a[download]::before {
  content: "";
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  background: var(--action-tint) var(--action-icon) center / 19px 19px no-repeat;
}
.card-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  container-type: inline-size;
  gap: 8px;
  padding-top: 20px;
}
.card-actions > a[download] {
  grid-column: 1 / -1;
  background-color: #f7f5ee;
  border-style: dashed;
  font-weight: 400;
}
.card-actions > a.card-open {
  grid-column: 1 / -1;
  justify-content: center;
  margin: 4px 0 0;
  border-color: var(--ink);
  background: var(--ink);
  color: var(--white);
  font-size: 15px;
}
.card-actions > a.card-open::before { background-color: var(--sage); }
.sidebar-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}
.page-intro .button-row { gap: 8px; }
@media (hover: hover) {
  :is(.card-actions, .sidebar-tools) > a:hover,
  .page-intro .button-row > a.small-button:hover,
  .button-row > a[href$=".pdf"]:hover,
  .button-row > a[download]:hover {
    border-color: #8c9e89;
    background-color: #f0f4ea;
    color: var(--ink);
    box-shadow: 0 3px 9px #223f370b;
  }
  .card-actions > a.card-open:hover {
    background-color: #345348;
    color: var(--white);
    border-color: #345348;
  }
}
@container (max-width: 340px) {
  .card-actions > a { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .course-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 480px) and (max-width: 700px) {
  .sidebar-tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  :is(.card-actions, .sidebar-tools) > a,
  .page-intro .button-row > a.small-button,
  .button-row > a[href$=".pdf"],
  .button-row > a[download] { transition: none; }
}
@media print {
  .card-actions { display: none; }
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$="notes.html"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%2215%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%208h8M8%2012h8M8%2016h5M3%207h3M3%2012h3M3%2017h3%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--butter);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$="practice.html"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%204%205%205M4%2020l4-1L21%206a2%202%200%200%200-3-3L5%2016l-1%204Z%22%2F%3E%3Cpath%20d%3D%22M14%2020h7%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--peach);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$="autoevaluation.html"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%224%22%20width%3D%2214%22%20height%3D%2217%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%203h6v3H9zM8%2012l2%202%205-5M9%2018h6%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--lavender);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$="presentation.html"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m10%208%204%202-4%202V8ZM12%2016v5M7%2021h10%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--mist);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$="schemas.html"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%222%22%20width%3D%228%22%20height%3D%226%22%20rx%3D%221.5%22%2F%3E%3Crect%20x%3D%222%22%20y%3D%2216%22%20width%3D%227%22%20height%3D%226%22%20rx%3D%221.5%22%2F%3E%3Crect%20x%3D%2215%22%20y%3D%2216%22%20width%3D%227%22%20height%3D%226%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M12%208v4M5.5%2016v-4h13v4%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--sage);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[href$=".pdf"] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8l-6-6ZM14%202v6h6M8%2013h8M8%2017h5%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: var(--peach);
}

:is(.card-actions, .sidebar-tools, .button-row) > a[download] {
  --action-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23223f37%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%204h12M6%208h12M6%2012h6M6%2020h12M16%2012v5m-3-3%203%203%203-3%22%2F%3E%3C%2Fsvg%3E");
  --action-tint: #e9e5dc;
}
