:root{color:#1f2933;background:#f7f8f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}body,button,input,table,th,td,time{font-family:inherit}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{display:grid;grid-template-columns:280px minmax(320px,520px) minmax(420px,1fr);min-height:100vh}.sidebar{border-right:1px solid #dde3dc;background:#fff;padding:24px 18px}.brand,.section-heading,.actions{display:flex;align-items:center}.brand,.section-heading{justify-content:space-between;gap:16px}.brand p,.section-heading p,.payslip header p{color:#6b7280;font-size:.76rem;font-weight:700;letter-spacing:.08em;margin:0 0 4px;text-transform:uppercase}.brand h1,.section-heading h2,.payslip h2{margin:0}.brand h1{font-size:1.45rem}.icon-button,.primary-button{align-items:center;border:1px solid #cfd8d0;border-radius:8px;background:#fff;color:#1f2933;display:inline-flex;gap:8px;height:40px;justify-content:center;min-width:40px;padding:0 12px}.icon-button:hover,.primary-button:hover{border-color:#9aa99d}.icon-button.danger{color:#b42318}.primary-button{background:#1f6f61;border-color:#1f6f61;color:#fff;font-weight:700}.payslip-list{display:grid;gap:8px;margin-top:28px}.payslip-row{border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;display:grid;gap:3px;padding:12px;text-align:left;width:100%}.payslip-row:hover,.payslip-row.active{background:#eef4ef;border-color:#d4ded7}.payslip-row span{font-weight:700}.payslip-row small{color:#6b7280}.payslip-row strong{color:#1f6f61}.empty{color:#6b7280;margin:0}.editor{background:#fbfcf8;border-right:1px solid #dde3dc;padding:28px}.actions{gap:8px}.error{background:#fff1f0;border:1px solid #ffd0cc;border-radius:8px;color:#b42318;margin:18px 0;padding:10px 12px}input{border:1px solid #ccd6cf;border-radius:8px;background:#fff;color:#1f2933;min-height:42px;outline:none;padding:9px 11px;width:100%}input:focus{border-color:#1f6f61;box-shadow:0 0 0 3px #1f6f6124}.sheet-wrap{margin-top:22px;overflow-x:auto}.details-sheet{background:#fff;border:1px solid #cfd8d0;border-collapse:collapse;min-width:430px;table-layout:fixed;width:100%}.details-sheet th,.details-sheet td{border:1px solid #d7ddd7;height:42px;padding:0 12px}.details-sheet th{background:#eef4ef;color:#46515d;font-size:.78rem;letter-spacing:.08em;text-align:left;text-transform:uppercase}.details-sheet th:last-child,.details-sheet td:last-child{text-align:right}.details-sheet input{background:transparent;border:0;border-radius:0;box-shadow:none;min-height:40px;padding:6px 0;text-align:right}.details-sheet input:focus{box-shadow:inset 0 0 0 2px #1f6f61;padding:6px 8px}.details-sheet .text-input{text-align:left}.section-row td{background:#f2f5f1;color:#1f2933;font-weight:800}.total-row td{background:#fbfcf8;color:#1f6f61;font-weight:800}.deduction-total td:last-child{color:#b42318}.net-row td{background:#eef4ef;color:#1f6f61;font-size:1.05rem;font-weight:900;text-transform:uppercase}.preview-area{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:32px}.payslip{background:#fff;border:1px solid #ccd6cf;border-radius:8px;box-shadow:0 20px 55px #1f29331a;max-width:720px;overflow:hidden;padding:34px 38px 38px;position:relative;width:100%}.payslip:before{background-image:url(/elite-watermark.png);background-position:center;background-repeat:space;background-size:255px auto;content:"";filter:saturate(1.1) contrast(1.02);top:-38%;right:-38%;bottom:-38%;left:-38%;opacity:.11;pointer-events:none;position:absolute;transform:rotate(-28deg);transform-origin:center;z-index:0}.payslip>*{position:relative;z-index:1}.company-letterhead{border-bottom:2px solid #1f2933;color:#111;display:grid;font-size:clamp(1.25rem,2.7vw,1.95rem);font-weight:900;gap:2px;letter-spacing:0;line-height:1.05;margin-bottom:18px;padding-bottom:14px;text-align:center}.payslip header{align-items:flex-start;border-bottom:1px solid #d7ddd7;display:flex;justify-content:space-between;gap:24px;margin-bottom:22px;padding-bottom:16px}.slip-dates{display:grid;gap:10px;text-align:right}.slip-dates div{display:grid;gap:3px}.slip-dates span{color:#6b7280;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.payslip time{color:#46515d;font-weight:700}.payslip-table{border-collapse:collapse;table-layout:fixed;width:100%}.payslip-table td{border-bottom:1px solid #edf0ec;color:#1f2933;font-size:1.06rem;height:36px;padding:5px 0;vertical-align:middle}.payslip-table td:first-child{width:46%}.payslip-table td:nth-child(2),.payslip-table td:nth-child(3){font-variant-numeric:tabular-nums;text-align:right}.payslip-table td:nth-child(2){color:#2f3a45;padding-right:28px;width:27%}.payslip-table td:nth-child(3){width:27%}.payslip-table .breakdown-section td{border-bottom:0;color:#1f2933;font-size:1.05rem;font-weight:900;height:42px;padding-top:14px}.payslip-table .total-cell{border-top:2px solid currentColor;font-weight:900}.payslip-table .cola-row td:nth-child(2),.payslip-table .cola-row td:nth-child(3){color:#00c;font-weight:900}.payslip-table .deduction-line td,.payslip-table .deduction-line td:nth-child(2){color:#d71920}.payslip-table .deduction-line td:nth-child(2),.payslip-table .deduction-line td:nth-child(3){font-weight:800}.blue{color:#00c;font-weight:800!important}.red{color:#d71920;font-weight:800!important}.net-row-slip td{border-bottom:0;padding-top:12px}.net-row-slip td:first-child{color:#00c;font-size:1.14rem;font-weight:900;text-transform:uppercase}.net-amount{border-bottom:4px double #0000cc!important;border-top:2px solid #0000cc;color:#00c!important;font-size:1.18rem!important;font-weight:900!important;padding-bottom:4px!important}@media(max-width:1180px){.app-shell{grid-template-columns:240px minmax(320px,1fr)}.preview-area{grid-column:1 / -1;padding-top:0}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar,.editor{border-right:0;border-bottom:1px solid #dde3dc}.section-heading{align-items:flex-start;flex-direction:column}.actions{width:100%}.primary-button{flex:1}.preview-area,.payslip{padding:20px}.payslip header{gap:10px;flex-direction:column}.slip-dates{text-align:left}.payslip-table td{font-size:.98rem}.payslip-table td:nth-child(2){padding-right:16px}}@media print{@page{margin:.45in;size:letter portrait}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{background:#fff;min-height:auto}.print-hidden,.sidebar{display:none}.app-shell{display:block;min-height:auto}.preview-area{align-items:flex-start;display:flex;justify-content:center;min-height:auto;padding:0}.payslip{border:0;border-radius:0;box-shadow:none;max-width:7.35in;padding:.35in .42in .42in;page-break-inside:avoid;width:100%}.payslip:before{background-position:center;background-size:2in auto;top:-42%;right:-42%;bottom:-42%;left:-42%;opacity:.1}.company-letterhead{font-size:20pt;margin-bottom:14pt;padding-bottom:10pt}.payslip header{margin-bottom:16pt;padding-bottom:10pt}.brand p,.section-heading p,.payslip header p,.slip-dates span{font-size:8pt}.payslip h2{font-size:17pt}.payslip time{font-size:10pt}.payslip-table td{font-size:11pt;height:25pt;padding:3pt 0}.payslip-table .breakdown-section td{font-size:11pt;height:29pt;padding-top:9pt}.net-row-slip td:first-child,.net-amount{font-size:12pt!important}}
