/* Sólo interfaz en pantalla. No modificar rem globales ni hojas documentales. */
@media screen{
  body{font-size:18px;line-height:1.5}
  .app input,.app select,.app textarea,.modal input,.modal select,.modal textarea,.eclium-access input{font-size:18px!important;line-height:1.45;min-height:48px;padding:11px 12px;min-width:0}
  .app input[type="checkbox"],.app input[type="radio"],.modal input[type="checkbox"]{min-height:22px;width:22px;height:22px;flex-shrink:0;accent-color:#006b5a}
  .app label,.modal label{font-size:17px!important;line-height:1.45;font-weight:600;margin-bottom:6px}
  .app textarea{min-height:100px}
  .app :is(div,p,span,small):is([style*="font-size:10px"],[style*="font-size:11px"],[style*="font-size:12px"],[style*="font-size:13px"],[style*="font-size:14px"]):not(.cert-preview, .cert-preview *, .info-mat-sheet, .info-mat-sheet *, .pastoral-doc-sheet, .pastoral-doc-sheet *){font-size:16px!important;line-height:1.5}
  #cal-grid [onclick]{font-size:18px!important;min-height:52px!important}
  .anotaciones-box summary::after{font-size:14px;line-height:1.5}
  .btn-primary,.btn-sec,.btn-danger,.btn-print,.upload-label{font-size:17px!important;min-height:48px;line-height:1.4;padding:10px 16px;white-space:normal;justify-content:center}
  .sidebar{height:auto;min-height:92px;flex-wrap:wrap;padding-block:12px;gap:6px;position:relative}
  .sidebar-item,.sidebar>#snav-config{height:auto;min-height:48px;padding:10px 12px}
  .sidebar-item span,#snav-config span{font-size:17px;line-height:1.3}
  #snav-home span{font-size:19px;line-height:1.3}
  .home-card-title{font-size:19px;line-height:1.4}
  .home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-card{min-height:235px}
  .home-card-icon{height:132px}
  .home-card-icon img{width:92px;height:92px;max-width:100%}
  .panel-title{font-size:28px;line-height:1.3}
  .panel-sub,.metric-lbl,.sec:not(.info-mat-sheet *, .pastoral-doc-sheet *, .cert-preview *),.mode-btn .mode-desc,.prefilled-note,.bautizado-meta,.result-meta,.badge,.home-event-meta,.home-event-empty,.home-event-date small,.mat-hub-desc,.mat-doc-folio,.scrutiny-note,.scrutiny-docs-hint,.step-label,.lote-header-title,.system-info-label,.system-info-badge,.eclium-storage-state{font-size:16px;line-height:1.5}
  .panel-sub,.prefilled-note,.scrutiny-note,.mat-doc-folio,.system-info-label{color:#52635b}
  .mode-btn .mode-label,.mini-form-title,.bautizado-name,.result-name,.home-event-title,.mat-hub-title,.mat-doc-name,.modal-header h3{font-size:19px;line-height:1.4}
  .results-count,.lote-count,.config-info,.config-step,.config-step-num,.logo-placeholder,.prox-msg,.alert-ok,.alert-err,.home-agenda-link,.scrutiny-label,.scrutiny-head div,.system-info-grid,.eclium-credit-sub,.anotaciones-box summary{font-size:17px;line-height:1.5}
  .home-agenda-link{min-height:48px;display:inline-flex;align-items:center}
  .home-event-date{min-width:54px;width:54px;line-height:1.2}.home-event-date span{font-size:22px}
  .bautizado-num,.step{width:32px;height:32px;font-size:16px;flex-shrink:0}
  .bautizado-info,.result-card-inner>div,.grid2>div,.grid3>div{min-width:0}
  .result-meta,.bautizado-meta,.result-name{overflow-wrap:anywhere}
  .bautizado-card,.result-card-inner{flex-wrap:wrap}
  .config-step-num{flex-shrink:0}
  .grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .persona-nombre-row{grid-template-columns:minmax(180px,.3fr) minmax(0,1fr)}
  .form-actions,.info-mat-toolbar,.info-mat-docs{gap:12px}
  .modal-close{min-width:48px;min-height:48px;font-size:28px}
  .modal-header{gap:12px;flex-wrap:wrap}
  .eclium-access{overflow-y:auto;display:block;overscroll-behavior:contain}
  .eclium-access form{margin:clamp(8px,5vh,60px) auto;max-width:540px;padding:32px;gap:16px}
  .eclium-access h1{font-size:32px;line-height:1.25}
  .eclium-access label{font-size:18px}
  .eclium-access p,#eclium-access-message{font-size:17px;line-height:1.5}
  .eclium-access-link{color:#006b5a;min-height:48px;display:flex;align-items:center;text-underline-offset:4px;font-size:17px;font-weight:650}
  .sidebar button:focus-visible,.app button:focus-visible,.app a:focus-visible,.modal button:focus-visible,.eclium-access :focus-visible{outline:3px solid #006b5a;outline-offset:3px}
  /* El cuerpo aumentado no se hereda dentro de documentos compuestos. */
  .cert-preview{font-size:13px;line-height:1.9}
  .info-mat-sheet{font-size:15px;line-height:normal}
  @media(min-width:1280px){.home-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
  @media(max-width:1000px){.mat-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-layout{grid-template-columns:1fr}.cal-side{position:static}}
  @media(max-width:860px){
    .sidebar{display:flex;overflow:visible;position:relative;padding:12px;align-items:stretch;gap:8px}
    .sidebar-brand{flex:0 0 100%;margin:0;justify-content:center}
    .sidebar-item,.sidebar>#snav-config{flex:1 1 calc(50% - 8px);justify-content:center;margin:0;white-space:normal;overflow:visible}
    .home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
    .mode-selector{flex-wrap:wrap}.mode-btn{flex:1 1 250px}
  }
  @media(max-width:600px){
    .app{padding:24px 16px}.grid2,.grid3,.persona-nombre-row,.mat-hub-grid,.mat-doc-grid{grid-template-columns:1fr}
    .home-card{min-height:200px;padding:16px 10px}.home-card-icon{height:102px}.home-card-title{font-size:18px}
    .metrics-row{grid-template-columns:1fr}.panel-heading{padding:16px;gap:12px}.panel-title{font-size:25px}
    .search-bar{flex-wrap:wrap}.search-bar input{flex-basis:100%}
    .config-box{padding:18px}.logo-preview-box{flex-wrap:wrap}.logo-actions{margin-left:0}
    .eclium-access{padding:16px}.eclium-access form{padding:24px 20px;margin:8px auto}
    .home-agenda-head{flex-wrap:wrap}.system-info-grid{grid-template-columns:1fr}
  }
}
