/* Dokumenty A4 (klasy doc-*) — widok ekranowy + arkusz wydruku.
   Wzory 1:1 z handoff/pages/Praktyki-doc-* i Stypendia-doc-*. */

.doc-toolbar { background: var(--surface); border-bottom: 1px solid var(--line); padding: 14px 0; }
.doc-toolbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.doc-toolbar__actions { display: flex; gap: 10px; }

.doc-sheet {
  max-width: 210mm; margin: 32px auto 64px; background: #fff; color: #111;
  padding: 20mm 18mm; box-shadow: 0 6px 24px rgba(16, 35, 63, 0.12);
  font-family: var(--sans); font-size: 12.5pt; line-height: 1.55;
}
.doc-head { text-align: center; margin-bottom: 24px; }
.doc-org { font-size: 10.5pt; letter-spacing: 0.04em; text-transform: uppercase; color: #333; margin: 0 0 12px; }
.doc-title { font-family: var(--sans); font-size: 16pt; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; margin: 0; }
.doc-meta { text-align: center; font-size: 10.5pt; color: #444; margin: 6px 0 0; }
.doc-section { margin-top: 20px; }
.doc-section h2 { font-family: var(--sans); font-size: 12.5pt; font-weight: 700; margin: 0 0 8px; letter-spacing: 0; }
.doc-section h3 { font-family: var(--sans); font-size: 11.5pt; font-weight: 700; margin: 14px 0 4px; letter-spacing: 0; }
.doc-sheet p { margin: 6px 0; }
.doc-sheet ol, .doc-sheet ul { margin: 6px 0; padding-left: 22px; }
.doc-sheet li { margin: 3px 0; }

.doc-table { width: 100%; border-collapse: collapse; margin: 10px 0; font-size: 10.5pt; }
.doc-table th, .doc-table td { border: 1px solid #333; padding: 6px 8px; text-align: left; vertical-align: top; }
.doc-table th { background: #f0f0f0; font-weight: 700; }
@media print {
  /* Przeglądarki domyślnie nie drukują teł — thead wyróżniamy podwójną linią. */
  .doc-table th { background: none; border-bottom-width: 2px; }
}
.doc-table td:empty { height: 22px; }

.doc-blank { display: inline-block; min-width: 40mm; border-bottom: 1px dotted #333; height: 1em; vertical-align: baseline; }
.doc-blank--long { min-width: 100%; display: block; margin-top: 10px; }
.doc-field { display: flex; gap: 8px; align-items: baseline; }
.doc-field .doc-blank { flex: 1; min-width: 0; }
.doc-checkbox { display: inline-block; width: 11pt; height: 11pt; border: 1px solid #333; vertical-align: -2pt; margin-right: 6pt; }
.doc-place { margin-top: 24px; }
.doc-signs { display: flex; justify-content: space-between; gap: 24px; margin-top: 40px; }
.doc-sign { flex: 1; max-width: 65mm; border-top: 1px dotted #333; padding-top: 4px; text-align: center; font-size: 9.5pt; color: #333; }

@media (max-width: 860px) {
  .doc-sheet { margin: 0; padding: 24px 18px; box-shadow: none; overflow-x: auto; }
}

@media print {
  @page { size: A4; margin: 18mm; }
  body { background: #fff !important; padding: 0 !important; }
  .doc-sheet { margin: 0; padding: 0; box-shadow: none; max-width: none; font-size: 11pt; }
  /* Chrome serwisu znika z wydruku. */
  .c-utility, .c-fomo, .c-header, .c-footer, .doc-toolbar, .c-cookies,
  .hp-fomo-fixed, .c-stickybar, .c-breadcrumbs, [data-noprint] { display: none !important; }
  .doc-table { page-break-inside: auto; }
  .doc-table tr { page-break-inside: avoid; }
  .doc-signs { page-break-inside: avoid; }
}
