*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}button,input,select,textarea{font-family:inherit}html,body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1e3348}h1,h2,h3,p{word-break:normal}button.primary,a.primary-link{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.filters-shell{width:100%}.filters-row{display:flex;align-items:flex-end;gap:10px;width:100%}.filters-primary{display:flex;align-items:flex-end;gap:10px;flex:1;min-width:0}.filters-primary label:not(.search-box){display:flex;flex-direction:column;gap:4px;flex:0 0 168px;width:168px;font-size:11px;font-weight:600;color:#64748b;min-width:0}.filters-primary label.search{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-width:140px;font-size:11px;font-weight:600;color:#64748b}.filters-primary.is-dates{flex:0 1 auto}.filters-primary.is-dates label:not(.search-box){flex:0 0 140px;width:140px}.filters-primary .search-box{flex:1 1 auto;min-width:0}.filters-primary input,.filters-primary select{width:100%;height:32px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:inherit;font-size:13px;color:#1e3348;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.filters-primary input:focus,.filters-primary select:focus{outline:none;border-color:#006b6673;box-shadow:0 0 0 3px #006b661a}@media(max-width:760px){.filters-primary{flex-direction:column;align-items:stretch}.filters-primary label:not(.search-box),.filters-primary label.search,.filters-primary.is-dates label:not(.search-box){flex:1 1 auto;width:100%}.filters-primary .search-box{width:100%}}.filters-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:0;padding:0 11px;height:32px;border:0;border-radius:8px;background:#eef2f7;color:#25456d;font:inherit;font-size:11px;font-weight:650;cursor:pointer;letter-spacing:.01em;white-space:nowrap;flex-shrink:0;box-sizing:border-box;transition:background .15s ease,color .15s ease}.filters-toggle:hover{background:#e3ebf3;color:#193f70}.filters-toggle:after{content:"";width:5px;height:5px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-2px;transition:transform .2s ease}.filters-toggle.open:after{transform:rotate(-135deg);margin-top:1px}.filters-advanced{display:none;width:100%}.filters-advanced.open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;align-items:end;padding-top:10px;margin-top:0;border-top:1px dashed #dce5ef}.filters-advanced.filters-grid.open{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1200px){.filters-advanced.filters-grid.open{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.filters-advanced.filters-grid.open{grid-template-columns:repeat(2,minmax(0,1fr))}}.filters-advanced.filters-bottom.open{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1150px){.filters-advanced.filters-bottom.open{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:750px){.filters-advanced.filters-bottom.open{grid-template-columns:1fr}}.filters-advanced label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;color:#64748b;min-width:0}.filters-advanced input,.filters-advanced select{width:100%;height:32px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:inherit;font-size:13px;color:#1e3348;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.filters-advanced input:focus,.filters-advanced select:focus{outline:none;border-color:#006b6673;box-shadow:0 0 0 3px #006b661a}.filters-advanced .clear{align-self:end;height:32px;border:0;background:transparent;color:#006b66;font-weight:700;cursor:pointer;font:inherit;font-size:11px;padding:0 4px}.filters-advanced .clear:hover{text-decoration:underline}.notice{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{font-size:14px}.app-shell .page-body .page-header{margin-bottom:16px}.app-shell .page-body .page-header h1{font-size:28px!important;margin:2px 0!important}.app-shell .page-body .page-header p{font-size:13px}.app-shell .page-body .page-heading h1,.app-shell .page-body .page-head h1{font-size:28px!important;margin:2px 0!important}.app-shell .page-body .eyebrow{font-size:11px!important}.app-shell .page-body .panel,.app-shell .page-body .list-panel{padding:14px 16px!important;border-radius:14px!important}.app-shell .page-body .cards article{padding:16px!important;border-radius:14px!important}.app-shell .page-body .cards article strong{font-size:28px!important;margin:6px 0 2px!important}.app-shell .page-body .cards article span,.app-shell .page-body .cards article small{font-size:12px}.app-shell .page-body .panel h2{font-size:16px!important;margin-bottom:12px!important}.app-shell .page-body .secondary,.app-shell .page-body .primary{padding:9px 13px!important;font-size:13px!important;border-radius:8px!important}.app-shell{background:linear-gradient(180deg,#faf9f7,#f4f6f9 220px)}.app-shell .page-body{color:#1e3348}.app-shell .page-body .page-header,.app-shell .page-body .page-heading,.app-shell .page-body .page-head{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(226,232,240,.85)}.app-shell .page-body .page-header h1,.app-shell .page-body .page-heading h1,.app-shell .page-body .page-head h1{font-size:1.65rem;font-weight:700;letter-spacing:-.02em;color:#5a2a18;line-height:1.2}.app-shell .page-body .page-header p,.app-shell .page-body .page-heading p,.app-shell .page-body .page-head p{color:#64748b;line-height:1.55;max-width:62ch}.app-shell .page-body .eyebrow{display:inline-block;margin-bottom:4px;color:#006b66;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.app-shell .page-body .panel,.app-shell .page-body .list-panel,.app-shell .page-body .form-panel,.app-shell .page-body .context-panel,.app-shell .page-body .builder-panel,.app-shell .page-body .summary-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #18324f0a,0 8px 24px #18324f0d;padding:16px 18px}.app-shell .page-body .cards article,.app-shell .page-body .summary-grid article,.app-shell .page-body .summary-cards article,.app-shell .page-body .summary-row .summary-cards article{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #18324f0a,0 6px 18px #18324f0a;transition:box-shadow .18s ease,transform .18s ease}.app-shell .page-body .cards article:hover,.app-shell .page-body .summary-grid article:hover,.app-shell .page-body .summary-cards article:hover,.app-shell .page-body .summary-row .summary-cards article:hover{box-shadow:0 2px 4px #18324f0d,0 10px 24px #18324f12}.app-shell .page-body .cards article strong,.app-shell .page-body .summary-grid article strong,.app-shell .page-body .summary-cards article strong,.app-shell .page-body .summary-row .summary-cards article strong{color:#5a2a18;font-weight:700}.app-shell .page-body .cards article span,.app-shell .page-body .cards article small,.app-shell .page-body .summary-grid article span,.app-shell .page-body .summary-grid article small,.app-shell .page-body .summary-cards article span,.app-shell .page-body .summary-cards article small,.app-shell .page-body .summary-row .summary-cards article span,.app-shell .page-body .summary-row .summary-cards article small{color:#64748b}.app-shell .page-body .panel h2,.app-shell .page-body .panel h3,.app-shell .page-body .permission-panel h2{color:#5a2a18;font-weight:650;letter-spacing:-.01em}.app-shell .page-body .tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:4px;background:#ffffffbf;border:1px solid #e2e8f0;border-radius:999px;width:fit-content;max-width:100%}.app-shell .page-body .tabs button{border:0;background:transparent;color:#64748b;padding:8px 14px;border-radius:999px;font-size:.86rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.app-shell .page-body .tabs button:hover{color:#1e3348;background:#eff8eea6}.app-shell .page-body .tabs button.active{color:#5a2a18;background:#fff;box-shadow:0 1px 3px #18324f14}.app-shell .page-body .primary,.app-shell .page-body .primary-link{border:1px solid transparent;background:linear-gradient(180deg,#8c3510,#7a2e0e);color:#fff;font-weight:650;border-radius:8px;box-shadow:0 1px 2px #5a210b2e,0 4px 12px #5a210b1f;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.app-shell .page-body .primary:hover:not(:disabled),.app-shell .page-body .primary-link:hover:not(:disabled){filter:brightness(1.04);box-shadow:0 2px 4px #5a210b33,0 6px 16px #5a210b24}.app-shell .page-body .primary:active:not(:disabled),.app-shell .page-body .primary-link:active:not(:disabled){transform:translateY(1px)}.app-shell .page-body .primary:disabled,.app-shell .page-body .primary-link:disabled{opacity:.55;cursor:not-allowed}.app-shell .page-body .secondary{border:1px solid #cbd5e1;background:#fff;color:#1e3348;font-weight:600;border-radius:8px;transition:background .15s ease,border-color .15s ease,color .15s ease}.app-shell .page-body .secondary:hover:not(:disabled){background:#f8fafc;border-color:#b8c5d6;color:#5a2a18}.app-shell .page-body .secondary:disabled{opacity:.55;cursor:not-allowed}.app-shell .page-body .danger{border:1px solid rgba(180,35,24,.25);background:#fff0f0;color:#b42318;font-weight:600;border-radius:8px}.app-shell .page-body .danger:hover:not(:disabled){background:#ffe6e6}.app-shell .page-body .notice{border-radius:10px;padding:11px 14px;font-size:.88rem;line-height:1.45;margin-bottom:12px;border:1px solid transparent}.app-shell .page-body .notice.ok{background:#eff8ee;border-color:#cbe5c9;color:#00423f}.app-shell .page-body .notice.error{background:#fff0f0;border-color:#b423182e;color:#b42318}.app-shell .page-body .table-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:auto;background:#fff}.app-shell .page-body .table-wrap table{width:100%;border-collapse:collapse;font-size:.86rem}.app-shell .page-body .table-wrap thead th{position:sticky;top:0;z-index:1;background:#f3f6fa;color:#1e4976;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:10px 12px;border-bottom:1px solid #e2e8f0;white-space:nowrap}.app-shell .page-body .table-wrap tbody td{padding:10px 12px;border-bottom:1px solid rgba(226,232,240,.75);vertical-align:top;color:#1e3348}.app-shell .page-body .table-wrap tbody tr:hover td{background:#eff8ee59}.app-shell .page-body .table-wrap tbody tr:last-child td{border-bottom:0}.app-shell .page-body .table-wrap .empty{color:#94a3b8;text-align:center;padding:24px 12px}.app-shell .page-body .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.app-shell .page-body .search-box{display:flex;align-items:center;gap:8px;flex:1;min-width:180px;padding:0 12px;height:36px;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;transition:border-color .15s ease,box-shadow .15s ease}.app-shell .page-body .search-box:focus-within{border-color:#006b6673;box-shadow:0 0 0 3px #006b661f;background:#fff}.app-shell .page-body .search-box span{color:#94a3b8}.app-shell .page-body .search-box input{border:0;background:transparent;width:100%;font:inherit;color:#1e3348}.app-shell .page-body .search-box input:focus{outline:none}.app-shell .page-body label{font-size:.78rem;font-weight:600;color:#5c463b}.app-shell .page-body input:not([type=checkbox]):not([type=radio]),.app-shell .page-body select,.app-shell .page-body textarea{border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;color:#1e3348;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.app-shell .page-body input:not([type=checkbox]):not([type=radio]):focus,.app-shell .page-body select:focus,.app-shell .page-body textarea:focus{outline:none;border-color:#006b6673;box-shadow:0 0 0 3px #006b661a;background:#fff}.app-shell .page-body .status{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em;background:#eff8ee;color:#004c49;border:1px solid #cbe5c9}.app-shell .page-body .status.warning{background:#fff8eb;border-color:#f2ddb0;color:#9a6700}.app-shell .page-body .status.inactive{background:#f3f5f8;border-color:#dde4ec;color:#94a3b8}.app-shell .page-body .modal-backdrop{background:#0f20346b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-shell .page-body .modal{border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 20px 50px #0f20342e;overflow:hidden}.app-shell .page-body .modal header{border-bottom:1px solid #e2e8f0;background:linear-gradient(180deg,#fff,#fafbfd)}.app-shell .page-body .modal header h2{color:#5a2a18;font-weight:700;letter-spacing:-.01em}.app-shell .page-body .modal footer{border-top:1px solid #e2e8f0;background:#fafbfd}body{background:#f4f6f9}/* HOTFIX: permitir scroll en formulario de trabajadores */
.app-shell .page-body .modal.worker-modal {
  max-height: calc(100vh - 40px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;}/* HOTFIX GENERAL: permitir scroll en modales altos */
.app-shell .page-body .modal {
  max-height: calc(100vh - 40px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
}
