.pay-worker-page{max-width:1180px;margin:0 auto}.pay-worker-page h2,.pay-worker-page h3,.pay-worker-page p{margin:0}.pay-worker-page .pay-page-heading p{font-size:14px;line-height:1.6}.pay-worker-account{margin-bottom:28px}.pay-worker-employment{align-items:center;gap:14px;margin-bottom:20px;display:flex}.pay-worker-employment h2{font-size:15px;font-weight:650;line-height:22px}.pay-worker-employment p{color:var(--pay-muted);margin-top:2px;font-size:13px;line-height:20px}.pay-worker-icon{color:#417362;background:#eef4f0;border-radius:10px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.pay-worker-access{color:#587369;align-items:center;gap:7px;margin-left:auto;font-size:12px;display:flex}.pay-worker-access>span{background:#548b6d;border-radius:50%;width:6px;height:6px}.pay-worker-leave{grid-template-columns:minmax(280px,.85fr) minmax(0,1.4fr);align-items:start;gap:20px;display:grid}.pay-worker-card-heading{align-items:center;gap:12px;display:flex}.pay-worker-card-heading h2{letter-spacing:-.25px;font-size:17px;font-weight:650;line-height:24px}.pay-worker-card-heading p{color:var(--pay-muted);margin-top:5px;font-size:13px;line-height:20px}.pay-worker-balance-card{padding:24px}.pay-worker-balances{margin:24px 0}.pay-worker-balances dt{color:#627970;font-size:13px;line-height:20px}.pay-worker-balances dd{font-variant-numeric:tabular-nums;margin:0}.pay-worker-available dd{letter-spacing:-2px;color:#145c51;margin-top:6px;font-size:48px;font-weight:650;line-height:1.15}.pay-worker-available dd>span{letter-spacing:0;font-size:14px;font-weight:450}.pay-worker-pending{background:#f5f8f6;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-top:22px;padding:12px;display:flex}.pay-worker-pending dt{align-items:center;gap:7px;font-size:12px;display:flex}.pay-worker-pending dd{font-size:13px;font-weight:650}.pay-worker-request-button{width:100%}.pay-worker-balance-info{margin-top:18px}.pay-worker-balance-info summary,.pay-worker-document-info summary{cursor:pointer;color:#5f786d;align-items:center;gap:7px;font-size:12px;line-height:20px;list-style:none;display:flex}.pay-worker-balance-info summary::-webkit-details-marker{display:none}.pay-worker-document-info summary::-webkit-details-marker{display:none}.pay-worker-balance-info summary:after,.pay-worker-document-info summary:after{content:"+";margin-left:auto;font-size:16px}.pay-worker-balance-info[open] summary:after,.pay-worker-document-info[open] summary:after{content:"−"}.pay-worker-balance-info p,.pay-worker-document-info p,.pay-worker-note{color:#687d73;margin-top:10px;font-size:12px;line-height:1.7}.pay-worker-history{grid-area:1/2}.pay-worker-history>.pay-worker-card-heading{padding:24px}.pay-worker-count{color:#657c70;background:#f1f5f2;border-radius:6px;margin-left:auto;padding:3px 9px;font-size:12px}.pay-worker-requests{margin:0;padding:0 24px;list-style:none}.pay-worker-requests li{border-top:1px solid var(--pay-border);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.pay-worker-requests h3{font-size:14px;font-weight:600;line-height:22px}.pay-worker-requests p{color:var(--pay-muted);margin-top:5px;font-size:12px;line-height:19px}.pay-worker-status{border-radius:6px;flex-shrink:0;padding:4px 9px;font-size:11px;font-weight:600;line-height:18px}.pay-worker-status-approved{color:#34664a;background:#eaf4ed}.pay-worker-status-pending{color:#886126;background:#fff4df}.pay-worker-status-rejected{color:#9b514b;background:#fbeeed}.pay-worker-status-cancelled{color:#6b7670;background:#eff1f0}.pay-worker-history-footer{color:var(--pay-muted);background:#fafbf9;padding:15px 24px;font-size:12px;line-height:19px}.pay-worker-request-panel{grid-area:2/1/auto/-1;padding:24px}.pay-worker-request-panel[hidden]{display:none}.pay-worker-request-panel .pay-form{max-width:760px;margin-top:24px}.pay-worker-documents>.pay-worker-card-heading{padding:24px}.pay-worker-documents>.pay-muted:last-child{padding:14px 24px 20px;font-size:12px;line-height:18px}.pay-worker-documents-empty{border-block:1px solid var(--pay-border);background:#fafbf9;align-items:center;gap:18px;padding:28px 24px;display:flex}.pay-worker-empty-icon{border:1px solid var(--pay-border);color:#7c9788;background:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:62px;display:flex}.pay-worker-documents-empty h3,.pay-worker-history-empty h3,.pay-worker-empty h2{font-size:14px;font-weight:600;line-height:22px}.pay-worker-documents-empty p,.pay-worker-history-empty p,.pay-worker-empty p{color:var(--pay-muted);max-width:510px;margin-top:5px;font-size:13px;line-height:21px}.pay-worker-documents-empty .pay-button{flex-shrink:0;margin-left:auto}.pay-worker-history-empty{color:#80998b;padding:20px 24px 32px}.pay-worker-history-empty h3{color:var(--pay-ink);margin-top:12px}.pay-worker-document-info{padding:16px 24px}.pay-worker-document-info summary{justify-content:start}.pay-worker-document-info summary:after{margin-left:4px}.pay-worker-payslips-scroll{border-block:1px solid var(--pay-border);overflow-x:auto}.pay-worker-payslips-scroll:focus-visible{outline:2px solid var(--pay-primary,#08746c);outline-offset:-2px}.pay-worker-payslips-table{border-collapse:collapse;text-align:left;width:100%;min-width:800px;font-size:13px;line-height:20px}.pay-worker-payslips-table th,.pay-worker-payslips-table td{vertical-align:middle;padding:18px 24px}.pay-worker-payslips-table thead th{color:var(--pay-muted);white-space:nowrap;background:#fafbf9;padding-block:12px;font-size:12px;font-weight:500}.pay-worker-payslips-table tbody tr+tr{border-top:1px solid var(--pay-border)}.pay-worker-payslips-table tbody tr:hover{background:#fafbf9}.pay-worker-payslips-table tbody th{white-space:nowrap;font-weight:600}.pay-worker-payslips-table .pay-worker-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.pay-worker-payslips-table .pay-worker-net{font-weight:650}.pay-worker-payslip-download{width:200px;min-width:180px;max-width:240px}.pay-worker-payslip-download .pay-button{white-space:nowrap}.pay-worker-payslips-scroll+.pay-worker-pagination:not(:empty){padding-top:20px}.pay-worker-pagination:not(:empty){gap:24px;padding:0 24px 20px;display:flex}.pay-worker-empty{padding:28px}.pay-worker-empty .pay-button{margin-top:20px}@media (max-width:1100px){.pay-worker-history,.pay-worker-request-panel{grid-area:auto}.pay-worker-leave{grid-template-columns:minmax(0,1fr)}.pay-worker-documents-empty{flex-wrap:wrap}.pay-worker-documents-empty .pay-button{margin-left:72px}}@media (max-width:600px){.pay-worker-employment{flex-wrap:wrap}.pay-worker-employment>div{flex:1;min-width:0}.pay-worker-access{width:100%;margin-left:54px}.pay-worker-balance-card,.pay-worker-request-panel,.pay-worker-history>.pay-worker-card-heading,.pay-worker-documents>.pay-worker-card-heading{padding:20px}.pay-worker-requests{padding:0 20px}.pay-worker-requests li{flex-direction:column;align-items:start;gap:10px}.pay-worker-history-footer{padding:16px 20px}.pay-worker-documents-empty{align-items:start;padding:20px}.pay-worker-documents-empty>div{flex:1;min-width:0}.pay-worker-documents-empty .pay-button{width:100%;margin-left:0}.pay-worker-document-info{padding:16px 20px}}.pay-worker-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:32px;display:grid}.pay-worker-shortcut{flex-direction:column;align-items:flex-start;gap:12px;padding:24px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.pay-worker-shortcut:hover{border-color:#8eb7a4;box-shadow:0 4px 16px #153d3708}.pay-worker-shortcut h2{font-size:17px;font-weight:650}.pay-worker-shortcut p{color:var(--pay-muted);font-size:13px;line-height:21px}.pay-worker-shortcut-action{color:#086b63;align-items:center;gap:8px;margin-top:auto;padding-top:10px;font-size:12px;font-weight:650;display:flex}.pay-worker-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:24px;display:grid}.pay-worker-overview>div{flex-direction:column;gap:12px;display:flex}.pay-worker-overview span,.pay-worker-overview p{color:var(--pay-muted);font-size:12px;line-height:20px}.pay-worker-overview strong{letter-spacing:-.7px;font-size:30px;font-weight:650;line-height:36px}.pay-worker-overview strong small{letter-spacing:0;font-size:13px;font-weight:450}.pay-worker-overview .pay-worker-last-period{letter-spacing:-.3px;font-size:19px}.pay-worker-overview a{color:#086b63;align-items:center;gap:6px;font-size:12px;display:inline-flex}.pay-worker-file-list{padding-inline:24px}.pay-worker-file{border-top:1px solid var(--pay-border);justify-content:space-between;align-items:center;gap:24px;padding:20px 0;display:flex}.pay-worker-file-title h3{font-size:15px;font-weight:650;line-height:23px}.pay-worker-file-title p{color:var(--pay-muted);margin-top:4px;font-size:12px}@media (max-width:1050px){.pay-worker-shortcuts{gap:12px}.pay-worker-shortcut{padding:18px}}@media (max-width:760px){.pay-worker-shortcuts,.pay-worker-overview{grid-template-columns:1fr}.pay-worker-shortcut{padding:20px}.pay-worker-overview{gap:24px}.pay-worker-file{flex-direction:column;align-items:start;gap:12px}}.pay-worker-attendance{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.pay-worker-attendance>.pay-notice,.pay-attendance-today,.pay-attendance-wide{grid-column:1/-1}.pay-attendance-today,.pay-attendance-panel{padding:22px 24px}.pay-attendance-today>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.pay-attendance-today h3,.pay-attendance-panel>h3{margin:0;font-size:15px;font-weight:650;line-height:22px}.pay-attendance-today dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 0;display:grid}.pay-attendance-today dl>div{background:#f5f8f6;border-radius:10px;padding:14px 16px}.pay-attendance-today dt{color:var(--pay-muted);font-size:12px}.pay-attendance-today dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:17px;font-weight:650}.pay-attendance-today>p{margin:14px 0 0;font-size:13px}.pay-attendance-panel>.pay-muted,.pay-attendance-panel>.pay-form{margin-top:12px}.pay-attendance-panel>.pay-muted{font-size:13px;line-height:20px}.pay-clock-card{text-align:center;grid-column:1/-1;justify-items:center;gap:14px;padding:24px;display:grid}.pay-clock{gap:2px;display:grid}.pay-clock-time{letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--pay-ink);font-size:44px;font-weight:700;line-height:52px}.pay-clock-date{color:var(--pay-muted);font-size:12px}.pay-clock-status{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:inline-flex}.pay-status-dot{background:#94a3b8;border-radius:50%;width:10px;height:10px}.pay-status-dot.is-working{background:#16a34a;box-shadow:0 0 0 4px #16a34a22}.pay-status-dot.is-break,.pay-status-dot.is-pause{background:#d97706;box-shadow:0 0 0 4px #d9770622}.pay-mark-actions{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;max-width:560px;display:flex}.pay-mark-actions .pay-mark-primary{border-radius:12px;flex:100%;min-height:64px;font-size:16px}.pay-mark-actions .pay-button.secondary{flex:160px}.pay-mark-actions .pay-link-button{flex:100%;justify-content:center}.pay-capture-hint{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;margin:0;font-size:12px;line-height:18px;display:flex}.pay-form.pay-mark-sheet,.pay-mark-sheet,.pay-mark-result,.pay-qr-scanner{text-align:left;outline:none;gap:14px;width:100%;max-width:560px;padding:18px;display:grid;box-shadow:0 6px 24px #153d3714}.pay-mark-sheet>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.pay-mark-sheet h3{margin:0;font-size:16px;font-weight:650}.pay-mark-evidence{gap:12px;display:grid}.pay-evidence-block{gap:8px;display:grid}.pay-mark-confirm{min-height:56px;font-size:15px}.pay-mark-result{text-align:center;color:var(--pay-ink);justify-items:center}.pay-mark-result>svg{color:#16a34a}.pay-mark-result h3{margin:0;font-size:18px}.pay-mark-result p{margin:0}.pay-mark-result-evidence{gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.pay-mark-result-evidence li{justify-content:center;align-items:center;gap:6px;display:inline-flex}.pay-qr-scanner video{aspect-ratio:4/3;object-fit:cover;background:#0b1f1d;border-radius:10px;width:100%}.pay-offline-badge{justify-content:center}.pay-mark-tags{flex-wrap:wrap;gap:6px;display:inline-flex}.pay-attendance-today h4{margin:18px 0 0;font-size:13px;font-weight:650}.pay-pwa-hint{background:#eef4eb;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;padding:12px 16px;display:flex}.pay-pwa-hint p{flex:220px;margin:0;font-size:13px}@media (max-width:760px){.pay-clock-card{padding:18px 14px}.pay-clock-time{font-size:38px;line-height:44px}.pay-mark-sheet,.pay-mark-result{padding:14px}}.pay-worker-marks{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.pay-worker-marks li{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;line-height:20px;display:flex}.pay-worker-marks a{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.pay-worker-change{border-top:1px solid var(--pay-border,#e6e6e6);padding:12px 0}.pay-worker-change p{margin:4px 0}@media (max-width:760px){.pay-worker-attendance{grid-template-columns:minmax(0,1fr)}.pay-attendance-today dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pay-attendance-today,.pay-attendance-panel{padding:18px 20px}}.pay-worker-time-off{gap:20px;display:grid}.pay-worker-time-off-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.pay-worker-time-off-part{gap:12px;display:grid}.pay-worker-time-off-part>.pay-worker-balance-card{height:100%}.pay-worker-time-off-history{grid-area:auto}.pay-worker-time-off-history>.pay-worker-card-heading{flex-wrap:wrap}.pay-worker-time-off-filter{gap:6px;margin-left:auto;display:flex}.pay-worker-time-off-filter button{border:1px solid var(--pay-border);color:#4e6152;font:inherit;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:7px;padding:7px 11px;font-size:12px;font-weight:650;display:inline-flex}.pay-worker-time-off-filter button[aria-pressed=true]{color:#2f5c43;background:#eef4ea;border-color:#b9ccb0}.pay-worker-time-off-filter span{background:#fff;border:1px solid #e3e9df;border-radius:5px;padding:1px 6px;font-size:11px}@media (max-width:760px){.pay-worker-time-off-cards{grid-template-columns:minmax(0,1fr)}.pay-worker-time-off-filter{margin-left:0}}.pay-identity-options{border:0;flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;display:flex}.pay-identity-options legend{color:#576d58;width:100%;margin-bottom:6px;font-size:12px;font-weight:650}.pay-passkey-cta{justify-items:start;gap:8px;margin-top:12px;display:grid}.pay-attendance-panel>h4{margin:18px 0 0;font-size:13px;font-weight:650}.pay-passkey-prompt{color:var(--pay-ink);background:radial-gradient(circle at 12% 20%,#ffffffb3 0,#0000 45%),linear-gradient(120deg,#e6f4ee 0%,#eef6f2 55%,#f7faf8 100%);border:1px solid #cfe4da;border-radius:16px;grid-column:1/-1;align-items:center;gap:18px;padding:20px 52px 20px 22px;display:flex;position:relative}.pay-passkey-prompt-icon{color:#fff;background:#086b63;border-radius:18px;flex:none;place-items:center;width:60px;height:60px;display:grid;box-shadow:0 8px 20px #086b6333}.pay-passkey-prompt-text{gap:4px;min-width:0;display:grid}.pay-passkey-prompt h3{margin:0;font-size:16px;font-weight:700;line-height:22px}.pay-passkey-prompt p{color:#4f6a5f;margin:0;font-size:13px;line-height:20px}.pay-passkey-prompt .pay-passkey-prompt-error{color:#b42318}.pay-passkey-prompt-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px;display:flex}.pay-passkey-prompt-close{color:#5d7568;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:12px;right:12px}.pay-passkey-prompt-close:hover{background:#fff9}.pay-passkey-prompt.is-compact{text-align:left;gap:14px;width:100%;max-width:560px;padding:14px 44px 14px 16px}.pay-passkey-prompt.is-compact .pay-passkey-prompt-icon{border-radius:14px;width:44px;height:44px}.pay-passkey-prompt.is-compact h3{font-size:14px}@media (max-width:560px){.pay-passkey-prompt{align-items:flex-start;padding:18px 44px 18px 16px}.pay-passkey-prompt-icon{border-radius:14px;width:48px;height:48px}}