.pp-settings{margin-top:32px;border:1px solid #e9d6cc;background:#f5f9fc;border-radius:16px;padding:26px}.pp-settings h3,.pp-results h3{font-size:24px;line-height:1.3;margin:0 0 12px;color:#502f1e}.pp-eyebrow{font-size:11px;font-weight:750;letter-spacing:1.5px;color:#9f4f27;margin-bottom:9px}.pp-intro{font-size:14px;line-height:1.7;color:#8b6e60;margin:0 0 22px}.pp-group{border:1px solid #eee1da!important;border-radius:10px;margin:15px 0!important;padding:18px!important;background:white}.pp-group>summary{font-size:15px!important;font-weight:700;color:#673d28;cursor:pointer;line-height:1.45}.pp-group[open]>summary{margin-bottom:18px}.pp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px 20px}.pp-field{min-width:0;margin-bottom:16px}.pp-field input,.pp-field select{min-width:0}.pp-field small{display:block;line-height:1.6;margin-top:7px}.pp-settings .hint{font-size:13px;line-height:1.7;color:#907162}.pp-check{display:flex!important;align-items:flex-start!important;gap:12px!important;line-height:1.6!important;font-size:14px!important;cursor:pointer}.pp-check input[type=checkbox]{width:18px!important;height:18px!important;flex:0 0 18px;margin:3px 0 0!important;min-height:0!important;accent-color:#b6511f}.pp-note{padding:14px 16px;border-left:3px solid #b75f34;background:#edf6fc;color:#7e5541;font-size:13px;line-height:1.7}.pp-auto{font-size:12px;color:#8f6957;background:#f1f7fb;padding:9px 12px;border-radius:6px}.pp-allocation{min-width:0;border:1px solid #ebdbd3;border-radius:9px;padding:16px;margin:14px 0}.pp-allocation legend{font-size:12px;color:#905c43;padding:0 6px}.pp-add{font-size:14px;margin:7px 0}.pp-correction{border-top:1px solid #e0e9ef;padding:12px 0}.pp-correction>summary{font-size:14px}.pp-results{margin-top:26px}.pp-review-card{border:1px solid #eddfd8;border-radius:12px;padding:20px;margin:17px 0}.pp-review-card h4{font-size:16px;margin:0 0 12px}.pp-review-card table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.pp-review-card th,.pp-review-card td{padding:11px 7px;border-bottom:1px solid #e3ebf1;text-align:right;vertical-align:top;overflow-wrap:anywhere}.pp-review-card th:first-child,.pp-review-card td:first-child{text-align:left;width:54%}.pp-manual{display:block;margin-top:5px;color:#84632b;font-size:11px}.pp-net{font-size:13px;font-weight:700;color:#8e4927;line-height:1.7}.pp-local-banner{padding:11px 16px;border-radius:7px;background:#ecf7f5;color:#673923;font-size:13px;margin:0 0 22px}.pp-stale{opacity:.5}.pp-document-deductions{margin-top:18px;font-size:13px;color:#37271f;padding:10px}.pp-document-deductions table{width:100%;border-collapse:collapse}.pp-document-deductions th,.pp-document-deductions td{padding:7px 9px;text-align:right;border-bottom:1px solid #dbe3e9}.pp-document-deductions th:first-child,.pp-document-deductions td:first-child{text-align:left;width:60%}.pp-document-deductions th{color:white;background:var(--ps_template_color)}@media(max-width:700px){.pp-settings{padding:18px}.pp-grid{grid-template-columns:1fr}.pp-review-card{padding:14px}.pp-review-card table{font-size:12px}.pp-settings h3,.pp-results h3{font-size:21px}}

/* Paycheck editors follow their own pay period; shared elections stay above the list. */
.pp-period-settings{border-top:1px solid #dbe5ed;margin-top:20px;padding-top:8px}.pp-subheading{font-size:18px;color:#673d28;margin:22px 0 8px}.pp-state-year+.pp-state-year{border-top:1px solid #dbe5ed;margin-top:20px;padding-top:20px}.pp-state-year h4{margin:0 0 18px}.pp-add-earning{display:flex;gap:12px;align-items:center;margin:14px 0}.pp-add-earning select{flex:1;min-width:0}.pp-add-earning button{white-space:nowrap}.pp-period-total{border-top:1px solid #dbe5ed;margin:20px 0;padding-top:16px;font-weight:650;font-size:14px;line-height:1.9;color:#8e4927}.pp-settings{margin-bottom:28px}.pp-programs h3{font-size:17px!important}.pp-review-card .pp-ledger{margin-bottom:20px}.pp-earnings>select{width:100%}
/* Native template grids retain their original columns, borders and typography. */
.ps_template .pp-native-document{font:inherit}
.pp-program .pp-setting-summary{font-size:11px}.pp-inline-error{margin:14px 0}.pp-field [aria-invalid=true]{border-color:#bb4855!important;box-shadow:0 0 0 1px #bb4855}
#preview-dialog .dialog-period{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}#preview-position{font-weight:650;font-size:14px;text-align:center}#preview-prev,#preview-next{width:40px;height:40px;border:1px solid #ebdbd3;border-radius:50%;color:#b7511f;background:#fff;font-size:20px;flex:none}#preview-prev:disabled,#preview-next:disabled{opacity:.35;cursor:default}#preview-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0}#preview-pagination[hidden],#preview-dialog .dialog-period[hidden]{display:none}#preview-pagination button{width:36px;height:36px;border:1px solid #ebdbd3;border-radius:8px;font-size:14px;color:#8e4927;background:#fff}#preview-pagination button[aria-current]{background:#c25621;color:white;border-color:#c25621}#preview-dialog .dialog-period select{flex-basis:100%;width:auto;max-width:300px;margin:0 auto}#dialog-paper{touch-action:pan-y}
@media(max-width:560px){.pp-add-earning{flex-wrap:wrap}.pp-add-earning select{flex-basis:100%}#preview-position{font-size:12px}#preview-prev,#preview-next{width:32px;height:32px}.pp-settings{padding:16px}.pp-group{padding:14px!important}.pp-allocation{padding:13px}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#preview-dialog .dialog-period{display:grid;grid-template-columns:40px minmax(0,auto) 40px;justify-content:center}#preview-dialog .dialog-period select{grid-column:1/-1;width:100%;justify-self:center;margin:0}#preview-position{align-self:center}

.pp-review-card .pp-ledger th:first-child,.pp-review-card .pp-ledger td:first-child{width:auto}.pp-review-card .pp-ledger td{padding:10px 5px}.pp-review-card .pp-ledger{font-size:12px}.pp-review-card .pp-ledger td:not(:first-child){overflow-wrap:normal}

/* Compact optional adjustments, scoped away from the outer pay-period chevron. */
.step-panel details.pp-group>summary,.step-panel details.pp-correction>summary{display:grid!important;grid-template-columns:minmax(0,1fr) 18px;gap:6px 14px;align-items:center;padding:0!important;list-style:none;font-weight:700;cursor:pointer}
.step-panel details.pp-group>summary::before,.step-panel details.pp-correction>summary::before{content:none!important}
.step-panel details.pp-group>summary::marker,.step-panel details.pp-correction>summary::marker{content:''}
.step-panel details.pp-group>summary::-webkit-details-marker,.step-panel details.pp-correction>summary::-webkit-details-marker{display:none}
.step-panel details.pp-group>summary::after,.step-panel details.pp-correction>summary::after{content:''!important;display:block!important;grid-column:2;grid-row:1;justify-self:end;width:18px;height:18px;margin:0!important;border:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2365788b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/18px 18px no-repeat;transform:rotate(0deg)!important}
.step-panel details.pp-group[open]>summary::after,.step-panel details.pp-correction[open]>summary::after{transform:rotate(180deg)!important}
.step-panel details.period-card>summary::after{transform:rotate(0deg)!important}.step-panel details.period-card[open]>summary::after{transform:rotate(180deg)!important}
.pp-summary-title{grid-column:1;grid-row:1;min-width:0;line-height:1.6}.pp-optional{display:inline-block;margin-left:9px;color:#907669;font-size:11px;font-weight:500;letter-spacing:0;vertical-align:middle}.pp-setting-summary{grid-column:1/-1;display:block;color:#907162;font-size:12px;font-weight:400;line-height:1.7}.pp-ytd-note{padding:12px 14px;border-left:2px solid #e9c8b7;margin:18px 0 0}.pp-state-assumption{margin:-8px 0 20px}
.pp-compact-row{container-type:inline-size;padding:15px!important}.pp-row-fields{display:grid;grid-template-columns:repeat(var(--pp-fields),minmax(0,1fr)) auto;gap:12px;align-items:end}.pp-row-fields>.pp-field{margin:0;min-width:0}.pp-row-fields label{font-size:12px;line-height:1.5;display:block;margin:0 0 7px}.pp-row-fields input{width:100%;height:46px;padding:10px 11px;font-size:15px}.pp-row-fields>.pp-add{font-size:12px;align-self:end;margin:0;height:46px;padding:0 2px;white-space:nowrap;color:#b3484d}.pp-prior-hint{display:block;margin:12px 0 0;font-size:11px!important;line-height:1.6}
@container(max-width:420px){.pp-row-fields{grid-template-columns:minmax(0,1fr)}.pp-row-fields>.pp-add{justify-self:start;height:34px}}
@media(max-width:700px){.pp-row-fields{grid-template-columns:minmax(0,1fr)}.pp-row-fields>.pp-add{justify-self:start;height:34px}.pp-optional{font-size:10px}.pp-setting-summary{font-size:11px}}

/* Preserve readable headers and amounts in narrow review tables. */
.pp-review-card .pp-ledger th{overflow-wrap:normal;white-space:nowrap}
@media(max-width:560px){
 .pp-review-card table,.pp-review-card .pp-ledger{table-layout:auto;font-size:11px}
 .pp-review-card table th,.pp-review-card table td,.pp-review-card .pp-ledger td{padding:10px 3px}
 .pp-review-card table th:not(:first-child),.pp-review-card table td:not(:first-child){white-space:nowrap;overflow-wrap:normal}
 .pp-review-card .pp-ledger th:first-child{white-space:normal}
 .pp-review-card table:not(.pp-ledger) th:first-child,.pp-review-card table:not(.pp-ledger) td:first-child{width:auto}
}
@media(max-width:360px){
 .pp-review-card table,.pp-review-card .pp-ledger{font-size:10px}
 .pp-review-card table th,.pp-review-card table td,.pp-review-card .pp-ledger td{padding-left:2px;padding-right:2px}
}

/* Give review guidance and the checkout acknowledgment room to breathe. */
.pp-results>.pp-note{margin:24px 0 0}.pp-results{margin-bottom:28px}
.pp-review-ack{margin:0;padding:22px 32px;font-size:13px;line-height:1.8;color:#7e5541;background:#f5f9fc;border-top:1px solid #e3ebf1}
.pp-review-ack[hidden]{display:none}
@media(max-width:560px){.pp-review-ack{padding:20px 19px;font-size:12px}}

/* Keep earning inputs aligned when one field has a validation message. */
.pp-row-fields{align-items:start}
.pp-row-fields>.pp-add{margin-top:25px;align-self:start}
.pp-row-fields>.pp-remove{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:46px;min-width:96px;padding:0 12px;border:1px solid #e8bfc5;border-radius:8px;background:#fff6f7;color:#a73847;font-size:12px;font-weight:650;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s}
.pp-row-fields>.pp-remove:hover{background:#fce8ec;border-color:#cf8793;color:#922c3a;text-decoration:none}
.pp-remove svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pp-remove:focus-visible{outline:3px solid #f39160;outline-offset:3px}
.pp-field .error{display:none}
.pp-field.invalid .error{display:block}
.pp-field-error{display:block;color:#b03747;font-size:11px;line-height:1.6;margin:7px 0 0}
.pp-earnings>.pp-prior-hint{margin:12px 0 15px}
@container(max-width:420px){.pp-row-fields>.pp-add{margin-top:0}.pp-row-fields>.pp-remove{height:42px;justify-self:end}}
@media(max-width:700px){.pp-row-fields>.pp-add{margin-top:0}.pp-row-fields>.pp-remove{height:42px;justify-self:end}}
@media(min-width:701px){
 @container(min-width:421px) and (max-width:520px){
  .pp-row-fields label{min-height:36px}
  .pp-row-fields>.pp-add{margin-top:43px}
 }
}

/* Extended ledgers grow before totals, including inside scaled gallery thumbnails. */
.pp-native-document :is(.ps_template_classic,.ps_template_modern,.ps_template_bankstyle) .template_sections>.template_section{flex:0 0 auto}
.pp-native-document .ps_template_classic .template_section5 .section>ul>li{flex:0 0 auto}
.pp-native-document .ps_template_classic .template_section5 .section .section_data>ul{flex:0 0 auto}
.pp-native-document :is(.ps_template_classic,.ps_template_modern,.ps_template_bankstyle) ul[data-payroll-kind]{flex:0 0 auto;min-height:0;align-items:stretch}
.pp-native-document :is(.ps_template_classic,.ps_template_modern,.ps_template_bankstyle) ul[data-payroll-kind]>li{height:auto;max-height:none;min-width:0}
.pp-native-document :is(.ps_template_classic,.ps_template_modern,.ps_template_bankstyle) [data-payroll-cell-type="label"]{white-space:normal;overflow-wrap:anywhere}
.pp-native-document [data-payroll-cell-type="number"]{white-space:nowrap;overflow-wrap:normal}
