/* HotelPreflight v0.16.5 — visual-only dialog polish.
   No behavior, validation, API, auth, tenant, PMS or Preflight logic changes. */

/* Registration dialog: keep every field visible with less unnecessary vertical scrolling. */
.registration-dialog{
  width:min(920px,96vw);
  max-height:calc(100vh - 28px);
  max-height:calc(100dvh - 28px);
  border-radius:22px;
}
.registration-card{display:flex;flex-direction:column;max-height:inherit;min-height:0}
.registration-head{flex:0 0 auto;padding:18px 22px 14px;gap:14px}
.registration-head h2{font-size:25px;margin-bottom:5px}
.registration-head p:not(.eyebrow){line-height:1.38}
.registration-form{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;max-height:none;overflow:hidden}
.registration-grid{flex:1 1 auto;min-height:0;overflow:auto;padding:16px 22px 18px;gap:11px 14px;overscroll-behavior:contain;scroll-padding-bottom:18px}
.registration-field{gap:5px}
.registration-field input,.registration-field select{min-height:41px;padding:9px 11px}
.registration-field small{font-size:11px;line-height:1.3}
.pms-mode-fieldset{gap:8px}
.pms-mode-choice{padding:11px 12px;align-items:center}
.pms-mode-choice strong{margin-bottom:2px}
.registration-message{margin:6px 22px 0;padding:10px 12px}
.registration-actions{flex:0 0 auto;position:static;padding:11px 22px 14px;gap:9px}
.registration-secondary,.registration-actions .primary{min-height:40px}

/* PMS dialogs: more usable width, fixed header/footer, only the body scrolls. */
.pms-dialog{
  width:min(880px,96vw);
  max-height:calc(100vh - 28px);
  max-height:calc(100dvh - 28px);
  border-radius:22px;
}
.pms-dialog-card{max-height:inherit;min-height:0}
.pms-dialog-head{padding:16px 20px 12px;gap:14px}
.pms-dialog-head h2{font-size:25px;line-height:1.15}
.pms-dialog-body{min-height:0;padding:14px 20px;gap:11px 12px;overscroll-behavior:contain}
.pms-field{gap:5px}
.pms-field input,.pms-field select,.pms-field textarea{min-height:40px;padding:9px 10px}
.pms-field textarea{min-height:76px}
.pms-dialog-foot{padding:11px 20px 14px;gap:12px}
.pms-form-error{margin:0 20px 4px;padding:9px 11px}
.pms-dialog-actions{gap:8px}
.pms-dialog .icon-btn{flex:0 0 auto}
.pms-folio-head{padding:13px 14px 10px}
.pms-folio-summary{gap:8px;padding:10px 12px}
.pms-folio-summary>div{padding:9px 10px}
.pms-folio-history{padding:0 12px 10px}
.pms-folio-actions{gap:8px;padding:0 12px 12px}
.folio-entry-form{padding:10px}
.folio-currency-settings{margin:10px 12px 0;padding:9px 10px}

/* Preflight detail / incidents: prevent the whole modal from running off-screen. */
#detailDialog,#incidentDialog{
  max-height:calc(100vh - 28px);
  max-height:calc(100dvh - 28px);
  overflow:hidden;
  border-radius:22px;
}
#detailDialog{width:min(680px,95vw)}
#incidentDialog{width:min(760px,95vw)}
#detailDialog .dialog-card,#incidentDialog .dialog-card{display:flex;flex-direction:column;max-height:inherit;min-height:0}
#detailDialog .dialog-head,#incidentDialog .dialog-head{flex:0 0 auto;padding:17px 20px 13px;gap:14px}
#detailDialog .dialog-head h2,#incidentDialog .dialog-head h2{line-height:1.15}
#detailDialog .check-list{flex:1 1 auto;min-height:0;overflow:auto;padding:14px 20px;gap:8px;overscroll-behavior:contain}
#detailDialog .check-row{padding:10px 11px}
#incidentDialog .incident-list{flex:1 1 auto;min-height:0;max-height:none;padding:13px 20px 6px;gap:8px;overscroll-behavior:contain}
#incidentDialog .incident-item{padding:11px 12px}
#detailDialog .dialog-foot,#incidentDialog .dialog-foot{flex:0 0 auto;padding:12px 20px 15px;gap:12px;background:#fff}

/* Platform Admin request dialog: denser details without losing readability. */
.pa-modal{
  width:min(840px,96vw);
  max-height:calc(100vh - 28px);
  max-height:calc(100dvh - 28px);
  border-radius:22px;
}
.pa-modal header,.pa-modal footer{padding:16px 20px;gap:14px}
.pa-modal h2{font-size:25px;line-height:1.15;margin-top:4px}
.pa-modal-body{padding:17px 20px;overscroll-behavior:contain}
.pa-detail-grid{gap:10px}
.pa-detail{padding:11px 12px;border-radius:13px}
.pa-note{margin-top:14px;padding:12px 14px}
.pa-confirm{margin-top:13px;padding:12px 13px}
.pa-setup-link{margin-top:14px;padding:14px}

@media(max-width:700px){
  .registration-dialog,.pms-dialog,#detailDialog,#incidentDialog,.pa-modal{
    width:calc(100vw - 16px);
    max-height:calc(100vh - 16px);
    max-height:calc(100dvh - 16px);
    border-radius:18px;
  }
  .registration-head{padding:16px 15px 12px}
  .registration-head h2{font-size:22px}
  .registration-grid{grid-template-columns:1fr;padding:13px 15px 5px;gap:10px}
  .registration-field-full{grid-column:auto}
  .registration-actions{padding:10px 15px 12px}
  .registration-message{margin-left:15px;margin-right:15px}
  .pms-dialog-head{padding:15px 16px 11px}
  .pms-dialog-head h2{font-size:22px}
  .pms-dialog-body{grid-template-columns:1fr;padding:12px 16px;gap:10px}
  .pms-field.full{grid-column:auto}
  .pms-dialog-foot{padding:10px 16px 12px;align-items:stretch;flex-direction:column}
  .pms-dialog-actions{width:100%}
  .pms-dialog-actions>*{flex:1}
  .pms-form-error{margin-left:16px;margin-right:16px}
  #detailDialog .dialog-head,#incidentDialog .dialog-head{padding:15px 16px 11px}
  #detailDialog .check-list{padding:12px 16px}
  #incidentDialog .incident-list{padding:12px 16px 5px}
  #detailDialog .dialog-foot,#incidentDialog .dialog-foot{padding:10px 16px 12px}
  .pa-modal header,.pa-modal footer{padding:14px 16px}
  .pa-modal-body{padding:14px 16px}
  .pa-detail-grid{grid-template-columns:1fr}
}

/* Folio history: override the global PMS table minimum width inside dialogs so the activity table fits cleanly without a horizontal scrollbar. */
.pms-dialog .pms-folio-history .table-wrap{overflow-x:visible}
.pms-dialog .pms-folio-history .folio-table{min-width:0;width:100%;table-layout:auto}
.pms-dialog .pms-folio-history .folio-table th,
.pms-dialog .pms-folio-history .folio-table td{white-space:normal}
.pms-dialog .pms-folio-history .folio-table th:nth-child(3),
.pms-dialog .pms-folio-history .folio-table td:nth-child(3),
.pms-dialog .pms-folio-history .folio-table th:last-child,
.pms-dialog .pms-folio-history .folio-table td:last-child{white-space:nowrap;width:1%}
.pms-dialog .pms-dialog-body{scroll-padding-bottom:16px}
.pms-dialog .pms-folio-history .folio-table th:nth-child(2),
.pms-dialog .pms-folio-history .folio-table td:nth-child(2){overflow-wrap:anywhere;word-break:break-word}
@media(max-width:700px){
  .pms-dialog .pms-folio-history .table-wrap{overflow-x:hidden}
  .pms-dialog .pms-folio-history .folio-table{table-layout:fixed;max-width:100%}
  .pms-dialog .pms-folio-history .folio-table th:first-child,
  .pms-dialog .pms-folio-history .folio-table td:first-child{width:27%}
  .pms-dialog .pms-folio-history .folio-table th:nth-child(2),
  .pms-dialog .pms-folio-history .folio-table td:nth-child(2){width:39%}
  .pms-dialog .pms-folio-history .folio-table th:nth-child(3),
  .pms-dialog .pms-folio-history .folio-table td:nth-child(3){width:19%;white-space:nowrap}
  .pms-dialog .pms-folio-history .folio-table th:last-child,
  .pms-dialog .pms-folio-history .folio-table td:last-child{width:15%;white-space:normal}
  .pms-dialog .pms-folio-history .pms-action-btn{padding:6px 7px;font-size:11px;max-width:100%}
}
