/* Screen layout shared by the app and its embedded editors. Output documents
   retain their own print layout. Long translations must increase height. */
@media screen {
  body :where(button,.button,.button-link,.export-btn){box-sizing:border-box;max-width:100%;overflow-wrap:anywhere}
  body .button-link{white-space:normal;overflow-wrap:anywhere}
  .schedule-edit-form .edit-save-bar>button,
  .schedule-edit-form .edit-save-bar>.edit-schedule-link{white-space:normal;height:auto;min-height:52px;line-height:1.4;overflow-wrap:anywhere}
  .schedule-edit-form .edit-save-bar{align-items:stretch}
  .schedule-edit-form .edit-save-bar .confirmation-check{flex-wrap:wrap;white-space:normal}
  .hotel-schedule-head{flex-wrap:wrap}
  .hotel-schedule-head>div{flex:1 1 300px;min-width:0}
  .hotel-schedule-head h1{overflow-wrap:anywhere}
  .hotel-schedule-head>b{max-width:100%;overflow-wrap:anywhere}
  .quote-page .quote-fee-options{display:flex;flex-wrap:wrap;min-width:0;max-width:100%}
  .quote-page .quote-fee-options label{flex:0 1 auto;white-space:normal;overflow-wrap:anywhere;min-width:0}
  .quote-page .quote-fee-options input{flex:0 0 20px}
  .user-table th,.user-table td{white-space:normal;overflow-wrap:anywhere}
  .wrap :is(.flight-entry-table,.meal-entry-table,.hotel-entry-table,.dated-entry-table) th{white-space:normal;overflow-wrap:anywhere}
  .home-hero h1{line-height:1.5;overflow-wrap:anywhere}
  .endpoint-home .home-hero{flex-direction:column;justify-content:space-between;gap:32px}
  .endpoint-home .home-hero-content{flex:1;padding:48px 0 0}
  .endpoint-home .hero-stats{position:relative;left:auto;bottom:auto;transform:none;flex:none;margin:0 auto}
  .schedule .only-state-item,.schedule .only-state-item b{line-height:1.4}
  .timetable-manual-form{max-width:calc(100vw - 40px);box-sizing:border-box}
  .timetable-manual-form a{min-width:0;white-space:normal;overflow-wrap:anywhere}
  body #hotel-dialog .hotel-fields>.hotel-room-allocations{grid-template-columns:minmax(0,1fr)}
  body #hotel-dialog .hotel-room-rows,.hotel-room-row{min-width:0}
  body .hotel-date-control{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
  body .hotel-date-control input[type=date]{padding-right:8px!important}
  body .hotel-date-control .hotel-weekday{position:static;transform:none;inset:auto;width:auto;max-width:100%;text-align:left;line-height:1.4}
  #hotel-dialog .transport-item-head{flex-wrap:wrap}
  #hotel-dialog .transport-item-head strong{min-width:0;overflow-wrap:anywhere}
  #hotel-dialog .remove-hotel{flex:0 0 auto;min-width:64px}
  /* Preserve a readable document width inside the preview's own scroll area. */
  #preview-content>.instruction-preview-paper{min-width:760px}
  @media(max-width:600px){
    .schedule-edit-form .edit-save-bar>button{flex-basis:160px}
    .hotel-email-contact-head>.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:auto}
  }
}
