/* ═══════════════════════════════════════════════════════════════════════════
   fs207 (15.09.2026) · PDF-VERTRAG HOCHLADEN
   Das Fenster nutzt die tt-pro-Bausteine wie „Einladung senden" (Kopf, Abschnitte,
   Felder, Fussleiste). Hier steht nur, was tt-pro nicht mitbringt: Dateiauswahl,
   Sichtbarkeits-Haken, Hinweistexte und die Warteschicht beim Hochladen.
   ═══════════════════════════════════════════════════════════════════════════ */
html body .tt-pro-modal.tt-ext-contract-modal {
  max-width: 560px !important;
  width: calc(100vw - 32px) !important;
}
html body .tt-ext-contract-modal .tt-ext-file {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
html body .tt-ext-contract-modal .tt-ext-file-btn {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
}
html body .tt-ext-contract-modal .tt-ext-file-name {
  min-width: 0;
  font-size: 12.5px;
  color: #475569;
  overflow-wrap: anywhere;
}
html body .tt-ext-contract-modal .tt-ext-check {
  display: flex !important;
  align-items: center;
  gap: 10px;
  margin: 14px 0 4px;
  font-size: 13px;
  font-weight: 600;
  color: #111;
  cursor: pointer;
}
html body .tt-ext-contract-modal .tt-ext-check input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 0 !important;
  accent-color: #111827;
}
/* iOS gibt Datumsfeldern eine eigene Mindestbreite — gemessen ragte das Feld am iPhone 17 Pro
   rechts ueber den Fensterrand. Und es zentriert den Wert; links wie alle anderen Felder. */
html body .tt-ext-contract-modal input[type="date"] {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  -webkit-appearance: none;
  appearance: none;
  text-align: left;
}
html body .tt-ext-contract-modal input[type="date"]::-webkit-date-and-time-value { text-align: left; }
html body .tt-ext-contract-modal .tt-ext-hint {
  margin: 4px 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}
html body .tt-ext-contract-modal .tt-pro-section.hidden,
html body .tt-ext-contract-modal .btn-secondary.hidden {
  display: none !important;
}
html body .tt-ext-contract-modal .tt-ext-busy {
  position: absolute;
  inset: 0;
  z-index: 20;
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(2px);
  border-radius: inherit;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
}
html body .tt-ext-contract-modal .tt-ext-spinner {
  width: 34px;
  height: 34px;
  border: 3px solid #e2e8f0;
  border-top-color: #0f172a;
  border-radius: 50%;
  animation: tt-spin 700ms linear infinite;
}
html body .tt-ext-contract-modal .tt-ext-busy-text { font-size: 14px; font-weight: 600; color: #0f172a; }
html body .tt-ext-contract-modal .tt-ext-busy-sub { font-size: 12px; color: #64748b; }

/* Telefon: ein Feld je Zeile, Tippflaechen 44 px wie im restlichen Admin (portal-mobile-admin.css:31) */
@media (max-width: 768px) {
  html body .tt-ext-contract-modal .tt-pro-grid { grid-template-columns: 1fr !important; }
  html body .tt-ext-contract-modal .tt-ext-file-btn,
  html body .tt-ext-contract-modal .tt-ext-check,
  html body .tt-ext-contract-modal #external-contract-talent-remove { min-height: 44px; }
  html body .tt-ext-contract-modal .tt-ext-check input { width: 22px; height: 22px; }
}
