*{box-sizing:border-box}body{margin:0;background:#f4f5f2;color:#203d37;font:14px/1.5 Arial,sans-serif}header{height:84px;border-bottom:1px solid #dce3dc;display:flex;align-items:center;gap:28px;padding:0 5%;background:#fff}.brand{font-size:24px;color:#214e42;text-decoration:none}.brand:first-letter{color:#c85d47}.privacy{margin-left:auto;font-size:12px;color:#608273}main{max-width:1450px;margin:auto;padding:48px 5%}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}small{font-size:10px;letter-spacing:2px;font-weight:bold;color:#7c8a7b}h1{font:36px/1.2 Georgia,serif;font-weight:normal;margin:13px 0}p{color:#748078}h2{font-size:17px;margin:0}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}.editor{background:white;border:1px solid #dfe5dd;border-radius:12px;padding:28px}.sectionhead{display:flex;align-items:center;gap:12px;margin:24px 0 18px}.sectionhead:first-child{margin-top:0}.sectionhead b{border-radius:50%;background:#edf2ec;color:#658574;font-size:11px;padding:7px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:12px;color:#52675d}input,select{display:block;width:100%;padding:11px 12px;border:1px solid #d4ddd5;border-radius:6px;margin-top:6px;background:#fff;color:#273f34;font:14px Arial}input:focus,select:focus{outline:2px solid #86a899;outline-offset:1px}button{background:#285c4b;border:1px solid #285c4b;border-radius:6px;color:white;padding:13px 20px;font-weight:bold;cursor:pointer}button:hover{filter:brightness(.94)}.secondary{background:white;color:#285c4b;border-color:#cbd8cc}.hint{font-size:12px;margin-top:-6px;line-height:1.6}details{border-top:1px solid #e3e8df;margin-top:25px;padding-top:18px;font-size:12px}summary{cursor:pointer;font-weight:bold;margin-bottom:14px}.check{display:flex;gap:10px;align-items:start;margin-top:22px}.check input{width:17px;margin-top:3px}.previewbar{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.7px;margin:0 3px 16px;color:#708277}.paper{background:white;border:1px solid #e1e6dc;box-shadow:0 8px 30px #213d3210;padding:40px;min-height:640px;border-top:4px solid #285c4b}.paper h2{font:28px Georgia;margin:30px 0 4px}.paper .period{color:#839082;font-size:12px}.parties{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0;white-space:pre-line;font-size:12px}.parties small{display:block;font:9px Arial;letter-spacing:1px;color:#869185;margin-bottom:9px}.paper table{width:100%;border-collapse:collapse;font-size:12px}.paper th{text-align:left;font-size:9px;color:#8b978b;letter-spacing:1px;padding:10px 0;border-bottom:1px solid #dce4d9}.paper td{padding:9px 0;border-bottom:1px solid #edf0e9}.paper td:last-child,.paper th:last-child{text-align:right;white-space:nowrap}.total{font-weight:bold}.net{background:#eaf1e9;padding:20px;margin-top:24px;display:flex;align-items:center;justify-content:space-between}.net strong{font:26px Georgia}.paper .note{font-size:10px;margin-top:22px}.exports{display:flex;gap:12px;margin-top:22px}.exports button{flex:1}.exporthint{font-size:11px;text-align:center}footer{border-top:1px solid #dce3dc;padding:24px 5%;color:#7e8c80;font-size:12px;display:flex;justify-content:space-between}a{color:#285c4b}#errors{color:#a34635;font-size:12px;margin-top:12px}@media(max-width:1000px){.workspace{grid-template-columns:1fr}.paper{min-height:0}aside{max-width:750px;width:100%;margin:auto}}@media(max-width:600px){header>span:not(.privacy){display:none}header{padding:18px;height:auto}.privacy{font-size:10px}main{padding:28px 16px}.intro{display:block}h1{font-size:29px}.intro button{margin-top:12px}.editor,.paper{padding:22px}.fields{gap:12px}.exports{flex-direction:column}.net strong{font-size:21px}}
.gav-card{border:1px solid #d9e3d9;border-radius:8px;padding:16px;margin:20px 0;background:#f8faf7;min-width:0}.gav-card legend{font-size:12px;font-weight:bold;padding:0 6px}.gav-result{font-size:12px;color:#285c4b}.gav-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px}.gav-actions button{font-size:11px;padding:8px 12px}.addgav{align-self:end}.gavwarning{color:#925b20;line-height:1.6;margin-top:16px}.gav-employer{border-top:1px solid #dce4d9;margin-top:25px;padding-top:12px}.gav-employer h3{font-size:14px}.gav-card [hidden]{display:none}#gav{margin-top:25px;border-top:1px solid #e3e8df}.paper td:first-child{overflow-wrap:anywhere;max-width:220px}.paper td:nth-child(2){font-size:10px;padding:5px}input{min-width:0}
.deduction-group{grid-column:1/-1;min-width:0;margin:4px 0;padding:16px;border:1px solid #cbdacd;border-radius:8px;background:#f7faf6}.deduction-group legend{font-size:13px;font-weight:bold;padding:0 7px;color:#285c4b}.deduction-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.deduction-summary{font-size:12px;color:#526f5d;margin:12px 0 0}@media(max-width:420px){.deduction-controls{grid-template-columns:1fr}}
.retirement-picker{margin-bottom:16px}.retirement-picker label{margin-bottom:12px}.retirement-picker .hint{margin:10px 0;font-size:11px;line-height:1.6}.retirement-picker [hidden]{display:none}

.deduction-controls[hidden]{display:none}


.allowance-fold{grid-column:1/-1;min-width:0;margin:0;padding:0;border:1px solid #cbdacd;border-radius:8px;background:#f7faf6}.allowance-fold>summary{padding:14px 16px;margin:0;font-size:13px;color:#285c4b}.allowance-fold>summary span{float:right;font-size:12px;font-weight:normal;margin-left:10px}.allowance-fold>summary:focus-visible{outline:2px solid #86a899;outline-offset:2px}.allowance-fold>.deduction-group{border:0;margin:0;border-top:1px solid #dfe7dc;border-radius:0 0 8px 8px}

.expense-position{min-width:0;margin:0 0 18px;padding:14px;border:1px solid #ccd9ce;border-radius:8px}.expense-position>label{display:block;margin-bottom:12px}.expense-position legend{font-size:13px}.expense-position button,#addExpense{font-size:13px;padding:9px 14px}.expense-position .deduction-controls{margin-top:12px}

[hidden]{display:none!important}

#salaryMain{margin-bottom:16px}#addSalary{font-size:13px;padding:9px 14px}

#employeeCollapsedName{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#employeeDetailsFields{padding:0}

.frequent-deductions{background:#edf4ee;border:2px solid #86a899;padding:18px}.frequent-deductions legend{font-size:14px}.frequent-deductions label{font-weight:bold;font-size:13px}.frequent-deductions .field-description{display:block;margin-top:7px;font-size:12px;line-height:1.5;font-weight:normal;color:#52675d}.frequent-deductions input{font-size:16px}@media(max-width:600px){.frequent-deductions .deduction-controls{grid-template-columns:1fr}}

#addIndividual{font-size:13px;padding:9px 14px}#individualFold .hint{margin:12px 0 0}

#thirteenthFold{margin-top:16px;margin-bottom:16px;background:#fff}

#standardRatesFold{margin-top:20px}

.help-trigger{cursor:help}.help-button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin:0 0 0 7px;border:1px solid #789887;border-radius:50%;background:transparent;color:#285c4b;font:bold 11px Arial;vertical-align:middle}.help-button:focus-visible{outline:2px solid #285c4b;outline-offset:3px}.help-popover{position:fixed;z-index:1000;padding:16px 18px;border:1px solid #b7cbbd;border-radius:9px;background:#fff;box-shadow:0 8px 28px #203d3729;max-height:calc(100vh - 24px);overflow:auto;color:#344d41;font:12px/1.6 Arial,sans-serif}.help-popover .hint,.help-popover .field-description{display:block;margin:0 0 10px;color:#344d41;font-size:12px;font-weight:normal}.help-popover>:last-child{margin-bottom:0}.help-popover p:empty{display:none}.field-help-title{display:inline}

.fold-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #dce3dc}.fold-toolbar button{font-size:12px;padding:10px 14px;flex:1;white-space:nowrap}.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}

.fold-toolbar{justify-content:flex-end;padding:0;margin:0 0 8px;border:0}.fold-toolbar #toggleAllFolds{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;padding:5px;border:0;border-radius:5px;background:transparent;color:#718278}.fold-toolbar #toggleAllFolds:hover{background:#edf2ec;color:#285c4b;filter:none}.fold-toolbar #toggleAllFolds:focus-visible{outline:2px solid #86a899;outline-offset:2px}

.address-parties{display:block;position:relative;min-height:270px;margin:0 0 28px}.sender-address{max-width:48%;overflow-wrap:anywhere}.recipient-address{position:absolute;top:105px;left:55%;width:45%;overflow-wrap:anywhere}.employee-meta{font-size:11px;line-height:1.6;margin:18px 0;overflow-wrap:anywhere}.employee-meta:empty{display:none}.address-parties b{font-weight:normal}#employerDetailsFields>label+label{margin-top:12px}

.help-trigger{cursor:inherit}.help-button{cursor:help}

.position-actions{display:flex;justify-content:flex-end;padding:0 16px 16px;gap:8px}.accept-position{padding:8px 18px;font-size:13px}.position-fold{margin:12px 0}.position-fold > .expense-position{margin:0 12px 12px}.position-fold > summary{display:flex;gap:12px;align-items:baseline}.position-fold > summary .position-title{flex:1;min-width:0;white-space:normal;font-size:inherit;color:inherit}.position-fold > summary .position-amount{white-space:nowrap}
.position-fold > summary::before{content:"▸";flex:none}.position-fold[open] > summary::before{content:"▾"}

#removePositionDialog{max-width:440px;width:calc(100% - 40px);border:1px solid #cedbd1;border-radius:12px;padding:26px;color:#203d37;background:#fff}#removePositionDialog::backdrop{background:rgba(20,40,34,.35)}#removePositionDialog h2{margin:0 0 12px;font-size:21px}#removePositionDialog p{line-height:1.5}.remove-dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}

.tax-basis-note{display:block;font-size:10px;line-height:1.25;font-weight:400;color:#65716b;margin-top:2px}

.vacation-credit{margin-top:18px;font-size:11px}.vacation-credit caption{text-align:left;font-weight:600;padding:0 0 8px}.vacation-credit td:not(:first-child),.vacation-credit th:not(:first-child){text-align:right;white-space:nowrap}
/* Consistent spacing and action hierarchy within the wage section. */
#salaryFold > .deduction-group{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px}
#salaryFold #salaryMain{margin:0}
#salaryFold #salaryPositions:empty{display:none}
#salaryFold #salaryPositions > .position-fold{margin:0 0 12px}
#salaryFold #salaryPositions > .position-fold:last-child{margin-bottom:0}
#salaryFold > .deduction-group > .allowance-fold,#salaryFold #monthlySalaryFold{margin:0;background:#fff}
#salaryFold > .deduction-group > .allowance-fold > summary,#salaryFold #monthlySalaryFold > summary{padding:14px 16px;min-height:52px}
#addSalary,#overtimeAdd,#wageAllowancesAdd{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:40px;padding:9px 14px;background:#fff;color:#285c4b;border:1px solid #a9c2b3;border-radius:7px;font-size:13px;line-height:20px}
#addSalary:hover,#overtimeAdd:hover,#wageAllowancesAdd:hover{background:#edf4ef;filter:none}
#salaryFold > .position-actions{margin:0 16px;padding:16px 0;border-top:1px solid #dfe7dc}
#salaryFold .accept-position{min-height:40px;padding:9px 18px;line-height:20px;border-radius:7px}
#salaryFold button:focus-visible{outline:2px solid #285c4b;outline-offset:3px}
.allowance-fold > .position-actions{background:#f7faf6;border-radius:0 0 8px 8px}.allowance-fold[open]:has(> .position-actions) > .deduction-group{border-bottom-left-radius:0;border-bottom-right-radius:0}

/* Numeric values are entered directly, without browser stepper controls. */
input[type="number"]{appearance:textfield;-moz-appearance:textfield}
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Keep only a small buffer below the actual address block. */
.address-parties{display:grid;grid-template-columns:55% 45%;grid-template-rows:minmax(105px,auto) auto;gap:0;min-height:0;margin:0 0 20px}.address-parties .sender-address{grid-column:1;grid-row:1;max-width:88%}.address-parties .recipient-address{position:static;grid-column:2;grid-row:2;width:100%}

.optional-legend{font-size:11px;color:#748078;margin:0 0 16px}.optional-legend span{color:#789887;font-size:14px}input::placeholder{color:#87998f;opacity:1}

.employer-logo{grid-column:2;grid-row:1;justify-self:end;align-self:start;max-width:100%;max-height:90px;width:auto;height:auto;object-fit:contain}.employer-logo-controls{margin-top:16px}.employer-logo-controls p{font-size:12px}.employer-logo-controls [hidden]{display:none}

/* Match the PDF logo inset: 10 mm from the top and right of the page. */
.paper{position:relative}.address-parties{position:static}.employer-logo{position:absolute;top:20px;right:20px;max-width:40%;max-height:90px}

#salaryFold #salaryPositions > .position-fold{background:#fff}


.employer-logo{width:40%;max-height:none;text-align:right;line-height:1.3;white-space:normal}.employer-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:90px;margin-left:auto;object-fit:contain}.example-logo-note{display:block;margin-top:5px;font-size:9px;color:#52675d}

.iban-status{display:block;margin-top:6px;font-size:11px;color:#285c4b}.iban-status.invalid{color:#a34635}#iban[aria-invalid="true"]{border-color:#a34635}

.month-transfer{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.month-transfer p{flex-basis:100%;margin:0;font-size:12px}.month-transfer [hidden]{display:none}

.ahv-status{margin-top:20px}.ahv-status .ahv-check{display:flex;align-items:flex-start;gap:10px;margin:16px 0}.ahv-check input{width:auto;min-width:18px;margin:2px 0}.ahv-status p{font-size:13px;line-height:1.5}

.disclaimer-short{font-size:12px;line-height:1.6;margin:18px 0 12px;color:#52675d}.disclaimer{margin-top:40px;padding:24px;border:1px solid #cadace;border-radius:10px;background:#f6f9f5;scroll-margin-top:24px}.disclaimer h2{font-size:21px;margin:0 0 16px}.disclaimer p{font-size:13px;line-height:1.65;margin:12px 0}.disclaimer a,.disclaimer-short a{text-decoration:underline}

/* Live preview uses the PDF drawing layout, scaled to the available width. */
.paper.pdf-live-preview{padding:0;border:0;min-height:0;background:transparent;box-shadow:none;display:grid;gap:18px}
.payroll-a4-page{display:block;width:100%;height:auto;background:white;border:1px solid #e1e6dc;box-shadow:0 8px 30px #213d3210;user-select:text}
.workspace>aside{min-width:0}
