:root{--canvas:#f7f6f2;--surface:#fff;--surface-muted:#f2f4f3;--ink:#17212b;--muted:#66737d;--border:#dce2e5;--primary:#167d6b;--primary-strong:#0f6758;--primary-soft:#e8f5f1;--warning:#e9a23b;--warning-soft:#fff6e8;--danger:#d9534f;--danger-soft:#fff0ef;--info:#397aa8;--info-soft:#eef6fb;--shadow-sm:0 1px 2px #17212b0d, 0 6px 18px #17212b0a;--shadow-lg:0 18px 50px #17212b1f;--radius-sm:9px;--radius:14px;--radius-lg:20px}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink)}body{background:var(--canvas);min-height:100vh;color:var(--ink);margin:0;font-family:Inter,Noto Sans Arabic,Segoe UI,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}:focus-visible{outline-offset:2px;outline:3px solid #167d6b59}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stack{gap:20px;display:grid}.row{align-items:center;gap:12px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:16px;display:flex}.muted{color:var(--muted)}.small{font-size:.82rem}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.button{border-radius:var(--radius-sm);background:var(--surface);min-height:42px;color:var(--ink);touch-action:manipulation;border:1px solid #0000;justify-content:center;align-items:center;gap:9px;padding:0 16px;font-weight:750;transition:all .18s;display:inline-flex}.button:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.button:active{transform:translateY(1px)scale(.99)}.button:disabled{cursor:not-allowed;opacity:.68;box-shadow:none;transform:none}.button-primary{color:#fff;background:var(--primary);border-color:var(--primary)}.button-primary:hover{background:var(--primary-strong)}.button-secondary{border-color:var(--border)}.button-danger{color:var(--danger);background:var(--danger-soft);border-color:#f1cbc9}.button-ghost{color:var(--muted);background:0 0}.button-icon{width:42px;padding:0}.button-large{min-height:54px;padding-inline:24px;font-size:1rem}.activation-progress{color:var(--primary-strong);text-align:center;margin:-6px 0 0;font-size:.84rem;font-weight:700}.activation-link-box{background:var(--primary-soft);border:1px solid #cfe7e1;border-radius:14px;gap:11px;margin-top:20px;padding:16px;display:grid}.activation-link-box strong,.activation-link-box span{display:block}.activation-link-box span{color:var(--muted);margin-top:4px;font-size:.82rem}.activation-url{background:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.activation-link-actions{flex-wrap:wrap;gap:9px;display:flex}.activation-link-box small{color:var(--muted)}.activation-offline-note{color:var(--primary-strong);border-top:1px solid #cfe7e1;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding-top:12px;display:grid}.activation-offline-note span{color:#48635e;line-height:1.55}.field{gap:7px;display:grid}.field label,.field-label{font-size:.83rem;font-weight:750}.location-scope{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);min-width:190px;margin:0;padding:10px 12px}.location-scope legend{color:var(--muted);padding-inline:5px;font-size:.75rem;font-weight:750}.location-scope .row{gap:7px;font-size:.8rem}.history-event{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);padding:14px}.history-event p{margin:8px 0 0}.activation-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;display:grid}.activation-qr{text-align:center;justify-items:center;gap:8px;max-width:220px;display:grid}.activation-qr img{border:1px solid var(--border);background:#fff;border-radius:14px;padding:8px}.input,.select,.textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:44px;color:var(--ink);padding:10px 12px;transition:border .15s,box-shadow .15s}.textarea{resize:vertical;min-height:96px}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #167d6b1f}.field-help{color:var(--muted);font-size:.76rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field-full{grid-column:1/-1}fieldset.field{border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;margin:0;padding:12px}fieldset.field legend{color:var(--muted);padding-inline:5px;font-size:.78rem;font-weight:750}.form-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:8px;display:flex}.text-link{width:fit-content;color:var(--primary-strong);align-items:center;gap:7px;font-size:.82rem;font-weight:750;display:inline-flex}.text-link:hover{text-decoration:underline}.disclosure{border-top:1px solid var(--border)}.disclosure summary{color:var(--primary-strong);cursor:pointer;align-items:center;gap:8px;padding:16px 20px;font-size:.86rem;font-weight:800;list-style-position:inside;display:flex}.disclosure[open] summary{background:var(--primary-soft)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:20px}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.card-header h2,.card-header h3{margin:0;font-size:1rem}.card-body{padding:20px}.chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;min-height:27px;padding:3px 9px;font-size:.73rem;font-weight:800;display:inline-flex}.chip-success{color:var(--primary-strong);background:var(--primary-soft)}.chip-warning{color:#9a5f08;background:var(--warning-soft)}.chip-danger{color:#aa3430;background:var(--danger-soft)}.chip-info{color:#245f86;background:var(--info-soft)}.chip-neutral{color:#52616c;background:#edf0f2}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#e9f0f3;background:linear-gradient(#142330 0%,#17212b 100%);flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;inset-block-start:0}.brand{align-items:center;gap:11px;padding:8px 8px 22px;display:flex}.brand-mark{color:#fff;background:var(--primary);border-radius:11px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.brand strong{color:#fff;font-size:.96rem;display:block}.brand span{color:#9fb0ba;margin-top:2px;font-size:.72rem;display:block}.nav{gap:5px;display:grid}.nav-link{color:#b8c6cd;border-radius:9px;align-items:center;gap:11px;min-height:43px;padding:0 11px;font-size:.88rem;font-weight:650;display:flex}.nav-link:hover{color:#fff;background:#ffffff0f}.nav-link.active{color:#fff;background:var(--primary)}.sidebar-spacer{flex:1}.sidebar-meta{border-top:1px solid #ffffff1a;padding:14px 8px 0}.sidebar-meta .email{color:#fff;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.sidebar-meta .role{color:#9fb0ba;text-transform:capitalize;margin-top:3px;font-size:.7rem}.app-main{min-width:0}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#ffffffe0;justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:0 28px;display:flex;position:sticky;top:0}.topbar-title strong{font-size:.9rem;display:block}.topbar-title span{color:var(--muted);font-size:.75rem}.topbar-actions{align-items:center;gap:9px;display:flex}.page{min-width:0;max-width:1440px;margin:0 auto;padding:28px}.page>*{min-width:0}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-header h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.55rem,2.5vw,2rem)}.page-header p{color:var(--muted);margin:7px 0 0}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat{padding:17px}.stat-top{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:.78rem;font-weight:700;display:flex}.stat-icon{background:var(--primary-soft);width:36px;height:36px;color:var(--primary);border-radius:10px;place-items:center;display:grid}.stat-value{letter-spacing:-.04em;margin-top:10px;font-size:1.75rem;font-weight:850;line-height:1}.stat-note{color:var(--muted);margin-top:6px;font-size:.73rem}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr);gap:18px;display:grid}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.report-grid h2{margin:18px 0 8px;font-size:1rem}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.82rem}.table th{color:var(--muted);border-bottom:1px solid var(--border);text-align:start;text-transform:uppercase;letter-spacing:.035em;background:#fbfcfb;padding:11px 14px;font-size:.71rem}.table td{vertical-align:middle;border-bottom:1px solid #edf0f1;padding:13px 14px}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#fbfcfb}.line-details{min-width:280px;margin-top:8px}.line-details summary{color:var(--primary-strong);cursor:pointer;font-size:.75rem;font-weight:750}.line-details[open]{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px}.line-details .row-between{border-bottom:1px solid #edf0f1;padding:5px 0}.person{align-items:center;gap:10px;min-width:160px;display:flex}.avatar{width:34px;height:34px;color:var(--primary-strong);background:#dfeeea;border-radius:50%;flex:none;place-items:center;font-size:.7rem;font-weight:850;display:grid}.person strong{display:block}.person span{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.empty{text-align:center;place-items:center;min-height:250px;padding:32px;display:grid}.empty-icon{background:var(--primary-soft);width:54px;height:54px;color:var(--primary);border-radius:16px;place-items:center;display:grid}.empty h3{margin:15px 0 6px}.empty p{max-width:390px;color:var(--muted);margin:0 0 18px;font-size:.88rem}.schedule-board-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.schedule-week-nav{justify-content:space-between;align-items:center;gap:16px;display:flex}.schedule-location-tabs{background:var(--surface-muted);border-radius:10px;flex-wrap:wrap;gap:5px;padding:4px;display:flex}.schedule-location-tabs a{min-height:34px;color:var(--muted);border-radius:8px;place-items:center;padding:5px 12px;font-size:.76rem;font-weight:750;display:grid}.schedule-location-tabs a.is-active{color:#fff;background:var(--primary);box-shadow:var(--shadow-sm)}.schedule-board-head h2{margin:0;font-size:1.12rem}.schedule-board-head p{color:var(--muted);margin:5px 0 0;font-size:.86rem}.schedule-board-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.schedule-publish{background:var(--ink);border-color:var(--ink)}.schedule-message{margin:0}.schedule-layout{grid-template-columns:276px minmax(0,1fr);align-items:start;gap:16px;display:grid}.schedule-staff-panel{position:sticky;top:88px;overflow:hidden}.schedule-panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px;display:flex}.schedule-panel-head h2{margin:0;font-size:1rem}.schedule-panel-head span:not(.chip){color:var(--muted);margin-top:4px;font-size:.73rem;line-height:1.45;display:block}.schedule-search{border:1px solid var(--border);color:var(--muted);background:var(--surface);border-radius:10px;align-items:center;gap:9px;margin:12px;padding:0 11px;display:flex}.schedule-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #167d6b1f}.schedule-search input{width:100%;min-width:0;height:42px;color:var(--ink);background:0 0;border:0;outline:0}.schedule-people{gap:7px;max-height:calc(100vh - 260px);padding:0 12px 14px;display:grid;overflow-y:auto}.schedule-person{width:100%;min-height:62px;color:var(--ink);background:var(--surface-muted);text-align:start;touch-action:none;border:1px solid #0000;border-radius:11px;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid}.schedule-person:hover{background:var(--primary-soft);box-shadow:var(--shadow-sm);border-color:#b7d9d1}.schedule-person:active{transform:scale(.985)}.schedule-person.is-selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px #167d6b1a}.schedule-person.is-dragging{opacity:.35}.schedule-grip{color:#9aa6ae}.schedule-person-copy{min-width:0}.schedule-person-copy strong,.schedule-person-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.schedule-person-copy strong{font-size:.82rem}.schedule-person-copy small{color:var(--muted);margin-top:3px;font-size:.68rem}.schedule-selected-check{color:var(--primary)}.schedule-grid-wrap{min-width:0;overflow:auto}.schedule-week-grid{grid-template-columns:140px repeat(7,minmax(126px,1fr));min-width:1040px;display:grid}.schedule-grid-head{border-inline-start:1px solid var(--border);border-bottom:1px solid var(--border);background:#fbfcfb;align-content:center;justify-items:center;gap:3px;min-height:62px;padding:10px;display:grid}.schedule-grid-head strong{text-transform:capitalize;font-size:.79rem}.schedule-grid-head span{color:var(--muted);font-size:.7rem}.schedule-grid-row{display:contents}.schedule-row-label{z-index:3;border-bottom:1px solid var(--border);background:var(--surface);align-content:start;gap:4px;min-height:150px;padding:16px 12px;display:grid;position:sticky;inset-inline-start:0}.schedule-row-label strong{font-size:.9rem}.schedule-row-label span{color:var(--ink);font-size:.76rem;font-weight:700}.schedule-row-label small{color:var(--primary-strong);font-size:.67rem;font-weight:750}.schedule-grid-cell{border-inline-start:1px solid var(--border);border-bottom:1px solid var(--border);background:#fcfdfc;min-height:150px;padding:8px;transition:background .16s,box-shadow .16s}.schedule-grid-cell.is-empty{color:#a2adb4;background:repeating-linear-gradient(135deg,#fbfcfb,#fbfcfb 8px,#f6f8f7 8px 16px);place-items:center;font-size:.73rem;display:grid}.schedule-slot{flex-direction:column;gap:8px;display:flex}.schedule-slot-day{color:var(--muted);text-transform:capitalize;font-size:.72rem;font-weight:800;display:none}.schedule-slot.is-over{background:var(--primary-soft);box-shadow:inset 0 0 0 3px var(--primary)}.schedule-slot.is-unavailable{background:var(--danger-soft);cursor:not-allowed;box-shadow:inset 0 0 0 2px #dda4a0}.schedule-unavailable-reason{color:#8b332f;background:#ffffffb8;border-radius:8px;padding:7px 8px;font-size:.66rem;font-weight:800;line-height:1.35}.schedule-unavailable-reason strong,.schedule-unavailable-reason span{display:block}.schedule-slot-status{justify-content:flex-end;align-items:center;gap:5px;display:flex}.schedule-delete-slot{width:27px;height:27px;color:var(--danger);background:var(--danger-soft);border:1px solid #f1cbc9;border-radius:8px;place-items:center;padding:0;display:grid}.schedule-delete-slot:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.schedule-assignees{gap:6px;display:grid}.schedule-assignee{background:#fff;border:1px solid #dfe7e4;border-radius:9px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:7px;display:grid;box-shadow:0 1px 2px #17212b0a}.schedule-assignee .avatar{width:28px;height:28px;font-size:.61rem}.schedule-assignee strong,.schedule-assignee small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.schedule-assignee strong{font-size:.73rem}.schedule-assignee small{color:var(--muted);margin-top:2px;font-size:.62rem}.schedule-remove{width:25px;height:25px;color:var(--muted);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.schedule-remove:hover{color:var(--danger);background:var(--danger-soft)}.schedule-drop-hint{min-height:55px;color:var(--muted);text-align:center;border:1.5px dashed #b8c9c4;border-radius:9px;align-content:center;place-items:center;gap:4px;padding:7px;font-size:.67rem;display:grid}.schedule-tap-add{border:1px solid var(--primary);min-height:38px;color:var(--primary-strong);background:var(--primary-soft);border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:auto;padding:6px;font-size:.7rem;font-weight:800;display:none}.schedule-mobile-selection{color:var(--primary-strong);background:var(--primary-soft);border-bottom:1px solid #cfe7e1;align-items:center;gap:7px;padding:11px 13px;font-size:.8rem;display:none}.schedule-mobile-selection button{color:var(--primary-strong);background:0 0;border:0;place-items:center;margin-inline-start:auto;display:grid}.schedule-board-empty{text-align:center;align-content:center;place-items:center;gap:9px;min-height:420px;padding:30px;display:grid}.schedule-board-empty h3,.schedule-board-empty p{margin:0}.schedule-board-empty p{max-width:420px;color:var(--muted);margin-bottom:8px}.schedule-drag-overlay{border:1px solid var(--primary);min-width:220px;box-shadow:var(--shadow-lg);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:11px 14px;display:flex;transform:rotate(2deg)}.schedule-day-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.schedule-day-options label{cursor:pointer}.schedule-day-options input{opacity:0;pointer-events:none;position:absolute}.schedule-day-options span{border:1px solid var(--border);min-height:42px;color:var(--muted);background:#fff;border-radius:9px;place-items:center;gap:2px;padding:6px;font-size:.72rem;font-weight:750;transition:all .15s;display:grid}.schedule-day-options span small{text-align:center;font-size:.56rem;font-weight:650;line-height:1.1}.schedule-day-options label.is-checked span{color:var(--primary-strong);border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.schedule-day-options label.is-disabled{cursor:not-allowed}.schedule-day-options label.is-disabled span{color:var(--muted);background:var(--surface-muted);opacity:.72;border-style:dashed}.schedule-day-options input:focus-visible+span{outline-offset:2px;outline:3px solid #167d6b59}.schedule-shift-presets{grid-template-columns:1fr 1fr;gap:9px;display:grid}.schedule-shift-presets button{border:1px solid var(--border);min-height:68px;color:var(--ink);background:var(--surface);text-align:start;cursor:pointer;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;padding:11px 13px;transition:border-color .15s,background .15s,transform 80ms,box-shadow .15s;display:grid}.schedule-shift-presets button:hover{background:var(--surface-subtle);border-color:#9fb7b2}.schedule-shift-presets button:active{transform:scale(.98)}.schedule-shift-presets button.is-selected{border-color:var(--primary);color:var(--primary-strong);background:var(--primary-soft);box-shadow:0 0 0 2px #167d6b14}.schedule-shift-presets button span{font-size:.8rem;font-weight:800}.schedule-shift-presets button small{color:var(--muted);grid-column:1/-1}.schedule-details{border:1px solid var(--border);border-radius:10px}.schedule-details summary{min-height:44px;color:var(--primary-strong);cursor:pointer;align-items:center;gap:8px;padding:10px 12px;font-size:.8rem;font-weight:800;list-style:none;display:flex}.schedule-details[open] summary{border-bottom:1px solid var(--border);background:var(--primary-soft)}.schedule-details>.field,.schedule-details>.form-grid{padding:14px}.schedule-next-week{background:var(--primary-soft);border:1px solid #cfe7e1;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;display:grid}.schedule-next-week strong,.schedule-next-week span{display:block}.schedule-next-week span{color:var(--muted);direction:ltr;margin-top:3px;font-size:.76rem}.schedule-advanced>summary{color:var(--primary-strong);cursor:pointer;align-items:center;gap:9px;padding:16px 20px;font-size:.84rem;font-weight:800;display:flex}.schedule-advanced[open]>summary{border-bottom:1px solid var(--border);background:var(--primary-soft)}.auth-page{background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(430px,520px);min-height:100vh;display:grid}.auth-art{color:#fff;background:#17212b;flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.auth-art:before{content:"";background:radial-gradient(circle,#167d6ba6,#0000 66%);border-radius:50%;width:520px;height:520px;position:absolute;inset-block-start:-140px;inset-inline-end:-180px}.auth-art>*{position:relative}.auth-art h1{letter-spacing:-.055em;max-width:720px;margin:80px 0 18px;font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.02}.auth-art p{color:#b9c7cd;max-width:560px;font-size:1.05rem;line-height:1.65}.auth-points{flex-wrap:wrap;gap:10px;display:flex}.auth-point{color:#d9e3e6;background:#ffffff0d;border:1px solid #ffffff26;border-radius:999px;padding:9px 12px;font-size:.78rem}.auth-panel{place-items:center;padding:40px;display:grid}.auth-form{width:min(100%,390px)}.auth-form h2{letter-spacing:-.035em;margin:0;font-size:1.8rem}.auth-form>p{color:var(--muted);margin:8px 0 26px;line-height:1.55}.auth-error{color:#9d302d;background:var(--danger-soft);border-radius:9px;margin-bottom:16px;padding:10px 12px;font-size:.82rem}.auth-notice{color:var(--primary-strong);background:var(--primary-soft);border-radius:9px;margin-bottom:16px;padding:10px 12px;font-size:.82rem}.auth-divider{color:var(--muted);align-items:center;gap:12px;margin:20px 0;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.signup-steps{gap:12px;display:grid}.signup-steps span{color:#ffffffe6;align-items:center;gap:10px;display:flex}.signup-steps strong{background:#ffffff24;border-radius:999px;place-items:center;width:24px;height:24px;display:inline-grid}.field-hint{color:var(--muted);align-items:center;gap:6px;margin-top:7px;font-size:.82rem;display:flex}.auth-return{text-align:center;margin-top:20px!important}.auth-simple-page{background:var(--surface-subtle);place-items:center;min-height:100svh;padding:28px;display:grid}.auth-confirm-card{text-align:center;gap:18px;width:min(100%,520px);padding:clamp(28px,5vw,48px);display:grid}.auth-confirm-card h1{margin:0}.auth-confirm-card p{color:var(--muted);margin:0}.auth-confirm-icon{width:72px;height:72px;color:var(--primary);background:var(--primary-soft);border-radius:22px;place-items:center;margin:0 auto;display:grid}.auth-confirm-help{background:var(--surface-subtle);text-align:start;border-radius:14px;gap:5px;padding:16px;display:grid}.auth-confirm-help span{color:var(--muted);font-size:.9rem}.full{width:100%}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17212b94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-lg);width:min(100%,680px);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);overflow:auto}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.modal-head h2{margin:0;font-size:1.15rem}.modal-head p{color:var(--muted);margin:5px 0 0;font-size:.8rem}.modal-body{padding:22px}.employee-quick-form{gap:20px;display:grid}.employee-large-input{min-height:52px;font-size:.95rem}.numeric-ltr{text-align:start;direction:ltr;unicode-bidi:plaintext}.input.is-invalid,.select.is-invalid{border-color:var(--danger);box-shadow:0 0 0 3px #b848421a}.field-error{color:var(--danger);font-size:.78rem;font-weight:700}.employee-role-field{border:0!important;padding:0!important}.employee-role-field legend{color:var(--ink)!important;padding:0 0 9px!important;font-size:.83rem!important}.employee-role-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.employee-role-grid button{border:1px solid var(--border);background:var(--surface);min-height:54px;color:inherit;font:inherit;text-align:start;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;font-weight:650;transition:border-color .15s,background .15s,transform 80ms;display:flex;position:relative}.employee-role-grid button:hover{background:var(--surface-subtle);border-color:#9fb7b2}.employee-role-grid button:active{transform:scale(.98)}.employee-role-grid button.is-selected{border-color:var(--primary);color:var(--primary-strong);background:var(--primary-soft);box-shadow:0 0 0 2px #167d6b14}.employee-role-grid button:focus-visible{outline-offset:2px;outline:3px solid #167d6b38}.employee-pin-input{letter-spacing:1rem;width:250px;min-height:58px;padding-inline:18px 5px;font-size:1.55rem;font-weight:900}.employee-start-summary{border:1px solid var(--border);background:var(--surface-subtle);border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.employee-start-summary small,.employee-start-summary strong{display:block}.employee-start-summary small{color:var(--muted);font-size:.75rem}.employee-start-icon{width:38px;height:38px;color:var(--primary);background:var(--primary-soft);border-radius:11px;place-items:center;display:grid}.employee-more-details{border-top:1px solid var(--border);padding-top:5px}.employee-more-details summary{color:var(--primary-strong);cursor:pointer;align-items:center;gap:7px;padding:10px 0;font-size:.84rem;font-weight:800;list-style:none;display:flex}.employee-more-details summary::-webkit-details-marker{display:none}.employee-more-details[open] summary svg{transform:rotate(180deg)}.employee-more-details .field{padding-top:7px}.employee-form-actions{border-top:1px solid var(--border);margin-top:2px;padding-top:18px}.employee-created{text-align:center;gap:20px;padding:8px 2px 4px;display:grid}.employee-created-icon{width:68px;height:68px;color:var(--primary);background:var(--primary-soft);border-radius:22px;place-items:center;margin:auto;display:grid}.employee-created h3{margin:0;font-size:1.25rem}.employee-code{color:var(--muted);letter-spacing:.08em;margin:6px 0 0;font-weight:800}.employee-created-checks{grid-template-columns:1fr 1fr;gap:10px;display:grid}.employee-created-checks>div{border:1px solid var(--border);text-align:start;background:var(--surface-subtle);border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex}.employee-created-checks>div>span{width:34px;height:34px;color:var(--primary);background:var(--primary-soft);border-radius:10px;flex:none;place-items:center;display:grid}.employee-created-checks>div>span.is-warning{color:#97600e;background:var(--warning-soft)}.employee-created-checks small,.employee-created-checks strong{display:block}.employee-created-checks small{color:var(--muted)}.employee-created-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.employee-created-actions .button-link{background:0 0;border:0;grid-column:1/-1;justify-self:center}.employee-create-unavailable{justify-items:end;gap:4px;display:grid}.employee-create-unavailable span{max-width:260px;color:var(--danger);text-align:end;font-size:.75rem}.setup-attention-card{border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fffaf0;border:1px solid #e6c77b;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:14px;padding:16px 18px;display:grid}.setup-attention-icon,.salary-setup-icon{color:#936014;background:var(--warning-soft);border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.setup-attention-card h2{margin:0;font-size:1rem}.setup-attention-card p{color:#725c35;margin:4px 0 0;font-size:.82rem}.setup-attention-links{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.setup-attention-links a{color:#714b0f;background:#fff;border:1px solid #dec17d;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:800}.salary-setup-card{border-color:#e1c16f;scroll-margin-top:84px}.salary-setup-card .card-header h2{margin-top:10px}.salary-primary-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.salary-employment-summary{border:1px solid var(--border);background:var(--surface-subtle);border-radius:13px;padding:14px 16px}.salary-employment-summary>span{font-size:.84rem;font-weight:800}.salary-employment-summary details{margin-top:8px}.salary-employment-summary summary{color:var(--primary-strong);cursor:pointer;font-size:.8rem;font-weight:800}.salary-advanced-fields{padding-top:16px}.late-policy-card{border-color:#dfc27c}.late-policy-summary{background:var(--surface-subtle);border-radius:13px;flex-wrap:wrap;align-items:center;gap:10px;padding:13px 15px;display:flex}.late-policy-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.late-policy-icon{color:#8a5b0d;background:var(--warning-soft)}.late-policy-enabled{align-self:end;min-height:76px}.late-policy-tier-list{border:1px solid var(--border);background:var(--surface-subtle);border-radius:16px;gap:12px;padding:16px;display:grid}.late-policy-tier{border:1px solid var(--border);background:var(--surface);border-radius:14px;grid-template-columns:38px minmax(125px,.6fr) minmax(170px,.8fr) minmax(170px,1fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.late-policy-tier-number{width:34px;height:34px;color:var(--primary-strong);background:var(--primary-soft);border-radius:50%;align-self:center;place-items:center;font-weight:900;display:grid}.late-policy-preview{background:#f4fbf9;border:1px solid #b7dcd5;border-radius:16px;gap:14px;padding:18px;display:grid}.late-policy-preview-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.late-policy-preview-result{color:var(--muted);background:var(--surface);border-radius:13px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:14px 16px;display:grid}.late-policy-preview-result strong{font-size:1.35rem}.late-policy-preview-result.has-deduction{color:#8f342f;background:var(--danger-soft)}.input-suffix{align-items:center;display:flex;position:relative}.input-suffix .input{padding-inline-end:78px}.input-suffix>span{color:var(--muted);pointer-events:none;font-size:.78rem;font-weight:750;position:absolute;inset-inline-end:13px}.legal-confirmation{cursor:pointer;background:#fffaf0;border:1px solid #dfc27c;border-radius:13px;align-items:flex-start;gap:11px;padding:14px;display:flex}.legal-confirmation input{margin-top:3px}.legal-confirmation strong,.legal-confirmation small{display:block}.legal-confirmation small{color:var(--muted);margin-top:3px;line-height:1.45}.late-review-card{border-color:#df9b97}.late-review-card .card-header{color:#8f302c;background:var(--danger-soft)}.late-review-list{gap:12px;display:grid}.late-review-item{border:1px solid var(--border);border-radius:13px;grid-template-columns:minmax(180px,1fr) auto minmax(360px,1.2fr);align-items:center;gap:14px;padding:14px;display:grid}.late-review-amount{color:var(--danger);white-space:nowrap}.late-review-actions{grid-template-columns:minmax(160px,1fr) auto auto;gap:8px;display:grid}.payroll-period-summary{background:linear-gradient(135deg, var(--surface), var(--primary-soft));justify-content:space-between;align-items:center;gap:18px;display:flex}.payroll-period-summary h2{margin:4px 0 2px}.payroll-period-summary p{margin:0}.payroll-stat-value{font-size:clamp(1.35rem,2.2vw,1.85rem)}.danger-stat{color:var(--danger);background:var(--danger-soft);font-size:1.25rem;font-weight:900}.warning-stat{color:#936014;background:var(--warning-soft)}.money-negative{color:var(--danger);font-weight:800}.payroll-finalize-card{border-color:#bfd8d2;justify-content:space-between;align-items:center;gap:22px;display:flex}.payroll-finalize-card h2{margin:4px 0}.payroll-finalize-card p{max-width:680px;margin:0 0 10px}.payroll-advanced>summary{cursor:pointer;padding:16px 18px;font-weight:800}.payroll-advance-note{color:var(--primary-strong);background:var(--primary-soft);border:1px solid #b9d9d2;border-radius:13px;gap:4px;padding:13px 15px;display:grid}.payroll-advance-note span{font-size:.8rem;line-height:1.45}.payroll-employee-row{transition:background .16s}.payroll-employee-row:hover{background:color-mix(in srgb, var(--primary-soft) 62%, transparent)}.payroll-employee-link{min-width:170px;color:inherit;flex-direction:column;text-decoration:none;display:flex}.payroll-employee-table .chip{white-space:nowrap;text-decoration:none}.payroll-back-link{align-items:center;gap:7px;width:fit-content;display:inline-flex}.payroll-employee-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.payroll-review-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.attendance-session-table td{vertical-align:top}.attendance-session-photo{object-fit:cover;border:1px solid var(--border);background:var(--surface-subtle);border-radius:14px;width:64px;height:64px}.attendance-no-photo{border:1px dashed var(--border);width:64px;height:64px;color:var(--muted);border-radius:14px;justify-content:center;align-items:center;gap:4px;display:inline-flex}.attendance-issues{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.attendance-issues .chip{font-size:.68rem}.attendance-session-attention{background:color-mix(in srgb, var(--warning-soft) 48%, transparent)}.attendance-row-actions{flex-wrap:nowrap}.manual-unscheduled-box{border:1px solid var(--warning);background:var(--warning-soft);border-radius:14px;grid-template-columns:minmax(0,1.5fr) minmax(180px,.7fr);gap:14px;padding:14px;display:grid}.pay-mode-fieldset{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.pay-mode-fieldset>legend{color:var(--ink);margin-bottom:8px;font-size:.88rem;font-weight:800}.pay-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pay-mode-grid .legal-confirmation{background:var(--surface);border-color:var(--border);min-width:0}.pay-mode-grid .legal-confirmation:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 14%, transparent)}.field-error{color:var(--danger);font-size:.78rem;font-weight:700;display:block}.week-grid{grid-template-columns:74px repeat(7,minmax(110px,1fr));min-width:850px;display:grid}.week-cell{border-inline-end:1px solid var(--border);border-block-end:1px solid var(--border);min-height:78px;padding:8px}.week-head{min-height:auto;color:var(--muted);background:#fbfcfb;padding:12px 8px;font-size:.72rem;font-weight:800}.shift-pill{color:#0b574b;background:var(--primary-soft);border-inline-start:3px solid var(--primary);border-radius:8px;margin-bottom:6px;padding:8px;font-size:.7rem;display:block}.shift-pill strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.shift-pill span{margin-top:3px;display:block}.shift-draft{color:#725011;background:var(--warning-soft);border-inline-start-color:var(--warning)}.shift-cancelled{color:#993a36;background:var(--danger-soft);border-inline-start-color:var(--danger);opacity:.82;text-decoration:line-through}.kiosk-page{background:#edf1ef;min-height:100vh;padding:18px}.kiosk-frame{max-width:1100px;min-height:calc(100vh - 36px);box-shadow:var(--shadow-lg);background:#fff;border:1px solid #cfd8d7;border-radius:22px;flex-direction:column;margin:auto;display:flex;overflow:hidden}.kiosk-head{color:#fff;background:var(--ink);justify-content:space-between;align-items:center;gap:16px;min-height:70px;padding:0 24px;display:flex}.kiosk-body{flex:1;place-items:center;padding:32px;display:grid}.kiosk-content{text-align:center;width:min(100%,780px);position:relative}.kiosk-roster-step{gap:20px;display:grid}.kiosk-roster-heading p{margin:2px 0 20px}.kiosk-roster-heading h2{margin:0}.kiosk-time{letter-spacing:-.06em;font-size:clamp(2.3rem,6vw,4.4rem);font-weight:880}.employee-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:28px;display:grid}.employee-tile{border:1px solid var(--border);background:#fff;border-radius:14px;min-height:120px;padding:14px}.employee-tile:hover{border-color:var(--primary);background:var(--primary-soft)}.kiosk-roster-pagination{justify-content:center;align-items:center;gap:18px;display:flex}.kiosk-roster-pagination .button{min-width:132px;min-height:48px}.kiosk-status{background:#ffffff1a;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:.74rem;display:inline-flex}.kiosk-pin-step{width:min(100%,430px);margin:auto}.kiosk-pin-avatar{width:74px;height:74px;margin:auto;font-size:1.1rem}.kiosk-pin-back{justify-self:start}.kiosk-pin-panel{gap:20px;display:grid}.kiosk-pin-dots{justify-content:center;align-items:center;gap:18px;min-height:50px;display:flex}.kiosk-pin-dots>span:not(.kiosk-pin-spinner){background:#fff;border:3px solid #9baaa8;border-radius:50%;width:22px;height:22px;transition:transform .12s,background .12s,border-color .12s;box-shadow:inset 0 1px 2px #10232214}.kiosk-pin-dots>span.is-filled{border-color:var(--primary);background:var(--primary);transform:scale(1.08)}.kiosk-pin-spinner{color:var(--primary);margin-inline-start:4px}.kiosk-keypad{grid-template-columns:repeat(3,minmax(82px,1fr));gap:12px;display:grid}.kiosk-key{min-height:76px;color:var(--ink);touch-action:manipulation;-webkit-user-select:none;user-select:none;background:linear-gradient(#fff,#f6f8f7);border:1px solid #c5d0ce;border-radius:17px;justify-content:center;align-items:center;gap:7px;transition:transform 80ms,box-shadow 80ms,background 80ms,border-color 80ms;display:inline-flex;box-shadow:0 5px #cbd4d2,0 10px 20px #122a2617}.kiosk-key:hover{border-color:var(--primary);background:var(--primary-soft)}.kiosk-key:active{background:#ccefe8;transform:translateY(4px)scale(.97);box-shadow:0 1px #aab8b5,0 4px 8px #122a261a}.kiosk-key:disabled{opacity:.55;transform:none;box-shadow:0 2px #d5dddb}.kiosk-key-number{font-size:2rem;font-weight:850;line-height:1}.kiosk-key-utility{color:var(--muted);flex-direction:column;font-size:.7rem;font-weight:800}.kiosk-pin-panel.is-invalid{animation:.45s kiosk-pin-shake}@keyframes kiosk-pin-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-12px)}40%,80%{transform:translate(12px)}}.kiosk-action-step{max-width:620px;margin:auto}.kiosk-action-back{justify-self:start}.kiosk-action-choice{flex-direction:column;min-height:130px;font-size:1.1rem}.kiosk-action-recommended{width:100%;min-height:160px;font-size:clamp(1.15rem,3vw,1.55rem);box-shadow:0 10px 24px #0f76613d}.kiosk-action-recommended-chip{color:inherit;background:#ffffff2e}.kiosk-wrong-action{color:var(--muted);text-underline-offset:3px;justify-self:center;text-decoration:underline}.kiosk-alternative-confirmation{text-align:start;background:#fff8ed;border:1px solid #e3c3a0;border-radius:15px;gap:10px;padding:16px;display:grid}.kiosk-alternative-confirmation p{color:var(--muted);margin:0}.kiosk-alternative-confirmation .row{justify-content:flex-end}.kiosk-session-timer{border:1px solid var(--border);min-height:38px;color:var(--muted);box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:.78rem;display:inline-flex}.kiosk-session-timer.is-urgent{color:var(--danger);background:var(--danger-soft);border-color:#e2aaa7}.kiosk-camera-flow{width:min(100%,620px);margin:auto}.kiosk-camera-title{text-align:start}.kiosk-camera-grid,.kiosk-camera-controls,.kiosk-camera-review-actions{gap:16px;display:grid}.kiosk-auto-photo-note{color:var(--primary-strong);text-align:start;background:var(--primary-soft);border:1px solid #cfe4de;border-radius:14px;align-items:flex-start;gap:12px;padding:14px;display:flex}.kiosk-auto-photo-note svg{flex:none;margin-top:2px}.kiosk-auto-photo-note strong,.kiosk-auto-photo-note span{display:block}.kiosk-auto-photo-note span{color:var(--muted);margin-top:3px;font-size:.78rem;line-height:1.4}.kiosk-live-camera{aspect-ratio:4/3;border:5px solid var(--warning);background:#111b1a;border-radius:25px;width:100%;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 15px 40px #11232033}.kiosk-live-camera.is-red{border-color:var(--danger);box-shadow:0 0 0 5px var(--danger-soft), 0 15px 40px #11232033}.kiosk-live-camera.is-green{border-color:var(--primary);box-shadow:0 0 0 5px var(--primary-soft), 0 15px 40px #11232033}.kiosk-live-camera video{object-fit:contain;width:100%;height:100%;display:block;transform:scaleX(-1)}.kiosk-face-oval{pointer-events:none;border:3px dashed #ffffffe0;border-radius:50%;width:46%;height:84%;position:absolute;inset-block-start:8%;inset-inline-start:27%;box-shadow:0 0 0 100vmax #04110f3b}.kiosk-camera-loading{color:#fff;background:#0914129e;place-items:center;display:grid;position:absolute;inset:0}.kiosk-switch-camera{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c1d1ab8;border:1px solid #ffffff59;border-radius:999px;align-items:center;gap:7px;min-height:42px;padding:8px 12px;display:inline-flex;position:absolute;inset-block-end:12px;inset-inline-end:12px}.kiosk-face-status{color:#7b5410;background:var(--warning-soft);border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:12px 16px;display:flex}.kiosk-face-status.is-red{color:#983c37;background:var(--danger-soft)}.kiosk-face-status.is-green{color:var(--primary-strong);background:var(--primary-soft)}.kiosk-status-dot{background:currentColor;border-radius:50%;flex:none;width:13px;height:13px;box-shadow:0 0 0 5px #ffffff8c}.kiosk-take-photo,.kiosk-confirm-photo{min-height:76px;font-size:1.05rem;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #0b584d}.kiosk-take-photo:active,.kiosk-confirm-photo:active{transform:translateY(4px)scale(.985);box-shadow:0 2px #0b584d}.kiosk-take-photo:disabled{box-shadow:none}.kiosk-manual-review{text-align:start;background:#fffaf0;border:1px solid #e4c983;border-radius:14px;padding:16px}.kiosk-manual-review p{margin:5px 0 12px}.kiosk-manual-review.is-danger{background:var(--danger-soft);border-color:#e2aaa7}.kiosk-photo-preview{aspect-ratio:4/3;border:4px solid var(--primary);width:min(100%,520px);box-shadow:var(--shadow-lg);background:#15211f;border-radius:23px;margin:auto;overflow:hidden}.kiosk-photo-preview img{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.kiosk-camera-review-copy{margin-bottom:14px}.kiosk-success{max-width:520px;margin:auto;animation:.28s ease-out kiosk-success-in}.kiosk-next-person{justify-self:center;min-width:min(100%,280px);min-height:58px}.kiosk-success-time{letter-spacing:-.05em;color:var(--primary-strong);margin:8px 0;font-size:clamp(2.1rem,7vw,3.7rem);font-weight:900}.kiosk-shift-receipt{color:var(--primary-strong);background:var(--primary-soft);border:1px solid #b6ddd5;border-radius:15px;gap:4px;margin-top:12px;padding:14px 16px;display:grid}.kiosk-shift-receipt strong{font-size:1.05rem}.kiosk-shift-receipt span{font-size:.82rem}.kiosk-success.is-late_warning .kiosk-shift-receipt{color:#81570f;background:var(--warning-soft);border-color:#e6c77b}.kiosk-success.is-late_red .kiosk-shift-receipt{color:#9d302d;background:var(--danger-soft);border-color:#df9b97}.kiosk-success.is-late_red .kiosk-shift-receipt strong{font-size:1.35rem;font-weight:950}.kiosk-shift-receipt.is-offline,.kiosk-success.is-unscheduled .kiosk-shift-receipt{border-color:var(--border);color:var(--muted);background:var(--surface-subtle)}@keyframes kiosk-success-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (orientation:landscape) and (min-width:900px) and (min-height:600px) and (max-height:900px){.kiosk-page{height:100dvh;min-height:0;padding:0;padding-block:env(safe-area-inset-top) env(safe-area-inset-bottom);padding-inline:env(safe-area-inset-left) env(safe-area-inset-right);overflow:hidden}.kiosk-frame{width:100%;max-width:none;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0}.kiosk-head{flex:0 0 62px;min-height:62px;padding-inline:20px}.kiosk-body{min-height:0;padding:clamp(10px,2vh,18px) clamp(16px,2.5vw,30px);overflow:hidden}.kiosk-content{width:min(100%,1180px);height:100%;min-height:0}.kiosk-roster-step{grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(8px,1.5vh,14px);height:100%;min-height:0}.kiosk-roster-heading{text-align:start;grid-template-columns:auto minmax(240px,1fr);align-items:center;column-gap:28px;display:grid}.kiosk-roster-heading .kiosk-time{grid-row:1/3;font-size:clamp(2.2rem,4.8vw,3.7rem)}.kiosk-roster-heading p{align-self:end;margin:0;font-size:.78rem}.kiosk-roster-heading h2{align-self:start;font-size:clamp(1.05rem,2vw,1.45rem)}.employee-tiles{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(7px,1.3vh,11px);min-height:0;margin:0}.employee-tile{min-height:0;padding:7px 10px}.employee-tile .avatar{width:36px!important;height:36px!important;margin-bottom:5px!important}.employee-tile .small{font-size:.67rem;margin-top:2px!important}.kiosk-roster-pagination{gap:14px}.kiosk-roster-pagination .button{min-width:128px;min-height:42px;padding-block:7px}.kiosk-pin-step{grid-template-columns:minmax(300px,.85fr) minmax(430px,1.15fr);align-items:center;gap:clamp(28px,6vw,84px);width:min(100%,1050px);height:100%;display:grid}.kiosk-pin-identity{text-align:start;align-content:center;min-width:0}.kiosk-pin-back{justify-self:start;margin-bottom:clamp(8px,2vh,18px)}.kiosk-pin-avatar{width:68px;height:68px;margin-inline:0}.kiosk-pin-identity h1{margin-bottom:6px;font-size:clamp(1.7rem,3.5vw,2.6rem)}.kiosk-pin-panel{gap:clamp(8px,1.5vh,14px);min-height:0}.kiosk-pin-dots{min-height:36px}.kiosk-keypad{gap:clamp(7px,1.4vh,11px)}.kiosk-key{border-radius:14px;min-height:clamp(56px,10.5vh,72px)}.kiosk-key-number{font-size:clamp(1.55rem,3vh,2rem)}.kiosk-action-step{place-content:center;gap:clamp(18px,4vh,34px);width:min(100%,820px);height:100%;min-height:0;display:grid;position:relative}.kiosk-action-back{position:absolute;inset-block-start:0;inset-inline-start:0}.kiosk-action-step>div:first-child p{max-width:680px;margin-inline:auto}.kiosk-action-choice{min-height:clamp(118px,25vh,170px)}.kiosk-session-timer{z-index:4;position:absolute;inset-block-start:0;inset-inline-end:0}.kiosk-camera-flow{grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(100%,1120px);height:100%;min-height:0;display:grid}.kiosk-camera-title{min-height:42px}.kiosk-camera-grid{grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);align-items:stretch;gap:clamp(16px,2.5vw,30px);min-height:0}.kiosk-live-camera{aspect-ratio:auto;border-width:4px;border-radius:20px;height:100%;max-height:100%}.kiosk-camera-controls{text-align:start;align-content:center;gap:12px;min-height:0}.kiosk-face-status{justify-content:flex-start}.kiosk-manual-review .button{width:100%}.kiosk-camera-review{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);align-items:center;column-gap:clamp(20px,4vw,48px)}.kiosk-camera-review-copy{text-align:start;grid-column:2;align-self:end;margin:0}.kiosk-camera-review .kiosk-photo-preview{aspect-ratio:auto;grid-area:1/1/3;width:100%;height:100%;max-height:100%}.kiosk-camera-review-actions{grid-column:2;align-self:start}.kiosk-camera-review-actions .button{min-height:62px}.kiosk-success{place-content:center;gap:10px;height:100%}.kiosk-success .empty-icon{width:72px!important;height:72px!important}.kiosk-success-time{font-size:clamp(2.4rem,7vh,3.7rem)}.kiosk-next-person{min-height:56px}}.portal-page{background:#eef2f0;min-height:100vh;padding:20px}.portal-shell{border:1px solid var(--border);max-width:520px;box-shadow:var(--shadow-lg);background:#fff;border-radius:24px;margin:auto;overflow:hidden}.portal-head{color:#fff;background:var(--ink);padding:22px}.portal-body{gap:14px;padding:16px;display:grid}.portal-list-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:13px 18px;display:flex}.portal-list-row:last-child{border-bottom:0}.portal-subtle{color:#b9c7cd}.portal-nav{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.portal-nav a{min-width:0;color:var(--muted);flex-direction:column;align-items:center;gap:5px;padding:12px 6px;font-size:.73rem;text-decoration:none;display:flex}.portal-nav a.active{color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 -3px var(--primary)}.portal-pay-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.portal-pay-grid .stat-value{font-size:clamp(1.2rem,4vw,1.8rem)}.portal-day-list{gap:0;display:grid}.portal-day-row{border-bottom:1px solid var(--border);min-width:0;color:inherit;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;text-decoration:none;display:flex}.portal-day-row:last-child{border-bottom:0}.portal-day-money{text-align:end;flex:none;grid-template-columns:auto auto;gap:2px 9px;display:grid}.portal-month{width:145px}.portal-access-summary{align-items:center;gap:12px;display:flex}.portal-access-summary>div{gap:2px;display:grid}.portal-access-form{grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:12px;display:grid}.input-with-icon{position:relative}.input-with-icon>svg{z-index:1;inset-inline-start:14px;color:var(--muted);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-with-icon .input{padding-inline-start:42px}.portal-pin-input{letter-spacing:.5em;font-size:1.25rem}.today-workforce{margin-top:8px}.workforce-list{display:grid}.workforce-person{border-top:1px solid var(--border);grid-template-columns:auto minmax(150px,1fr) minmax(180px,auto) auto;align-items:center;gap:14px;padding:14px 18px;display:grid}.workforce-person-main,.workforce-times{gap:3px;display:grid}.workforce-times span,.workforce-times strong{align-items:center;gap:5px;font-size:.82rem;display:flex}.workforce-person.is-late_missing,.workforce-person.is-missing_attendance,.workforce-person.is-absent{background:#fff8f7}.missing-attendance-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.missing-attendance-item:last-child{border-bottom:0}@media (max-width:1050px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar{padding-inline:10px}.brand{justify-content:center;padding-inline:0}.brand>div:last-child,.nav-link span,.sidebar-meta{display:none}.nav-link{justify-content:center;padding:0}.dashboard-grid{grid-template-columns:1fr}.report-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-layout{grid-template-columns:230px minmax(0,1fr)}}@media (max-width:720px){.activation-panel{grid-template-columns:1fr}.activation-qr{justify-self:center}.app-shell{display:block}.sidebar{z-index:40;overscroll-behavior-inline:contain;scrollbar-width:thin;width:100%;height:72px;padding:7px 8px;position:fixed;inset-block:auto 0;overflow:auto hidden}.brand,.sidebar-spacer,.sidebar-meta{display:none}.nav{gap:4px;width:max-content;min-width:100%;display:flex}.nav-link{scroll-snap-align:center;flex-direction:column;flex:1 0 72px;gap:2px;min-width:72px;min-height:56px;padding-inline:8px;font-size:.62rem}.nav-link span{display:block}.topbar{padding-inline:16px}.topbar-title{min-width:0}.topbar-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-actions{flex:none}.page{padding:20px 15px 88px}.page-header{flex-direction:column;align-items:stretch}.row-between,.card-header,.form-actions{flex-wrap:wrap}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.form-grid,.report-grid,.auth-page{grid-template-columns:1fr}.auth-art{display:none}.auth-page,.auth-panel,.auth-form{width:100%;min-width:0}.auth-page{overflow-x:clip}.auth-panel{padding:24px 20px}.auth-form{max-width:390px}.kiosk-page{padding:0}.kiosk-frame{border:0;border-radius:0;min-height:100vh}.kiosk-body{padding:20px}.kiosk-head{flex-wrap:wrap;min-height:76px;padding:10px 16px}.kiosk-head .row{flex-wrap:wrap}.employee-tiles{grid-template-columns:repeat(2,1fr)}.kiosk-keypad{gap:10px}.kiosk-key{border-radius:15px;min-height:72px}.kiosk-live-camera{aspect-ratio:4/3;max-height:62vh}.kiosk-camera-title .chip{display:none}.portal-page{padding:0}.portal-shell{min-height:100vh;box-shadow:none;border:0;border-radius:0}.portal-list-row{flex-wrap:wrap;align-items:flex-start}.portal-pay-grid{grid-template-columns:1fr 1fr}.portal-pay-grid .stat:first-child{grid-column:1/-1}.portal-access-form{grid-template-columns:1fr}.workforce-person{grid-template-columns:auto minmax(0,1fr)}.workforce-times,.workforce-person>.chip{grid-column:2;justify-self:start}.missing-attendance-item{flex-direction:column;align-items:flex-start}.modal-backdrop{padding:10px}.modal{border-radius:var(--radius);max-height:calc(100vh - 20px)}.employee-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-pin-input{width:100%}.employee-created-checks,.employee-created-actions,.salary-primary-fields,.late-policy-fields,.late-policy-preview-inputs{grid-template-columns:1fr}.late-policy-tier{grid-template-columns:34px minmax(0,1fr) auto}.late-policy-tier .field{grid-column:2}.late-review-item{grid-template-columns:1fr auto}.late-review-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.late-review-actions .input{grid-column:1/-1}.payroll-period-summary,.payroll-finalize-card{flex-direction:column;align-items:stretch}.payroll-finalize-card>.row{width:100%}.payroll-employee-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-review-toolbar{flex-direction:column;align-items:stretch}.payroll-review-toolbar>.row{justify-content:space-between;width:100%}.manual-unscheduled-box,.pay-mode-grid{grid-template-columns:1fr}.employee-created-actions .button-link{grid-column:1}.setup-attention-card{grid-template-columns:auto 1fr;align-items:start}.setup-attention-links{grid-column:1/-1;justify-content:flex-start}.schedule-board-head,.schedule-week-nav{flex-direction:column;align-items:stretch}.schedule-board-actions{grid-template-columns:1fr;display:grid}.schedule-board-actions .schedule-publish{grid-column:auto}.schedule-layout{flex-direction:column;display:flex}.schedule-staff-panel{width:100%;position:static}.schedule-people{scroll-snap-type:x proximity;grid-template-rows:repeat(2,auto);grid-auto-columns:minmax(220px,78%);grid-auto-flow:column;max-height:250px;overflow:auto hidden}.schedule-person{scroll-snap-align:start;touch-action:pan-x}.schedule-grid-wrap{width:100%}.schedule-week-grid{min-width:0;display:block}.schedule-grid-head,.schedule-week-grid>.schedule-row-label{display:none}.schedule-grid-row{border-bottom:1px solid var(--border);gap:10px;padding:12px;display:grid}.schedule-grid-row>.schedule-row-label{border:0;grid-template-columns:1fr auto;align-items:center;min-height:0;padding:4px 2px 8px;display:grid;position:static}.schedule-grid-row>.schedule-row-label small{grid-column:2}.schedule-grid-cell{border:1px solid var(--border);border-radius:11px;min-height:120px}.schedule-grid-cell:before{content:attr(data-day)}.schedule-grid-cell.is-empty{display:none}.schedule-slot-day{border-bottom:1px solid var(--border);padding-bottom:7px;display:block}.schedule-tap-add,.schedule-mobile-selection{display:flex}.schedule-day-options{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-time-fields{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.punch-conflict-card{border-color:color-mix(in srgb, var(--warning) 45%, var(--border));background:color-mix(in srgb, var(--warning) 7%, var(--surface));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1.25rem;display:grid}.punch-conflict-card h2{margin:.2rem 0}.punch-interpretation-evidence{grid-template-columns:repeat(2,minmax(120px,1fr));gap:12px;display:grid}.punch-interpretation-evidence .attendance-evidence-photo{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);justify-items:center;padding:14px}.punch-interpretation-evidence .attendance-evidence-photo img,.punch-interpretation-evidence .attendance-evidence-photo>span{width:112px;height:112px}.punch-exclusions{border:1px solid var(--border);border-radius:var(--radius-md);gap:.65rem;margin:0;padding:1rem;display:grid}.punch-exclusions legend{padding-inline:.35rem;font-weight:700}@media (max-width:700px){.punch-conflict-card{grid-template-columns:1fr}.punch-conflict-card>.button{width:100%}}.payroll-tabs{border:1px solid var(--border);background:var(--surface);width:fit-content;max-width:100%;box-shadow:var(--shadow-sm);border-radius:13px;gap:4px;padding:4px;display:inline-flex}.payroll-tabs>a{min-height:42px;color:var(--muted);border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:8px 18px;font-weight:750;display:inline-flex}.payroll-tabs>a:hover{color:var(--text);background:var(--surface-subtle)}.payroll-tabs>a.is-active{color:var(--primary-strong);background:var(--primary-soft)}.payroll-tab-count{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding-inline:6px;font-size:.72rem;display:grid}.workforce-extra{border-color:color-mix(in srgb, var(--primary) 28%, var(--border))}.workforce-extra .card-header{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}.workforce-extra-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:10px 18px 14px;display:flex}.attendance-feed-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.attendance-feed-toolbar{flex-wrap:wrap;align-items:center;gap:14px;padding:14px;display:flex}.attendance-month-nav{align-items:center;gap:10px;display:inline-flex}.attendance-month-nav strong{text-align:center;min-width:130px}.attendance-feed-filters{scrollbar-width:thin;flex:360px;align-items:center;gap:5px;display:flex;overflow-x:auto}.attendance-feed-filters>a{min-height:38px;color:var(--muted);white-space:nowrap;border-radius:9px;align-items:center;gap:7px;padding:7px 12px;font-size:.86rem;font-weight:720;display:inline-flex}.attendance-feed-filters>a span{color:inherit;opacity:.75}.attendance-feed-filters>a:hover{color:var(--text);background:var(--surface-subtle)}.attendance-feed-filters>a.is-active{color:var(--primary-strong);background:var(--primary-soft)}.attendance-feed-list{gap:10px;display:grid}.attendance-feed-item{grid-template-columns:158px minmax(220px,1.25fr) minmax(165px,.85fr) minmax(155px,.75fr) auto;align-items:center;gap:16px;padding:14px;display:grid;overflow:hidden}.attendance-feed-item.needs-attention{border-color:color-mix(in srgb, var(--warning) 48%, var(--border));box-shadow:inset 4px 0 0 var(--warning)}[dir=rtl] .attendance-feed-item.needs-attention{box-shadow:inset -4px 0 0 var(--warning)}.attendance-feed-photos{grid-template-columns:repeat(2,72px);gap:8px;display:grid}.attendance-evidence-photo{min-width:0;color:var(--muted);text-align:center;gap:4px;font-size:.64rem;font-weight:750;display:grid}.attendance-evidence-photo img{object-fit:cover;border:1px solid var(--border);border-radius:13px;width:72px;height:72px;display:block}.attendance-evidence-photo>span{border:1px dashed var(--border);background:var(--surface-subtle);width:72px;height:72px;color:var(--muted);border-radius:13px;align-content:center;place-items:center;gap:4px;padding:6px;display:grid}.attendance-evidence-photo>span small{font-size:.58rem;line-height:1.1}.attendance-feed-person{gap:5px;min-width:0;display:grid}.attendance-feed-person>a{align-items:center;gap:10px;min-width:0;display:flex}.attendance-feed-person>a>span:last-child{min-width:0;display:grid}.attendance-feed-person strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attendance-feed-person small{color:var(--muted)}.attendance-feed-times{grid-template-columns:1fr 1fr;gap:6px 12px;display:grid}.attendance-feed-times>span{gap:2px;display:grid}.attendance-feed-times small{color:var(--muted);font-size:.72rem}.attendance-feed-times>small{grid-column:1/-1}.attendance-feed-review{justify-items:start;gap:7px;min-width:0;display:grid}.attendance-feed-review>strong{display:grid}.attendance-feed-review>strong small{color:var(--muted);font-size:.7rem;font-weight:600}.attendance-feed-review .attendance-issues{flex-wrap:wrap;gap:4px;max-width:100%;display:flex}.attendance-feed-review .attendance-issues .chip{font-size:.66rem}.attendance-feed-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.attendance-evidence-time{color:var(--ink);font-size:.74rem;font-weight:850}.employee-attendance-days{gap:14px;display:grid}.employee-attendance-day{overflow:hidden}.employee-attendance-day-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--primary-soft) 54%, var(--surface)), var(--surface));justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.employee-attendance-day-header>div:first-child{gap:1px;display:grid}.employee-attendance-day-header>div:first-child>span{color:var(--primary-strong);text-transform:capitalize;font-size:.76rem;font-weight:850}.employee-attendance-day-header h2{margin:0;font-size:1.18rem}.employee-attendance-day-list{gap:12px;padding:14px;display:grid}.employee-shift-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;overflow:hidden}.employee-shift-card.needs-attention{border-color:color-mix(in srgb, var(--warning) 52%, var(--border));box-shadow:inset 4px 0 0 var(--warning)}[dir=rtl] .employee-shift-card.needs-attention{box-shadow:inset -4px 0 0 var(--warning)}.employee-shift-card.is-working{border-color:color-mix(in srgb, var(--primary) 44%, var(--border));box-shadow:inset 4px 0 0 var(--primary)}[dir=rtl] .employee-shift-card.is-working{box-shadow:inset -4px 0 0 var(--primary)}.employee-shift-card.is-absence{background:color-mix(in srgb, var(--surface-subtle) 52%, var(--surface))}.employee-shift-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.employee-shift-title{align-items:center;gap:11px;min-width:0;display:flex}.employee-shift-title>span{width:38px;height:38px;color:var(--primary-strong);background:var(--primary-soft);border-radius:11px;flex:0 0 38px;place-items:center;display:grid}.employee-shift-title>div{gap:2px;min-width:0;display:grid}.employee-shift-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-shift-title small{color:var(--muted);font-size:.72rem}.employee-shift-status{flex:none;align-items:center;gap:7px;display:flex}.employee-shift-card-body{grid-template-columns:minmax(205px,.9fr) minmax(270px,1.25fr) minmax(175px,.7fr);align-items:stretch;display:grid}.employee-shift-card-body.no-money{grid-template-columns:minmax(205px,.9fr) minmax(270px,1.25fr)}.employee-schedule-panel,.employee-actual-panel,.employee-pay-panel{min-width:0;padding:14px 15px}.employee-schedule-panel,.employee-actual-panel{border-inline-end:1px solid var(--border)}.employee-shift-card-body.no-money .employee-actual-panel{border-inline-end:0}.employee-schedule-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;display:grid}.employee-schedule-panel>span,.employee-actual-panel>span,.employee-pay-panel>span{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.7rem;font-weight:850;display:block}.employee-schedule-panel>span,.employee-schedule-panel>p{grid-column:1/-1}.employee-schedule-panel>p{color:var(--muted);margin:0;font-size:.86rem}.employee-schedule-panel>div{background:var(--surface-subtle);border-radius:11px;gap:3px;padding:10px;display:grid}.employee-schedule-panel small{color:var(--muted);font-size:.68rem}.employee-schedule-panel strong{font-size:1.05rem}.employee-actual-panel{align-content:start;gap:8px;display:grid}.employee-actual-panel .attendance-feed-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.employee-actual-panel .attendance-evidence-photo img,.employee-actual-panel .attendance-evidence-photo>span{width:100%;height:96px}.employee-actual-panel .attendance-evidence-photo>span{padding-inline:8px}.employee-pay-panel{background:color-mix(in srgb, var(--primary-soft) 34%, var(--surface));align-content:center;gap:4px;display:grid}.employee-pay-panel>strong{margin-top:3px;font-size:1.15rem}.employee-pay-panel>small{color:var(--muted);font-size:.7rem;font-weight:650}.employee-shift-card-footer{border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface-subtle) 55%, var(--surface));justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:10px 14px;display:flex}.employee-shift-card-footer .attendance-issues{margin-top:0}.employee-shift-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-inline-start:auto;display:flex}.employee-absence-note{margin:0;padding:0 15px 12px}@media (max-width:1180px){.attendance-feed-item{grid-template-columns:158px minmax(210px,1fr) minmax(165px,.8fr) auto}.attendance-feed-review{flex-wrap:wrap;grid-column:2/4;align-items:center;display:flex}.attendance-feed-actions{grid-area:1/4/3}.employee-shift-card-body{grid-template-columns:minmax(190px,.8fr) minmax(250px,1.2fr)}.employee-shift-card-body .employee-pay-panel{border-top:1px solid var(--border);grid-column:1/-1}.employee-shift-card-body:not(.no-money) .employee-actual-panel{border-inline-end:0}}@media (max-width:820px){.attendance-feed-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-feed-toolbar{align-items:stretch}.attendance-month-nav{justify-content:space-between;width:100%}.attendance-feed-filters{flex-basis:100%}.attendance-feed-toolbar>form,.attendance-feed-toolbar>form .button{width:100%}.attendance-feed-item{grid-template-columns:140px minmax(0,1fr) auto;gap:12px}.attendance-feed-photos{grid-template-columns:repeat(2,65px);gap:6px}.attendance-evidence-photo img,.attendance-evidence-photo>span{width:65px;height:65px}.attendance-feed-times,.attendance-feed-review{grid-column:2/4}.attendance-feed-actions{border-top:1px solid var(--border);grid-area:auto/1/auto/4;justify-content:flex-end;padding-top:9px}.employee-attendance-toolbar>form,.employee-attendance-toolbar>form .button{width:auto}.employee-shift-card-body,.employee-shift-card-body.no-money{grid-template-columns:minmax(180px,.8fr) minmax(230px,1.2fr)}.employee-shift-card-footer{flex-direction:column;align-items:flex-start}.employee-shift-actions{width:100%;margin-inline-start:0}}@media (max-width:520px){.payroll-tabs{grid-template-columns:1fr 1fr;width:100%;display:grid}.payroll-tabs>a{padding-inline:10px}.attendance-feed-item{grid-template-columns:124px minmax(0,1fr)}.attendance-feed-photos{grid-template-columns:repeat(2,58px)}.attendance-evidence-photo img,.attendance-evidence-photo>span{width:58px;height:58px}.attendance-feed-times,.attendance-feed-review,.attendance-feed-actions{grid-column:1/3}.attendance-feed-actions{justify-content:stretch}.attendance-feed-actions .button{flex:1}.employee-attendance-day-header{align-items:flex-start;padding:14px}.employee-attendance-day-header>.row{justify-content:flex-end}.employee-attendance-day-list{padding:9px}.employee-shift-card-header{align-items:flex-start}.employee-shift-title small{white-space:normal}.employee-shift-card-body,.employee-shift-card-body.no-money{grid-template-columns:1fr}.employee-schedule-panel,.employee-actual-panel{border-inline-end:0;border-bottom:1px solid var(--border)}.employee-shift-card-body .employee-pay-panel{border-top:0;grid-column:auto}.employee-actual-panel .attendance-evidence-photo img,.employee-actual-panel .attendance-evidence-photo>span{height:112px}.employee-shift-actions .button{flex:1}}
