/* ===========================================================================
   Figurenbogen — Druckansicht A4 (Entwurf, Osrik 25.09.2026)
   Reines Stylesheet. Greift NICHT in die Generatorlogik ein: es stellt nur
   anders dar, was renderHeroTabHtml ohnehin ausgibt.
   Alles hier steht in @media print und ändert die Bildschirmansicht nicht.
   =========================================================================== */
@media print {

  @page { size: A4 portrait; margin: 14mm 14mm 16mm 14mm; }

  /* --- Nur der Bogen, sonst nichts ------------------------------------- */
  .no-print, .figu-tab-bar, .figu-atlas-status, #figu-roll-form,
  #main-content .character-generator-form, #main-content .character-generator-footer { display: none !important; }

  /* --- Grundton: ruhiger, weniger Kästen ------------------------------- */
  #main-content .character-sheet {
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    font-family: 'Crimson Text', Georgia, serif;
    color: #22262A;
  }
  #main-content .osr-toptag, #main-content .osr-end-flourish { display: none !important; }

  /* --- Kopf: Wappen groß, Name als beschreibbare Linie ------------------ */
  #main-content .character-sheet h1 {
    font-family: 'Cinzel', Georgia, serif;
    font-size: 15pt; font-variant: small-caps; letter-spacing: 3px;
    color: #5d0000; text-align: left; margin: 0 0 3mm 0;
    border-bottom: 1.6pt solid #4a3728; padding-bottom: 2mm;
  }
  #main-content .osr-pergament-header {
    display: flex; align-items: flex-start; gap: 6mm;
    border: none !important; background: none !important; padding: 0 !important;
    margin-bottom: 5mm;
  }
  #main-content .osr-class-symbol {
    flex: 0 0 auto; width: 24mm; height: 24mm;
    border: none !important; background: none !important; padding: 0 !important;
    color: #5d0000;
  }
  #main-content .osr-class-symbol svg { width: 100%; height: 100%; }
  #main-content .osr-stammdaten { flex: 1 1 auto; border-collapse: collapse; width: 100%; }
  #main-content .osr-stammdaten th {
    font-family: 'Cinzel', Georgia, serif; font-size: 6.6pt; letter-spacing: 1.4px;
    text-transform: uppercase; color: #6a4a22; font-weight: 400;
    text-align: left; padding: 1mm 2mm 1mm 0; white-space: nowrap; width: 1%;
  }
  #main-content .osr-stammdaten td {
    font-size: 11pt; padding: 1mm 6mm 1mm 0;
    border-bottom: .4pt solid rgba(93,58,24,.35);
  }
  /* Leere Eingabefelder werden zu Schreiblinien statt zu „…" */
  #main-content .character-sheet input[type="text"][value=""] {
    border: none !important; background: none !important;
    width: 55mm !important; height: 5mm;
  }
  .character-sheet input::placeholder,
  #main-content .character-sheet textarea::placeholder { color: transparent !important; }

  /* --- Abschnittsüberschriften: leiser, mit klarer Stufung -------------- */
  #main-content .character-sheet h2 {
    font-family: 'Cinzel', Georgia, serif; font-size: 8.4pt;
    letter-spacing: 2.2px; text-transform: uppercase; color: #5d3a18;
    text-align: left; font-weight: 700;
    border: none !important; border-bottom: .9pt solid #5d3a18 !important;
    background: none !important;
    margin: 5mm 0 2.5mm 0; padding: 0 0 1mm 0;
  }

  /* --- Wertekästen: flacher, weniger Rahmen ---------------------------- */
  #main-content .osr-grid-container { gap: 2mm !important; }
  #main-content .osr-box {
    border: .5pt solid #d8dce0 !important; border-radius: .8mm;
    background: rgba(255,250,235,.5) !important; padding: 1.6mm 1mm !important;
  }
  #main-content .osr-box.highlight { background: #f7f2e4 !important; border-color: #6a4a22 !important; }
  #main-content .osr-label {
    font-family: 'Cinzel', Georgia, serif; font-size: 5.8pt !important;
    letter-spacing: .8px; color: #6a4a22 !important;
  }
  #main-content .osr-value { font-size: 13pt !important; color: #22262A !important; }
  #main-content .osr-box.highlight .osr-value { font-size: 15pt !important; color: #5d0000 !important; }

  /* --- Ausrüstungstabelle ---------------------------------------------- */
  #main-content .osr-table-equip { border-collapse: collapse; width: 100%; }
  #main-content .osr-table-equip th {
    font-family: 'Cinzel', Georgia, serif; font-size: 6.6pt !important;
    letter-spacing: 1.2px; text-transform: uppercase; color: #6a4a22 !important;
    font-weight: 400; text-align: left; vertical-align: baseline;
    padding: 1.4mm 3mm 1.4mm 0; white-space: nowrap; width: 1%;
  }
  #main-content .osr-table-equip td {
    font-size: 9.6pt; line-height: 1.4; vertical-align: baseline;
    padding: 1.4mm 0; border-bottom: .3pt dotted rgba(106,74,34,.4);
  }
  /* Leere Zeilen (z.B. „Waffe #2" ohne Inhalt) verschwinden im Druck */
  /* leere Zeilen ausblenden - Waffe #2 ist ausgenommen, dort soll Platz bleiben */
  #main-content .osr-table-equip tr:has(td > .figu-equip-display:empty) { display: none !important; }
  #main-content .osr-table-equip tr:has(td > textarea[data-field="equipment.weitere"]) { display: none !important; }
  /* Englische Slot-Zählung raus */
  #main-content .figu-spell-row small { display: none !important; }

  /* --- Kuriosum hervorheben: das Einzige, was eine Geschichte erzählt --- */
  #main-content .osr-table-equip tr:has(th:last-of-type) td { }
  #main-content .osr-table-equip tr:nth-last-child(1) td {
    background: #f4f2ec; border-left: 2.2pt solid #b8a063;
    padding: 2.4mm 3mm; font-style: italic;
  }
  #main-content .osr-table-equip tr:nth-last-child(1) th {
    background: #f4f2ec; padding-left: 2mm; padding-top: 2.4mm;
  }

  /* --- Notizen: echte Linien statt leerer Kasten ------------------------ */
  .character-sheet > textarea[data-field="notizen"],
  #main-content .osr-notes-area[data-field="notizen"] {
    display: block !important; border: none !important; background: none !important;
    width: 100%; height: 58mm; resize: none; padding: 0 !important;
    background-image: repeating-linear-gradient(
      to bottom, transparent 0, transparent 7.2mm,
      rgba(106,74,34,.45) 7.2mm, rgba(106,74,34,.45) calc(7.2mm + .3pt)) !important;
  }

  /* --- Zierzeichen der Überschriften im Druck abschalten ---------------- */
  #main-content .character-sheet h1::before, #main-content .character-sheet h1::after,
  #main-content .character-sheet h2::before, #main-content .character-sheet h2::after {
    content: none !important; display: none !important;
  }
  #main-content .character-sheet h1, #main-content .character-sheet h2 {
    font-family: 'Cinzel', Georgia, serif !important;
    text-align: left !important;
    margin-top: 5mm !important;
  }
  #main-content .character-sheet h2 { border-bottom-width: .9pt !important; }
  #main-content .osr-pergament-header { display: flex !important; }
  #main-content .osr-class-symbol {
    border: none !important; background: none !important; box-shadow: none !important;
  }

  /* --- Überschriften sind Flex-Boxen: erst auflösen, dann ausrichten ---- */
  #main-content .character-sheet h1, #main-content .character-sheet h2 {
    display: block !important;
    justify-content: flex-start !important;
    letter-spacing: 2.4px !important;
    font-variant: small-caps !important;
  }
  #main-content .character-sheet h1 {
    font-size: 16pt !important; letter-spacing: 3.4px !important;
    border-bottom: 1.6pt solid #4a3728 !important; padding-bottom: 2mm !important;
    margin: 0 0 4mm 0 !important;
  }
  #main-content .character-sheet h2 {
    font-size: 9pt !important; color: #5d3a18 !important;
    border-bottom: .9pt solid #5d3a18 !important; padding: 0 0 1.2mm 0 !important;
    margin: 6mm 0 2.5mm 0 !important;
  }
  /* --- Notizlinien enger und bis zum Seitenfuß -------------------------- */
  #main-content .osr-notes-area[data-field="notizen"] {
    line-height: 7mm !important;
    background-image: repeating-linear-gradient(
      to bottom, transparent 0, transparent 6.6mm,
      rgba(106,74,34,.4) 6.6mm, rgba(106,74,34,.4) 6.75mm) !important;
  }

  /* --- Bogen bleibt auf einer Seite ------------------------------------ */
  #main-content .character-sheet { break-inside: avoid; page-break-inside: avoid; }
  #main-content .osr-grid-container, #main-content .osr-table-equip tr { break-inside: avoid; }

  /* --- Notizfläche wächst mit: füllt kurze Bögen, schrumpft bei langen --
     Satzspiegel A4 bei 14mm/16mm Rand = 267mm. Der Bogen ist eine Spalte,
     die Notizfläche nimmt, was übrig bleibt, mindestens aber 24mm.        */
  #main-content .character-sheet {
    display: flex !important; flex-direction: column !important;
    min-height: 267mm !important;
  }
  #main-content .osr-notes-area[data-field="notizen"] {
    flex: 1 1 auto !important; min-height: 24mm !important; height: auto !important;
  }

  /* --- Feinabstimmung: Platz für Schadensspur und Buchhaltung ----------- */
  #main-content .character-sheet h2 { margin: 4mm 0 2mm 0 !important; }
  #main-content .osr-box { padding: 1.2mm .8mm !important; }
  #main-content .osr-grid-container { gap: 1.6mm !important; margin-bottom: 0 !important; }
  #main-content .osr-pergament-header { margin-bottom: 3.5mm !important; }
  #main-content .osr-table-equip td, #main-content .osr-table-equip th { padding-top: 1mm !important; padding-bottom: 1mm !important; }
  #main-content .osr-notes-area[data-field="notizen"] { min-height: 18mm !important; }
}
