/* Once Control Panamá · Cierre de planilla v296. Solo presentación. */
html body .ocp-payroll-close{--close-text:#17384b;--close-muted:#506977;--close-line:#cbdde8;--close-surface:#fff;--close-soft:#f3f8fb;--close-net:#0b5471;--close-net-text:#fff;--close-half:#dff0fb;--close-half-text:#0b4661;min-width:0;padding:18px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:var(--close-text)}
html body .ocp-payroll-close :is(h2,h3,h4,p){margin:0}
html body .ocp-payroll-close,html body .ocp-payroll-close .payroll-total-summary{scroll-margin-top:125px}
html body .ocp-payroll-close :is(h2,h3,h4,p,span,small,strong,b){-webkit-text-fill-color:currentColor!important;opacity:1!important}
html body .ocp-payroll-close :is(.payroll-total-card,.payroll-calculation-group,.paybox,.payroll-half-net){transition:none!important}
html body .ocp-payroll-close .paygrid .hidden,html body .ocp-payroll-close .payroll-total-grid .payroll-total-card.hidden{display:none!important}
html body .ocp-payroll-close .payroll-overview-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:0;border:0}
html body .ocp-payroll-close h2{font-size:21px;line-height:1.3;color:var(--close-text)!important}
html body .ocp-payroll-close .payroll-overview-heading p{margin-top:4px;line-height:1.5;color:var(--close-muted)!important;font-size:14px}
html body .ocp-payroll-close .period-pill{flex:0 0 auto;background:var(--close-half)!important;color:var(--close-half-text)!important;border:1px solid var(--close-line);border-radius:6px;padding:7px 10px;font-size:12px;text-transform:none}
html body .ocp-payroll-close .payroll-calculation-groups{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:stretch;margin:0!important}
html body .ocp-payroll-close .payroll-calculation-group{padding:15px!important;min-width:0;border:1px solid var(--close-line)!important;border-radius:8px!important;background:var(--close-surface)!important;box-shadow:none!important}
html body .ocp-payroll-close .payroll-calculation-group h3{font-size:15px;line-height:1.4;color:var(--close-text)!important;margin:0 0 8px;padding:0 0 10px;border-bottom:1px solid var(--close-line)}
html body .ocp-payroll-close .paybox{display:flex!important;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;min-height:0!important;height:auto!important;margin:0!important;padding:9px 0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;grid-column:auto!important}
html body .ocp-payroll-close .paybox small{flex:1 1 45%;min-width:0;margin:0;color:var(--close-muted)!important;font-size:13px;line-height:1.5;overflow-wrap:anywhere;text-transform:none;font-weight:500}
html body .ocp-payroll-close .paybox strong{flex:0 1 55%;min-width:0;max-width:65%;font-size:15px!important;line-height:1.5;font-weight:750;color:var(--close-text)!important;text-align:right;white-space:pre-line;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
html body .ocp-payroll-close .payroll-calculation-subtotal{border-top:1px solid var(--close-line)!important;margin-top:4px!important;padding-top:12px!important}
html body .ocp-payroll-close .payroll-calculation-subtotal strong{font-size:21px!important;color:#0b5471!important}
html body .ocp-payroll-close .payroll-group-caption{font-size:12px;line-height:1.6;color:var(--close-muted)!important;margin:10px 0 0;max-width:none}
html body .ocp-payroll-close .payroll-explanation{margin:12px 0 18px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:var(--close-muted)!important}
html body .ocp-payroll-close .payroll-explanation summary{display:list-item!important;width:fit-content;max-width:100%;padding:8px 0;cursor:pointer;color:#0b5471!important;font-size:13px;font-weight:650}
html body .ocp-payroll-close .payroll-explanation p{padding:4px 0;line-height:1.6;font-size:13px;max-width:none;color:var(--close-muted)!important}
html body .ocp-payroll-close .payroll-absence-reference{max-width:560px}
html body .ocp-payroll-close .payroll-total-summary{display:block!important;margin:0!important;padding:18px 0 0!important;background:transparent!important;border:0!important;border-top:1px solid var(--close-line)!important;border-radius:0!important;box-shadow:none!important;color:var(--close-text)!important}
html body .ocp-payroll-close .payroll-total-summary::before,html body .ocp-payroll-close .payroll-total-summary::after{display:none!important}
html body .ocp-payroll-close .payroll-total-heading{display:block;margin:0 0 13px;padding:0;border:0;background:transparent}
html body .ocp-payroll-close .payroll-total-kicker{display:block;font-size:11px;letter-spacing:.09em;line-height:1.5;font-weight:800;color:#0b5471!important;margin-bottom:4px}
html body .ocp-payroll-close #payrollTotalsTitle{font-size:19px;line-height:1.3;color:var(--close-text)!important}
html body .ocp-payroll-close .payroll-total-heading p{font-size:13px;line-height:1.5;color:var(--close-muted)!important;margin-top:4px}
html body .ocp-payroll-close .payroll-total-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:0!important;align-items:stretch}
html body .ocp-payroll-close .payroll-total-grid .payroll-total-card{display:flex!important;flex-direction:column;gap:0;min-width:0;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:16px!important;border:1px solid var(--close-line)!important;border-radius:8px!important;box-shadow:none!important;background:var(--close-surface)!important;color:var(--close-text)!important;grid-column:auto!important;order:0}
html body .ocp-payroll-close .payroll-half-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:12px;padding:0 0 10px;border-bottom:1px solid var(--close-line)}
html body .ocp-payroll-close .payroll-half-heading h4{font-size:15px;line-height:1.4;font-weight:750;color:var(--close-text)!important}
html body .ocp-payroll-close .payroll-half-heading span{font-size:12px;line-height:1.5;color:var(--close-muted)!important;white-space:normal}
html body .ocp-payroll-close .payroll-gross-label{font-size:12px;line-height:1.5;color:var(--close-muted)!important}
html body .ocp-payroll-close .payroll-half-card>strong{display:block;font-size:23px!important;line-height:1.4;color:var(--close-text)!important;margin:3px 0 10px!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
html body .ocp-payroll-close .payroll-close-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;color:var(--close-muted)!important;font-size:13px;line-height:1.5;min-width:0}
html body .ocp-payroll-close .payroll-close-row span{min-width:0;flex:1}
html body .ocp-payroll-close .payroll-close-row b{min-width:0;text-align:right;font-size:13px;color:var(--close-text)!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
html body .ocp-payroll-close .payroll-half-net{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 16px;background:var(--close-half)!important;color:var(--close-half-text)!important;border:1px solid #8dbed8;border-radius:6px;margin-top:12px;padding:13px 14px}
html body .ocp-payroll-close .payroll-half-net small{font-size:13px;font-weight:750;color:var(--close-half-text)!important;line-height:1.5}
html body .ocp-payroll-close .payroll-half-net strong{font-size:24px!important;font-weight:800;line-height:1.4;color:var(--close-half-text)!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
html body .ocp-payroll-close .payroll-total-grid .payroll-total-deductions{grid-column:1/-1!important;order:1;background:var(--close-soft)!important}
html body .ocp-payroll-close .payroll-deduction-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin:0 0 10px}
html body .ocp-payroll-close .payroll-deduction-heading small{font-size:14px;font-weight:750;color:var(--close-text)!important;line-height:1.5}
html body .ocp-payroll-close .payroll-deduction-heading strong{font-size:24px!important;color:var(--close-text)!important;line-height:1.4;font-variant-numeric:tabular-nums}
html body .ocp-payroll-close .payroll-total-breakdown{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px 16px;width:100%;margin:0!important;padding:0!important}
html body .ocp-payroll-close .payroll-total-breakdown>span{display:flex!important;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0!important;margin:0!important;min-width:0;background:transparent!important;border:0!important;border-top:1px solid var(--close-line)!important;border-radius:0!important;color:var(--close-muted)!important;font-size:13px;line-height:1.5}
html body .ocp-payroll-close .payroll-total-breakdown b{color:var(--close-text)!important;white-space:nowrap;font-variant-numeric:tabular-nums}
html body .ocp-payroll-close .payroll-total-grid .payroll-total-grand{grid-column:1/-1!important;order:2;display:flex!important;flex-direction:row;justify-content:space-between;align-items:center;gap:12px 24px;background:var(--close-net)!important;border-color:var(--close-net)!important;color:var(--close-net-text)!important;min-height:0!important;padding:20px!important}
html body .ocp-payroll-close .payroll-total-grand>div{min-width:0;display:grid;gap:5px}
html body .ocp-payroll-close .payroll-total-grand small{font-size:16px;line-height:1.5;font-weight:800;color:var(--close-net-text)!important;-webkit-text-fill-color:var(--close-net-text)!important;opacity:1!important}
html body .ocp-payroll-close .payroll-total-grand .payroll-total-caption{font-size:13px;line-height:1.5;color:var(--close-net-text)!important;-webkit-text-fill-color:var(--close-net-text)!important;opacity:1!important;display:block}
html body .ocp-payroll-close .payroll-total-grand>strong{flex:0 1 auto;margin:0!important;font-size:clamp(25px,3vw,34px)!important;line-height:1.3;color:var(--close-net-text)!important;-webkit-text-fill-color:var(--close-net-text)!important;font-weight:850;white-space:nowrap;font-variant-numeric:tabular-nums;opacity:1!important}
html body .ocp-payroll-close[data-period=first] .payroll-half-net,html body .ocp-payroll-close[data-period=second] .payroll-half-net{display:none!important}
html body .ocp-payroll-close[data-period=first] .payroll-total-deductions,html body .ocp-payroll-close[data-period=second] .payroll-total-deductions{grid-column:auto!important;order:0}
html body .ocp-payroll-close[data-period=first] .payroll-total-breakdown,html body .ocp-payroll-close[data-period=second] .payroll-total-breakdown{grid-template-columns:minmax(0,1fr)!important}
html body .employee-quick-summary .employee-quick-half-net{background:#e0f1fc!important;border-color:#87bcd9!important}
html body #employeeDetailPanel .employee-quick-summary>div.hidden{display:none!important}
html body .employee-quick-summary :is(.employee-quick-half-net,.employee-quick-total){transition:none!important}
html body .employee-quick-summary .employee-quick-half-net :is(small,b){color:#0b4661!important;-webkit-text-fill-color:#0b4661!important;opacity:1!important}
html body .employee-quick-summary .employee-quick-total{background:#0b5471!important;border-color:#0b5471!important}
html body .employee-quick-summary .employee-quick-total :is(small,b){color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important}
html[data-theme=dark] body .ocp-payroll-close{--close-text:#eaf4fa;--close-muted:#c1d7e3;--close-line:#456574;--close-surface:#1c323e;--close-soft:#203b48;--close-net:#a1dffd;--close-net-text:#123f55;--close-half:#acd9ed;--close-half-text:#123d51}
html body #employeeDetailPanel .ocp-payroll-close .payroll-total-grand :is(small,strong,span){color:var(--close-net-text)!important;-webkit-text-fill-color:var(--close-net-text)!important;opacity:1!important}
html body #employeeDetailPanel .ocp-payroll-close .payroll-half-net :is(small,strong){color:var(--close-half-text)!important;-webkit-text-fill-color:var(--close-half-text)!important;opacity:1!important}
html[data-theme=dark] body .ocp-payroll-close :is(.payroll-total-kicker,.payroll-explanation summary,.payroll-calculation-subtotal strong){color:#a6def5!important}
html[data-theme=dark] body .employee-quick-summary .employee-quick-half-net{background:#acd9ed!important;border-color:#c0e6f7!important}
html[data-theme=dark] body .employee-quick-summary .employee-quick-total{background:#a1dffd!important;border-color:#c6ecff!important}
html[data-theme=dark] body .employee-quick-summary :is(.employee-quick-half-net,.employee-quick-total) :is(small,b){color:#123f55!important;-webkit-text-fill-color:#123f55!important;opacity:1!important}
@media(max-width:1050px){html body .ocp-payroll-close .payroll-calculation-groups{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body .ocp-payroll-close .payroll-calculation-group:last-child{grid-column:1/-1}html body .ocp-payroll-close .payroll-calculation-group:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}html body .ocp-payroll-close .payroll-calculation-group:last-child h3,html body .ocp-payroll-close .payroll-calculation-group:last-child .paybox:last-child{grid-column:1/-1}}
@media(max-width:700px){html body .ocp-payroll-close,html body .ocp-payroll-close .payroll-total-summary{scroll-margin-top:260px}html body .ocp-payroll-close .payroll-calculation-groups{grid-template-columns:minmax(0,1fr)!important}html body .ocp-payroll-close .payroll-calculation-group:last-child{display:block}html body .ocp-payroll-close .payroll-total-grid{grid-template-columns:minmax(0,1fr)!important}html body .ocp-payroll-close .payroll-total-breakdown{grid-template-columns:minmax(0,1fr)!important}html body .ocp-payroll-close .payroll-total-grid .payroll-total-grand{align-items:flex-start;flex-direction:column;gap:10px;padding:16px!important}html body .ocp-payroll-close .payroll-total-grand>strong{font-size:30px!important}html body .ocp-payroll-close .payroll-overview-heading{align-items:flex-start;flex-wrap:wrap}html body .ocp-payroll-close .payroll-total-grid .payroll-total-card{padding:14px!important}}
@media(max-width:380px){html body .ocp-payroll-close .payroll-rate-row{flex-direction:column;gap:4px}html body .ocp-payroll-close .payroll-rate-row strong{max-width:100%;text-align:left}html body .ocp-payroll-close .payroll-half-net{align-items:flex-start;flex-direction:column}}
