/* =========================================================
   Rollenspiel: Laterale Führung im RSE-Kontext
   Karten- und Druck-Styles
   ========================================================= */

:root {
  --card-radius: 14px;
  --role-rse:      #2563eb;   /* blau   – laterale Führungskraft */
  --role-pi:       #7c3aed;   /* violett – Lehrstuhl / Macht */
  --role-domain:   #059669;   /* grün   – Domäne */
  --role-hiwi:     #d97706;   /* orange – HiWi / Ressource */
  --role-partner:  #db2777;   /* pink   – externe Partnerin */
  --event:         #b91c1c;   /* rot    – Ereignis / Trigger */
}

/* Bold sichtbar erzwingen: Lux ist ein Light-Theme, und Bootstraps
   `strong { font-weight: bolder }` ist relativ -- unter einem leichten
   Vorfahren fällt es auf 400 (normal) zurück, sodass **fett** kaum sichtbar
   ist. Absoluter Wert stellt echtes Fett sicher (Website + Druck-PDFs). */
b,
strong {
  font-weight: 700;
}

/* ---------- Rollen- & Ereigniskarten ---------- */
.cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 1.25rem;
  margin: 1.5rem 0;
}

.card {
  border: 1px solid #e5e7eb;
  border-top: 8px solid #64748b;
  border-radius: var(--card-radius);
  padding: 1.1rem 1.25rem 1.25rem;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  break-inside: avoid;
  page-break-inside: avoid;
}

.card h3 { margin-top: .1rem; font-size: 1.15rem; }
.card .tagline { font-style: italic; color: #475569; margin-top: -.35rem; }
.card .badge {
  display: inline-block;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: .15rem .55rem;
  border-radius: 999px;
  color: #fff;
  margin-bottom: .5rem;
}
.card ul { margin-bottom: .4rem; padding-left: 1.1rem; }
.card li { margin-bottom: .18rem; }
.card .secret {
  background: #fef2f2;
  border-left: 3px solid var(--event);
  padding: .5rem .7rem;
  border-radius: 6px;
  font-size: .9rem;
  margin-top: .6rem;
}

.card.rse     { border-top-color: var(--role-rse); }
.card.rse .badge { background: var(--role-rse); }
.card.pi      { border-top-color: var(--role-pi); }
.card.pi .badge  { background: var(--role-pi); }
.card.domain  { border-top-color: var(--role-domain); }
.card.domain .badge { background: var(--role-domain); }
.card.hiwi    { border-top-color: var(--role-hiwi); }
.card.hiwi .badge { background: var(--role-hiwi); }
.card.partner { border-top-color: var(--role-partner); }
.card.partner .badge { background: var(--role-partner); }

.card.event   { border-top-color: var(--event); }
.card.event .badge { background: var(--event); }
.card.event .meta { font-size: .82rem; color: #64748b; margin-top: .5rem; border-top: 1px dashed #e5e7eb; padding-top: .5rem; }

/* ---------- Vertrauliche Einzel-Rollenkarte (eine pro Datei) ---------- */
.vertraulich-banner {
  display: flex; align-items: center; gap: .6rem;
  background: var(--event); color: #fff;
  font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  font-size: .82rem;
  padding: .55rem .9rem; border-radius: 10px;
  margin: .2rem 0 1.1rem;
}
.vertraulich-banner::before { content: "🔒"; font-size: 1.1rem; }

/* Verdecktes Dossier – die geheime Verhandlungsbriefing-Box */
.geheim {
  border: 2px solid var(--event);
  border-radius: 12px;
  background: #fff8f8;
  padding: 0 1.1rem 1rem;
  margin: 1.4rem 0;
}
.geheim > h3:first-child, .geheim > .geheim-title {
  background: var(--event); color: #fff;
  margin: 0 -1.1rem 1rem; padding: .5rem 1.1rem;
  border-radius: 10px 10px 0 0;
  font-size: 1rem; letter-spacing: .03em;
}

/* Prioritäten-Tabelle mit „Gewicht" – erzwingt echte Trade-offs */
.prio-table table { width: 100%; border-collapse: collapse; margin: .4rem 0 .8rem; }
.prio-table th, .prio-table td { padding: .35rem .5rem; border-bottom: 1px solid #f1d5d5; text-align: left; vertical-align: top; }
.prio-table th { font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; color: #7f1d1d; }

.rote-linie {
  background: #fef2f2; border-left: 5px solid var(--event);
  padding: .6rem .85rem; border-radius: 6px; margin: .7rem 0;
}
.rote-linie strong { color: #7f1d1d; }
.trumpf {
  background: #f0fdf4; border-left: 5px solid var(--role-domain);
  padding: .6rem .85rem; border-radius: 6px; margin: .7rem 0;
}
.trumpf strong { color: #065f46; }

/* Zwei-Ebenen-Ziel: großes (gemeinsames) vs. persönliches (verdecktes) Ziel */
.ziele { margin: .7rem 0; }
.ziele .ziel-gross,
.ziele .ziel-ich {
  padding: .45rem .75rem; border-radius: 6px; margin: .35rem 0;
}
.ziele .ziel-gross { background: #eef2ff; border-left: 5px solid var(--role-rse); }
.ziele .ziel-gross strong { color: #1e3a8a; }
.ziele .ziel-ich   { background: #faf5ff; border-left: 5px solid var(--role-pi); }
.ziele .ziel-ich strong { color: #5b21b6; }

/* Was darf ich offen sagen – und was bleibt (zunächst) geheim? */
.reden {
  display: grid; grid-template-columns: 1fr 1fr; gap: .7rem;
  margin: .8rem 0;
}
.reden > div { border-radius: 8px; padding: .55rem .8rem; font-size: .92rem; }
.reden .offen         { background: #eff6ff; border-left: 5px solid var(--role-rse); }
.reden .offen strong  { color: #1e3a8a; }
.reden .verdeckt        { background: #fef2f2; border-left: 5px solid var(--event); }
.reden .verdeckt strong { color: #7f1d1d; }
@media (max-width: 560px) { .reden { grid-template-columns: 1fr; } }

/* Kreative Vorbereitung: die eigene Persona ausgestalten */
.persona {
  background: #eff6ff; border: 1px dashed var(--role-rse);
  border-radius: 10px; padding: .75rem 1rem; margin: 1.1rem 0;
}
.persona .persona-title { display: block; font-weight: 700; color: #1e3a8a; margin-bottom: .3rem; }

/* Konflikt-/Interessenmatrix (nur Spielleitung) */
.matrix table { font-size: .86rem; }
.matrix th { background: #f8fafc; }

/* ---------- Kompetenz-Tags ---------- */
.komp {
  display: inline-block;
  font-size: .72rem;
  font-weight: 600;
  padding: .1rem .5rem;
  border-radius: 6px;
  background: #eef2ff;
  color: #3730a3;
  margin: .1rem .15rem 0 0;
}

/* ---------- Timeline ---------- */
.timeline { border-left: 3px solid var(--event); margin: 1.5rem 0 1.5rem 1rem; padding-left: 1.25rem; }
.timeline .t-item { position: relative; margin-bottom: 1.4rem; }
.timeline .t-item::before {
  content: "";
  position: absolute; left: -1.63rem; top: .25rem;
  width: 12px; height: 12px; border-radius: 50%;
  background: var(--event); border: 2px solid #fff;
}
.timeline .t-time { font-weight: 700; color: var(--event); font-size: .85rem; }

/* ---------- Callouts / Hinweise ---------- */
.hint { background:#f1f5f9; border-radius:10px; padding:.9rem 1.1rem; margin:1rem 0; }

/* ---------- Print: eine Karte pro halbe Seite, saubere Umbrüche ---------- */
@media print {
  .navbar, .sidebar, #quarto-sidebar, .quarto-title-banner, footer,
  .page-navigation, .quarto-page-breadcrumbs, .quarto-secondary-nav,
  #TOC, #quarto-margin-sidebar { display: none !important; }
  .cards { grid-template-columns: 1fr 1fr; gap: .8rem; }
  .card { box-shadow: none; }
  a[href]::after { content: ""; }   /* keine URL-Anhänge beim Druck */
  body { font-size: 11pt; }
}
