/* Planurile de studiu: navigarea secundară (servită global pentru #teaching și #curriculum), filtre, listă, stări. Consumă tokenii din tokens.css și componentele comune din components.css (.chip, .empty, .button, .text-link). */
.learning-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-6); margin: 0 0 var(--space-6); padding: var(--space-1) 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.learning-links a { min-height: var(--control-size); display: inline-flex; align-items: center; font-size: var(--type-ui); color: var(--muted); position: relative; }
.learning-links a:hover, .learning-links a[aria-current=page] { color: var(--blue); }
.learning-links a[aria-current=page]::after { content: ''; height: 2px; position: absolute; left: 0; right: 0; bottom: 0; background: var(--blue); opacity: .65; }
.curriculum-page { padding-bottom: var(--section-y); }
.curriculum-page .page-top > .text-link { margin-bottom: var(--space-3); }
.curriculum-content { padding-bottom: var(--space-5); }
.curriculum-loading { font-size: var(--type-ui); color: var(--muted); }
.curriculum-intro { display: flex; gap: var(--space-6); align-items: baseline; justify-content: space-between; margin-bottom: var(--space-4); }
.curriculum-intro p { font-size: var(--type-ui); max-width: var(--measure); margin: 0; }
.curriculum-intro strong { font-weight: 700; color: var(--ink); }
.curriculum-filters { display: grid; grid-template-columns: minmax(190px, 1.3fr) minmax(180px, 1.4fr) repeat(3, minmax(110px, .7fr)); gap: var(--space-4); align-items: end; }
.curriculum-filters label { display: flex; flex-direction: column; gap: var(--space-2); font-size: var(--type-small); color: var(--muted); min-width: 0; }
.curriculum-filters input, .curriculum-filters select { font-family: var(--sans); font-size: var(--type-ui); min-width: 0; width: 100%; height: var(--control-size); border: 1px solid var(--control-border); border-radius: var(--radius-md); padding: 0 var(--space-3); background: var(--surface); color: var(--ink); }
.curriculum-filters input::placeholder { color: var(--muted); }
.curriculum-reset { grid-column: 1 / -1; justify-self: start; min-height: var(--control-size); margin: 0; padding: 0 var(--space-2); border: 0; background: none; color: var(--blue); font: inherit; font-size: var(--type-ui); cursor: pointer; }
.curriculum-result-count { font-size: var(--type-small); color: var(--muted); margin: var(--space-4) 0 var(--space-2); min-height: 1.6em; }
.curriculum-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-8); padding: var(--space-3) 0; border-top: 1px solid var(--line); align-items: center; }
.curriculum-row:last-child { border-bottom: 1px solid var(--line); }
.curriculum-program { font-size: var(--type-small); color: var(--muted); margin: 0 0 var(--space-1); }
.curriculum-row h2 { font-family: var(--sans); font-weight: 700; font-size: var(--type-reading); line-height: 1.35; letter-spacing: -.02em; margin: 0 0 var(--space-1); }
.curriculum-hours { font-size: var(--type-ui); margin: 0; }
.curriculum-row-actions { display: flex; flex-direction: column; align-items: flex-end; gap: var(--space-3); }
.curriculum-chips { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--space-2); }
.curriculum-more { display: flex; justify-content: center; margin-top: var(--space-5); }
.curriculum-source { font-size: var(--type-small); line-height: var(--leading-copy); color: var(--muted); margin: var(--space-8) 0 0; }
.curriculum-source a { color: var(--blue); padding-block: var(--space-1); } /* link inline: casetă de cel puțin 24 px */
@media (max-width: 1100px) {
  .curriculum-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .curriculum-search { grid-column: span 2; }
}
@media (max-width: 900px) {
  .learning-links { gap: var(--space-2) var(--space-5); }
  .curriculum-intro { display: block; }
  .curriculum-intro p + p { margin-top: var(--space-2); }
  .curriculum-row { grid-template-columns: 1fr; gap: var(--space-3); }
  .curriculum-row-actions { flex-direction: row; align-items: center; justify-content: space-between; gap: var(--space-4); }
  .curriculum-chips { justify-content: flex-start; }
}
@media (max-width: 580px) {
  .curriculum-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .curriculum-search, .curriculum-filters label:nth-child(2) { grid-column: 1 / -1; }
  .curriculum-row-actions { flex-wrap: wrap; justify-content: flex-start; }
}
