.pessi-approval-panel{margin-top:20px;border:2px solid #0e7490;border-radius:14px;background:#f0fdfa;overflow:hidden}.pessi-approval-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:18px}.pessi-approval-head h3{margin:4px 0;font-size:21px}.pessi-approval-head p{margin:0;color:#52717a}.pessi-approval-head label{flex:0 0 210px}.pessi-approval-head label>span{display:block;margin-bottom:5px;font-size:12px;font-weight:800;color:#155e75}.approval-dates{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 18px 18px}.approval-dates>div{padding:12px;border:1px solid #99f6e4;border-radius:10px;background:#fff}.approval-dates span,.approval-dates small{display:block;color:#64748b;font-size:11px}.approval-dates strong{display:block;margin:4px 0;color:#134e4a;font-size:17px}.approval-table{width:100%;border-collapse:collapse;background:#fff}.approval-table th,.approval-table td{padding:12px 16px;border-top:1px solid #dbeafe;text-align:left}.approval-table th{color:#475569;background:#f8fafc;font-size:12px;text-transform:uppercase}.approval-table tr.excluded{background:#fff7ed;color:#7c2d12}.approval-ready,.approval-skip{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.approval-ready{background:#dcfce7;color:#166534}.approval-skip{background:#ffedd5;color:#9a3412}.approval-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 18px}.approval-actions p{margin:0;color:#475569;font-size:13px}.approval-actions .btn{white-space:nowrap}.approval-result{display:flex;flex-wrap:wrap;gap:10px 20px;margin:0 18px 18px;padding:13px 15px;border:1px solid #86efac;border-radius:10px;background:#dcfce7;color:#166534}.approval-result ul{flex-basis:100%;margin:0;padding-left:20px}@media (max-width:760px){.pessi-approval-head,.approval-actions{align-items:stretch;flex-direction:column}.pessi-approval-head label{flex:auto;width:100%}.approval-dates{grid-template-columns:1fr}.approval-actions .btn{width:100%}}.editable-payable{display:flex;align-items:center;gap:6px;min-width:155px}.editable-payable span{font-weight:700;color:#334155}.editable-payable input{width:125px;padding:8px 9px;border:1px solid #94a3b8;border-radius:8px;font:inherit;color:#0f172a;background:#fff}.editable-payable input:focus{outline:2px solid #67e8f9;border-color:#0e7490}.editable-payable input:disabled{background:#f1f5f9;color:#64748b}.manual-adjustment{display:block;margin-top:4px;color:#9a3412;white-space:nowrap}.btn-row-post{padding:8px 11px;background:#0f766e;color:#fff;font-size:12px;white-space:nowrap}.btn-row-post:hover{background:#115e59}.btn-row-post:disabled{opacity:.6;cursor:not-allowed}.payment-actions{min-width:145px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.payment-actions .link-btn{margin:0}.payment-actions .missing{margin-bottom:3px}.voided-payment-note{color:#64748b;font-size:12px}.r5-card .r5-value,.r5-card .r5-cnic{font-size:12px}.r5-card .r5-name{top:36.9%}.r5-card .r5-father{top:42.8%}.r5-card .r5-dispensary{top:89.6%}.merge-page{max-width:1400px;width:calc(100% - 40px);margin:0 auto 40px}.merge-upload{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px;border:2px solid #0e7490;border-radius:14px;background:#ecfeff}.merge-upload strong{font-size:18px;color:#164e63}.merge-upload p{margin:5px 0 0;color:#52717a}.merge-upload input{display:none}.merge-buttons{display:flex;gap:10px}.merge-buttons .disabled{opacity:.65}.merge-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.merge-stats>div{padding:16px;border:1px solid #dbe4ee;border-radius:12px;background:#fff}.merge-stats span{display:block;color:#64748b;font-size:12px}.merge-stats strong{display:block;margin-top:5px;font-size:25px}.merge-results,.merge-preview{margin-top:18px;padding:18px;border:1px solid #dbe4ee;border-radius:14px;background:#fff;box-shadow:0 8px 22px #0f172a0d}.merge-results h3,.merge-preview h3{margin:0 0 12px}.merge-file{display:flex;justify-content:space-between;gap:20px;padding:12px;border-top:1px solid #e2e8f0}.merge-file p{margin:4px 0 0;color:#64748b;font-size:13px}.merge-file>span{color:#475569;font-size:12px;text-align:right}.merge-file.error{background:#fef2f2;color:#991b1b}.merge-preview-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px}.merge-preview-head p{margin:4px 0 0;color:#64748b}.merge-preview table{width:100%;border-collapse:collapse;font-size:12px}.merge-preview th,.merge-preview td{padding:9px 11px;border:1px solid #e2e8f0;white-space:nowrap}.merge-preview th{background:#f8fafc;color:#475569;text-align:left}.blank-cell{color:#c2410c;font-style:italic}@media (max-width:760px){.merge-page{width:calc(100% - 20px)}.merge-upload,.merge-preview-head{align-items:stretch;flex-direction:column}.merge-buttons{flex-direction:column}.merge-stats{grid-template-columns:1fr 1fr}.merge-file{flex-direction:column}.merge-file>span{text-align:left}}.merge-stats{grid-template-columns:repeat(5,1fr)}.merge-stats small{display:block;margin-top:3px;color:#64748b;font-size:11px}@media (max-width:1000px){.merge-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.merge-stats{grid-template-columns:1fr 1fr}}.sefam-merge-message{margin:14px 0;padding:12px 14px;border:1px solid #fdba74;border-radius:10px;background:#fff7ed;color:#9a3412;font-weight:700}.sefam-file{align-items:center}.sefam-file>label{flex:0 0 330px}.sefam-file>label>span{display:block;margin-bottom:5px;color:#475569;font-size:12px;font-weight:800}.sefam-file select{width:100%}.merge-preview button:disabled{cursor:not-allowed;opacity:.55}@media (max-width:760px){.sefam-file{align-items:stretch}.sefam-file>label{flex:auto}}:root{--brand: #0b5ed7;--bg: #f5f7fb;--text: #111827;--muted: #6b7280;--card: #ffffff;--border: #e5e7eb;--blue: #2563eb;--green: #16a34a;--red: #dc2626;--yellow: #ca8a04}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.app-shell{min-height:100vh;display:flex;flex-direction:column}.header{background:#ffffff;padding:18px 32px;border-bottom:1px solid var(--border)}.header-left{display:flex;align-items:center;gap:16px}.logo{height:48px;width:auto}.header-text h1{margin:0;font-size:20px;font-weight:700;color:var(--text)}.header-text p{margin:2px 0 0;font-size:13px;color:var(--muted)}.action-bar{background:#ffffff;margin:24px auto;padding:20px 26px;display:flex;gap:16px;border-radius:14px;border:1px solid var(--border);box-shadow:0 8px 20px #0f172a0f}.btn{display:inline-block;padding:10px 20px;border-radius:10px;border:none;font-size:15px;font-weight:600;cursor:pointer;color:#fff}.btn-primary{background:#005f73}.btn-danger{background:#d62828}.btn-delete{background:#fff;color:#b91c1c;border:1px solid #fecaca;margin-left:auto}.btn-delete:hover{background:#fef2f2}.btn-restore{background:#15803d}.archived-notice{margin-top:16px;padding:11px 13px;border-radius:9px;background:#f1f5f9;color:#475569;font-weight:700;border:1px solid #cbd5e1}.compliance-search{background:linear-gradient(135deg,#ecfeff,#f0f9ff);border:2px solid #0e7490;border-radius:14px;padding:18px;margin-bottom:18px;box-shadow:0 8px 22px #0e74901a}.search-title{display:flex;align-items:center;gap:12px;margin-bottom:14px}.search-title strong{display:block;font-size:17px;color:#164e63}.search-title small{display:block;color:#52717a;margin-top:3px}.search-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#0e7490;color:#fff;font-size:26px;font-weight:800}.search-controls{display:flex;align-items:flex-end;gap:12px}.search-controls label{flex:1}.search-controls label>span{display:block;font-size:12px;font-weight:800;color:#155e75;margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em}.search-controls .status-filter{flex:0 0 210px}.search-controls .field{background:#fff;border:1px solid #67a9b7;box-shadow:0 2px 5px #0f172a0d}.search-controls .code-search{font-size:17px;padding:12px 14px}.clear-search{flex:0 0 auto;height:45px}.register-panel>.code-summary{margin-top:16px}@media (max-width:700px){.search-controls{align-items:stretch;flex-direction:column}.search-controls .status-filter{flex:auto;width:100%}.clear-search{width:100%}}.btn-sync{background:#0f766e;white-space:nowrap}.worker-card-page{max-width:1400px;width:calc(100% - 40px);margin:0 auto 40px}.worker-search{display:flex;align-items:flex-end;gap:12px;background:#ecfeff;border:2px solid #0e7490;border-radius:14px;padding:16px;margin-bottom:14px}.worker-search label{flex:1}.worker-search label span{display:block;font-size:12px;font-weight:800;color:#155e75;margin-bottom:5px}.worker-message{padding:11px 14px;border-radius:9px;background:#fff7ed;color:#9a3412;margin-bottom:14px}.worker-message.success{background:#dcfce7;color:#166534}.worker-card-layout{display:grid;grid-template-columns:minmax(380px,520px) 1fr;gap:18px;align-items:start}.card-editor,.r5-preview-wrap{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px;box-shadow:0 10px 24px #0f172a0f}.card-editor h3,.r5-preview-wrap h3{margin:0 0 12px}.print-settings{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:18px;padding-top:15px}.print-settings input{width:65px;padding:7px;border:1px solid #cbd5e1;border-radius:7px}.print-button{width:100%;margin-top:14px}.r5-preview-wrap{overflow:auto}.r5-card{--print-x:0mm;--print-y:0mm;position:relative;width:7in;height:5in;background:#fffdf8;border:2px solid #b9273d;color:#111;overflow:hidden;font-family:Arial,sans-serif;transform-origin:top left}.r5-heading{position:absolute;top:7%;left:10%;right:17%;text-align:center;color:#b9273d;font-weight:800;font-size:20px;border-bottom:2px solid #b9273d;padding-bottom:5px}.r5-logo{position:absolute;right:4%;top:7%;color:#b9273d;font-size:25px;font-weight:900}.r5-value{position:absolute;z-index:2;font-size:12px;font-weight:700;border-bottom:1px solid #c45668;min-height:18px;padding:2px 4px}.r5-cnic{left:8%;top:20%;width:58%;letter-spacing:4px}.r5-employer{left:28%;top:29%;width:60%}.r5-code{left:8%;top:36%;width:15%;font-size:18px;border:0}.r5-name{left:28%;top:36%;width:60%}.r5-father{left:28%;top:43%;width:60%}.r5-dob{left:28%;top:50%;width:60%}.r5-mark{left:28%;top:57%;width:60%}.r5-dept{left:28%;top:64%;width:60%}.r5-address{left:28%;top:71%;width:60%}.r5-district{left:28%;top:78%;width:24%}.r5-oldno{left:55%;top:78%;width:15%}.r5-regno{left:73%;top:78%;width:15%}.r5-olddate{left:28%;top:85%;width:24%}.r5-date{left:55%;top:85%;width:33%}.r5-dispensary{left:28%;top:92%;width:60%}.r5-photo{position:absolute;left:5%;top:52%;width:19%;height:31%;border:2px solid #b9273d;border-radius:15px;display:grid;place-items:center;color:#b9273d;font-size:11px}.r5-labels{position:absolute;right:2%;top:27%;height:68%;display:flex;flex-direction:column;justify-content:space-around;color:#b9273d;font-size:8px;text-align:right;pointer-events:none}.r5-labels span{background:#fffdf8}.r5-card>*{transform:translate(var(--print-x),var(--print-y))}@media (max-width:1100px){.worker-card-layout{grid-template-columns:1fr}.r5-card{transform:scale(.85);margin-bottom:-.75in}}@media (max-width:700px){.worker-search{align-items:stretch;flex-direction:column}.worker-card-page{width:calc(100% - 20px)}.r5-card{transform:scale(.62);margin-bottom:-1.9in;margin-right:-2.65in}}@media print{@page{size:7in 5in;margin:0}body{background:#fff}.sidebar,.topbar,.footer,.action-bar,.sidebar-scrim,.worker-card-page>*:not(.worker-card-layout),.card-editor,.r5-preview-wrap>h3{display:none!important}.main,.worker-card-page,.worker-card-layout,.r5-preview-wrap{display:block!important;width:7in!important;height:5in!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:visible!important}.r5-card{border:0!important;width:7in!important;height:5in!important;transform:none!important;background:transparent!important}.r5-heading,.r5-logo,.r5-photo,.r5-labels{display:none!important}.r5-value{border:0!important;color:#000!important;background:transparent!important}}.preprint-note{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#cbd5e1;font-size:28px;font-weight:900;transform:none!important}.r5-screen-label{position:absolute;right:2%;color:#b9273d;font-size:8px;transform:none!important;background:#fffdf8;padding-left:4px}.r5-cnic{left:8%;top:20%;width:64%;letter-spacing:3.5px;font-size:14px}.r5-name{left:27%;top:37%;width:61%}.r5-father{left:27%;top:44%;width:61%}.r5-dob{left:27%;top:51%;width:61%}.r5-mark{left:27%;top:58%;width:61%}.r5-organization{left:27%;top:65%;width:61%}.r5-address{left:27%;top:72%;width:61%}.r5-dispensary{left:27%;top:93%;width:61%}.label-cnic{top:20%}.label-name{top:37%}.label-father{top:44%}.label-dob{top:51%}.label-mark{top:58%}.label-org{top:65%}.label-address{top:72%}.label-dispensary{top:93%}@media print{.preprint-note,.r5-screen-label{display:none!important}}.worker-import{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f0fdf4;border:2px solid #15803d;border-radius:14px;padding:16px 18px;margin-bottom:14px}.worker-import strong{font-size:17px;color:#14532d}.worker-import p{margin:4px 0 0;color:#3f6750}.worker-import input[type=file]{display:none}.worker-import .btn{white-space:nowrap}.worker-import .disabled{opacity:.65;cursor:not-allowed}.import-result{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:center;padding:13px 16px;border-radius:10px;background:#ecfdf5;border:1px solid #86efac;color:#166534;margin-bottom:14px}.import-result span{font-size:13px}.import-result .added{font-weight:800}.import-result.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}@media (max-width:700px){.worker-import{align-items:stretch;flex-direction:column}.worker-import .btn{text-align:center}}.import-result .repaired{font-weight:800;color:#1d4ed8;background:#dbeafe;padding:4px 8px;border-radius:999px}.import-actions{display:flex;gap:10px;align-items:center}.btn-template{background:#fff;color:#0f766e;border:1px solid #0f766e}.btn-template:hover{background:#ecfdf5}@media (max-width:850px){.import-actions{align-items:stretch;flex-direction:column}.import-actions .btn{text-align:center}}.payment-target{display:flex;align-items:stretch;gap:10px;margin-top:20px;padding:13px;background:#ecfeff;border:2px solid #0e7490;border-radius:11px}.payment-target>div{flex:1;padding:2px 8px}.payment-target>div+div{border-left:1px solid #67a9b7}.payment-target span{display:block;color:#155e75;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.05em;margin-bottom:4px}.payment-target strong{display:block;color:#083344;font-size:17px}.payment-target small{display:block;color:#52717a;margin-top:3px}.payment-target .target-code strong{font-size:20px;letter-spacing:.02em}@media (max-width:600px){.payment-target{flex-direction:column}.payment-target>div+div{border-left:0;border-top:1px solid #67a9b7;padding-top:10px}}.r5-card{width:134mm;height:81mm;background:#fff url(/r5-card-reference.jpg) center/100% 100% no-repeat;border:1px solid #cbd5e1;transform:none;margin:0}.r5-value{border:0;min-height:0;padding:0 2px;font-family:Arial,sans-serif;font-size:11px;line-height:1.1;color:#111}.r5-cnic{position:absolute;left:3.75%;top:21.2%;width:67.55%;height:6.7%;display:grid;grid-template-columns:repeat(15,1fr);align-items:center;z-index:2;font-family:Arial,sans-serif;font-size:11px;font-weight:700}.r5-cnic span{text-align:center}.r5-name{left:21.85%;top:37.7%;width:68.2%;text-align:left}.r5-father{left:21.85%;top:44.25%;width:68.2%;text-align:center}.r5-dob{left:21.85%;top:49.45%;width:64.5%;text-align:left}.r5-mark{left:21.85%;top:54.7%;width:67.4%;text-align:center}.r5-organization{left:21.85%;top:59.9%;width:68.2%;text-align:left}.r5-address{left:21.85%;top:65.15%;width:68.2%;text-align:center}.r5-dispensary{left:21.85%;top:90.8%;width:66.2%;text-align:left}.preprint-note,.r5-screen-label{display:none!important}@media print{@page{size:134mm 81mm;margin:0}.main,.worker-card-page,.worker-card-layout,.r5-preview-wrap,.r5-card{width:134mm!important;height:81mm!important}.r5-card{background:none!important;border:0!important;transform:none!important;margin:0!important}.r5-value,.r5-cnic{color:#000!important}}.btn:hover{filter:brightness(.95)}.main{flex:1;padding-bottom:30px}.footer{background:#ffffff;border-top:1px solid var(--border);padding:12px;text-align:center;font-size:12px;color:var(--muted)}.panel{width:100%;max-width:1100px;background:#ffffff;border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 24px #0f172a0f;padding:20px;margin:0 auto}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between;margin-bottom:8px}.upload{display:flex;align-items:center;gap:12px}#file{display:none}.file-name{color:var(--muted)}.city{display:flex;align-items:center;gap:10px}.city-label{color:var(--muted);font-size:13px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#ffffff;font-weight:600}.mapping-hint{color:var(--muted);font-size:13px;margin-bottom:6px}.cards{margin-top:10px;display:grid;gap:14px;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width: 760px){.cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.card{background:var(--card);border:1px solid var(--border);border-left:6px solid var(--brand);border-radius:12px;padding:16px;text-align:center}.card-title{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.02em}.card-value{font-size:26px;margin-top:6px;font-weight:700}.border-blue{border-left-color:var(--blue)}.border-green{border-left-color:var(--green)}.border-red{border-left-color:var(--red)}.border-yellow{border-left-color:var(--yellow)}.section-tabs{display:flex;gap:8px;max-width:1180px;width:calc(100% - 40px);margin:22px auto}.tab{border:0;background:transparent;color:var(--muted);padding:10px 15px;border-radius:9px;font-weight:700;cursor:pointer}.tab.active{color:#005f73;background:#dff3f5}.compliance-page{max-width:1180px;width:calc(100% - 40px);margin:0 auto 40px}.compliance-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.compliance-heading h2,.drawer h2,.modal h2{margin:0}.compliance-heading p{color:var(--muted);margin:6px 0 0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{background:#fff;border:1px solid var(--border);border-top:4px solid #64748b;padding:18px;border-radius:12px}.metric span{display:block;color:var(--muted);font-size:13px}.metric strong{display:block;font-size:28px;margin-top:7px}.metric.green{border-top-color:var(--green)}.metric.red{border-top-color:var(--red)}.metric.blue{border-top-color:var(--blue)}.register-panel{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px #0f172a0d}.register-tools{display:flex;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.register-tools .field:first-child{flex:1}.field{width:100%;border:1px solid #cbd5e1;border-radius:9px;background:#fff;padding:10px 12px;font:inherit;color:var(--text)}.table-scroll{overflow:auto}.register-table{width:100%;border-collapse:collapse}.register-table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;text-align:left;background:#f8fafc}.register-table th,.register-table td{padding:14px 16px;border-bottom:1px solid var(--border)}.register-table tbody tr{cursor:pointer}.register-table tbody tr:hover{background:#f8fbfc}.register-table td small{display:block;color:var(--muted);margin-top:3px}.status{display:inline-block;padding:4px 9px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:12px;font-weight:800}.status-paid{background:#dcfce7;color:#166534}.status-pending{background:#fef3c7;color:#92400e}.status-overdue{background:#fee2e2;color:#991b1b}.status-draft{background:#e0e7ff;color:#3730a3}.missing{color:#b45309;font-size:13px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(15,23,42,.48);z-index:20;display:flex;justify-content:flex-end}.drawer{width:min(680px,100%);height:100%;overflow:auto;background:#fff;padding:24px;box-shadow:-20px 0 50px #00000026}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.1em;color:#0f766e}.icon-btn{border:0;background:#f1f5f9;width:38px;height:38px;border-radius:50%;font-size:24px;cursor:pointer}.drawer-actions{display:flex;gap:10px;margin:22px 0}.btn-light{background:#e2e8f0;color:#334155}.detail-section{border-top:1px solid var(--border);padding:20px 0}.detail-section h3{margin:0 0 14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-grid label>span,.form-grid label>span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.detail-grid label>strong{font-size:14px}.empty-state{background:#f8fafc;border:1px dashed #cbd5e1;padding:22px;border-radius:10px;color:var(--muted);text-align:center}.payment-card{display:flex;justify-content:space-between;gap:20px;padding:14px;border:1px solid var(--border);border-radius:10px;margin-bottom:10px}.payment-card strong{margin-right:9px}.payment-card p{margin:7px 0 3px}.payment-card small{color:var(--muted)}.link-btn{display:block;border:0;background:transparent;color:#0369a1;font-weight:700;cursor:pointer;margin-bottom:8px}.danger-link{color:#b91c1c}.audit-row{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.audit-row span{color:var(--muted)}.modal-layer{justify-content:center;align-items:center;z-index:30;padding:20px}.modal{background:#fff;border-radius:16px;width:min(720px,100%);max-height:95vh;overflow:auto;padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.form-grid .full{grid-column:1/-1}.form-grid input[type=file]{width:100%}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}@media (max-width:760px){.metric-grid{grid-template-columns:1fr 1fr}.compliance-heading{align-items:flex-start;flex-direction:column}.detail-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.register-tools,.payment-card{flex-direction:column}.action-bar{margin:12px;flex-wrap:wrap}.audit-row{grid-template-columns:1fr}.header{padding:16px}.header-text h1{font-size:16px}}.config-banner{background:#fff7ed;color:#9a3412;border-bottom:1px solid #fed7aa;padding:9px 18px;text-align:center;font-size:13px;font-weight:700}.sync-state{display:inline-block;color:#0f766e;font-weight:700;margin-left:6px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#ecfeff,#f8fafc 55%,#eff6ff)}.auth-card{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:32px;box-shadow:0 24px 60px #0f172a1f}.auth-card h1{font-size:24px;margin:16px 0 6px}.auth-card p{color:var(--muted);margin:0 0 24px}.auth-card label{display:block;margin-bottom:15px}.auth-card label span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.auth-card .btn{width:100%;margin-top:8px}.auth-logo{height:52px}.auth-error{background:#fee2e2;color:#991b1b;border-radius:8px;padding:10px;margin-bottom:10px;font-size:13px}.signout-btn{position:fixed;z-index:10;right:18px;top:16px;border:1px solid var(--border);background:#fff;border-radius:9px;padding:8px 12px;color:#475569;cursor:pointer;box-shadow:0 3px 10px #0f172a14}.code-search{font-size:16px;border-color:#94a3b8}.risk-row.risk-warning{background:#fff7ed}.risk-row.risk-warning:hover{background:#ffedd5}.risk-row.risk-critical{background:#fef2f2}.risk-row.risk-critical:hover{background:#fee2e2}.risk-row.risk-warning td:first-child{border-left:5px solid #f59e0b}.risk-row.risk-critical td:first-child{border-left:5px solid #dc2626}.risk-badge{display:inline-block;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap}.risk-badge.clear{background:#dcfce7;color:#166534}.risk-badge.warning{background:#ffedd5;color:#9a3412}.risk-badge.critical{background:#fee2e2;color:#991b1b}.code-summary{margin:16px;border:1px solid #bfdbfe;border-left:6px solid #2563eb;border-radius:12px;padding:18px;background:#eff6ff}.code-summary.risk-warning{background:#fff7ed;border-color:#fdba74}.code-summary.risk-critical{background:#fef2f2;border-color:#f87171}.code-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.code-summary h3{font-size:23px;margin:4px 0}.code-summary p{margin:0;color:var(--muted)}.summary-facts{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0}.summary-facts div{background:rgba(255,255,255,.8);border:1px solid rgba(148,163,184,.35);border-radius:9px;padding:11px}.summary-facts span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.summary-facts strong{font-size:15px}.risk-warning{background:#fee2e2;color:#991b1b;border-radius:8px;padding:11px 13px;margin-top:14px;font-weight:700}.risk-warning.warning{background:#ffedd5;color:#9a3412}.unpaid-months{margin:0 0 15px;color:#7f1d1d}.drawer-risk{padding:12px;border-radius:9px;margin-top:16px;display:flex;gap:9px;align-items:center}.drawer-risk.risk-warning{background:#fff7ed;color:#9a3412}.drawer-risk.risk-critical{background:#fef2f2;color:#991b1b}@media (max-width:900px){.summary-facts{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.summary-facts{grid-template-columns:repeat(2,1fr)}.code-summary-head{flex-direction:column}.drawer-risk{align-items:flex-start;flex-direction:column}}:root{--navy-950: #071a30;--navy-900: #0b2545;--navy-800: #10315a;--navy-700: #17406f;--brand: #0b6bb5;--brand-600: #0a5c9d;--brand-50: #eaf3fb;--brand-100: #d5e8f7;--bg: #f2f5f9;--card: #ffffff;--text: #0f1f33;--muted: #5d6b7e;--border: #dde3ec;--blue: #0b6bb5;--green: #12805c;--red: #c5303a;--yellow: #b7791f;--radius: 10px;--shadow-sm: 0 1px 2px rgba(11, 37, 69, .06);--shadow-md: 0 4px 14px rgba(11, 37, 69, .08);--sidebar-w: 268px}html{-webkit-font-smoothing:antialiased}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:14px;background:var(--bg);color:var(--text)}h1,h2,h3{letter-spacing:-.01em}.app-shell{min-height:100vh;display:flex;flex-direction:row;align-items:stretch}.app-column{flex:1;min-width:0;display:flex;flex-direction:column}.sidebar{position:sticky;top:0;align-self:flex-start;flex:0 0 var(--sidebar-w);width:var(--sidebar-w);height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--navy-900) 0%,var(--navy-950) 100%);color:#cbd7e6;z-index:40}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:22px 20px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo{width:44px;height:44px;object-fit:contain;background:#fff;border-radius:50%;padding:2px;flex:none}.sidebar-brand strong{display:block;color:#fff;font-size:15px;font-weight:700;line-height:1.2}.sidebar-brand span{display:block;margin-top:2px;color:#8fa6c2;font-size:12px;font-weight:500}.sidebar-nav{flex:1;overflow-y:auto;padding:14px 12px}.nav-group{margin-bottom:18px}.nav-heading{padding:0 10px 8px;color:#6f89a9;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nav-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;margin:1px 0;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:#cbd7e6;font:inherit;font-size:13.5px;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background .15s,color .15s}.nav-item:hover{background:rgba(255,255,255,.07);color:#fff}.nav-item.active{background:rgba(11,107,181,.35);color:#fff;font-weight:600}.nav-item.active:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:#4cb4ff}.nav-icon{width:18px;height:18px;flex:none;opacity:.9}.sidebar-foot{padding:14px 12px 16px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-foot small{display:block;margin-top:10px;padding:0 10px;color:#5f7a9b;font-size:11px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:6px 10px 10px}.sidebar-user>div{min-width:0}.sidebar-user strong{display:block;color:#fff;font-size:12.5px;font-weight:600}.sidebar-user span:not(.avatar){display:block;color:#8fa6c2;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700}.nav-item.signout{color:#f3b1b6}.nav-item.signout:hover{background:rgba(197,48,58,.22);color:#fff}.sidebar-scrim,.menu-btn{display:none}.topbar{display:flex;align-items:center;gap:14px;padding:22px 36px 20px;background:var(--card);border-bottom:1px solid var(--border)}.topbar-title{min-width:0}.crumbs{color:var(--muted);font-size:12px;font-weight:500}.crumbs span{margin:0 4px;color:#a6b2c2}.topbar h1{margin:4px 0 2px;font-size:24px;font-weight:700;color:var(--navy-900)}.topbar p{margin:0;color:var(--muted);font-size:13.5px}.menu-btn{align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--navy-900);cursor:pointer}.action-bar{width:auto;max-width:1280px;margin:24px 36px 0;padding:14px 18px;display:flex;flex-wrap:wrap;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s,filter .15s}.btn:hover{filter:none}.btn:focus-visible,.nav-item:focus-visible{outline:2px solid #4cb4ff;outline-offset:2px}.btn-primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--brand-600)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{background:#a82630}.btn-light{background:#eef2f7;color:#26384f}.btn-light:hover{background:#e1e8f0}.btn-template{background:#fff;color:var(--brand);border-color:var(--brand)}.btn-template:hover{background:var(--brand-50)}.btn-sync,.btn-restore,.btn-row-post{background:var(--green);color:#fff}.btn-sync:hover,.btn-restore:hover,.btn-row-post:hover{background:#0d6a4c}.btn-delete{background:#fff;color:var(--red);border:1px solid #f1c4c8}.btn:disabled,.btn.disabled{opacity:.55;cursor:not-allowed}.main{flex:1;padding:24px 36px 36px}.panel,.compliance-page,.worker-card-page,.merge-page{width:100%;max-width:1280px;margin:0 0 24px}.panel{padding:22px;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md)}.panel h3{margin:0 0 12px;font-size:16px;color:var(--navy-900)}.footer{padding:14px 36px;background:transparent;border-top:1px solid var(--border);color:var(--muted);font-size:12px;text-align:left}.field,.select,.editable-payable input,.print-settings input{border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:var(--text);font:inherit;transition:border-color .15s,box-shadow .15s}.field:focus,.select:focus,.editable-payable input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0b6bb52e}.select{padding:9px 12px;font-weight:500}.toolbar{padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid var(--border);gap:16px}.file-name{font-size:13px}.city-label{font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:11px}.mapping-hint{font-size:12.5px}.cards{gap:16px;margin:16px 0 6px}.card{padding:18px 18px 16px;text-align:left;border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-title{color:var(--muted);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.card-value{margin-top:8px;font-size:26px;font-weight:700;color:var(--navy-900)}.metric{padding:18px;border:1px solid var(--border);border-top:3px solid var(--navy-700);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.metric span{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.metric strong{color:var(--navy-900)}.panel table,.register-table,.approval-table,.merge-preview table{font-size:13px}.panel table th,.register-table th,.approval-table th{background:#f4f7fb;color:#4a5b72;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:11px 14px;border-bottom:1px solid var(--border)}.panel table td{padding:11px 14px;border-bottom:1px solid #edf1f6}.register-table th,.register-table td{padding:13px 16px}.register-table tbody tr:hover{background:var(--brand-50)}.register-panel{border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md)}.register-tools{background:#fbfcfe}.compliance-heading h2{color:var(--navy-900)}.status{border-radius:6px;font-weight:700;letter-spacing:.01em}.status-paid{background:#dff3ea;color:#0c6b4c}.status-pending{background:#fdf0d3;color:#8a5a0b}.status-overdue{background:#fbe1e3;color:#9f2530}.risk-badge{border-radius:6px}.compliance-search,.worker-search,.worker-import,.merge-upload,.payment-target,.pessi-approval-panel{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:12px;box-shadow:var(--shadow-sm)}.compliance-search{padding:20px}.search-title strong,.merge-upload strong,.worker-import strong,.pessi-approval-head h3{color:var(--navy-900)}.search-title small,.merge-upload p,.worker-import p,.pessi-approval-head p,.payment-target small{color:var(--muted)}.search-icon{background:var(--brand);border-radius:8px}.search-controls label>span,.worker-search label span,.pessi-approval-head label>span,.payment-target span{color:#4a5b72;font-size:11px;font-weight:700;letter-spacing:.06em}.search-controls .field{border:1px solid #c9d3e0;box-shadow:none}.payment-target{border-left-width:4px}.payment-target>div+div{border-left-color:var(--border)}.payment-target strong{color:var(--navy-900)}.approval-dates>div{border:1px solid var(--border);background:#f8fafd}.approval-dates strong{color:var(--navy-900)}.approval-table tr.excluded{background:#fff8ec}.approval-ready{background:#dff3ea;color:#0c6b4c;border-radius:6px}.approval-skip{background:#fdf0d3;color:#8a5a0b;border-radius:6px}.code-summary{border-radius:12px;border-left-width:4px;background:#f3f8fd;border-color:#cfe0f1}.drawer,.modal{border-radius:12px}.drawer-head h2,.modal h2{color:var(--navy-900)}.eyebrow{color:var(--brand)}.merge-results,.merge-preview,.card-editor,.r5-preview-wrap,.merge-stats>div{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(340px,1.05fr) minmax(360px,1fr);padding:0;place-items:stretch;background:var(--bg)}.auth-brand{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:56px 64px;background:linear-gradient(160deg,var(--navy-800),var(--navy-950));color:#fff}.auth-brand-logo{width:92px;height:92px;margin-bottom:18px;padding:4px;border-radius:50%;background:#fff;object-fit:contain}.auth-brand h2{margin:0;font-size:28px;line-height:1.2}.auth-brand p{margin:4px 0 20px;color:#9bb4d1;font-size:16px}.auth-brand ul{margin:0 0 28px;padding:0;list-style:none}.auth-brand li{position:relative;padding:7px 0 7px 26px;color:#d6e2f1;font-size:14.5px}.auth-brand li:before{content:"";position:absolute;left:2px;top:14px;width:8px;height:8px;border-radius:50%;background:#4cb4ff}.auth-brand small{color:#6f89a9}.auth-card{align-self:center;justify-self:center;width:min(420px,calc(100% - 40px));padding:36px 32px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md)}.auth-card h1{margin:14px 0 6px;font-size:24px;color:var(--navy-900)}.auth-card p{margin:0 0 22px;color:var(--muted);font-size:14px}.auth-card label span{font-weight:600;color:#3d4d63;font-size:12.5px}.auth-card .field{padding:11px 12px}.auth-card .btn{padding:12px;font-size:14.5px}.auth-logo{height:52px;width:52px;object-fit:contain}.config-banner{background:#fff6e3;color:#8a5a0b}@media (max-width: 960px){.sidebar{position:fixed;inset:0 auto 0 0;transform:translate(-100%);transition:transform .2s ease}.menu-open .sidebar{transform:none;box-shadow:8px 0 30px #0000004d}.menu-open .sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(7,26,48,.5);z-index:35}.menu-btn{display:inline-flex;flex:none}.topbar{padding:16px 18px}.topbar h1{font-size:20px}.topbar p{display:none}.action-bar{margin:16px 18px 0}.main{padding:18px}.footer{padding:12px 18px}.auth-page{grid-template-columns:1fr}.auth-brand{display:none}.auth-card{margin:40px auto}}@media print{.app-shell,.app-column{display:block!important;min-height:0!important}.main{padding:0!important}body{background:#fff!important}}
