/* Carnet central Ohmi (DA A′). À l'impression : papier blanc, encre noire, une fiche par bloc. */
.carnet-tete .lede { max-width: 58ch; }
.accompli { margin: 16px 0 0; font: 700 22px var(--f-display); color: var(--ok); }
.omega-legende output { font-size: 24px; }

.outils { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.recherche { flex: 1 1 280px; display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1.5px solid var(--line); border-radius: 10px; background: var(--panel); }
.recherche:focus-within { border-color: var(--muted); }
.recherche svg { width: 18px; height: 18px; flex: none; fill: none; stroke: var(--muted); stroke-width: 2.2; stroke-linecap: round; }
.recherche input { flex: 1; min-width: 0; padding: 11px 0; border: 0; outline: 0; background: transparent; color: var(--fg); font: 600 16px var(--f-body); }
.recherche input::placeholder { color: var(--muted); }
.bascule { display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-weight: 600; font-size: 15px; cursor: pointer; }
.bascule input { width: 18px; height: 18px; accent-color: var(--laser); }
.plf-btn:disabled { opacity: .45; cursor: not-allowed; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.vide { margin: 0; color: var(--muted); font-size: 17px; }
.vide a, .pied a { color: var(--fg); }
.carnet { display: grid; gap: 48px; }
.matiere { display: grid; gap: 24px; }
.matiere > h2 { padding-bottom: 10px; border-bottom: 1.5px solid var(--line); }
.cours { display: grid; gap: 14px; }
.cours h3 { margin: 0; display: flex; align-items: baseline; gap: 12px; font: 700 19px var(--f-display); }
.cours h3 a { color: var(--fg); text-decoration: none; }
.cours h3 a:hover { color: var(--laser); }
.cours-compte { font: 600 12px var(--f-mono); color: var(--muted); }
.fiches { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 14px; align-items: start; }
.plf-fiche .katex { font-size: 1.05em; }

@media print {
  @page { margin: 14mm; }
  :root { --bg: #fff; --fg: #111; --muted: #555; --line: #bbb; }
  body { background: #fff !important; color: #111; font-size: 12pt; }
  .plf-barre, .outils, .hero-omega, .pied, .vide, .plf-toasts, .carnet-tete .lede { display: none !important; }
  main { padding: 0; gap: 18px; max-width: none; }
  h1 { font-size: 26pt; }
  h1 span { color: #111; }
  .carnet { gap: 22px; }
  .fiches { grid-template-columns: 1fr 1fr; gap: 10px; }
  .plf-fiche { background: #fff; color: #111; border: 1px solid #999; box-shadow: none; break-inside: avoid; padding: 10px 12px; }
  .plf-fiche strong { color: #111; text-decoration: underline; }
  .cours h3 a { color: #111; }
  .cours { break-inside: avoid-page; }
}
