/* EZ Workforce standalone staff-key time clock kiosk */
:root{--ezwk-blue:#275bb8;--ezwk-blue-dark:#173f8f;--ezwk-yellow:#ffe300;--ezwk-ink:#202733;--ezwk-muted:#6f7785;--ezwk-line:#dfe4ec;--ezwk-soft:#f5f7fb;--ezwk-green:#23a353;--ezwk-red:#b42318}
body.ezwk-kiosk-active{overflow:hidden!important}
#ezwk-root.ezwk-root{position:fixed;inset:0;z-index:2147483000;background:#eef1f6;color:var(--ezwk-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.35;-webkit-font-smoothing:antialiased}
#ezwk-root *{box-sizing:border-box}
.ezwk-root button,.ezwk-root input,.ezwk-root select,.ezwk-root textarea{font:inherit}
.ezwk-root button{cursor:pointer}
.ezwk-root button:disabled{cursor:not-allowed;opacity:.52}
.ezwk-root [hidden]{display:none!important}
.ezwk-screen{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:28px}
.ezwk-login-screen{background:radial-gradient(circle at 20% 10%,#fff 0,#f8f9fc 35%,#e9edf4 100%)}
.ezwk-login-card{width:min(470px,100%);padding:34px;border:1px solid #d8dee8;border-radius:24px;background:#fff;box-shadow:0 28px 70px rgba(25,39,67,.18)}
.ezwk-brand-row{display:flex;align-items:center;gap:14px;padding-bottom:24px;border-bottom:1px solid var(--ezwk-line)}
.ezwk-brand-row img{width:60px;height:60px;object-fit:contain;border-radius:13px}
.ezwk-brand-row span{display:block;color:#5f6d83;font-size:.72rem;font-weight:800;letter-spacing:.13em}
.ezwk-brand-row strong{display:block;margin-top:4px;font-size:1.32rem}
.ezwk-login-clock{text-align:center;padding:28px 0 25px}
.ezwk-login-clock div{font-size:.9rem;color:var(--ezwk-muted);font-weight:650}
.ezwk-login-clock strong{display:block;margin-top:5px;font-size:2.15rem;font-variant-numeric:tabular-nums}
#ezwk-login-form{display:grid;gap:11px}
#ezwk-login-form>label,.ezwk-missing-form label,.ezwk-timecard-controls label{font-size:.8rem;font-weight:750;color:#46536a}
.ezwk-key-field{display:flex;border:2px solid #cbd3df;border-radius:12px;overflow:hidden;background:#fff;transition:border-color .18s,box-shadow .18s}
.ezwk-key-field:focus-within{border-color:var(--ezwk-blue);box-shadow:0 0 0 4px rgba(39,91,184,.12)}
.ezwk-key-field input{flex:1;min-width:0;border:0;outline:0;padding:15px 16px;font-size:1.25rem;letter-spacing:.13em;text-transform:uppercase}
.ezwk-key-field button{border:0;border-left:1px solid var(--ezwk-line);background:#f7f9fc;padding:0 15px;color:#475569;font-weight:750}
.ezwk-primary-button,.ezwk-secondary-button{border-radius:10px;padding:11px 17px;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s}
.ezwk-primary-button{border:1px solid var(--ezwk-blue-dark);background:var(--ezwk-blue);color:#fff;box-shadow:0 7px 16px rgba(39,91,184,.2)}
.ezwk-primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 20px rgba(39,91,184,.25)}
.ezwk-secondary-button{border:1px solid #aeb9cb;background:#fff;color:#2d4f89}
.ezwk-secondary-button:hover:not(:disabled){background:#f1f5fb}
.ezwk-form-message{min-height:20px;margin:0;color:var(--ezwk-red);font-size:.82rem;font-weight:700}
.ezwk-app-screen{background:#eef1f6}
.ezwk-shell{width:min(1080px,100%);height:min(690px,100%);display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);overflow:hidden;border:1px solid #d2d8e2;border-radius:25px;background:#fff;box-shadow:0 32px 80px rgba(25,39,67,.2)}
.ezwk-main-panel{display:flex;flex-direction:column;align-items:center;padding:28px 42px 30px;border-right:1px solid var(--ezwk-line);text-align:center;min-width:0}
.ezwk-topline{width:100%;display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--ezwk-line);font-size:.85rem;color:#596579}
.ezwk-topline strong{font-variant-numeric:tabular-nums;color:#2d3748}
.ezwk-greeting{margin-top:24px}
.ezwk-greeting>p:first-child{margin:0 0 4px;color:#7b8595;font-size:.77rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.ezwk-greeting h1{margin:0;font-size:2rem;letter-spacing:-.025em}
.ezwk-greeting h1 span{color:#1e293b}
.ezwk-greeting #ezwk-action-help{margin:9px 0 0;color:var(--ezwk-muted);font-size:.95rem}
.ezwk-timer{margin:20px 0 12px;font-size:2.35rem;font-weight:500;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:#4a5568}
.ezwk-punch-button{width:148px;height:148px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:0;border-radius:50%;background:linear-gradient(145deg,#3373d1,#1f4fa5);color:#fff;box-shadow:0 18px 35px rgba(39,91,184,.32),inset 0 1px 0 rgba(255,255,255,.25);font-weight:850;font-size:1rem;transition:transform .14s,box-shadow .14s}
.ezwk-punch-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 22px 40px rgba(39,91,184,.36),inset 0 1px 0 rgba(255,255,255,.25)}
.ezwk-punch-button.is-clock-out{background:linear-gradient(145deg,#d94e46,#a91f1a);box-shadow:0 18px 35px rgba(180,35,24,.25),inset 0 1px 0 rgba(255,255,255,.25)}
.ezwk-punch-icon{width:45px;height:45px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.92);border-radius:50%;font-size:1.55rem}
.ezwk-week-summary{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:auto;padding-top:23px}
.ezwk-week-summary>div{min-height:84px;padding:12px;border:1px solid var(--ezwk-line);border-radius:13px;background:#fafbfd;text-align:left}
.ezwk-week-summary span{display:block;color:#657187;font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.ezwk-week-summary strong{display:inline-block;margin-top:7px;font-size:1.18rem}
.ezwk-week-summary small{margin-left:4px;color:#8791a1;font-size:.68rem}
.ezwk-warning{width:100%;margin-top:12px;padding:10px 12px;border:1px solid #f3c5c0;border-radius:10px;background:#fff0ef;color:#8f1c15;font-size:.8rem;text-align:left}
.ezwk-side-panel{display:flex;flex-direction:column;padding:26px 28px;background:#fbfcfe}
.ezwk-session-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:20px;border-bottom:1px solid var(--ezwk-line)}
.ezwk-online{display:flex;align-items:center;gap:7px;color:#4b5563;font-size:.82rem;font-weight:750}
.ezwk-online i{width:9px;height:9px;border-radius:50%;background:var(--ezwk-green);box-shadow:0 0 0 4px rgba(35,163,83,.1)}
#ezwk-logout-button{border:1px solid #aeb9cb;border-radius:999px;background:#fff;padding:7px 13px;color:#314a73;font-size:.74rem;font-weight:800}
.ezwk-side-status{display:flex;flex-direction:column;align-items:center;text-align:center;margin:auto 0;padding:30px 0}
.ezwk-checkmark{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#eef2f7;color:#b9c2cf;font-size:2rem;font-weight:900}
.ezwk-side-status strong{margin-top:15px;font-size:1rem}
.ezwk-side-status span{margin-top:6px;color:#818b9b;font-size:.78rem;line-height:1.45}
.ezwk-side-panel>.ezwk-secondary-button{width:100%;margin-top:10px}
.ezwk-idle-note{margin:18px 4px 0;color:#9199a7;font-size:.69rem;line-height:1.45;text-align:center}
.ezwk-modal{position:fixed;inset:0;z-index:2147483100;display:flex;align-items:center;justify-content:center;padding:26px}
.ezwk-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(4px)}
.ezwk-modal-card{position:relative;width:min(680px,100%);max-height:calc(100dvh - 52px);overflow:auto;padding:26px;border-radius:20px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.ezwk-timecard-modal-card{width:min(1180px,100%)}
.ezwk-modal-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:17px;border-bottom:1px solid var(--ezwk-line)}
.ezwk-modal-head span{color:#66758b;font-size:.68rem;font-weight:850;letter-spacing:.1em}
.ezwk-modal-head h2{margin:4px 0 2px;font-size:1.45rem}
.ezwk-modal-head p{margin:0;color:var(--ezwk-muted);font-size:.82rem}
.ezwk-close-button{width:35px;height:35px;border:0;border-radius:50%;background:#f1f4f8;color:#4b5563;font-size:1.45rem;line-height:1}
.ezwk-timecard-controls{display:flex;align-items:end;gap:11px;flex-wrap:wrap;padding:17px 0}
.ezwk-timecard-controls label{display:flex;flex-direction:column;gap:5px}
.ezwk-timecard-controls select,.ezwk-timecard-controls input,.ezwk-missing-form input,.ezwk-missing-form select,.ezwk-missing-form textarea{border:1px solid #cbd3df;border-radius:9px;background:#fff;padding:10px 11px;outline:0}
.ezwk-timecard-controls select:focus,.ezwk-timecard-controls input:focus,.ezwk-missing-form input:focus,.ezwk-missing-form select:focus,.ezwk-missing-form textarea:focus{border-color:var(--ezwk-blue);box-shadow:0 0 0 3px rgba(39,91,184,.1)}
.ezwk-loading{padding:36px;text-align:center;color:#6b7280;font-weight:750}
.ezwk-print-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.ezwk-print-header img{width:55px;height:55px;object-fit:contain}
.ezwk-print-header strong,.ezwk-print-header span{display:block}
.ezwk-print-header strong{font-size:1.15rem}.ezwk-print-header span{margin-top:3px;color:#667085;font-size:.82rem}
.ezwk-timecard-metrics{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:8px;margin-bottom:14px}
.ezwk-timecard-metrics>div{padding:10px;border:1px solid var(--ezwk-line);border-radius:10px;background:#f8fafc}
.ezwk-timecard-metrics span{display:block;color:#68758a;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em}
.ezwk-timecard-metrics strong{display:block;margin-top:5px;font-size:1.05rem}
.ezwk-table-wrap{overflow:auto;border:1px solid var(--ezwk-line);border-radius:11px}
.ezwk-timecard-table{width:100%;min-width:970px;border-collapse:collapse;font-size:.78rem}
.ezwk-timecard-table th,.ezwk-timecard-table td{padding:10px;border-bottom:1px solid #e6eaf0;text-align:right;vertical-align:top}
.ezwk-timecard-table th{background:#f3f6fa;color:#536176;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em}
.ezwk-timecard-table th:first-child,.ezwk-timecard-table td:first-child,.ezwk-timecard-table th:nth-child(2),.ezwk-timecard-table td:nth-child(2){text-align:left}
.ezwk-timecard-table td:nth-child(2){min-width:250px;white-space:normal}
.ezwk-punch-list{display:flex;flex-wrap:wrap;gap:5px}
.ezwk-punch-chip{display:inline-flex;padding:3px 6px;border-radius:6px;background:#eef2f7;color:#42526a;font-size:.68rem;white-space:nowrap}
.ezwk-signatures{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:32px}
.ezwk-signatures>div{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:8px;font-size:.7rem;color:#596579}
.ezwk-signatures i{display:block;border-bottom:1px solid #374151;height:25px}
.ezwk-missing-form{display:grid;gap:16px;padding-top:20px}
.ezwk-missing-form>label{display:flex;flex-direction:column;gap:6px}
.ezwk-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ezwk-form-grid label{display:flex;flex-direction:column;gap:6px}
.ezwk-form-actions{display:flex;justify-content:flex-end;gap:9px}
.ezwk-success{position:fixed;inset:0;z-index:2147483200;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;text-align:center;padding:30px}
.ezwk-success-icon{width:88px;height:88px;display:grid;place-items:center;border-radius:50%;background:#e8f7ed;color:var(--ezwk-green);font-size:3rem;font-weight:900}
.ezwk-success h2{margin:20px 0 5px;font-size:2rem}.ezwk-success p{margin:0;color:#5d6879;font-size:1rem}.ezwk-success span{margin-top:16px;color:#8a94a4;font-size:.8rem}
.ezwk-toast{position:fixed;left:50%;bottom:28px;z-index:2147483300;transform:translateX(-50%);padding:12px 18px;border-radius:10px;background:#172033;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22);font-size:.84rem;font-weight:750}
.ezwk-toast.is-error{background:#9b1c16}
@media(max-width:840px){.ezwk-screen{padding:12px}.ezwk-shell{height:100%;grid-template-columns:1fr;border-radius:18px;overflow:auto}.ezwk-main-panel{border-right:0;padding:20px 22px}.ezwk-side-panel{border-top:1px solid var(--ezwk-line);padding:20px 22px}.ezwk-side-status{margin:15px 0;padding:12px}.ezwk-week-summary{margin-top:24px}.ezwk-timecard-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.ezwk-login-card{padding:25px 21px}.ezwk-main-panel{padding:18px 16px}.ezwk-greeting h1{font-size:1.65rem}.ezwk-timer{font-size:1.9rem}.ezwk-punch-button{width:125px;height:125px}.ezwk-week-summary{grid-template-columns:1fr}.ezwk-modal{padding:10px}.ezwk-modal-card{padding:19px}.ezwk-form-grid{grid-template-columns:1fr}.ezwk-timecard-metrics{grid-template-columns:repeat(2,1fr)}.ezwk-signatures{grid-template-columns:1fr;gap:28px}}
@media print{body *{visibility:hidden!important}#ezwk-timecard-print-area,#ezwk-timecard-print-area *{visibility:visible!important}#ezwk-timecard-print-area{position:absolute!important;left:0!important;top:0!important;width:100%!important;background:#fff!important;padding:18px!important}.ezwk-timecard-table{min-width:0!important;font-size:9px!important}.ezwk-timecard-table th,.ezwk-timecard-table td{padding:5px!important}.ezwk-timecard-metrics{grid-template-columns:repeat(7,1fr)!important}.ezwk-timecard-metrics>div{padding:6px!important}.ezwk-table-wrap{overflow:visible!important;border:0!important}.ezwk-signatures{break-inside:avoid}.ezwk-modal-head,.ezwk-timecard-controls{display:none!important}}

/* Schedule, leave, and attendance-review guidance added in 2026.08.01.16 */
.ezwk-day-context{display:grid;gap:10px;margin-top:18px}
.ezwk-context-block{padding:12px 13px;border:1px solid var(--ezwk-line);border-radius:12px;background:#fff;text-align:left}
.ezwk-context-block>span{display:block;color:#68758a;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.ezwk-context-block>strong{display:block;margin-top:5px;color:#25334a;font-size:.9rem;line-height:1.25}
.ezwk-context-block>strong.is-pending{color:#985c00}
.ezwk-context-block>small{display:block;margin-top:4px;color:#7d8797;font-size:.7rem;line-height:1.4}
.ezwk-side-status{margin:18px 0 8px;padding:12px 0 8px}
.ezwk-side-status .ezwk-checkmark{width:50px;height:50px;font-size:1.55rem}
.ezwk-success{transition:background .15s}
.ezwk-success.is-warning{background:#fffaf0}
.ezwk-success.is-warning .ezwk-success-icon{background:#fff0c2;color:#a45a00}
.ezwk-success.is-info{background:#f7faff}
.ezwk-success.is-info .ezwk-success-icon{background:#e6efff;color:var(--ezwk-blue)}
.ezwk-success-review-note{max-width:660px;margin-top:16px;padding:12px 15px;border:1px solid #f0c46c;border-radius:11px;background:#fff7dd;color:#704400;font-size:.86rem;font-weight:750;line-height:1.45}
.ezwk-success.is-info .ezwk-success-review-note{border-color:#bcd0f5;background:#edf4ff;color:#274b82}
@media(max-width:840px){.ezwk-day-context{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.ezwk-side-status{margin:12px 0 4px}}
@media(max-width:560px){.ezwk-day-context{grid-template-columns:1fr}.ezwk-success-review-note{font-size:.8rem}}
