.panel-toolbar{display:flex;gap:10px;justify-content:flex-end;margin:12px 0}.slip-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.history-list{display:grid;gap:10px}.history-list>div{display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;padding:12px 14px;border:1px solid #dbe5f2;border-radius:12px}.history-list small{color:#64748b}.confirm-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;border:1px solid #dbe5f2;border-radius:12px;padding:12px}.confirm-row input{width:auto!important;margin-top:3px}.audit-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.audit-kpis>div{padding:14px;border:1px solid #dbe5f2;border-radius:12px;background:#f8fafc}.audit-kpis span{display:block;color:#64748b;font-size:12px}.audit-kpis b{font-size:20px}.audit-kpis .critical{background:#fff1f2;border-color:#fecdd3;color:#be123c}.audit-kpis .ok{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.audit-list{display:grid;gap:10px;max-height:42vh;overflow:auto;margin:16px 0}.audit-list article{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:12px}.audit-list p{margin:3px 0;color:#475569}.audit-list small{color:#64748b}.danger-note{padding:16px;border:1px solid #fecdd3;border-radius:14px;background:#fff1f2;color:#9f1239}.slip-modal{width:min(1040px,96vw);max-width:1040px}.slip-backdrop{padding:24px}.payslip-document{position:relative;width:100%;min-height:980px;padding:42px;background:#fff;color:#15243b;border:1px solid #bed0e6;border-radius:18px;overflow:hidden;font-family:"Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif}.payslip-document header{display:grid;grid-template-columns:74px 1fr auto;gap:16px;align-items:center;padding-bottom:22px;border-bottom:3px solid #1263ce}.payslip-document h1{margin:0;color:#0b57b7;font-size:25px}.payslip-document header p{margin:4px 0 0;color:#64748b}.slip-logo{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:#0b57b7;color:#fff;font-size:26px;font-weight:800}.slip-version{text-align:right;font-weight:700;color:#0b57b7}.payslip-watermark{position:absolute;right:26px;top:18px;padding:5px 12px;border:2px solid #ef4444;border-radius:999px;color:#dc2626;font-size:12px;font-weight:800;transform:rotate(-2deg);background:#fff}.payslip-watermark.issued{border-color:#10b981;color:#047857}.slip-info{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.slip-info>div{display:flex;flex-direction:column;padding:16px;border:1px solid #dbe5f2;border-radius:14px;background:#f8fbff}.slip-info span,.payslip-document footer span{color:#64748b;font-size:12px}.slip-info small{margin-top:3px;color:#475569}.slip-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.slip-columns>div{border:1px solid #dbe5f2;border-radius:14px;overflow:hidden}.slip-columns h2{margin:0;padding:11px 14px;background:#1263ce;color:#fff;font-size:15px}.slip-row{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #e2e8f0}.slip-row.total{font-weight:800;background:#f1f7ff}.slip-formula{display:block;padding:6px 14px;color:#8a5a12;background:#fff8e7}.slip-reasons{margin-top:16px;padding:12px 14px;border:1px solid #f5d28a;border-radius:12px;background:#fffaf0}.slip-reasons h3{margin:0 0 6px;color:#8a5a12}.slip-reasons p{margin:4px 0;font-size:12px}.slip-net{display:flex;justify-content:space-between;align-items:center;margin:20px 0;padding:18px 20px;border-radius:14px;background:#1263ce;color:#fff}.slip-net strong{font-size:28px}.payslip-document footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding-top:18px;border-top:1px solid #94a3b8}.payslip-document footer>div{display:flex;flex-direction:column}.pdf-stage{position:fixed;left:-12000px;top:0;width:794px;z-index:-10}.pdf-stage .payslip-document{width:794px;min-height:1123px;border-radius:0}.wide{width:min(920px,95vw)}.info{background:#eff6ff!important;color:#1d4ed8!important}.secure-note{word-break:break-word}
@media(max-width:900px){.slip-summary,.audit-kpis{grid-template-columns:1fr 1fr}.slip-columns,.slip-info{grid-template-columns:1fr}.payslip-document{padding:24px;min-height:auto}.payslip-document header{grid-template-columns:58px 1fr}.slip-logo{width:50px;height:50px}.slip-version{grid-column:1/-1;text-align:left}.payslip-document footer{grid-template-columns:1fr}.history-list>div{grid-template-columns:1fr}.panel-toolbar{justify-content:stretch;flex-wrap:wrap}.panel-toolbar button{flex:1}.slip-backdrop{padding:8px}}
@media(max-width:560px){.slip-summary,.audit-kpis{grid-template-columns:1fr}.payslip-document{padding:18px}.payslip-document h1{font-size:19px}.slip-net strong{font-size:21px}.slip-columns{gap:12px}.payslip-document header{padding-top:24px}}
@media print{body>*:not(#modal-root){display:none!important}.modal-backdrop{position:static!important;background:#fff!important;padding:0!important}.modal{box-shadow:none!important;border:0!important}.modal-head,.modal-actions{display:none!important}.payslip-document{border:0!important;border-radius:0!important}}

/* Official one-page payslip v3 */
.slip-modal{max-height:94vh;overflow:auto}.slip-logo{width:76px;height:58px;object-fit:contain;border-radius:0;background:#fff}.company-block p{margin:2px 0;font-size:11px;color:#475569}.slip-version{display:flex;flex-direction:column;gap:2px}.slip-version small{font-size:10px}.official-warning{margin:10px 0;padding:8px 12px;border:1px solid #f59e0b;background:#fffbeb;color:#92400e;font-size:12px;font-weight:700}.official-grid{grid-template-columns:repeat(2,1fr);gap:9px;margin:12px 0}.official-grid>div{padding:10px 12px}.legal-cert{margin:10px 0;padding:9px 12px;border:1px solid #cbd5e1;background:#f8fafc;font-size:10px;color:#475569}.legal-cert p{margin:2px 0}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.signature-grid>div{display:flex;min-height:72px;flex-direction:column;justify-content:flex-end;text-align:center;padding:8px;border:1px solid #cbd5e1}.signature-grid span,.signature-grid small{font-size:10px;color:#64748b}.payslip-document{min-height:0;padding:28px 32px;border-radius:10px}.payslip-document header{grid-template-columns:86px 1fr 160px;padding-bottom:12px}.payslip-document h1{font-size:21px}.slip-row{padding:6px 12px;font-size:12px}.slip-columns h2{padding:8px 12px}.slip-net{margin:11px 0;padding:12px 16px}.slip-net strong{font-size:24px}.payslip-document footer{padding-top:9px;font-size:10px}.pdf-stage .payslip-document{width:794px!important;min-height:1123px!important;padding:28px 32px!important;border-radius:0!important}.pdf-stage .slip-columns,.pdf-stage .slip-info{grid-template-columns:1fr 1fr!important}.pdf-stage .signature-grid{grid-template-columns:repeat(3,1fr)!important}.pdf-stage .payslip-document header{grid-template-columns:86px 1fr 160px!important;padding-top:0!important}.pdf-stage .slip-version{grid-column:auto!important;text-align:right!important}.pdf-stage .slip-logo{width:76px!important;height:58px!important}
@media(max-width:700px){.slip-backdrop{align-items:flex-start}.slip-modal{width:100%;max-height:96vh}.signature-grid{grid-template-columns:1fr}.company-block p{font-size:10px}.payslip-document{padding:18px}.official-grid{grid-template-columns:1fr}.payslip-document header{grid-template-columns:64px 1fr}.slip-logo{width:58px;height:46px}}
.hr-app .slip-modal{width:min(1040px,96vw)!important;max-width:1040px!important}.hr-app .slip-modal .payslip-document{width:100%!important}

.hr-app.modal-backdrop{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important}.hr-app.modal-backdrop .slip-modal{margin:auto!important}
