/* Complementos de layout das telas auxiliares. Sem alterações de cor ou de fluxo.
   Aplicados somente no visual novo até 1024px; desktop e clássico preservados. */
@media (max-width: 1024px) {
    /* A resolução e as coordenadas do PDF são mantidas; apenas o contêiner rola. */
    html.sf-pilot-modern.sf-responsive-complementary body .sf-responsive-document { width: 100%; max-width: 100%; overflow: auto; box-sizing: border-box; }
    html.sf-pilot-modern.sf-responsive-standalone body { min-width: 0; }
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-standalone-content { width: calc(100% - 24px); max-width: 100%; min-width: 0; float: none; margin-left: auto; margin-right: auto; box-sizing: border-box; overflow-wrap: anywhere; }
    html.sf-pilot-modern.sf-responsive-standalone body :is(form, .ui-fieldset, .ui-fieldset-content, .ui-panelgrid, .ui-panelgrid-content) { min-width: 0; max-width: 100%; box-sizing: border-box; }
    html.sf-pilot-modern.sf-responsive-standalone body .login-panel { margin-top: 24px; padding: 24px 16px; }
    html.sf-pilot-modern.sf-responsive-standalone body .exception-type { padding: 24px 16px 48px; height: auto; }
    html.sf-pilot-modern.sf-responsive-standalone body .exception-panel { margin-top: -24px; padding: 24px 16px; }
    html.sf-pilot-modern.sf-responsive-standalone body .exception-panel .exception-detail { margin-bottom: 32px; }
    html.sf-pilot-modern.sf-responsive-standalone body .exception-panel h1 { font-size: 28px; line-height: 1.2; }
    html.sf-pilot-modern.sf-responsive-standalone body > .ui-g-2,
    html.sf-pilot-modern.sf-responsive-standalone body > form > .ui-g-2 { display: none; }
    html.sf-pilot-modern.sf-responsive-standalone body .ui-inputgroup { height: auto; }
    html.sf-pilot-modern.sf-responsive-standalone body .ui-inputfield { max-width: 100%; box-sizing: border-box; }
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-image { max-width: 100%; height: auto !important; }
    /* Cabeçalho público fica no fluxo, sem cobrir agenda, textos ou formulários. */
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper { width: 100%; padding: 0; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header { min-height: 0; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header .header-top { position: relative; padding: 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header .header-top #menu-button { margin-left: auto; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header .header-top #menu { max-width: calc(100vw - 32px); max-height: calc(100vh - 104px); overflow: auto; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header .header-content { padding: 24px 16px; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #header .header-content h1 { margin: 24px 0; font-size: 28px; line-height: 1.3; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper #video { min-width: 0; }
    html.sf-pilot-modern.sf-responsive-standalone body .landing-wrapper .video-container iframe { width: 100% !important; max-width: 560px; height: auto !important; aspect-ratio: 56 / 33; }
    html.sf-pilot-modern.sf-responsive-standalone body .fc-toolbar { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
    html.sf-pilot-modern.sf-responsive-standalone body .fc-toolbar > div { float: none; max-width: 100%; }
    html.sf-pilot-modern.sf-responsive-standalone body .fc-toolbar .fc-button-group { display: flex; flex-wrap: wrap; }
    html.sf-pilot-modern.sf-responsive-standalone body .fc-toolbar button { min-height: 40px; }
}
@media (max-width: 767px) {
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-standalone-content { width: calc(100% - 16px); }
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-standalone-content.landing-wrapper { width: 100%; }
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-section .md-inputfield { display: flex; flex-direction: column; }
    html.sf-pilot-modern.sf-responsive-standalone body .sf-responsive-section .md-inputfield > label { position: static; display: block; transform: none; margin-bottom: 8px; order: -1; }
    html.sf-pilot-modern.sf-responsive-standalone body :is(.sf-responsive-section, .sf-responsive-field) input.ui-inputfield { min-height: 44px; font-size: 16px; }
}
