*{box-sizing:border-box;margin:0;padding:0}body{color:#000;background:#f5f5f5;font-family:Courier New,Courier,monospace;font-size:10pt}@media print{body{background:#fff}}.upload-container{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.drop-zone{text-align:center;cursor:pointer;border:3px dashed #aaa;border-radius:12px;padding:60px 80px;transition:border-color .2s,background .2s}.drop-zone.drag-over{background:#e8f0fe;border-color:#4a90d9}.drop-zone p{color:#555;margin:8px 0;font-size:14px}.file-button{color:#fff;cursor:pointer;background:#4a90d9;border-radius:6px;margin-top:8px;padding:10px 24px;font-size:14px;display:inline-block}.file-button:hover{background:#357abd}.error{color:#c00;margin-top:16px;font-size:14px}.toolbar{background:#fff;border-bottom:1px solid #ddd;gap:12px;padding:12px 20px;display:flex}.toolbar button{color:#fff;cursor:pointer;background:#4a90d9;border:none;border-radius:4px;padding:8px 20px;font-size:13px}.toolbar button:hover{background:#357abd}.payroll-sheet{background:#fff;max-width:1400px;margin:0 auto;padding:20px}.payroll-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.header-title{margin-bottom:4px;font-size:12pt;font-weight:700}.header-employee{font-size:10pt}.meta-table td{white-space:nowrap;padding:0 4px;font-size:10pt}.payroll-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:10pt}.payroll-table th,.payroll-table td{text-align:center;height:15px;padding:1px 2px;line-height:15px;overflow:hidden}.payroll-table th{white-space:pre-line;vertical-align:bottom;padding-bottom:2px;font-size:9pt;font-weight:700}.payroll-table th:first-child,.payroll-table td:first-child{text-align:left;width:60px}.payroll-table th:nth-child(2),.payroll-table td:nth-child(2){text-align:center;width:28px}.payroll-table th:nth-child(3),.payroll-table td:nth-child(3),.payroll-table th:nth-child(4),.payroll-table td:nth-child(4){width:50px}.payroll-table th:nth-child(n+5):nth-child(-n+18),.payroll-table td:nth-child(n+5):nth-child(-n+18){width:52px}.payroll-table th:nth-child(19),.payroll-table td:nth-child(19){text-align:left;width:auto}.header-row,.header-row th.bold-border-col,.sum-row,.sum-row td.bold-border-col{border-top:2px solid #000;border-bottom:2px solid #000}.sum-cell{font-weight:700}.payroll-table input{text-align:center;width:100%;font-family:inherit;font-size:inherit;background:0 0;border:none;outline:none;height:15px;padding:0;line-height:15px}.payroll-table input:focus{background:#fffde7;outline:1px solid #4a90d9}.col-day{text-align:left;white-space:nowrap;font-size:9pt}.col-marker{color:#555;font-weight:700}.col-comment input{text-align:left}.separator{height:15px}.info-table{border-collapse:collapse;width:100%;margin-top:4px;font-size:10pt}.info-table td{white-space:nowrap;padding:1px 4px}.info-label{text-align:right;font-weight:400}.info-value{width:60px}.info-value input{text-align:right;width:60px;font-family:inherit;font-size:inherit;background:0 0;border:none;outline:none;padding:0}.info-value input:focus{background:#fffde7;outline:1px solid #4a90d9}.urlaub-table{margin-top:8px}@media print{.no-print{display:none!important}@page{size:A4 landscape;margin:5mm 8mm}body{font-size:9pt}.payroll-sheet{max-width:none;padding:0}.payroll-header{margin-bottom:4px}.header-title{margin-bottom:1px;font-size:10pt}.header-employee{font-size:9pt}.meta-table td{padding:0 2px;font-size:9pt}.payroll-table{font-size:9pt}.payroll-table th,.payroll-table td{height:13px;padding:0 1px;line-height:13px}.payroll-table th{padding-bottom:1px;font-size:8pt}.payroll-table input{background:0 0;border:none;outline:none;height:13px;line-height:13px}.payroll-table input:focus{background:0 0;outline:none}.separator{height:6px}.info-table{margin-top:1px;font-size:9pt}.info-table td{padding:0 2px}.info-value input{background:0 0;border:none;outline:none}.info-value input:focus{background:0 0;outline:none}.urlaub-table{margin-top:2px}.header-row,.sum-row{border-top:2.5pt solid #000;border-bottom:2.5pt solid #000}}
