@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap";:root{--primate-foundation-950:#0d1b2a;--primate-foundation-900:#1a2a3c;--primate-foundation-800:#2a3a4d;--primate-foundation-700:#44556a;--primate-foundation-600:#5d7086;--primate-foundation-500:#8595a8;--primate-foundation-400:#c3ced8;--primate-foundation-300:#dee6ed;--primate-foundation-200:#eef3f7;--primate-foundation-100:#f8fafc;--primate-primary-700:#00695c;--primate-primary-600:#00796b;--primate-primary-500:#00897b;--primate-primary-800:#004d40;--primate-primary-100:#b2dfdb;--primate-primary-50:#e0f2f1;--primate-logo-accent:#4db6ac;--primate-primary-500-rgb:0 137 123;--primate-primary-600-rgb:0 121 107;--primate-primary-800-rgb:0 77 64;--primate-primary-100-rgb:178 223 219;--primate-logo-accent-rgb:77 182 172;--primate-radius-card:14px;--primate-border-card:var(--primate-foundation-300);--primate-surface-toast:var(--primate-color-white);--primate-border-toast:rgb(var(--primate-foundation-300-rgb) / .68);--primate-shadow-toast:0 10px 26px rgb(var(--primate-foundation-950-rgb) / .09);--primate-foundation-950-rgb:13 27 42;--primate-foundation-900-rgb:26 42 60;--primate-foundation-800-rgb:42 58 77;--primate-foundation-700-rgb:68 85 106;--primate-foundation-600-rgb:93 112 134;--primate-foundation-500-rgb:133 149 168;--primate-foundation-400-rgb:195 206 216;--primate-foundation-300-rgb:222 230 237;--primate-foundation-200-rgb:238 243 247;--primate-color-white:#fff;--primate-success:#22c55e;--primate-warning:#f59e0b;--primate-error:#ef4444;--primate-info:#3b82f6;--primate-success-rgb:34 197 94;--primate-warning-rgb:245 158 11;--primate-error-rgb:239 68 68;--primate-info-rgb:59 130 246;--primate-white-rgb:255 255 255;--primate-surface-base:var(--primate-foundation-100);--primate-surface-subtle:var(--primate-foundation-200);--primate-surface-card:var(--primate-color-white);--primate-text-primary:var(--primate-foundation-950);--primate-text-heading:var(--primate-foundation-900);--primate-text-body:var(--primate-foundation-800);--primate-text-secondary:var(--primate-foundation-700);--primate-text-muted:var(--primate-foundation-600);--primate-text-disabled:var(--primate-foundation-500);--primate-border-strong:var(--primate-foundation-400);--primate-border-subtle:var(--primate-foundation-300);--primate-focus-ring:rgb(var(--primate-primary-500-rgb) / .2);--primate-shadow-color:13 27 42;--primate-accent-yellow:#ffc72c;--primate-accent-yellow-rgb:255 199 44;--primate-font-size-2xs:8px;--primate-font-size-xs:10px;--primate-font-size-sm:12px;--primate-font-size-md:14px;--primate-font-size-lg:16px;--primate-font-size-xl:18px;--primate-font-size-2xl:20px;--primate-font-size-3xl:22px;--primate-font-size-4xl:24px;--primate-font-size-5xl:26px;--primate-font-size-6xl:28px;--primate-font-size-7xl:30px;--primate-font-size-8xl:32px;--primate-font-size-9xl:34px;--primate-font-size-10xl:36px;--primate-font-size-11xl:38px;--primate-font-size-12xl:40px;--primate-font-size-display-xs:42px;--primate-font-size-display-sm:44px;--primate-font-size-display-md:46px;--primate-font-size-display-lg:54px;--primate-font-size-display-xl:58px;--primate-font-size-display-2xl:64px;--primate-font-size-display-hero:82px;--primate-interactive-default:var(--primate-primary-500);--primate-interactive-hover:var(--primate-primary-600);--primate-interactive-pressed:var(--primate-primary-700);--primate-button-primary:var(--primate-primary-600);--primate-button-hover:var(--primate-primary-700);--primate-button-pressed:var(--primate-primary-800);color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,sans-serif}.reports-page{gap:28px;width:min(100% - 64px,1440px);margin:0 auto;padding:48px 0 64px;display:grid}.reports-page-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.reports-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.08}.reports-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.65}.reports-filter-card,.reports-directory-card,.reports-chart-card{animation:.18s ease-out both card-appear}.reports-filter-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 18px 40px rgb(var(--primate-foundation-950-rgb) / .05);border-radius:14px;overflow:hidden}.reports-filters{justify-content:space-between;align-items:center;gap:18px;min-height:88px;padding:18px 20px;display:flex}.reports-filters-grid{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;min-width:0;display:grid}.reports-filters-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex}.reports-filters .ui-form-field{gap:6px}.reports-filters .ui-form-field>label{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.reports-filters .ui-form-field input,.reports-filters .ui-form-field select{border-color:var(--primate-foundation-400);min-height:44px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);border-radius:10px;font-weight:500}.reports-filters .ui-button{min-height:44px}.reports-page .module-kpi-grid,.reports-tabs{margin-top:0}.reports-visual-section{gap:16px;display:grid}.reports-module-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.reports-module-section-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-3xl);letter-spacing:-.03em;margin:4px 0 0;line-height:1.2}.reports-module-section-heading p:last-child{max-width:680px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:6px 0 0;line-height:1.6}.reports-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.reports-chart-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-width:0;box-shadow:0 12px 28px rgb(var(--primate-foundation-950-rgb) / .045);border-radius:14px;padding:20px}.reports-chart-header,.reports-section-heading,.reports-section-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.reports-chart-header h2,.reports-section-heading h2,.reports-section-title h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0;line-height:1.35}.reports-chart-header p,.reports-section-heading p,.reports-section-title p,.reports-chart-footer{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:4px 0 0;line-height:1.55}.reports-chart-body,.reports-chart-state{min-height:300px;margin-top:16px}.reports-chart-footer{border-top:1px solid var(--primate-foundation-300);margin-top:16px;padding-top:14px}.reports-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 18px 40px rgb(var(--primate-foundation-950-rgb) / .05);border-radius:14px;overflow:hidden}.reports-section-title{border-bottom:1px solid var(--primate-foundation-300);background:var(--primate-color-white);justify-content:flex-start;align-items:center;margin:0;padding:22px 24px}.reports-section-title>svg{width:22px;height:22px;color:var(--primate-primary-500);flex:none;margin-top:0}.reports-table-stack{background:var(--primate-foundation-200);gap:20px;padding:20px;display:grid}.reports-table-shell{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;overflow:hidden}.reports-table-section{background:var(--primate-color-white);box-shadow:none;border:0;border-radius:0;overflow:hidden}.reports-section-heading{background:var(--primate-color-white);border-bottom:1px solid var(--primate-foundation-300);align-items:center;padding:18px 20px}.reports-table-scroll{overflow-x:auto}.reports-table{border-collapse:collapse;width:100%;min-width:900px}.reports-table th{border-bottom:1px solid var(--primate-foundation-300);background:var(--primate-foundation-200);color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.09em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:13px 18px;font-weight:700}.reports-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:18px;line-height:1.45}.reports-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.reports-table tbody tr:last-child td{border-bottom:0}.reports-table td strong,.reports-table td small{display:block}.reports-table td strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.reports-table td small{color:var(--primate-foundation-700);font-size:var(--primate-font-size-xs);margin-top:5px;line-height:1.45}.reports-kpi-skeleton .ui-kpi-card{opacity:.82}.reports-kpi-skeleton .ui-kpi-card strong{color:var(--primate-foundation-600)}.reports-state-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;overflow:hidden}.reports-state,.reports-chart-state,.reports-table-loading{color:var(--primate-foundation-950);background:var(--primate-color-white);text-align:left;justify-content:center;align-items:center;gap:18px;padding:44px 24px;display:flex}.reports-state{min-height:300px}.reports-chart-state{min-height:300px;padding:32px 20px}.reports-table-loading{min-height:280px}.reports-state .spinner,.reports-chart-state .spinner,.reports-table-loading .spinner{flex:none}.reports-state h2,.reports-chart-state h2,.reports-table-loading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.reports-chart-state h2,.reports-table-loading h2{font-size:var(--primate-font-size-lg)}.reports-state p,.reports-chart-state p,.reports-table-loading p{max-width:460px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.65}.geocoding-action-row{border:0;border-top:1px solid var(--primate-foundation-300);background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:.75rem;margin-top:-.35rem;padding:.55rem 0 0;display:flex}.geocoding-action-row p{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.5}.geocoding-action-row .ui-button{white-space:nowrap;min-height:34px;padding:.45rem .8rem}.employee-form-section-heading span,.employee-access-action-copy strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-sm);letter-spacing:.08em;text-transform:uppercase;font-weight:800;display:block}.employee-form-section-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:.25rem 0 0}.employee-form-section-heading p,.employee-access-action-copy p{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:.25rem 0 0;line-height:1.55}.employee-access-action-copy{background:var(--primate-color-white);border:1px solid var(--primate-foundation-300);border-radius:16px;padding:.9rem}.reports-export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.reports-export-actions>span{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);font-weight:600}.avatar-editor{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:22px;align-items:center;gap:16px;padding:16px;display:flex}.avatar-editor-preview{border:3px solid var(--primate-color-white);width:88px;height:88px;color:var(--primate-primary-700);background:var(--primate-primary-100);font-size:var(--primate-font-size-2xl);box-shadow:0 0 0 2px rgb(var(--primate-primary-500-rgb) / .24), 0 8px 18px rgb(var(--primate-foundation-950-rgb) / .1);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid;overflow:hidden}.avatar-editor-preview img{object-fit:cover;width:100%;height:100%}.avatar-editor-copy{flex:1;min-width:0}.avatar-editor-copy>span{color:var(--primate-primary-500);font-size:var(--primate-font-size-sm);letter-spacing:.08em;font-weight:800}.avatar-editor-copy h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:4px 0 2px}.avatar-editor-copy p{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0}.avatar-editor-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.avatar-editor-actions .profile-file-trigger{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-height:36px;font-size:var(--primate-font-size-sm);border-radius:999px;flex-direction:row;gap:7px;padding:8px 12px;display:inline-flex}.avatar-editor-actions .ui-button{border-radius:999px}.avatar-file-name{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;margin-top:7px;display:block;overflow:hidden}@media (width<=640px){.employee-avatar-editor{flex-direction:column;align-items:flex-start}.employee-avatar-editor-preview{width:76px;height:76px}}@media (width<=1180px){.reports-filters{flex-direction:column;align-items:stretch}.reports-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-charts-grid{grid-template-columns:1fr}.reports-filters-actions{justify-content:flex-start}}@media (width<=760px){.reports-page{width:min(100% - 32px,1440px);padding-top:32px}.reports-page-heading{flex-direction:column;align-items:flex-start;gap:16px}.reports-page-heading h1{font-size:var(--primate-font-size-7xl)}.reports-filters-grid,.reports-charts-grid{grid-template-columns:1fr}.reports-filters{padding:14px 16px}.reports-filters-actions,.reports-chart-header,.reports-section-heading,.reports-module-section-heading,.geocoding-action-row{flex-direction:column;align-items:stretch}.reports-filters-actions .ui-button,.reports-export-actions .ui-button,.geocoding-action-row .ui-button{width:100%}.reports-export-actions{flex-direction:column;align-items:stretch}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.login-page{background:var(--primate-foundation-950);grid-template-columns:minmax(620px,1.45fr) minmax(430px,.85fr);min-height:100vh;display:grid}.login-brand-panel{min-height:100vh;color:var(--primate-color-white);background:radial-gradient(circle at 0 0, rgb(var(--primate-primary-500-rgb) / .32), transparent 30%), linear-gradient(135deg, var(--primate-foundation-950) 0%, var(--primate-foundation-950) 62%, var(--primate-foundation-950) 100%);padding:64px;position:relative;overflow:hidden}.login-brand-panel:before{opacity:.52;background-image:linear-gradient(rgb(var(--primate-white-rgb) / .055) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--primate-white-rgb) / .055) 1px, transparent 1px);content:"";background-size:64px 64px;position:absolute;inset:0}.login-brand-stage{z-index:1;flex-direction:column;min-height:calc(100vh - 128px);display:flex;position:relative}.login-brand-nav{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.login-brand-lockup{align-items:center;gap:12px;display:inline-flex}.login-brand-lockup>div{flex-direction:column;gap:2px;display:flex}.login-brand-lockup strong{color:var(--primate-color-white);font-size:var(--primate-font-size-md);letter-spacing:.18em;text-transform:uppercase;font-weight:800}.login-brand-lockup span{color:rgb(var(--primate-white-rgb) / .5);font-size:var(--primate-font-size-xs);letter-spacing:.18em;text-transform:uppercase;font-weight:700}.login-version-pill{border:1px solid rgb(var(--primate-white-rgb) / .12);min-height:32px;color:rgb(var(--primate-white-rgb) / .62);background:rgb(var(--primate-white-rgb) / .035);font-size:var(--primate-font-size-sm);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-weight:700;display:inline-flex}.login-version-pill>span{background:var(--primate-primary-500);width:6px;height:6px;box-shadow:0 0 0 4px rgb(var(--primate-primary-500-rgb) / .12);border-radius:999px}.brand-logo{object-fit:contain;-webkit-user-select:none;user-select:none;flex:none;width:auto;max-width:100%;height:auto;display:block}.brand-logo-sm{max-width:40px;max-height:40px}.brand-logo-md{max-width:92px;max-height:92px}.brand-logo-lg{max-width:136px;max-height:136px}.brand-logo-isotype.brand-logo-sm{max-width:34px;max-height:34px}.brand-logo-isotype.brand-logo-md{max-width:52px;max-height:52px}.brand-logo-isotype.brand-logo-lg{max-width:72px;max-height:72px}.login-brand-copy{flex-direction:column;gap:26px;max-width:650px;margin-top:clamp(54px,9vh,92px);display:flex}.login-brand-logo{max-width:38px;max-height:38px;filter:drop-shadow(0 14px 28px rgb(var(--primate-foundation-950-rgb) / .18))}.eyebrow{color:var(--primate-primary-500);font-size:var(--primate-font-size-md);letter-spacing:.14em;margin:0 0 12px;font-weight:700}.login-brand-panel .eyebrow{color:var(--primate-info)}.login-brand-panel h1{max-width:620px;color:var(--primate-color-white);font-size:clamp(var(--primate-font-size-display-lg), 6vw, var(--primate-font-size-display-hero));letter-spacing:-.075em;margin:0;line-height:.98}.login-brand-panel h1 span{color:rgb(var(--primate-white-rgb) / .55)}.brand-description{max-width:540px;color:rgb(var(--primate-white-rgb) / .62);font-size:var(--primate-font-size-lg);margin:0;font-weight:500;line-height:1.65}.login-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(100%,620px);margin-top:clamp(36px,6vh,52px);display:grid}.login-signal-card{border:1px solid rgb(var(--primate-white-rgb) / .1);background:rgb(var(--primate-white-rgb) / .04);min-height:108px;box-shadow:0 18px 40px rgb(var(--primate-foundation-950-rgb) / .12);border-radius:12px;padding:18px;position:relative}.login-signal-card>div{align-items:center;gap:7px;margin-bottom:12px;display:flex}.login-signal-dot{background:var(--primate-primary-500);border-radius:50%;width:6px;height:6px}.login-signal-card small,.login-signal-icon{color:rgb(var(--primate-white-rgb) / .42);font-size:var(--primate-font-size-sm);font-weight:700}.login-signal-card strong{color:var(--primate-color-white);font-size:var(--primate-font-size-md);line-height:1.35;display:block}.login-signal-card p{color:rgb(var(--primate-white-rgb) / .48);font-size:var(--primate-font-size-sm);margin:6px 0 0;line-height:1.45}.login-signal-icon{font-size:10px;position:absolute;top:18px;right:18px}.login-brand-footer-row{justify-content:space-between;align-items:center;gap:24px;margin-top:auto;padding-top:44px;display:flex}.login-brand-footer-row p{color:rgb(var(--primate-white-rgb) / .38);font-size:var(--primate-font-size-sm);letter-spacing:.04em;margin:0;font-weight:600}.login-form-panel{background:var(--primate-foundation-100);place-items:center;min-height:100vh;padding:56px;display:grid;position:relative}.login-form-panel:before,.login-form-panel:after{border-color:var(--primate-foundation-400);content:"";width:18px;height:18px;position:absolute}.login-form-panel:before{border-top:1px solid;border-left:1px solid;top:24px;left:24px}.login-form-panel:after{border-bottom:1px solid;border-right:1px solid;bottom:24px;right:24px}.login-card{width:min(100%,430px);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.login-heading{margin-bottom:38px}.login-form-meta{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.login-form-meta .eyebrow{margin:0}.login-form-meta>span{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);font-weight:600}.login-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-12xl);letter-spacing:-.055em;margin:0 0 12px;line-height:1.05}.login-heading>p:last-child,.dashboard-intro{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.6}.login-form{gap:26px;display:grid}.form-field{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.login-card .form-field{gap:9px;margin-bottom:0}.form-field label{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);font-weight:600}.login-card .form-field label,.login-field-label-row label{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);letter-spacing:.16em;text-transform:uppercase;font-weight:800}.form-field input{border:1px solid var(--primate-foundation-400);width:100%;min-height:48px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-size:var(--primate-font-size-md);border-radius:8px;outline:none;padding:0 14px;transition:border-color .16s,box-shadow .16s}.login-card .form-field input{border:0;border-bottom:1px solid var(--primate-foundation-300);min-height:44px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);background:0 0;border-radius:0;padding:0}.login-card .form-field small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);line-height:1.5}.form-field input::placeholder{color:var(--primate-foundation-500)}.form-field input:focus{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .12)}.login-card .form-field input:focus{border-bottom-color:var(--primate-primary-500);box-shadow:0 4px 0 rgb(var(--primate-primary-500-rgb) / .07)}.form-field input:disabled{background:var(--primate-foundation-200)}.login-card .form-field input:disabled{opacity:.65;background:0 0}.login-field-label-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.login-field-label-row span,.login-inline-link{color:var(--primate-primary-500);font-size:var(--primate-font-size-sm);font-weight:700;text-decoration:none}.login-inline-link{border-radius:6px;transition:color .16s,box-shadow .16s}.form-error{border:1px solid rgb(var(--primate-error-rgb) / .24);color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .08);font-size:var(--primate-font-size-md);border-radius:8px;margin:0 0 20px;padding:12px 14px;line-height:1.5}.login-card .form-error{margin:0}.login-card-session-expired .login-heading{margin-bottom:18px}.login-card .login-session-expired{margin:0 0 22px}.login-field-error{color:var(--primate-error)}.login-success-message,.login-status-line,.login-success-panel{border:1px solid rgb(var(--primate-primary-500-rgb) / .2);color:var(--primate-primary-700);background:rgb(var(--primate-primary-500-rgb) / .08);font-size:var(--primate-font-size-md);border-radius:10px;line-height:1.55}.login-success-message{margin:0;padding:12px 14px}.login-status-line{align-items:center;gap:10px;margin:0;padding:12px 14px;display:inline-flex}.login-success-panel{gap:14px;padding:18px;display:grid}.login-success-panel strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg)}.login-success-panel p{color:var(--primate-foundation-700);margin:0}.login-state-actions{gap:16px;display:grid}.primary-button{border:1px solid var(--primate-primary-500);width:100%;min-height:52px;color:var(--primate-color-white);background:var(--primate-primary-500);box-shadow:0 18px 34px rgb(var(--primate-primary-500-rgb) / .24);font-weight:600;font-size:var(--primate-font-size-md);border-radius:8px;justify-content:center;align-items:center;gap:10px;text-decoration:none;transition:background .16s,border-color .16s,box-shadow .16s;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--primate-primary-700);box-shadow:0 20px 38px rgb(var(--primate-primary-500-rgb) / .28)}.primary-button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .45);outline-offset:2px}.primary-button:disabled{border-color:var(--primate-info);background:var(--primate-info);box-shadow:none}.login-secondary-link{width:fit-content;color:var(--primate-primary-500);font-size:var(--primate-font-size-md);border-radius:8px;justify-content:center;margin:0 auto;font-weight:700;text-decoration:none;transition:color .16s;display:inline-flex}.login-secondary-link:hover{color:var(--primate-primary-700);text-decoration:underline}.login-secure-note{color:var(--primate-foundation-500);text-align:center;gap:18px;margin-top:36px;display:grid}.login-secure-note>span{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:14px;font-weight:700;display:flex}.login-secure-note>span:before,.login-secure-note>span:after{background:var(--primate-foundation-300);content:"";flex:1;height:1px}.login-secure-note p{max-width:380px;color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);margin:0 auto;line-height:1.65}.button-spinner,.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;animation:.7s linear infinite spin}.button-spinner{width:16px;height:16px}.session-loading{min-height:100vh;color:var(--primate-foundation-700);background:var(--primate-foundation-200);font-size:var(--primate-font-size-md);justify-content:center;align-items:center;gap:12px;display:flex}.spinner{width:22px;height:22px;color:var(--primate-primary-500)}.admin-shell{background:var(--primate-foundation-200);grid-template-columns:256px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{height:100vh;color:var(--primate-color-white);background:var(--primate-foundation-950);flex-direction:column;padding:24px 16px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid rgb(var(--primate-white-rgb) / .1);align-items:center;gap:12px;padding:0 8px 32px;display:flex}.sidebar-brand>div{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-brand strong{font-size:var(--primate-font-size-lg);letter-spacing:-.02em}.sidebar-brand span:last-child{color:rgb(var(--primate-white-rgb) / .52);font-size:var(--primate-font-size-sm)}.sidebar-navigation{margin-top:32px}.sidebar-navigation-section+.sidebar-navigation-section{margin-top:20px}.admin-sidebar-collapsed .sidebar-navigation-section+.sidebar-navigation-section{margin-top:8px}.sidebar-section-label{color:rgb(var(--primate-white-rgb) / .38);font-size:var(--primate-font-size-sm);letter-spacing:.14em;margin:0 12px 12px;font-weight:700}.sidebar-navigation ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.sidebar-link{min-height:44px;color:rgb(var(--primate-white-rgb) / .68);font-size:var(--primate-font-size-md);border-radius:8px;align-items:center;gap:12px;padding:0 12px;font-weight:500;text-decoration:none;transition:color .16s,background .16s;display:flex}.sidebar-link:hover{color:var(--primate-color-white);background:rgb(var(--primate-white-rgb) / .06)}.sidebar-link:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .52);outline-offset:2px}.sidebar-link-placeholder{cursor:default}.sidebar-link-placeholder:hover{color:rgb(var(--primate-white-rgb) / .68);background:0 0}.sidebar-icon{border:1px solid rgb(var(--primate-white-rgb) / .13);width:26px;height:26px;color:rgb(var(--primate-white-rgb) / .62);letter-spacing:.04em;border-radius:7px;place-items:center;font-size:8px;font-weight:700;display:grid}.sidebar-footer{border-top:1px solid rgb(var(--primate-white-rgb) / .1);align-items:center;gap:10px;margin-top:auto;padding:16px 8px 0;display:flex}.sidebar-footer p{color:rgb(var(--primate-white-rgb) / .42);font-size:var(--primate-font-size-sm);margin:0}.sidebar-accent{background:var(--primate-accent-yellow);width:6px;height:6px;box-shadow:0 0 0 4px rgb(var(--primate-accent-yellow-rgb) / .1);border-radius:50%}.admin-main{min-width:0}.admin-header{z-index:10;border-bottom:1px solid var(--primate-foundation-300);background:rgb(var(--primate-white-rgb) / .96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;min-height:72px;padding:0 32px;display:flex;position:sticky;top:0}.header-context{flex-direction:column;gap:3px;min-width:0;display:flex}.header-context-label{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.12em;font-weight:700}.header-context strong{max-width:420px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.header-user-area{align-items:center;gap:12px;display:flex;position:relative}.header-user-identity{align-items:center;gap:10px;display:inline-flex}.header-user-toggle{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;padding:0;transition:border-color .16s,background .16s;display:grid}.header-user-toggle:hover,.header-user-toggle:focus-visible,.header-user-toggle[aria-expanded=true]{border-color:var(--primate-foundation-300);background:var(--primate-foundation-100)}.header-user-toggle:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .32);outline-offset:2px}.header-user-chevron{color:var(--primate-foundation-600);flex:none;transition:transform .16s;transform:rotate(90deg)}.header-user-chevron-open{transform:rotate(-90deg)}.header-user-menu{z-index:40;border:1px solid var(--primate-border-card);border-radius:var(--primate-radius-card);background:var(--primate-surface-toast);width:min(230px,100vw - 32px);box-shadow:var(--primate-shadow-toast);padding:8px;position:absolute;top:calc(100% + 8px);right:0}.header-user-menu-heading{border-bottom:1px solid var(--primate-border-subtle);flex-direction:column;gap:4px;min-width:0;padding:10px 10px 15px;display:flex}.header-user-menu-heading .eyebrow{font-size:var(--primate-font-size-xs);margin:0}.header-user-menu-heading strong{color:var(--primate-text-primary);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.header-user-menu-item{width:100%;min-height:40px;color:var(--primate-text-primary);cursor:pointer;font-size:var(--primate-font-size-sm);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-weight:600;transition:color .16s,background .16s;display:flex}.header-user-menu-item:first-of-type{margin-top:6px}.header-user-menu-item:last-child{margin-top:8px;margin-bottom:5px}.header-user-menu-item:hover:not(:disabled),.header-user-menu-item:focus-visible{color:var(--primate-primary-800);background:var(--primate-foundation-100)}.header-user-menu-item:focus-visible{outline:2px solid var(--primate-info);outline-offset:-2px}.header-user-menu-danger{color:var(--primate-error)}.header-user-menu-danger:hover:not(:disabled),.header-user-menu-danger:focus-visible{color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .06)}.environment-badge{letter-spacing:.08em;flex:none}.user-avatar{width:36px;height:36px;color:var(--primate-color-white);background:var(--primate-primary-500);font-size:var(--primate-font-size-sm);border-radius:10px;place-items:center;font-weight:700;display:grid}.user-summary{flex-direction:column;gap:2px;min-width:160px;display:flex}.user-summary strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md)}.user-summary span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm)}.header-signout-button,.primary-action-button,.outline-action-button{min-height:38px;font-size:var(--primate-font-size-sm);border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-weight:600;transition:color .16s,border-color .16s,background .16s;display:inline-flex}.header-signout-button{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-950);background:var(--primate-color-white)}.header-signout-button:hover:not(:disabled){border-color:var(--primate-primary-500);color:var(--primate-primary-500)}.header-signout-button:focus-visible,.primary-action-button:focus-visible,.outline-action-button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.header-signout-button:disabled{cursor:not-allowed;opacity:.55}.dashboard-content{width:min(100% - 64px,1120px);margin:0 auto;padding:48px 0 64px}.dashboard-content h1{font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.page-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.environment-badge{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-700);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:999px;flex:none;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:inline-flex}.environment-badge>span{background:var(--primate-primary-500);width:7px;height:7px;box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1);border-radius:50%}.dashboard-welcome-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-height:232px;box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .05);border-radius:16px;justify-content:space-between;align-items:center;gap:48px;margin-top:40px;padding:40px;display:flex;position:relative;overflow:hidden}.welcome-copy{align-items:flex-start;gap:20px;max-width:620px;display:flex}.welcome-accent{background:var(--primate-primary-500);border-radius:4px;flex:none;width:4px;height:80px}.welcome-copy h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-5xl);letter-spacing:-.03em;margin:0 0 12px;line-height:1.3}.welcome-copy p:last-child{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.welcome-status{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);width:128px;height:128px;color:var(--primate-color-white);background:var(--primate-foundation-950);box-shadow:24px 24px 0 rgb(var(--primate-primary-500-rgb) / .06);border-radius:32px;flex:none;place-items:center;display:grid;position:relative}.welcome-status:after{background:var(--primate-accent-yellow);content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:14px;right:14px}.welcome-status span{font-size:var(--primate-font-size-7xl);letter-spacing:-.05em;font-weight:700}.module-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.module-preview-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:12px;min-height:184px;padding:24px}.module-number{color:var(--primate-primary-500);font-size:var(--primate-font-size-sm);letter-spacing:.12em;font-weight:700}.module-preview-card h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:20px 0 8px}.module-preview-card p{min-height:42px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0 0 20px;line-height:1.7}.coming-soon-label{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);letter-spacing:.12em;font-weight:700}.shell-notification{border-bottom:1px solid rgb(var(--primate-error-rgb) / .18);color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .08);font-size:var(--primate-font-size-md);margin:0;padding:10px 32px}.profile-error-page{background:var(--primate-foundation-200);place-items:center;min-height:100vh;padding:32px;display:grid}.profile-error-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,520px);box-shadow:0 20px 52px rgb(var(--primate-foundation-950-rgb) / .08);border-radius:16px;padding:48px}.profile-error-mark{width:48px;height:48px;color:var(--primate-foundation-950);background:rgb(var(--primate-accent-yellow-rgb) / .28);font-size:var(--primate-font-size-2xl);border-radius:12px;place-items:center;margin-bottom:28px;font-weight:700;display:grid}.profile-error-card h1{font-size:var(--primate-font-size-6xl);letter-spacing:-.03em;margin:0 0 12px;line-height:1.3}.profile-error-card>p:not(.eyebrow,.form-error){color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0 0 8px;line-height:1.7}.profile-error-card small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm)}.profile-error-actions{gap:12px;margin-top:28px;display:flex}.primary-action-button{border:1px solid var(--primate-primary-500);color:var(--primate-color-white);background:var(--primate-primary-500)}.primary-action-button:hover{background:var(--primate-primary-700)}.outline-action-button{border:1px solid var(--primate-foundation-400);color:var(--primate-foundation-950);background:var(--primate-color-white)}.outline-action-button:hover:not(:disabled){border-color:var(--primate-primary-500);color:var(--primate-primary-500)}.layout-error{margin-top:20px;margin-bottom:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.employees-page{width:min(100% - 64px,1240px);margin:0 auto;padding:48px 0 64px}.employees-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.employees-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.employees-page-heading>div>p:last-child{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.employees-total{min-width:112px;color:var(--primate-foundation-600);justify-content:flex-end;align-items:baseline;gap:7px;padding-bottom:4px;display:flex}.employees-total strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-4xl);letter-spacing:-.03em}.employees-total span{font-size:var(--primate-font-size-sm)}.employees-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.employees-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:80px;padding:16px 24px;display:flex}.employees-search{width:min(100%,480px);position:relative}.employees-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px;transition:border-color .16s,box-shadow .16s,background .16s}.employees-search input::placeholder{color:var(--primate-foundation-500)}.employees-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.employees-search input:disabled{cursor:not-allowed;opacity:.65}.search-mark{z-index:1;color:var(--primate-primary-500);font-size:var(--primate-font-size-2xl);line-height:1;position:absolute;top:50%;left:15px;transform:translateY(-54%)rotate(-18deg)}.directory-caption{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);letter-spacing:.13em;flex:none;margin:0;font-weight:700}.employees-table-scroll{overflow-x:auto}.employees-table{border-collapse:collapse;text-align:left;width:100%;min-width:1030px}.employees-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-xs);letter-spacing:.1em;text-transform:uppercase;padding:13px 20px;font-weight:700}.employees-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:17px 20px}.employees-table tbody tr{transition:background .14s}.employees-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.employees-table tbody tr:last-child td{border-bottom:0}.employee-code{border:1px solid var(--primate-foundation-300);color:var(--primate-primary-500);background:var(--primate-foundation-100);font-size:var(--primate-font-size-xs);letter-spacing:.06em;border-radius:6px;padding:6px 8px;font-weight:700;display:inline-flex}.employee-identity{align-items:center;gap:13px;min-width:190px;display:flex}.employee-avatar{border:2px solid var(--primate-color-white);width:42px;height:42px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);font-size:var(--primate-font-size-sm);box-shadow:0 0 0 1px rgb(var(--primate-primary-500-rgb) / .24), 0 4px 10px rgb(var(--primate-foundation-950-rgb) / .08);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid;overflow:hidden}.employee-avatar img{object-fit:cover;width:100%;height:100%}.employee-identity>div,.employee-contact{flex-direction:column;gap:4px;min-width:0;display:flex}.employee-identity strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);font-weight:600}.employee-identity span:last-child,.employee-contact small{max-width:210px;color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-contact>span{max-width:190px;color:var(--primate-foundation-700);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-location{align-items:center;gap:8px;min-width:138px;display:inline-flex}.employee-location>span{border:1px solid var(--primate-foundation-300);width:24px;height:24px;color:var(--primate-foundation-700);background:var(--primate-foundation-200);font-size:var(--primate-font-size-2xs);border-radius:6px;flex:none;place-items:center;font-weight:700;display:grid}.employee-status{min-width:92px;font-size:var(--primate-font-size-xs);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.employees-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.employees-state .spinner{flex:none}.employees-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.employees-state p{max-width:420px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.employees-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.employees-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.employees-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.state-mark{width:48px;height:48px;color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .08);border-radius:12px;flex:none;place-items:center;font-size:17px;font-weight:700;display:grid}.state-mark-empty{color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);font-size:10px}.state-mark-empty svg{width:22px;height:22px}.entity-drawer-body.employee-import-drawer-body{grid-template-columns:minmax(0,1fr);gap:24px}.employee-import-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:22px;display:grid}.employee-import-steps span{border:1px solid var(--primate-foundation-300);min-height:46px;color:var(--primate-foundation-500);background:var(--primate-foundation-100);font-size:var(--primate-font-size-xs);text-align:center;border-radius:8px;place-items:center;padding:9px 10px;font-weight:700;display:grid;position:relative}.employee-import-steps span.is-active{border-color:rgb(var(--primate-primary-500-rgb) / .32);color:var(--primate-primary-700);background:var(--primate-primary-50)}.employee-import-file-stage,.employee-import-review{gap:18px;display:grid}.employee-import-intro{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:12px;align-items:flex-start;gap:13px;padding:16px;display:flex}.employee-import-icon{width:40px;height:40px;color:var(--primate-primary-700);background:var(--primate-primary-50);border-radius:10px;flex:none;place-items:center;display:grid}.employee-import-intro h3,.employee-import-section-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0}.employee-import-intro p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:5px 0 0;line-height:1.55}.employee-import-file-input{border:1px dashed var(--primate-foundation-400);min-height:136px;color:var(--primate-foundation-700);background:var(--primate-color-white);cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:20px;display:flex}.employee-import-file-input.has-file{border-style:solid;border-color:rgb(var(--primate-success-rgb) / .35);background:rgb(var(--primate-success-rgb) / .045)}.employee-import-file-input:hover,.employee-import-file-input:focus-within{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.employee-import-upload-icon{width:48px;height:48px;color:var(--primate-primary-700);background:var(--primate-primary-50);border-radius:12px;flex:none;place-items:center;display:grid}.employee-import-file-copy{flex:1;gap:4px;min-width:0;display:grid}.employee-import-file-copy strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-import-file-copy small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);line-height:1.45}.employee-import-file-action{border:1px solid var(--primate-foundation-400);color:var(--primate-primary-700);background:var(--primate-color-white);font-size:var(--primate-font-size-xs);border-radius:8px;flex:none;padding:9px 12px;font-weight:700}.employee-import-checklist{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);gap:8px;margin:0;padding:0 0 0 20px;line-height:1.55;display:grid}.employee-import-summary{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.employee-import-summary>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;gap:3px;padding:12px;display:grid}.employee-import-summary strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-2xl)}.employee-import-summary span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs)}.employee-import-summary .is-success strong{color:var(--primate-success)}.employee-import-summary .is-warning strong{color:var(--primate-warning)}.employee-import-mapping,.employee-import-row-preview{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:12px;gap:12px;padding:16px;display:grid}.employee-import-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.employee-import-section-heading .eyebrow{color:var(--primate-primary-600);font-size:var(--primate-font-size-2xs);letter-spacing:.13em;margin:0 0 4px;font-weight:700}.employee-import-section-heading>span{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);white-space:nowrap}.employee-import-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.employee-import-mapping-grid>div{background:var(--primate-foundation-100);border-radius:8px;gap:3px;padding:9px 10px;display:grid}.employee-import-mapping-grid>div.is-missing{background:rgb(var(--primate-warning-rgb) / .1)}.employee-import-mapping-grid span{color:var(--primate-foundation-500);font-size:var(--primate-font-size-2xs);text-transform:uppercase;font-weight:700}.employee-import-mapping-grid strong{color:var(--primate-foundation-800);font-size:var(--primate-font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-import-notice{border:1px solid rgb(var(--primate-primary-500-rgb) / .24);color:var(--primate-primary-800);background:var(--primate-primary-50);border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.employee-import-notice.is-warning{border-color:rgb(var(--primate-warning-rgb) / .3);color:#8a5700;background:rgb(var(--primate-warning-rgb) / .1)}.employee-import-notice p{font-size:var(--primate-font-size-sm);margin:0;line-height:1.5}.employee-import-row-list{gap:6px;max-height:250px;display:grid;overflow:auto}.employee-import-row{background:var(--primate-foundation-100);border-radius:8px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.employee-import-row>span,.employee-import-row>em{font-size:var(--primate-font-size-xs)}.employee-import-row>span{color:var(--primate-foundation-500)}.employee-import-row strong{color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-import-row em{color:var(--primate-warning);font-style:normal;font-weight:700}.employee-import-row em.is-valid{color:var(--primate-success)}.employee-import-error{border:1px solid rgb(var(--primate-error-rgb) / .25);color:#b42318;background:rgb(var(--primate-error-rgb) / .08);font-size:var(--primate-font-size-sm);border-radius:8px;margin:0;padding:11px 12px;line-height:1.5}@media (width<=600px){.employee-import-summary,.employee-import-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-import-row{grid-template-columns:42px minmax(0,1fr)}.employee-import-row>em{grid-column:2}.employee-import-file-input{flex-wrap:wrap;align-items:flex-start}.employee-import-file-copy{min-width:calc(100% - 62px)}.employee-import-file-action{margin-left:62px}}.locations-page{width:min(100% - 64px,1240px);margin:0 auto;padding:48px 0 64px}.locations-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.locations-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.locations-page-heading>div>p:last-child{max-width:620px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.locations-total{min-width:96px;color:var(--primate-foundation-600);justify-content:flex-end;align-items:baseline;gap:7px;padding-bottom:4px;display:flex}.locations-total strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-4xl);letter-spacing:-.03em}.locations-total span{font-size:var(--primate-font-size-sm)}.locations-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.locations-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:80px;padding:16px 24px;display:flex}.locations-search{width:min(100%,480px);position:relative}.locations-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px;transition:border-color .16s,box-shadow .16s,background .16s}.locations-search input::placeholder{color:var(--primate-foundation-500)}.locations-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.locations-search input:disabled{cursor:not-allowed;opacity:.65}.locations-table-scroll{overflow-x:auto}.locations-table{border-collapse:collapse;text-align:left;width:100%;min-width:880px}.locations-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-sm);letter-spacing:.1em;text-transform:uppercase;padding:13px 24px;font-weight:700}.locations-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:20px 24px}.locations-table tbody tr{transition:background .14s}.locations-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.locations-table tbody tr:last-child td{border-bottom:0}.location-identity{align-items:center;gap:12px;min-width:220px;display:flex}.location-mark{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);width:38px;height:38px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07);border-radius:10px;flex:none;place-items:center;font-size:9px;font-weight:700;display:grid}.location-identity strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);font-weight:600}.location-address{max-width:300px;color:var(--primate-foundation-700);line-height:1.6;display:inline-block}.coordinate-value{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-700);background:var(--primate-foundation-100);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-xs);letter-spacing:.02em;border-radius:7px;padding:7px 9px;font-weight:500;display:inline-flex}.locations-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.locations-state .spinner{flex:none}.locations-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.locations-state p{max-width:420px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.locations-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.locations-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.locations-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.operations-page{width:min(100% - 64px,1320px);margin:0 auto;padding:48px 0 64px}.operations-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.operations-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.operations-page-heading>div>p:last-child{max-width:700px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.operations-directory-section{margin-top:36px}.operations-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:0;overflow:hidden}.operations-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;padding:16px 24px;display:flex}.operations-directory-heading{gap:4px;display:grid}.operations-directory-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0;line-height:1.35}.operations-directory-heading p{max-width:680px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.55}.operations-directory-section .operations-tabs{scrollbar-width:thin;flex:0 auto;max-width:100%;margin:0 0 16px;overflow-x:auto}.operations-search{width:min(100%,360px);position:relative}.operations-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px}.operations-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.operations-table{min-width:980px}.operations-identity{align-items:center;gap:12px;min-width:220px;display:flex}.operations-identity>div{gap:4px;display:grid}.operations-identity strong,.operations-table td>strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);font-weight:650}.operations-identity>div>span,.operations-cell-subtitle{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);display:block}.operations-mark{border:1px solid rgb(var(--primate-primary-500-rgb) / .16);width:40px;height:40px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);border-radius:11px;flex:none;justify-content:center;align-items:center;line-height:0;display:inline-flex}.operations-mark>svg{flex:none;display:block}.operations-mark-secondary{color:var(--primate-info);background:rgb(var(--primate-info-rgb) / .08)}.operations-period{max-width:180px;color:var(--primate-foundation-700);line-height:1.5;display:inline-block}.operations-scope-label{border:1px solid var(--primate-foundation-300);min-height:26px;color:var(--primate-foundation-700);background:var(--primate-foundation-100);font-size:var(--primate-font-size-xs);border-radius:999px;align-items:center;padding:0 9px;font-weight:650;display:inline-flex}.operations-readonly-note{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:rgb(var(--primate-info-rgb) / .045);font-size:var(--primate-font-size-sm);margin:0;padding:10px 24px;line-height:1.5}.operations-warning-text{color:var(--primate-warning);font-weight:650}.operations-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.operations-state .spinner{flex:none}.operations-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.entity-drawer-body.operations-drawer-body{grid-template-columns:minmax(0,1fr)}.operations-state p{max-width:420px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.operations-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;width:100%;display:grid}.operations-form-field{gap:8px;margin-top:18px;display:grid}.operations-form-field-wide{grid-column:1/-1}.operations-form-field label,.operations-form-field>label{color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);font-weight:650}.operations-form-field textarea{resize:vertical;border:1px solid var(--primate-foundation-400);width:100%;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-md);border-radius:9px;padding:12px 14px;line-height:1.5}.operations-form-field textarea::placeholder{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);line-height:1.5}.operations-form-field textarea:focus{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1);outline:none}.operations-form-error{color:var(--primate-error);font-size:var(--primate-font-size-sm);margin:16px 0 0}.operations-drawer-section{border-top:1px solid var(--primate-foundation-300);margin-top:28px;padding-top:24px}.operations-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.operations-section-heading .eyebrow{margin-bottom:6px}.operations-section-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0}.operations-section-meta,.operations-assignment-label{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs)}.operations-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.operations-assignment-card{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:11px;gap:10px;padding:14px;display:grid}.operations-assignment-card strong{min-height:22px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-md)}.operations-assignment-card .ui-form-field,.operations-member-add-row .ui-form-field{margin:0}.operations-assignment-date{max-width:240px;margin-top:14px}.operations-member-add-row{align-items:flex-end;gap:12px;display:flex}.operations-member-add-row .ui-form-field{flex:1}.operations-member-list,.operations-history-list{gap:8px;margin-top:14px;display:grid}.operations-member-row,.operations-history-row{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.operations-member-row>div:first-child{gap:3px;display:grid}.operations-member-row strong,.operations-history-row strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm)}.operations-member-row span,.operations-history-row small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs)}.operations-member-actions{align-items:center;gap:10px;display:flex}.operations-muted,.operations-drawer-note{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:12px 0 0;line-height:1.6}.operations-drawer-note{border:1px solid rgb(var(--primate-info-rgb) / .25);background:rgb(var(--primate-info-rgb) / .06);border-radius:9px;padding:14px}.operations-history-row{grid-template-columns:96px minmax(0,1fr) minmax(150px,auto) auto;display:grid}.operations-history-row>span:first-child{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);text-transform:uppercase;font-weight:700}@media (width<=860px){.operations-page{width:min(100% - 32px,1320px);padding-top:32px}.operations-page-heading,.operations-toolbar{flex-direction:column;align-items:stretch}.operations-toolbar{gap:14px}.operations-tabs{width:100%}.operations-directory-section{margin-top:28px}.operations-tabs button{white-space:nowrap;flex:none}.operations-search{width:100%}}@media (width<=620px){.operations-form-grid,.operations-assignment-grid{grid-template-columns:1fr}.operations-form-field-wide{grid-column:auto}.operations-member-add-row,.operations-member-row,.operations-history-row{flex-direction:column;align-items:stretch}.operations-member-add-row .ui-button{width:100%}.operations-member-actions{justify-content:space-between}.operations-history-row{display:flex}}.productivity-page{width:min(100% - 64px,1400px);margin:0 auto;padding:48px 0 64px}.productivity-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.productivity-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.productivity-page-heading>div>p:last-child{max-width:700px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.productivity-page-actions{justify-content:flex-end;align-items:center;gap:12px}.productivity-refresh-action{flex:none}.productivity-create-actions{border-left:1px solid var(--primate-foundation-300);padding-left:12px}.productivity-tabs{margin-top:36px;overflow-x:auto}.productivity-kpi-grid{margin-top:28px}.productivity-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:28px;animation:.18s ease-out both ui-rise;overflow:hidden}.productivity-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:16px 24px;display:flex}.productivity-search{width:min(100%,430px);position:relative}.productivity-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px;transition:border-color .16s,box-shadow .16s,background .16s}.productivity-search input::placeholder{color:var(--primate-foundation-500)}.productivity-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.productivity-search input:disabled{cursor:not-allowed;opacity:.65}.productivity-filters{align-items:center;gap:12px;display:flex}.productivity-filters label{flex-direction:column;gap:6px;display:flex}.productivity-filters label>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.productivity-filters select{border:1px solid var(--primate-foundation-400);width:100%;min-width:220px;min-height:40px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);appearance:none;border-radius:8px;outline:none;padding:0 42px 0 12px;font-weight:500}.productivity-filters select:focus-visible{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.productivity-filters select:disabled{cursor:not-allowed;opacity:.65}.productivity-directory-content{min-width:0}.productivity-state{min-height:300px;color:var(--primate-foundation-950);background:var(--primate-color-white);text-align:left;justify-content:center;align-items:center;gap:18px;padding:44px 24px;display:flex}.productivity-state .spinner{flex:none}.productivity-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.productivity-state p{max-width:460px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.65}.productivity-state .ui-button{margin-top:14px}.productivity-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px;display:grid}.productivity-overview-grid>.ui-section-card{min-width:0;padding:20px}.productivity-section-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.productivity-section-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:4px 0 0;line-height:1.35}.productivity-section-heading p:last-child{max-width:720px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:6px 0 0;line-height:1.55}.productivity-list,.productivity-status-list{gap:10px;margin-top:18px;display:grid}.productivity-list-row,.productivity-status-list>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.productivity-list-row>div{gap:4px;min-width:0;display:grid}.productivity-list-row strong,.productivity-status-list strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md)}.productivity-list-row span,.productivity-status-list span,.productivity-muted{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm)}.productivity-status-list>div strong{font-size:var(--primate-font-size-2xl)}.productivity-table-view{min-width:0}.productivity-table-view>.productivity-section-heading{border-bottom:1px solid var(--primate-foundation-300);align-items:center;padding:22px 24px}.productivity-table-scroll{overflow-x:auto}.productivity-table{border-collapse:collapse;text-align:left;width:100%;min-width:1120px}.productivity-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-xs);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;padding:13px 18px;font-weight:700}.productivity-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:17px 18px;line-height:1.45}.productivity-table tbody tr{transition:background .14s}.productivity-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.productivity-table tbody tr:last-child td{border-bottom:0}.productivity-table td strong,.productivity-table td small{display:block}.productivity-table td strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.productivity-table td small{color:var(--primate-foundation-700);font-size:var(--primate-font-size-xs);margin-top:5px;line-height:1.45}.productivity-inline-actions{flex-wrap:wrap;gap:8px;display:flex}.productivity-inline-actions .ui-button{min-height:36px;padding:8px 12px}.productivity-drawer-body{align-content:start}.productivity-costs-view{gap:24px;padding-bottom:24px;display:grid}.productivity-costs-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:flex-end;gap:24px;padding:24px;display:flex}.productivity-costs-toolbar h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);margin:5px 0 0;line-height:1.35}.productivity-costs-toolbar p{max-width:680px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-sm);margin:7px 0 0;line-height:1.55}.productivity-eyebrow{color:var(--primate-primary-700);font-size:var(--primate-font-size-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.productivity-costs-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex}.productivity-costs-actions label{gap:6px;display:grid}.productivity-costs-actions label>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.productivity-costs-actions input{border:1px solid var(--primate-foundation-400);min-height:40px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border-radius:8px;padding:0 10px}.productivity-costs-actions input:focus-visible{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1);outline:none}.productivity-costs-note{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-700);background:var(--primate-foundation-100);font-size:var(--primate-font-size-sm);border-radius:9px;align-items:flex-start;gap:10px;margin:0 24px;padding:12px 14px;line-height:1.5;display:flex}.productivity-costs-note svg{color:var(--primate-primary-700);flex:none;margin-top:1px}.productivity-cost-kpi-grid{margin:0 24px}.productivity-costs-inline-error{color:var(--primate-danger-700,#a93333);font-size:var(--primate-font-size-sm);background:#be37370f;border:1px solid #be373747;border-radius:9px;margin:0 24px;padding:12px 14px}.productivity-cost-section{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:12px;margin:0 24px;overflow:hidden}.productivity-table-count{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);white-space:nowrap;flex:none}.productivity-cost-table{min-width:1180px}.productivity-inline-empty{background:var(--primate-color-white);text-align:left;border:0;justify-content:center;align-items:center;gap:20px;min-height:190px;padding:32px 24px;display:flex}.productivity-inline-empty .state-mark{flex:none}.productivity-inline-empty>div{min-width:0}@media (width<=1024px){.productivity-page-actions,.productivity-create-actions{flex-wrap:wrap}}@media (width<=860px){.productivity-page{width:min(100% - 32px,1400px);padding-top:32px}.productivity-page-heading{flex-direction:column;align-items:stretch}.productivity-page-actions{justify-content:flex-start}.productivity-create-actions{border-left:0;padding-left:0}.productivity-toolbar{flex-direction:column;align-items:stretch}.productivity-search,.productivity-filters,.productivity-filters label,.productivity-filters select{width:100%}.productivity-overview-grid{grid-template-columns:1fr}.productivity-costs-toolbar{flex-direction:column;align-items:stretch}.productivity-costs-actions{justify-content:flex-start}}@media (width<=620px){.productivity-page-actions,.productivity-create-actions{flex-direction:column;align-items:stretch}.productivity-page-actions .ui-button{width:100%}.productivity-tabs{margin-top:28px}.productivity-toolbar,.productivity-table-view>.productivity-section-heading{padding-left:20px;padding-right:20px}.productivity-overview-grid,.productivity-overview-grid>.ui-section-card{padding:16px}.productivity-costs-toolbar,.productivity-table-view>.productivity-section-heading{padding-left:20px;padding-right:20px}.productivity-costs-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.productivity-costs-actions .ui-button{grid-column:1/-1}.productivity-costs-actions input{width:100%}.productivity-costs-note,.productivity-cost-kpi-grid,.productivity-costs-inline-error,.productivity-cost-section{margin-left:16px;margin-right:16px}.productivity-inline-empty{text-align:center;flex-direction:column;min-height:220px}}.geofences-page{width:min(100% - 64px,1240px);margin:0 auto;padding:48px 0 64px}.geofences-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.geofences-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.geofences-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.geofences-total{min-width:116px;color:var(--primate-foundation-600);justify-content:flex-end;align-items:baseline;gap:7px;padding-bottom:4px;display:flex}.geofences-total strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-4xl);letter-spacing:-.03em}.geofences-total span{font-size:var(--primate-font-size-sm)}.geofences-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.geofences-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:80px;padding:16px 24px;display:flex}.geofences-search{width:min(100%,480px);position:relative}.geofences-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px;transition:border-color .16s,box-shadow .16s,background .16s}.geofences-search input::placeholder{color:var(--primate-foundation-500)}.geofences-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.geofences-search input:disabled{cursor:not-allowed;opacity:.65}.geofences-table-scroll{overflow-x:auto}.geofences-table{border-collapse:collapse;text-align:left;width:100%;min-width:920px}.geofences-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-sm);letter-spacing:.1em;text-transform:uppercase;padding:13px 24px;font-weight:700}.geofences-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:20px 24px}.geofences-table tbody tr{transition:background .14s}.geofences-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.geofences-table tbody tr:last-child td{border-bottom:0}.geofence-location{align-items:center;gap:12px;min-width:230px;display:flex}.geofence-mark{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);width:38px;height:38px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07);border-radius:50%;flex:none;place-items:center;font-size:8px;font-weight:700;display:grid}.geofence-location>div{flex-direction:column;gap:4px;min-width:0;display:flex}.geofence-location strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);font-weight:600}.geofence-location div span{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs)}.geofence-type{min-width:96px;font-size:var(--primate-font-size-xs);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-weight:600;display:inline-flex}.geofence-type>span{font-size:var(--primate-font-size-md);line-height:1}.geofence-type-circle{border-color:rgb(var(--primate-primary-500-rgb) / .14);color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07)}.geofence-type-polygon{border-color:rgb(var(--primate-info-rgb) / .24);color:var(--primate-info);background:rgb(var(--primate-info-rgb) / .1)}.geofence-radius{align-items:baseline;gap:5px;min-width:82px;display:inline-flex}.geofence-radius strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);letter-spacing:-.02em}.geofence-radius small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs)}.geofence-not-applicable{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm)}.polygon-indicator{min-width:112px;font-size:var(--primate-font-size-xs);align-items:center;gap:7px;font-weight:600;display:inline-flex}.polygon-indicator>span{border-radius:2px;flex:none;width:7px;height:7px}.polygon-indicator-available{color:var(--primate-warning)}.polygon-indicator-available>span{background:var(--primate-accent-yellow);box-shadow:0 0 0 3px rgb(var(--primate-accent-yellow-rgb) / .14)}.polygon-indicator-empty{color:var(--primate-foundation-500)}.polygon-indicator-empty>span{border:1px solid var(--primate-foundation-400);background:0 0}.geofences-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.geofences-state .spinner{flex:none}.geofences-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.geofences-state p{max-width:440px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.geofences-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.geofences-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.geofences-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.attendance-page{width:min(100% - 64px,1400px);margin:0 auto;padding:48px 0 64px}.attendance-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.attendance-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.attendance-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.attendance-total{min-width:106px;color:var(--primate-foundation-600);justify-content:flex-end;align-items:baseline;gap:7px;padding-bottom:4px;display:flex}.attendance-total strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-4xl);letter-spacing:-.03em}.attendance-total span{font-size:var(--primate-font-size-sm)}.attendance-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.attendance-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:16px 24px;display:flex}.attendance-search{width:min(100%,430px);position:relative}.attendance-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px;transition:border-color .16s,box-shadow .16s,background .16s}.attendance-search input::placeholder{color:var(--primate-foundation-500)}.attendance-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.attendance-search input:disabled{cursor:not-allowed;opacity:.65}.attendance-filters{align-items:center;gap:12px;display:flex}.attendance-filters label{flex-direction:column;gap:6px;display:flex}.attendance-filters label>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.attendance-filters select{border:1px solid var(--primate-foundation-400);min-width:150px;min-height:40px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border-radius:8px;outline:none;padding:0 34px 0 12px;font-weight:500}.attendance-filters select:focus{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.attendance-filters select:disabled{cursor:not-allowed;opacity:.65}.attendance-table-scroll{overflow-x:auto}.attendance-table{border-collapse:collapse;text-align:left;width:100%;min-width:1340px}.attendance-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-xs);letter-spacing:.09em;text-transform:uppercase;padding:13px 18px;font-weight:700}.attendance-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:17px 18px}.attendance-table tbody tr{transition:background .14s}.attendance-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.attendance-table tbody tr:last-child td{border-bottom:0}.attendance-employee{flex-direction:column;gap:5px;min-width:190px;display:flex}.attendance-employee-code{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.07em;font-weight:700}.attendance-employee strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.attendance-event-type{min-width:124px;font-size:var(--primate-font-size-xs);border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.attendance-event-type>span{min-width:24px;height:20px;font-size:var(--primate-font-size-2xs);border-radius:5px;place-items:center;font-weight:700;display:grid}.attendance-event-type-check_in{border-color:rgb(var(--primate-primary-500-rgb) / .14);color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .06)}.attendance-event-type-check_in>span{color:var(--primate-color-white);background:var(--primate-primary-500)}.attendance-event-type-check_out{border-color:rgb(var(--primate-foundation-950-rgb) / .14);color:var(--primate-foundation-950);background:rgb(var(--primate-foundation-950-rgb) / .05)}.attendance-event-type-check_out>span{color:var(--primate-color-white);background:var(--primate-foundation-950)}.attendance-event-type-break_start,.attendance-event-type-break_end{border-color:rgb(var(--primate-info-rgb) / .2);color:var(--primate-info);background:rgb(var(--primate-info-rgb) / .09)}.attendance-event-type-break_start>span,.attendance-event-type-break_end>span{color:var(--primate-info);background:rgb(var(--primate-info-rgb) / .16)}.attendance-timestamp{min-width:145px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-sm);white-space:nowrap;display:inline-flex}.attendance-location{align-items:center;gap:8px;min-width:150px;display:inline-flex}.attendance-location>span{border:1px solid var(--primate-foundation-300);width:24px;height:24px;color:var(--primate-foundation-700);background:var(--primate-foundation-200);font-size:var(--primate-font-size-2xs);border-radius:6px;flex:none;place-items:center;font-weight:700;display:grid}.attendance-status,.geofence-validation,.sync-mode{min-width:96px;font-size:var(--primate-font-size-xs);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.face-match-score{min-width:92px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600;display:inline-flex}.face-match-score-empty{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);font-weight:400}.attendance-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.attendance-state .spinner{flex:none}.attendance-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.attendance-state p{max-width:440px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.attendance-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.attendance-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.attendance-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.alerts-page{width:min(100% - 64px,1440px);margin:0 auto;padding:48px 0 64px}.alerts-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.alerts-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.alerts-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.alerts-total{min-width:100px;color:var(--primate-foundation-600);justify-content:flex-end;align-items:baseline;gap:7px;padding-bottom:4px;display:flex}.alerts-total strong{color:var(--primate-primary-500);font-size:var(--primate-font-size-4xl);letter-spacing:-.03em}.alerts-total span{font-size:var(--primate-font-size-sm)}.alerts-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.alerts-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:16px 24px;display:flex}.alerts-search{width:min(100%,420px);position:relative}.alerts-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px}.alerts-search input::placeholder{color:var(--primate-foundation-500)}.alerts-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.alerts-search input:disabled{cursor:not-allowed;opacity:.65}.alerts-filters{align-items:center;gap:10px;display:flex}.alerts-filters label{flex-direction:column;gap:6px;display:flex}.alerts-filters label>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.alerts-filters select{border:1px solid var(--primate-foundation-400);min-width:130px;min-height:40px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-xs);border-radius:8px;outline:none;padding:0 32px 0 11px;font-weight:500}.alerts-filters select:focus{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.alerts-filters select:disabled{cursor:not-allowed;opacity:.65}.alerts-table-scroll{overflow-x:auto}.alerts-table{border-collapse:collapse;text-align:left;width:100%;min-width:1450px}.alerts-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-xs);letter-spacing:.09em;text-transform:uppercase;padding:13px 18px;font-weight:700}.alerts-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:18px}.alerts-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.alerts-table tbody tr:last-child td{border-bottom:0}.alert-employee{flex-direction:column;gap:5px;min-width:185px;display:flex}.alert-employee span{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.07em;font-weight:700}.alert-employee strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.alert-type{border:1px solid rgb(var(--primate-primary-500-rgb) / .14);min-width:138px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .06);font-size:var(--primate-font-size-xs);border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.alert-type>span{min-width:26px;height:20px;color:var(--primate-color-white);background:var(--primate-primary-500);font-size:var(--primate-font-size-2xs);border-radius:5px;place-items:center;display:grid}.alert-severity,.alert-resolution{min-width:88px;font-size:var(--primate-font-size-xs);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.alert-description{width:280px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-sm);margin:0;line-height:1.6}.alert-related-event{min-width:115px;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);flex-direction:column;gap:4px;font-weight:600;display:flex}.alert-related-event small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);font-weight:400}.alert-not-available{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs)}.alert-timestamp{min-width:140px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-xs);white-space:nowrap;display:inline-flex}.alerts-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.alerts-state .spinner{flex:none}.alerts-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);margin:0 0 7px}.alerts-state p{max-width:440px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.alerts-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.alerts-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.alerts-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.dashboard-overview{width:min(100% - 64px,1320px);margin:0 auto;padding:48px 0 64px}.dashboard-overview-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.dashboard-overview-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.dashboard-overview-heading>div>p:last-child{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.dashboard-live-badge{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-700);background:var(--primate-color-white);font-size:var(--primate-font-size-xs);border-radius:999px;flex:none;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:inline-flex}.dashboard-live-badge>span{background:var(--primate-primary-500);width:7px;height:7px;box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1);border-radius:50%}.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px;display:grid}.dashboard-scope-context{border:1px solid rgb(var(--primate-primary-500-rgb) / .16);background:rgb(var(--primate-primary-500-rgb) / .045);border-radius:12px;align-items:center;gap:12px;min-width:0;margin-top:22px;padding:13px 16px;display:flex}.dashboard-scope-context-icon{border:1px solid rgb(var(--primate-primary-500-rgb) / .14);width:36px;height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);border-radius:10px;flex:none;place-items:center;display:grid}.dashboard-scope-context>div{flex:320px;gap:3px;min-width:0;display:grid}.dashboard-scope-context strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm)}.dashboard-scope-context>div>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);line-height:1.45}.dashboard-scope-context-role{color:var(--primate-primary-700);background:rgb(var(--primate-primary-500-rgb) / .09);font-size:var(--primate-font-size-xs);white-space:nowrap;border-radius:999px;margin-left:auto;padding:5px 9px;font-weight:700}.dashboard-operational-grid{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px;margin-top:24px;display:grid}.dashboard-panel{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-width:0;box-shadow:0 14px 34px rgb(var(--primate-foundation-950-rgb) / .035);border-radius:14px;overflow:hidden}.dashboard-panel-heading{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:16px 20px;display:flex}.dashboard-panel-heading .eyebrow{font-size:var(--primate-font-size-xs);margin-bottom:5px}.dashboard-panel-heading h2,.dashboard-section-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0}.dashboard-panel-heading>a{color:var(--primate-primary-500);font-size:var(--primate-font-size-sm);flex:none;font-weight:600;text-decoration:none}.dashboard-panel-heading>a:hover{text-decoration:underline}.dashboard-panel-heading>a:focus-visible,.dashboard-quick-link:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.dashboard-event-list{scrollbar-gutter:stable;flex-direction:column;max-width:100%;display:flex;overflow-x:auto}.dashboard-event-row{border-bottom:1px solid var(--primate-foundation-300);grid-template-columns:minmax(150px,1fr) 140px minmax(150px,1fr) 105px;align-items:center;gap:14px;min-width:620px;min-height:78px;padding:12px 20px;display:grid}@media (width<=1180px){.dashboard-operational-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.dashboard-scope-context{flex-wrap:wrap;align-items:flex-start}.dashboard-scope-context-role{margin-left:48px}.dashboard-event-row{grid-template-columns:minmax(0,1fr) minmax(120px,1fr);align-items:flex-start;min-width:0}.dashboard-event-context{grid-column:1}.dashboard-event-row .attendance-status{grid-column:2}}.dashboard-event-row:last-child{border-bottom:0}.dashboard-event-row:hover,.dashboard-alert-row:hover{background:rgb(var(--primate-foundation-200-rgb) / .62)}.dashboard-event-employee,.dashboard-event-context{flex-direction:column;gap:4px;min-width:0;display:flex}.dashboard-event-employee>span{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.07em;font-weight:700}.dashboard-event-employee>strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dashboard-event-context>span{color:var(--primate-foundation-700);font-size:var(--primate-font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-event-context>time{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs)}.dashboard-event-row .attendance-event-type,.dashboard-event-row .attendance-status{width:100%;min-width:0}.dashboard-alert-list{flex-direction:column;display:flex}.dashboard-alert-row{border-bottom:1px solid var(--primate-foundation-300);flex-direction:column;gap:10px;min-height:150px;padding:18px 20px;display:flex}.dashboard-alert-row:last-child{border-bottom:0}.dashboard-alert-topline{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dashboard-alert-employee{flex-direction:column;gap:4px;min-width:0;display:flex}.dashboard-alert-employee>span{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.07em;font-weight:700}.dashboard-alert-employee>strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-alert-row .alert-type{width:fit-content;min-width:0}.dashboard-alert-row>p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.6;display:-webkit-box;overflow:hidden}.dashboard-alert-row>time,.dashboard-alert-no-date{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs)}.dashboard-panel-empty{justify-content:center;align-items:center;gap:16px;min-height:260px;padding:32px;display:flex}.dashboard-panel-empty>span{width:44px;height:44px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);font-size:var(--primate-font-size-xs);border-radius:11px;flex:none;place-items:center;font-weight:700;display:grid}.dashboard-panel-title{align-items:center;gap:11px;min-width:0;display:flex}.dashboard-panel-icon{border:1px solid rgb(var(--primate-primary-500-rgb) / .13);width:36px;height:36px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07);border-radius:9px;flex:none;place-items:center;display:grid}.dashboard-panel-title>div{min-width:0}.dashboard-panel-empty h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);margin:0 0 5px}.dashboard-panel-empty p{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);margin:0;line-height:1.6}.dashboard-quick-section{margin-top:24px}.dashboard-section-heading{margin-bottom:14px}.dashboard-section-heading .eyebrow{font-size:var(--primate-font-size-xs);margin-bottom:5px}.dashboard-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.dashboard-quick-link{border:1px solid var(--primate-foundation-300);min-width:0;min-height:86px;color:var(--primate-foundation-950);background:var(--primate-color-white);border-radius:11px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.dashboard-quick-link:hover{border-color:rgb(var(--primate-primary-500-rgb) / .3);box-shadow:0 10px 24px rgb(var(--primate-foundation-950-rgb) / .06);transform:translateY(-1px)}.dashboard-quick-icon{width:34px;height:34px;color:var(--primate-color-white);background:var(--primate-foundation-950);border-radius:9px;flex:none;place-items:center;display:grid}.dashboard-quick-link>div{flex-direction:column;gap:4px;min-width:0;display:flex}.dashboard-quick-link strong{font-size:var(--primate-font-size-sm)}.dashboard-quick-link small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-quick-arrow{color:var(--primate-primary-500);place-items:center;transition:transform .15s;display:grid}.dashboard-quick-link:hover .dashboard-quick-arrow{transform:translate(2px)}.dashboard-overview-loading,.dashboard-overview-error{text-align:left;justify-content:center;align-items:center;gap:18px;min-height:520px;display:flex}.dashboard-overview-loading h1,.dashboard-overview-error h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-2xl);margin:0 0 7px}.dashboard-overview-loading p,.dashboard-overview-error p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0}.dashboard-overview-error button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.dashboard-overview-error button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.dashboard-overview-error button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.settings-page{width:min(100% - 64px,1180px);margin:0 auto;padding:48px 0 64px}.settings-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.settings-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.settings-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.settings-readonly-badge{border:1px solid var(--primate-foundation-300);color:var(--primate-foundation-700);background:var(--primate-color-white);font-size:var(--primate-font-size-xs);border-radius:999px;flex:none;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:inline-flex}.settings-readonly-badge>span{background:var(--primate-primary-500);width:7px;height:7px;box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1);border-radius:50%}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:36px;display:grid}.settings-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-width:0;box-shadow:0 14px 34px rgb(var(--primate-foundation-950-rgb) / .035);border-radius:14px;padding:24px}.settings-company-card,.settings-telegram-card{grid-column:1/-1}.settings-card-heading{border-bottom:1px solid var(--primate-foundation-300);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:48px;padding-bottom:20px;display:grid}.settings-card-heading .eyebrow{font-size:var(--primate-font-size-xs);margin-bottom:4px}.settings-card-heading h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0}.settings-card-mark{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);width:40px;height:40px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07);border-radius:10px;place-items:center;font-size:9px;font-weight:700;display:grid}.settings-card-mark svg{width:20px;height:20px}.settings-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding-top:20px;display:grid}.settings-company-card .settings-details-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-detail{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:9px;min-width:0;padding:14px}.settings-detail-wide{grid-column:span 2}.settings-company-card .settings-detail-wide{grid-column:span 1}.settings-detail dt{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);letter-spacing:.05em;text-transform:uppercase;margin-bottom:7px;font-weight:600}.settings-detail dd{overflow-wrap:anywhere;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);margin:0;font-weight:600;line-height:1.5}.settings-status{min-width:88px;font-size:var(--primate-font-size-xs);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:7px 9px;font-weight:600;display:inline-flex}.subscription-plan{min-height:108px;color:var(--primate-color-white);background:var(--primate-foundation-950);border-radius:11px;justify-content:space-between;align-items:center;gap:24px;margin-top:20px;padding:20px;display:flex}.subscription-plan>div{flex-direction:column;gap:6px;display:flex}.subscription-plan>div:last-child{text-align:right;align-items:flex-end}.subscription-plan span{color:rgb(var(--primate-white-rgb) / .56);font-size:var(--primate-font-size-xs);letter-spacing:.08em;font-weight:600}.subscription-plan strong{font-size:var(--primate-font-size-2xl);letter-spacing:-.03em}.subscription-plan>div:last-child strong{color:var(--primate-accent-yellow);font-size:var(--primate-font-size-6xl)}.settings-subscription-dates{padding-top:12px}.settings-missing{justify-content:center;align-items:center;gap:16px;min-height:210px;padding:28px;display:flex}.settings-missing>span{width:42px;height:42px;color:var(--primate-warning);background:rgb(var(--primate-accent-yellow-rgb) / .14);font-size:var(--primate-font-size-lg);border-radius:10px;flex:none;place-items:center;font-weight:700;display:grid}.settings-missing h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);margin:0 0 6px}.settings-missing p{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);margin:0;line-height:1.6}.settings-page-state{justify-content:center;align-items:center;gap:18px;min-height:520px;display:flex}.settings-page-state h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-2xl);margin:0 0 7px}.settings-page-state p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0}.settings-page-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.settings-page-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.settings-page-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.settings-empty{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:14px;justify-content:center;align-items:center;gap:18px;min-height:420px;margin-top:32px;display:flex}.settings-empty>span{width:48px;height:48px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);font-size:var(--primate-font-size-sm);border-radius:12px;place-items:center;font-weight:700;display:grid}.settings-empty h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);margin:0 0 7px}.settings-empty p{max-width:430px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0;line-height:1.7}.settings-telegram-content{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:start;gap:24px 32px;padding-top:20px;display:grid}.settings-telegram-copy{min-width:0;padding-top:2px}.settings-telegram-panel{flex-direction:column;gap:16px;min-width:0;display:flex}.settings-telegram-title{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0 0 6px;font-weight:700}.settings-telegram-description{max-width:620px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0;line-height:1.6}.settings-telegram-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.settings-telegram-details>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px 14px;display:flex}.settings-telegram-details>div:last-child:nth-child(odd){grid-column:1/-1}.settings-telegram-destination-main{min-width:0}.settings-telegram-destination-switch{flex-direction:column;flex:none;justify-content:center;align-items:center;gap:7px;min-width:142px;display:flex}.settings-telegram-destination-switch .ui-switch-copy{text-align:center;align-items:center}.settings-telegram-destination-switch .ui-switch-copy>span,.settings-telegram-destination-switch .ui-switch-copy small{font-size:var(--primate-font-size-xs)}.settings-telegram-destination-switch .ui-switch[aria-busy=true]{place-items:center;display:grid}.settings-telegram-destination-switch .ui-switch[aria-busy=true] .ui-switch-thumb{transform:none}.settings-telegram-details span,.settings-telegram-details small{display:block}.settings-telegram-destination-label{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-weight:600}.settings-telegram-details strong{overflow-wrap:anywhere;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);margin:0;font-weight:600;line-height:1.45}.settings-telegram-details small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);margin-top:5px;line-height:1.4}.settings-telegram-actions{flex-direction:column;align-items:stretch;gap:12px;min-width:0;padding-top:2px;display:flex}.settings-telegram-actions>.ui-button{align-self:flex-end}.settings-telegram-link{border:1px solid var(--primate-foundation-300);min-height:34px;color:var(--primate-primary-700);font-size:var(--primate-font-size-xs);text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:600;text-decoration:none;display:inline-flex}.settings-telegram-link-group{border-top:1px solid var(--primate-foundation-300);grid-template-columns:minmax(0,1.05fr) minmax(150px,.95fr);align-items:center;gap:12px;min-width:0;padding-top:12px;display:grid}.settings-telegram-link-note{max-width:none;color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);text-align:left;line-height:1.4}.settings-telegram-link:hover{border-color:var(--primate-primary-500);background:var(--primate-primary-50);text-decoration:underline}@media (width<=900px){.settings-telegram-content{grid-template-columns:minmax(0,1fr)}.settings-telegram-actions{align-items:stretch}.settings-telegram-actions>.ui-button{align-self:flex-start}}.entity-drawer-body.settings-attendance-drawer-body{background:var(--primate-foundation-100);grid-template-columns:minmax(0,1fr);gap:0;padding:0}.settings-drawer-section{border-bottom:1px solid var(--primate-foundation-300);background:var(--primate-color-white);padding:24px 28px}.settings-drawer-section:last-child{border-bottom:0}.settings-drawer-section-heading{align-items:flex-start;gap:12px;display:flex}.settings-drawer-section-heading>span{border:1px solid rgb(var(--primate-primary-500-rgb) / .18);width:32px;height:32px;color:var(--primate-primary-700);background:var(--primate-primary-50);font-size:var(--primate-font-size-xs);border-radius:9px;flex:none;place-items:center;font-weight:700;display:grid}.settings-drawer-section-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0;line-height:1.35}.settings-drawer-section-heading p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:5px 0 0;line-height:1.55}.settings-drawer-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin-top:20px;display:grid}.settings-drawer-fields .crud-form-switch{min-height:64px}@media (width<=640px){.settings-telegram-content,.settings-telegram-details{grid-template-columns:minmax(0,1fr)}.settings-telegram-destination-switch{min-width:0}.settings-telegram-actions{flex-direction:column;align-items:stretch}.settings-telegram-actions>*{width:100%}.settings-telegram-link-group{grid-template-columns:minmax(0,1fr)}.settings-drawer-section{padding:22px}.settings-drawer-fields{grid-template-columns:minmax(0,1fr)}.settings-drawer-fields .ui-form-field-wide,.settings-drawer-fields .crud-form-switch{grid-column:auto}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=800px){.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:32px}.login-brand-stage{min-height:auto}.login-brand-nav,.login-brand-footer-row{flex-direction:column;align-items:flex-start}.login-version-pill{display:none}.login-brand-copy{margin-top:36px}.login-brand-panel h1{font-size:clamp(var(--primate-font-size-display-xs), 12vw, var(--primate-font-size-display-xl))}.login-signal-grid{grid-template-columns:1fr}.login-brand-footer-row{display:none}.login-form-panel{padding:32px 20px}.login-card{padding:0}.admin-shell{grid-template-columns:72px minmax(0,1fr)}.admin-sidebar{padding:20px 10px}.sidebar-brand{justify-content:center;padding:0 0 24px}.sidebar-brand>div,.sidebar-section-label,.sidebar-link>span:last-child,.sidebar-footer p{display:none}.sidebar-link{justify-content:center;padding:0}.sidebar-footer{justify-content:center;padding:16px 0 0}.admin-header{padding:0 20px}.header-context{display:none}.user-summary{min-width:0}.dashboard-content{width:min(100% - 40px,1120px);padding:40px 0 48px}.employees-page,.locations-page,.geofences-page{width:min(100% - 40px,1240px);padding:40px 0 48px}.attendance-page{width:min(100% - 40px,1400px);padding:40px 0 48px}.alerts-page{width:min(100% - 40px,1440px);padding:40px 0 48px}.dashboard-overview{width:min(100% - 40px,1320px);padding:40px 0 48px}.settings-page{width:min(100% - 40px,1180px);padding:40px 0 48px}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-operational-grid{grid-template-columns:1fr}.dashboard-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-caption{display:none}.employees-search,.locations-search,.geofences-search{width:100%}.attendance-toolbar{flex-direction:column;align-items:stretch}.attendance-search,.attendance-filters{width:100%}.attendance-filters label{flex:1}.attendance-filters select{width:100%}.alerts-toolbar{flex-direction:column;align-items:stretch}.alerts-search,.alerts-filters{width:100%}.alerts-filters label{flex:1}.alerts-filters select{width:100%}.dashboard-welcome-card{padding:32px}.welcome-status{display:none}.module-preview-grid{grid-template-columns:1fr}}@media (width<=560px){.admin-shell{display:block}.admin-sidebar{flex-direction:row;align-items:center;gap:16px;width:100%;height:auto;padding:12px 16px;position:static}.sidebar-brand{border:0;padding:0}.sidebar-brand .sidebar-brand-logo{max-width:34px;max-height:34px}.sidebar-navigation{flex:1;min-width:0;margin:0}.sidebar-navigation ul{flex-direction:row;justify-content:flex-end}.sidebar-navigation li:not(:first-child),.sidebar-footer{display:none}.sidebar-link{justify-content:flex-end;min-height:36px}.sidebar-icon{width:30px;height:30px}.admin-header{min-height:64px;padding:0 16px;position:static}.user-avatar{display:none}.user-summary strong{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.header-signout-button{min-height:34px;padding:0 10px}.dashboard-content{width:min(100% - 32px,1120px);padding-top:32px}.employees-page,.locations-page,.geofences-page{width:min(100% - 32px,1240px);padding-top:32px}.attendance-page{width:min(100% - 32px,1400px);padding-top:32px}.alerts-page{width:min(100% - 32px,1440px);padding-top:32px}.dashboard-overview{width:min(100% - 32px,1320px);padding-top:32px}.settings-page{width:min(100% - 32px,1180px);padding-top:32px}.employees-page-heading,.locations-page-heading,.geofences-page-heading,.attendance-page-heading,.alerts-page-heading,.dashboard-overview-heading,.settings-page-heading{flex-direction:column;align-items:flex-start;gap:16px}.employees-page-heading h1,.locations-page-heading h1,.geofences-page-heading h1,.attendance-page-heading h1,.alerts-page-heading h1,.dashboard-overview-heading h1,.settings-page-heading h1{font-size:var(--primate-font-size-7xl)}.employees-total,.locations-total,.geofences-total,.attendance-total,.alerts-total{justify-content:flex-start}.employees-directory-card,.locations-directory-card,.geofences-directory-card,.attendance-directory-card,.alerts-directory-card{margin-top:28px}.employees-toolbar,.locations-toolbar,.geofences-toolbar,.attendance-toolbar,.alerts-toolbar{padding:14px 16px}.employees-search input,.locations-search input,.geofences-search input,.attendance-search input,.alerts-search input{font-size:var(--primate-font-size-sm)}.attendance-filters,.alerts-filters{flex-direction:column}.dashboard-kpi-grid{grid-template-columns:1fr}.dashboard-event-row{grid-template-columns:1fr 1fr;align-items:flex-start;min-width:0}.dashboard-event-context{grid-column:1}.dashboard-event-row .attendance-status{grid-column:2}.dashboard-quick-grid,.settings-layout{grid-template-columns:1fr}.settings-company-card{grid-column:auto}.settings-company-card .settings-details-grid,.settings-details-grid{grid-template-columns:1fr}.settings-detail-wide,.settings-company-card .settings-detail-wide{grid-column:auto}.settings-card-heading{grid-template-columns:40px minmax(0,1fr);align-items:flex-start}.settings-card-heading .settings-status{grid-column:2;justify-self:start}.subscription-plan{flex-direction:column;align-items:flex-start}.subscription-plan>div:last-child{text-align:left;align-items:flex-start}.settings-empty,.settings-page-state{text-align:center;flex-direction:column;align-items:center;padding:28px}.employees-state,.locations-state,.geofences-state,.attendance-state,.alerts-state{text-align:center;flex-direction:column;align-items:center;min-height:300px}.page-heading{flex-direction:column;align-items:flex-start}.dashboard-content h1{font-size:var(--primate-font-size-7xl)}.dashboard-welcome-card{min-height:0;margin-top:32px;padding:28px 24px}.welcome-copy{gap:14px}.welcome-copy h2{font-size:var(--primate-font-size-3xl)}.profile-error-card{padding:32px 24px}.profile-error-actions{flex-direction:column}}.ui-page-header{animation:.18s ease-out both ui-enter}.ui-section-card,.ui-kpi-card,.dashboard-panel,.dashboard-quick-actions,.settings-card{animation:.2s ease-out both ui-rise}.ui-kpi-card:nth-child(2),.settings-card:nth-child(2){animation-delay:35ms}.ui-kpi-card:nth-child(3),.settings-card:nth-child(3){animation-delay:70ms}.ui-kpi-card:nth-child(4){animation-delay:.105s}.ui-kpi-card:nth-child(5){animation-delay:.14s}.ui-kpi-card:nth-child(6){animation-delay:.175s}.ui-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}.ui-kpi-grid.module-kpi-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-kpi-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);min-width:0;min-height:132px;box-shadow:0 10px 26px rgb(var(--primate-foundation-950-rgb) / .035);border-radius:12px;padding:19px 20px;position:relative;overflow:hidden}.ui-kpi-card:before{background:var(--primate-primary-500);content:"";height:3px;position:absolute;top:0;left:0;right:0}.ui-kpi-card:after{border:1px solid rgb(var(--primate-primary-500-rgb) / .07);content:"";pointer-events:none;border-radius:50%;width:92px;height:92px;position:absolute;bottom:-34px;right:-26px}.ui-kpi-card-success:before{background:var(--primate-success)}.ui-kpi-card-attention{border-color:rgb(var(--primate-accent-yellow-rgb) / .38)}.ui-kpi-card-attention:before{background:var(--primate-accent-yellow)}.ui-kpi-card-critical{border-color:rgb(var(--primate-error-rgb) / .2)}.ui-kpi-card-critical:before{background:var(--primate-error)}.ui-kpi-card-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.ui-kpi-card-heading>span:first-child{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.4;overflow:hidden}.ui-kpi-card-icon{border:1px solid rgb(var(--primate-primary-500-rgb) / .13);width:34px;height:34px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .07);border-radius:9px;flex:none;place-items:center;display:grid}.ui-kpi-card>strong{color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-4xl), 2.4vw, var(--primate-font-size-7xl));letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin-top:17px;line-height:1.05;display:block;overflow:hidden}.ui-kpi-card>p{color:var(--primate-foundation-500);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 0;line-height:1.5;overflow:hidden}.module-kpi-grid+.ui-section-card,.module-kpi-grid+.settings-layout{margin-top:20px}.ui-pagination{border-top:1px solid var(--primate-foundation-300);min-height:56px;color:var(--primate-foundation-600);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);justify-content:space-between;align-items:center;gap:16px;padding:0 20px;font-weight:600;display:flex}.ui-pagination-controls,.ui-pagination-size{align-items:center;gap:8px;display:inline-flex}.ui-pagination-size span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.ui-pagination button,.ui-pagination select{border:1px solid var(--primate-foundation-400);min-height:34px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border-radius:9px;font-weight:700}.ui-pagination button{padding:0 12px}.ui-pagination select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--primate-foundation-600) 50%), linear-gradient(135deg, var(--primate-foundation-600) 50%, transparent 50%);background-position:calc(100% - 14px),calc(100% - 9px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;min-width:68px;padding:0 30px 0 10px}.ui-pagination button:hover:not(:disabled),.ui-pagination select:hover:not(:disabled){border-color:var(--primate-foundation-400);background-color:var(--primate-foundation-100)}.ui-pagination button:focus-visible,.ui-pagination select:focus-visible{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .12);outline:none}.ui-pagination button:disabled{cursor:not-allowed;color:var(--primate-foundation-500);background:var(--primate-foundation-200)}.ui-pagination-page{color:var(--primate-foundation-700)}.attendance-filters select,.alerts-filters select{border:1px solid var(--primate-foundation-400);min-height:44px;color:var(--primate-foundation-950);background-color:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);appearance:none;background-image:none;background-position:right 15px center;background-repeat:no-repeat;background-size:14px;border-radius:10px;outline:none;padding:0 46px 0 14px;font-weight:500;transition:border-color .16s,box-shadow .16s,background-color .16s}.attendance-filters select:hover:not(:disabled),.alerts-filters select:hover:not(:disabled){border-color:var(--primate-foundation-400);background-color:var(--primate-foundation-100)}.attendance-filters select:focus-visible,.alerts-filters select:focus-visible{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .12)}.attendance-filters select:disabled,.alerts-filters select:disabled{cursor:not-allowed;color:var(--primate-foundation-600);background-color:var(--primate-foundation-200);opacity:.72}.sidebar-icon{width:32px;height:32px;font-size:initial;letter-spacing:0;border-radius:8px;flex:none;transition:color .16s,border-color .16s,background-color .16s}.sidebar-icon svg{display:block}.sidebar-link:hover .sidebar-icon{border-color:rgb(var(--primate-info-rgb) / .28);color:var(--primate-color-white);background:rgb(var(--primate-info-rgb) / .08)}.sidebar-link-active .sidebar-icon{border-color:rgb(var(--primate-info-rgb) / .32);color:var(--primate-color-white);background:rgb(var(--primate-primary-500-rgb) / .38)}.ui-badge{max-width:100%;min-height:28px;font-size:var(--primate-font-size-xs);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:6px 10px;font-weight:600;line-height:1.2;display:inline-flex}.ui-badge-dot{border-radius:50%;flex:none;background:currentColor!important;width:6px!important;height:6px!important}.ui-badge-critical .ui-badge-dot{color:var(--primate-error)}.ui-badge-marker{flex:none}.ui-switch-field{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.ui-switch-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.ui-switch-copy>span{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600;line-height:1.4}.ui-switch-copy small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);font-weight:400;line-height:1.5}.ui-switch{border:1px solid var(--primate-foundation-400);background:var(--primate-foundation-300);border-radius:999px;outline:none;flex:none;width:48px;height:28px;padding:3px;transition:border-color .17s,background-color .17s,box-shadow .17s;position:relative}.ui-switch:focus-visible{box-shadow:0 0 0 3px rgb(var(--primate-info-rgb) / .3)}.ui-switch:disabled{cursor:not-allowed}.ui-switch-field-readonly .ui-switch{cursor:default;opacity:.82}.ui-switch-thumb{background:var(--primate-color-white);width:20px;height:20px;box-shadow:0 1px 3px rgb(var(--primate-foundation-950-rgb) / .2);border-radius:50%;place-items:center;transition:transform .17s;display:grid;transform:translate(0)}.ui-switch[aria-checked=true] .ui-switch-thumb{transform:translate(20px)}.ui-switch-spinner{border:2px solid rgb(var(--primate-primary-500-rgb) / .2);border-top-color:var(--primate-primary-500);border-radius:50%;width:10px;height:10px;animation:.7s linear infinite spin}.settings-readonly-switch{min-width:190px}.ui-page-state h2{margin:0 0 8px}.ui-page-state p{margin:0}.ui-refresh-indicator{min-height:28px;color:var(--primate-text-secondary);font-size:var(--primate-font-size-xs);white-space:nowrap;align-items:center;gap:8px;font-weight:600;display:inline-flex}.ui-refresh-indicator-spinner{border:2px solid rgb(var(--primate-primary-500-rgb) / .2);border-top-color:var(--primate-primary-500);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin}:is(.alerts-directory-card,.attendance-directory-card)>.ui-refresh-indicator{justify-content:flex-end;margin:8px 24px 0;display:flex}:is(.employees-inline-error-state,.alerts-inline-error-state,.locations-inline-error-state,.geofences-inline-error-state,.attendance-inline-error-state,.operations-inline-error-state,.devices-inline-error-state,.audit-inline-error-state,.productivity-inline-error-state,.reports-inline-error,.presence-matrix-inline-error,.settings-inline-error,.dashboard-overview-inline-error){text-align:left;align-items:flex-start;gap:12px;min-height:0;margin:12px 24px;padding:12px 16px}:is(.employees-inline-error-state,.alerts-inline-error-state,.locations-inline-error-state,.geofences-inline-error-state,.attendance-inline-error-state,.operations-inline-error-state,.devices-inline-error-state,.audit-inline-error-state,.productivity-inline-error-state,.reports-inline-error,.presence-matrix-inline-error,.settings-inline-error,.dashboard-overview-inline-error) h2{font-size:var(--primate-font-size-md);margin-bottom:4px}:is(.employees-inline-error-state,.alerts-inline-error-state,.locations-inline-error-state,.geofences-inline-error-state,.attendance-inline-error-state,.operations-inline-error-state,.devices-inline-error-state,.audit-inline-error-state,.productivity-inline-error-state,.reports-inline-error,.presence-matrix-inline-error,.settings-inline-error,.dashboard-overview-inline-error) p{font-size:var(--primate-font-size-sm);line-height:1.5}.app-loading-shell{background:var(--primate-surface-page);place-items:center;min-height:100dvh;padding:24px;display:grid}.app-loading-state{color:var(--primate-text-secondary);justify-content:center;align-items:center;gap:12px;display:flex}.app-loading-state p{font-size:var(--primate-font-size-md);margin:0;font-weight:500;line-height:1.5}.ui-retry-button{border:1px solid var(--primate-interactive-default);min-height:40px;color:var(--primate-color-white);background:var(--primate-interactive-default);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border-radius:9px;justify-content:center;align-items:center;margin-top:14px;padding:0 16px;font-weight:600;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.ui-retry-button:hover{background:var(--primate-interactive-hover);transform:translateY(-1px)}.ui-retry-button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .34);outline-offset:2px}.ui-retry-button:disabled{cursor:not-allowed;opacity:.62}.ui-button{min-height:42px;font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:9px;padding:0 17px;font-weight:600;transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s;display:inline-flex}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .34);outline-offset:2px}.ui-button:disabled{cursor:not-allowed;opacity:.66}.ui-button-primary{color:var(--primate-color-white);background:var(--primate-primary-500)}.ui-button-primary:hover:not(:disabled){background:var(--primate-primary-700)}.ui-button-secondary{border-color:var(--primate-foundation-400);color:var(--primate-foundation-950);background:var(--primate-color-white)}.ui-button-secondary:hover:not(:disabled){border-color:var(--primate-foundation-400);background:var(--primate-foundation-200)}.ui-button-quiet{color:var(--primate-primary-500);background:0 0}.ui-button-quiet:hover:not(:disabled){background:rgb(var(--primate-primary-500-rgb) / .07)}.ui-search-input input{transition:border-color .16s,box-shadow .16s,background-color .16s}.ui-search-input{position:relative}.ui-search-input input[type=search]{padding-right:40px}.ui-search-input input[type=search]::-webkit-search-cancel-button{appearance:none}.ui-search-input .search-clear{width:24px;height:24px;color:var(--primate-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;transition:color .16s,border-color .16s,background-color .16s;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ui-search-input .search-clear:hover:not(:disabled){border-color:var(--primate-border-subtle);color:var(--primate-text-primary);background:var(--primate-surface-subtle)}.ui-search-input .search-clear:focus-visible{outline:3px solid var(--primate-focus-ring);outline-offset:1px}.ui-search-input .search-clear:disabled{cursor:not-allowed;opacity:.56}.ui-search-input:focus-within .search-mark{color:var(--primate-primary-500)}.login-brand-panel{isolation:isolate;position:relative;overflow:hidden}.login-brand-panel:after{z-index:-1;border:1px solid rgb(var(--primate-info-rgb) / .18);background:radial-gradient(circle, rgb(var(--primate-primary-500-rgb) / .22) 0, rgb(var(--primate-primary-500-rgb) / 0) 68%);content:"";border-radius:50%;width:420px;height:420px;position:absolute;bottom:-180px;right:-140px}.login-card{animation:.22s ease-out both login-card-enter}.primary-button,.primary-action-button,.outline-action-button,.header-signout-button,.dashboard-panel-heading a,.dashboard-quick-link{transition:transform .16s,color .16s,background-color .16s,border-color .16s,box-shadow .16s}.primary-button:hover:not(:disabled),.primary-action-button:hover:not(:disabled),.outline-action-button:hover:not(:disabled),.header-signout-button:hover:not(:disabled),.dashboard-panel-heading a:hover,.dashboard-quick-link:hover{transform:translateY(-1px)}.sidebar-link{transition:color .16s,background-color .16s,transform .16s;position:relative}.sidebar-link:hover{transform:translate(2px)}.sidebar-link-active:before{background:var(--primate-accent-yellow);content:"";border-radius:0 3px 3px 0;width:3px;height:22px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.alerts-table{min-width:1580px}.alert-row-actions{white-space:nowrap;align-items:center;gap:7px;display:flex}.alert-detail-button{min-height:32px;font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-xs);border:1px solid var(--primate-foundation-400);color:var(--primate-foundation-950);background:var(--primate-color-white);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:600;transition:border-color .14s,color .14s,background-color .14s;display:inline-flex}.alert-detail-button:hover,.alert-detail-button:focus-visible{border-color:var(--primate-foundation-400);background:var(--primate-foundation-200)}.alert-detail-button:focus-visible{outline:2px solid rgb(var(--primate-info-rgb) / .42);outline-offset:2px}.alert-table-switch{gap:10px;width:fit-content;min-width:132px}.alert-table-switch .ui-switch-copy>span{font-size:var(--primate-font-size-xs)}.entity-drawer-backdrop{z-index:820;background:rgb(var(--primate-foundation-950-rgb) / .38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:flex-end;animation:.14s ease-out both ui-enter;display:flex;position:fixed;inset:0}.entity-drawer{border-left:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,540px);height:100%;box-shadow:-24px 0 64px rgb(var(--primate-foundation-950-rgb) / .16);flex-direction:column;animation:.18s ease-out both alert-detail-enter;display:flex}.entity-drawer-header{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:flex-start;gap:24px;padding:28px;display:flex}.entity-drawer-header h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-3xl);margin:5px 0 0;line-height:1.25}.entity-drawer-header>div>p:last-child{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:8px 0 0;line-height:1.6}.entity-drawer-header>button{border:1px solid var(--primate-foundation-300);width:36px;height:36px;color:var(--primate-foundation-700);background:var(--primate-color-white);font-size:var(--primate-font-size-2xl);border-radius:9px;flex:none;place-items:center;display:grid}.entity-drawer-header>button:hover:not(:disabled),.entity-drawer-header>button:focus-visible{border-color:var(--primate-foundation-400);background:var(--primate-foundation-200)}.entity-drawer-form{flex-direction:column;flex:1;min-height:0;display:flex}.entity-drawer-body{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:20px;padding:28px;display:grid;overflow-y:auto}.entity-drawer-footer{border-top:1px solid var(--primate-foundation-300);background:var(--primate-color-white);justify-content:flex-end;gap:10px;padding:20px 28px;display:flex}.ui-form-field{flex-direction:column;gap:7px;min-width:0;display:flex}.ui-form-field-wide{grid-column:1/-1}.ui-form-field>label{color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);font-weight:600;line-height:1.4}.ui-form-field>label>span{color:var(--primate-error)}.ui-form-field input,.ui-form-field select,.ui-form-field textarea{border:1px solid var(--primate-foundation-400);width:100%;min-height:42px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);border-radius:9px;outline:none;padding:0 13px;transition:border-color .15s,box-shadow .15s,background-color .15s}.ui-form-field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--primate-foundation-600) 50%), linear-gradient(135deg, var(--primate-foundation-600) 50%, transparent 50%);background-position:calc(100% - 18px) 18px,calc(100% - 13px) 18px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:42px}.ui-form-field input:focus,.ui-form-field select:focus,.ui-form-field textarea:focus{border-color:var(--primate-info);box-shadow:0 0 0 3px rgb(var(--primate-info-rgb) / .16)}.ui-form-field input[aria-invalid=true],.ui-form-field select[aria-invalid=true],.ui-form-field textarea[aria-invalid=true]{border-color:rgb(var(--primate-error-rgb) / .55);background:rgb(var(--primate-error-rgb) / .025)}.ui-form-field input:disabled,.ui-form-field select:disabled,.ui-form-field textarea:disabled{cursor:not-allowed;color:var(--primate-foundation-600);background:var(--primate-foundation-200)}.ui-form-error,.ui-form-hint{font-size:var(--primate-font-size-sm);line-height:1.5}.ui-form-error{color:var(--primate-error)}.ui-form-hint{color:var(--primate-foundation-600)}.crud-form-switch{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;grid-column:1/-1;min-height:58px;padding:12px 14px}.map-form-section{gap:12px;display:grid}.map-form-copy{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:11px;padding:14px}.map-form-copy span{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:700;display:block}.map-form-copy p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:6px 0 0;line-height:1.6}.map-picker-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 14px 34px rgb(var(--primate-foundation-950-rgb) / .06);border-radius:13px;overflow:hidden}.map-picker-header{border-bottom:1px solid var(--primate-foundation-300);background:linear-gradient(135deg, rgb(var(--primate-primary-500-rgb) / .055), transparent 54%), var(--primate-color-white);justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;display:flex}.map-picker-header>div{min-width:0}.map-picker-title{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);margin:0;font-weight:700}.map-picker-header p:not(.map-picker-title){color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);margin:5px 0 0;line-height:1.55}.map-picker-header>span{border:1px solid rgb(var(--primate-primary-500-rgb) / .14);color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .06);font-size:var(--primate-font-size-xs);letter-spacing:.04em;white-space:nowrap;border-radius:999px;flex:none;padding:5px 8px;font-weight:700}.map-picker{z-index:0;background:var(--primate-foundation-300);width:100%;min-height:280px}.map-picker .leaflet-control-container{font-family:Montserrat,sans-serif}.map-picker .leaflet-control-zoom{border:1px solid rgb(var(--primate-foundation-950-rgb) / .12);box-shadow:0 10px 24px rgb(var(--primate-foundation-950-rgb) / .12);border-radius:10px;overflow:hidden}.map-picker .leaflet-control-zoom a{color:var(--primate-foundation-950);background:var(--primate-color-white);border:0;font-family:Montserrat,sans-serif}.map-picker .leaflet-control-zoom a:hover,.map-picker .leaflet-control-zoom a:focus{color:var(--primate-primary-500);background:var(--primate-foundation-200)}.map-picker .leaflet-control-attribution{color:var(--primate-foundation-600);background:rgb(var(--primate-white-rgb) / .88);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-xs)}.map-picker-marker{border:3px solid var(--primate-color-white);background:var(--primate-primary-500);box-shadow:0 10px 22px rgb(var(--primate-primary-500-rgb) / .34), 0 0 0 7px rgb(var(--primate-primary-500-rgb) / .14);border-radius:999px;place-items:center;display:grid}.map-picker-marker span{background:var(--primate-accent-yellow);border-radius:999px;width:8px;height:8px}.map-picker-radius{stroke-linecap:round}.map-readonly-placeholder{border:1px dashed var(--primate-foundation-400);background:linear-gradient(135deg, rgb(var(--primate-accent-yellow-rgb) / .1), transparent 46%), var(--primate-foundation-100);border-radius:13px;padding:18px}.map-readonly-placeholder strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);display:block}.map-readonly-placeholder p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:8px 0 0;line-height:1.6}.module-action-group,.table-action-group{align-items:center;gap:8px;display:flex}.table-action-group{white-space:nowrap}.table-action-button{border:1px solid var(--primate-foundation-400);min-height:32px;color:var(--primate-foundation-950);background:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-xs);border-radius:7px;padding:0 10px;font-weight:600}.table-action-button:disabled{cursor:not-allowed;opacity:.58}.attendance-row-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.attendance-adjustment-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.attendance-adjustment-record-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:12px;grid-column:1/-1;padding:18px}.attendance-adjustment-record-card .ui-info-card-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.attendance-adjustment-record-card .ui-info-card-mark{border:1px solid rgb(var(--primate-primary-500-rgb) / .14);width:38px;height:38px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .06);border-radius:9px;place-items:center;display:grid}.attendance-adjustment-record-card h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:3px 0 0}.attendance-adjustment-summary span{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:9px;gap:4px;min-width:0;padding:12px;display:grid}.attendance-adjustment-summary small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.attendance-adjustment-summary strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attendance-adjustment-section{border-top:1px solid var(--primate-foundation-300);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:22px;display:grid}.attendance-adjustment-heading,.attendance-adjustment-section>.ui-form-field:last-child,.attendance-adjustment-history,.attendance-adjustment-muted,.attendance-adjustment-error{grid-column:1/-1}.attendance-adjustment-heading{gap:5px;display:grid}.attendance-adjustment-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0}.attendance-adjustment-heading>p:last-child,.attendance-adjustment-muted,.attendance-adjustment-error{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0;line-height:1.65}.attendance-adjustment-error{color:var(--primate-error)}.attendance-adjustment-section textarea{resize:vertical;min-height:96px;padding-top:11px;padding-bottom:11px}.attendance-adjustment-history{gap:10px;display:grid}.attendance-adjustment-history article{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:10px;gap:7px;padding:14px;display:grid}.attendance-adjustment-history article>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.attendance-adjustment-history strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm)}.attendance-adjustment-history p,.attendance-adjustment-history small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0;line-height:1.55}.attendance-adjustment-history small{color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs)}@media (width<=640px){.entity-drawer{width:100%}.entity-drawer-header,.entity-drawer-body{padding:22px}.entity-drawer-body{grid-template-columns:1fr}.attendance-row-actions{flex-direction:column;align-items:stretch}.attendance-adjustment-summary,.attendance-adjustment-section{grid-template-columns:1fr}.ui-form-field-wide,.crud-form-switch,.map-form-section{grid-column:auto}.map-picker-header{flex-direction:column;gap:10px}.map-picker-header>span{white-space:normal}.entity-drawer-footer{padding:18px 22px}}.alert-detail-backdrop,.confirm-dialog-backdrop{background:rgb(var(--primate-foundation-950-rgb) / .38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;position:fixed;inset:0}.alert-detail-backdrop{z-index:800;justify-content:flex-end;animation:.16s ease-out both ui-enter}.alert-detail-panel{border-left:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(520px,100%);height:100%;box-shadow:-18px 0 46px rgb(var(--primate-foundation-950-rgb) / .12);flex-direction:column;padding:28px;animation:.2s ease-out both alert-detail-enter;display:flex;overflow-y:auto}.alert-detail-header{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.alert-detail-header h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-3xl);letter-spacing:-.03em;margin:0}.alert-detail-close{border:1px solid var(--primate-foundation-300);width:36px;height:36px;color:var(--primate-foundation-700);background:var(--primate-color-white);font-size:var(--primate-font-size-3xl);border-radius:9px;flex:none;place-items:center;padding:0;line-height:1;transition:color .14s,border-color .14s,background-color .14s;display:grid}.alert-detail-close:hover:not(:disabled),.alert-detail-close:focus-visible{border-color:var(--primate-foundation-400);color:var(--primate-foundation-950);background:var(--primate-foundation-200)}.alert-detail-close:focus-visible{outline:2px solid rgb(var(--primate-info-rgb) / .42);outline-offset:2px}.alert-detail-badges{flex-wrap:wrap;gap:8px;padding:22px 0;display:flex}.alert-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.alert-detail-grid>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;min-width:0;padding:15px}.alert-detail-grid .alert-detail-wide{grid-column:1/-1}.alert-detail-grid dt{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-weight:700}.alert-detail-grid dd{overflow-wrap:anywhere;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);margin:0;font-weight:500;line-height:1.65}.alert-detail-footer{justify-content:flex-end;gap:10px;margin-top:auto;padding-top:28px;display:flex}.alert-state-control{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:11px;margin-top:18px;padding:18px}.alert-state-control-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.alert-state-control-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0}.alert-state-control .ui-switch-field{border-top:1px solid var(--primate-foundation-300);padding-top:15px}.confirm-dialog-backdrop{z-index:900;justify-content:center;align-items:center;padding:24px;animation:.14s ease-out both ui-enter}.confirm-dialog{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,450px);box-shadow:0 24px 64px rgb(var(--primate-foundation-950-rgb) / .2);border-radius:14px;grid-template-columns:42px minmax(0,1fr);gap:14px 16px;padding:24px;animation:.18s ease-out both confirm-dialog-enter;display:grid}.confirm-dialog-mark{border:1px solid rgb(var(--primate-accent-yellow-rgb) / .35);width:42px;height:42px;color:var(--primate-warning);background:rgb(var(--primate-accent-yellow-rgb) / .14);font-size:var(--primate-font-size-lg);border-radius:11px;place-items:center;font-weight:700;display:grid}.confirm-dialog h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 8px;line-height:1.4}.confirm-dialog p:not(.eyebrow){color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0;line-height:1.65}.confirm-dialog-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:6px;display:flex}.spinner,.button-spinner{will-change:transform}.toast-viewport{z-index:1000;pointer-events:none;flex-direction:column;gap:10px;width:min(390px,100vw - 32px);display:flex;position:fixed;top:20px;right:20px}.toast{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 38px rgb(var(--primate-foundation-950-rgb) / .16);pointer-events:auto;border-left-width:4px;border-radius:12px;grid-template-columns:32px minmax(0,1fr) 28px;align-items:start;gap:12px;padding:14px;animation:.18s ease-out both toast-enter;display:grid}.toast-exiting{animation:.18s ease-in both toast-exit}.toast-success{border-left-color:var(--primate-success)}.toast-error{border-left-color:var(--primate-error)}.toast-warning{border-left-color:var(--primate-accent-yellow)}.toast-info{border-left-color:var(--primate-primary-500)}.toast-mark{width:30px;height:30px;color:var(--primate-color-white);background:var(--primate-primary-500);border-radius:9px;place-items:center;font-size:13px;font-weight:700;display:grid}.toast-success .toast-mark{background:var(--primate-success)}.toast-error .toast-mark{background:var(--primate-error)}.toast-warning .toast-mark{color:var(--primate-foundation-950);background:var(--primate-accent-yellow)}.toast-content strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);margin:1px 0 4px;display:block}.toast-content p{color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.5}.toast-close{width:28px;height:28px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-2xl);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;line-height:1;transition:color .14s,background-color .14s;display:grid}.toast-close:hover,.toast-close:focus-visible{color:var(--primate-foundation-950);background:var(--primate-foundation-200)}.toast-close:focus-visible{outline:2px solid var(--primate-info);outline-offset:1px}@keyframes ui-enter{0%{opacity:0}to{opacity:1}}@keyframes ui-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes login-card-enter{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-enter{0%{opacity:0;transform:translate(12px,-4px)}to{opacity:1;transform:translate(0,0)}}@keyframes toast-exit{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(10px)}}@keyframes alert-detail-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes confirm-dialog-enter{0%{opacity:0;transform:translateY(6px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.ui-kpi-grid,.ui-kpi-grid.module-kpi-grid-wide{grid-template-columns:1fr}.toast-viewport{width:auto;top:12px;left:16px;right:16px}.alert-detail-panel{padding:22px 18px}.alert-detail-grid{grid-template-columns:1fr}.alert-detail-grid .alert-detail-wide{grid-column:auto}.alert-detail-footer,.confirm-dialog-actions{flex-direction:column-reverse}.alert-detail-footer .ui-button,.confirm-dialog-actions .ui-button{width:100%}.confirm-dialog{grid-template-columns:36px minmax(0,1fr);padding:20px}.confirm-dialog-mark{width:36px;height:36px}}@media (width>=641px) and (width<=1024px){.ui-kpi-grid,.ui-kpi-grid.module-kpi-grid-wide{grid-template-columns:repeat(2,minmax(0,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}}.module-toolbar,.module-toolbar-filters{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;display:flex}.module-toolbar .ui-search-input,.module-toolbar-filters .ui-search-input{width:min(100%,520px)}.module-filters{flex-wrap:wrap;gap:10px;display:flex}.module-filters label{min-width:170px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);flex-direction:column;gap:7px;font-weight:600;display:flex}.module-filters select{border:1px solid var(--primate-foundation-400);min-height:42px;color:var(--primate-foundation-950);background-color:var(--primate-color-white);background-image:linear-gradient(45deg, transparent 50%, var(--primate-foundation-600) 50%), linear-gradient(135deg, var(--primate-foundation-600) 50%, transparent 50%);appearance:none;font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);background-position:calc(100% - 18px) 18px,calc(100% - 13px) 18px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:9px;outline:none;padding:0 42px 0 13px}.module-filters select:focus{border-color:var(--primate-info);box-shadow:0 0 0 3px rgb(var(--primate-info-rgb) / .16)}.module-tabs{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-200);border-radius:11px;gap:4px;margin:0 0 22px;padding:4px;display:inline-flex}.module-tabs button{min-height:38px;color:var(--primate-foundation-600);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);background:0 0;border:0;border-radius:8px;padding:0 16px;font-weight:600}.module-tabs button:hover,.module-tabs button:focus-visible{color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .06)}.module-tabs .module-tab-active{color:var(--primate-foundation-950);background:var(--primate-color-white);box-shadow:0 2px 8px rgb(var(--primate-foundation-950-rgb) / .08)}.module-table-scroll{overflow-x:auto}.module-table{border-collapse:collapse;width:100%;min-width:1080px}.module-table th,.module-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);text-align:left;vertical-align:middle;padding:14px 12px}.module-table th{color:var(--primate-foundation-600);background:var(--primate-foundation-100);font-size:var(--primate-font-size-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.module-table td strong,.module-table td small{display:block}.module-table td strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm)}.module-table td small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);margin-top:4px}.technical-value{overflow-wrap:anywhere;color:var(--primate-foundation-600);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:var(--primate-font-size-xs)}.detail-drawer-body{padding:28px;overflow-y:auto}.detail-badges{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.detail-grid>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;min-width:0;padding:14px}.detail-grid .detail-wide{grid-column:1/-1}.detail-grid dt{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-weight:700}.detail-grid dd{overflow-wrap:anywhere;color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);margin:0;line-height:1.6}.detail-grid pre{white-space:pre-wrap;max-height:220px;font-size:var(--primate-font-size-xs);margin:0;overflow:auto}.detail-switches{gap:10px;margin-top:16px;display:grid}.detail-switches .ui-switch-field{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;padding:14px}.detail-map-section{margin-top:16px}.attendance-evidence-section{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:12px;gap:14px;margin-top:16px;padding:16px;display:grid}.attendance-evidence-heading{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.attendance-evidence-heading>div{min-width:0}.attendance-evidence-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);margin:0}.attendance-evidence-heading p,.attendance-evidence-preview figcaption{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);margin:4px 0 0;line-height:1.55}.attendance-evidence-heading .ui-button{flex:none;min-height:36px;margin-left:auto;padding:0 14px}.attendance-evidence-icon{border:1px solid var(--primate-primary-100);background:var(--primate-primary-50);width:36px;height:36px;color:var(--primate-primary-600);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.attendance-evidence-preview{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:10px;margin:0;overflow:hidden}.attendance-evidence-preview img{background:var(--primate-foundation-950);object-fit:contain;width:100%;max-height:360px;display:block}.attendance-evidence-preview figcaption{margin:0;padding:10px 12px}.attendance-evidence-error{color:var(--primate-error);font-size:var(--primate-font-size-sm);margin:0;line-height:1.5}.detail-related-section{margin-top:22px}.detail-related-section h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-lg);margin:0 0 12px}.detail-related-section>p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm)}.detail-related-item{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:10px;padding:14px}.detail-related-item+.detail-related-item{margin-top:9px}.detail-related-item>div{align-items:center;gap:8px;display:flex}.detail-related-item p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:9px 0;line-height:1.6}.detail-related-item small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs)}.employee-access-panel,.employee-security-panel{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);border-radius:12px;gap:16px;padding:16px;display:grid}.employee-access-heading{display:block}.employee-access-heading span{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.employee-access-heading h3{color:var(--primate-foundation-950);font-size:var(--primate-font-size-md);margin:6px 0 0}.employee-access-heading p,.employee-access-note{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:7px 0 0;line-height:1.6}.employee-access-badges{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:7px;display:flex}.employee-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.employee-access-grid>div{border:1px solid var(--primate-foundation-300);background:var(--primate-foundation-100);border-radius:10px;padding:11px 12px}.employee-access-grid dt{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.employee-access-grid dd{overflow-wrap:anywhere;color:var(--primate-foundation-800);font-size:var(--primate-font-size-xs);margin:5px 0 0}.employee-access-actions{gap:14px;display:grid}.employee-access-button-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.employee-access-button-grid .ui-button{justify-content:center;min-height:42px}.restricted-page,.not-found-page{place-items:center;min-height:calc(100vh - 78px);padding:32px;display:grid}.restricted-card,.not-found-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,560px);box-shadow:0 18px 48px rgb(var(--primate-foundation-950-rgb) / .08);text-align:center;border-radius:16px;padding:42px}.restricted-icon,.not-found-icon{width:52px;height:52px;color:var(--primate-primary-500);background:rgb(var(--primate-primary-500-rgb) / .08);border-radius:13px;place-items:center;margin:0 auto 18px;display:grid}.not-found-code{color:var(--primate-foundation-300);font-size:var(--primate-font-size-display-2xl);margin-bottom:14px;font-weight:700;line-height:1;display:block}.restricted-card h1,.not-found-card h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-5xl);margin:8px 0 12px}.restricted-card>p:not(.eyebrow),.not-found-card>p:not(.eyebrow){color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0 auto 24px;line-height:1.7}.not-found-page-authenticated{background:var(--primate-surface-gray);min-height:calc(100dvh - 78px);padding:clamp(40px,6vw,84px)}.not-found-auth-card{grid-template-columns:minmax(0,1fr) minmax(320px,380px);align-items:center;gap:clamp(56px,7vw,104px);width:min(100%,1040px);min-height:400px;display:grid}.not-found-auth-visual{border:1px solid var(--primate-border-subtle);width:100%;min-height:360px;color:var(--primate-foundation-950);background:radial-gradient(circle at 12% 90%, rgb(var(--primate-primary-500-rgb) / .1), transparent 36%), var(--primate-color-white);box-shadow:0 18px 48px rgb(var(--primate-foundation-950-rgb) / .06);border-radius:22px;order:2;align-content:center;justify-items:start;padding:48px;display:grid;position:relative;overflow:hidden}.not-found-auth-visual:before{opacity:.34;background-image:linear-gradient(rgb(var(--primate-foundation-300-rgb) / .3) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--primate-foundation-300-rgb) / .3) 1px, transparent 1px);content:"";background-size:48px 48px;position:absolute;inset:0}.not-found-auth-visual:after{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);content:"";border-radius:50%;width:310px;height:310px;position:absolute;bottom:-130px;right:-110px}.not-found-auth-visual-label{z-index:1;color:var(--primate-primary-700);font-size:var(--primate-font-size-xs);letter-spacing:.2em;margin-bottom:12px;font-weight:700;position:relative}.not-found-auth-visual .not-found-code{z-index:1;color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-display-xl), 8vw, var(--primate-font-size-display-hero));letter-spacing:-.06em;margin:0 0 30px;line-height:.9;position:relative}.not-found-auth-route{z-index:1;justify-content:space-between;align-items:center;width:min(100%,210px);margin-bottom:28px;display:flex;position:relative}.not-found-auth-route:before{background:var(--primate-foundation-300);content:"";height:1px;position:absolute;left:6px;right:6px}.not-found-auth-route>span{border:2px solid var(--primate-color-white);background:var(--primate-logo-accent);width:10px;height:10px;box-shadow:0 0 0 4px rgb(var(--primate-primary-500-rgb) / .18);border-radius:50%;position:relative}.not-found-auth-route>span:nth-child(2){background:var(--primate-foundation-400);box-shadow:none}.not-found-auth-destination{z-index:1;color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);align-items:center;gap:12px;font-weight:600;display:flex;position:relative}.not-found-auth-destination .not-found-icon{width:42px;height:42px;color:var(--primate-logo-accent);background:rgb(var(--primate-primary-500-rgb) / .16);margin:0}.not-found-auth-copy{order:1;align-self:center;padding:0}.not-found-auth-copy h1{max-width:520px;color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-8xl), 3.2vw, var(--primate-font-size-10xl));letter-spacing:-.045em;margin:12px 0 18px;line-height:1.08}.not-found-auth-copy>p:not(.eyebrow,.not-found-auth-guidance){max-width:520px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-lg);margin:0 0 30px;line-height:1.7}.not-found-actions{flex-wrap:wrap;gap:10px;display:flex}.not-found-actions .ui-button{justify-content:center;min-height:48px;padding-left:20px;padding-right:20px;text-decoration:none}.not-found-page-public{place-items:initial;background:var(--primate-surface-gray);grid-template-columns:minmax(390px,42%) minmax(0,1fr);min-height:100dvh;padding:0;display:grid;position:relative;overflow:hidden}.not-found-public-aside{min-height:100dvh;color:var(--primate-color-white);background:radial-gradient(circle at 18% 82%, rgb(var(--primate-primary-500-rgb) / .24), transparent 30%), linear-gradient(150deg, var(--primate-foundation-950), var(--primate-foundation-900));flex-direction:column;padding:clamp(36px,5vw,72px);display:flex;position:relative;overflow:hidden}.not-found-public-aside:before{opacity:.12;background-image:linear-gradient(rgb(var(--primate-white-rgb) / .18) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--primate-white-rgb) / .18) 1px, transparent 1px);content:"";background-size:58px 58px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 35% 78%,#0000);mask-image:linear-gradient(#0000,#000 35% 78%,#0000)}.not-found-public-aside:after{border:1px solid rgb(var(--primate-white-rgb) / .13);content:"";border-radius:50%;width:430px;height:430px;position:absolute;bottom:-130px;right:-150px}.not-found-public-brand{z-index:1;align-items:center;display:flex;position:relative}.not-found-public-brand .brand-logo{object-fit:contain;object-position:left center;width:min(100%,210px);max-height:48px}.not-found-public-aside-copy{z-index:1;width:min(100%,560px);margin:auto 0;position:relative}.not-found-public-index{align-items:center;gap:18px;margin-bottom:32px;display:flex}.not-found-public-index strong{color:rgb(var(--primate-white-rgb) / .18);font-size:var(--primate-font-size-display-hero);letter-spacing:-.06em;line-height:.9}.not-found-public-index>span{background:rgb(var(--primate-white-rgb) / .26);width:64px;height:1px}.not-found-public-index small{color:var(--primate-logo-accent);font-size:var(--primate-font-size-xs);letter-spacing:.18em;font-weight:700}.not-found-public-aside-copy .eyebrow{color:var(--primate-logo-accent);margin-bottom:16px}.not-found-public-aside-copy h2{max-width:520px;color:var(--primate-color-white);font-size:clamp(var(--primate-font-size-7xl), 3.2vw, var(--primate-font-size-display-xs));letter-spacing:-.045em;margin:0 0 20px;line-height:1.08}.not-found-public-aside-copy>p:last-child{max-width:510px;color:rgb(var(--primate-white-rgb) / .62);font-size:var(--primate-font-size-md);margin:0;line-height:1.75}.not-found-public-aside-footer{z-index:1;color:rgb(var(--primate-white-rgb) / .48);font-size:var(--primate-font-size-sm);align-items:center;gap:10px;font-weight:600;display:flex;position:relative}.not-found-public-aside-footer>span{background:var(--primate-logo-accent);width:8px;height:8px;box-shadow:0 0 0 4px rgb(var(--primate-primary-500-rgb) / .18);border-radius:50%}.not-found-public-content{background:radial-gradient(circle at 88% 12%, rgb(var(--primate-primary-500-rgb) / .08), transparent 24%), var(--primate-surface-gray);place-items:center;min-width:0;min-height:100dvh;padding:clamp(44px,7vw,112px);display:grid;position:relative}.not-found-public-content:before{border:1px solid rgb(var(--primate-primary-500-rgb) / .12);content:"";border-radius:50%;width:170px;height:170px;position:absolute;top:clamp(30px,6vw,90px);right:clamp(30px,6vw,90px)}.not-found-public-content-inner{z-index:1;width:min(100%,620px);position:relative}.not-found-public-status{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:40px;font-weight:700;display:flex}.not-found-public-status .not-found-icon{border:1px solid rgb(var(--primate-primary-500-rgb) / .14);width:50px;height:50px;margin:0}.not-found-public-content .eyebrow{margin-bottom:18px}.not-found-public-content h1{max-width:620px;color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-10xl), 4.2vw, var(--primate-font-size-display-lg));letter-spacing:-.055em;margin:0 0 22px;line-height:1.04}.not-found-public-description{max-width:550px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-lg);margin:0;line-height:1.7}.not-found-public-actions{flex-wrap:wrap;gap:10px;margin-top:34px;display:flex}.not-found-public-actions .ui-button{justify-content:center;min-height:48px;padding-left:20px;padding-right:20px;text-decoration:none}.not-found-public-reassurance{border-top:1px solid var(--primate-border-subtle);max-width:550px;color:var(--primate-primary-700);align-items:flex-start;gap:14px;margin-top:48px;padding-top:24px;display:flex}.not-found-public-reassurance>svg{flex:none;margin-top:2px}.not-found-public-reassurance>div{gap:4px;display:grid}.not-found-public-reassurance strong{color:var(--primate-foundation-900);font-size:var(--primate-font-size-md)}.not-found-public-reassurance span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);line-height:1.6}@media (width<=760px){.module-toolbar,.module-toolbar-filters{flex-direction:column;align-items:stretch}.module-toolbar .ui-search-input,.module-toolbar-filters .ui-search-input,.module-filters label{width:100%;min-width:0}.ui-pagination{flex-direction:column;align-items:stretch;min-height:auto;padding:14px 16px}.ui-pagination-controls{flex-wrap:wrap;align-items:stretch}.ui-pagination-controls>button,.ui-pagination-size{flex:1}.module-tabs{display:flex}.module-tabs button{flex:1}.detail-grid,.employee-access-grid{grid-template-columns:1fr}.employee-access-heading{flex-direction:column}.employee-access-badges{justify-content:flex-start}.employee-access-button-grid{grid-template-columns:1fr}.detail-grid .detail-wide{grid-column:auto}.restricted-page,.not-found-page{padding:20px}.restricted-card,.not-found-card{padding:30px 22px}.not-found-page-authenticated{place-items:start center;padding:20px}.not-found-auth-card{grid-template-columns:1fr;gap:34px;min-height:0}.not-found-auth-visual{min-height:220px;padding:30px}.not-found-auth-visual .not-found-code{font-size:var(--primate-font-size-display-xl);margin-bottom:22px}.not-found-auth-route{display:none}.not-found-auth-copy{padding:0}.not-found-auth-copy h1,.not-found-public-content h1{font-size:var(--primate-font-size-5xl)}.not-found-actions{flex-direction:column;align-items:stretch}.not-found-page-public{grid-template-rows:auto 1fr;grid-template-columns:1fr;padding:0;overflow-y:auto}.not-found-public-aside{min-height:290px;padding:24px}.not-found-public-brand .brand-logo{width:164px;max-height:40px}.not-found-public-aside-copy{margin:58px 0 0}.not-found-public-index,.not-found-public-aside-footer,.not-found-public-aside-copy>p:last-child{display:none}.not-found-public-aside-copy h2{max-width:330px;font-size:var(--primate-font-size-6xl);margin-bottom:0}.not-found-public-content{place-items:start center;min-height:auto;padding:44px 24px 56px}.not-found-public-content:before{width:130px;height:130px;top:24px;right:-48px}.not-found-public-status{margin-bottom:30px}.not-found-public-content .eyebrow{margin-bottom:14px}.not-found-public-description{font-size:var(--primate-font-size-md)}.not-found-public-actions{flex-direction:column;align-items:stretch;margin-top:28px}.not-found-public-actions .ui-button{width:100%}.not-found-public-reassurance{margin-top:38px}}.skip-link{z-index:10000;color:var(--primate-color-white);background:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);border-radius:8px;padding:11px 16px;font-weight:700;transition:transform .14s;position:fixed;top:12px;left:12px;transform:translateY(-180%)}.skip-link:focus{outline:3px solid var(--primate-accent-500,#ffc72c);outline-offset:2px;transform:translateY(0)}[data-route-focus-target=true]:focus{outline:none}.network-status-banner{z-index:900;border:1px solid var(--primate-foundation-400);max-width:min(100vw - 32px,680px);min-height:42px;color:var(--primate-foundation-950);background:var(--primate-color-white);box-shadow:0 10px 30px rgb(var(--primate-foundation-950-rgb) / .15);font-size:var(--primate-font-size-sm);border-radius:999px;align-items:center;gap:9px;padding:10px 16px;font-weight:600;line-height:1.45;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.network-status-dot{background:var(--primate-warning,#d97706);border-radius:50%;flex:none;width:8px;height:8px}.network-status-restored .network-status-dot{background:var(--primate-success,#22c55e)}.global-error-page,.legal-page{background:var(--primate-surface-page);min-height:100dvh}.global-error-page{place-items:center;padding:32px;display:grid}.global-error-panel{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,580px);box-shadow:0 22px 64px rgb(var(--primate-foundation-950-rgb) / .1);text-align:center;border-radius:18px;padding:42px}.global-error-mark{width:52px;height:52px;color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .09);font-size:var(--primate-font-size-4xl);border-radius:14px;place-items:center;margin:0 auto 18px;font-weight:700;display:grid}.global-error-panel h1{color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-4xl), 4vw, var(--primate-font-size-8xl));margin:8px 0 12px;line-height:1.2}.global-error-panel h1:focus{outline:none}.global-error-panel>p:not(.eyebrow){color:var(--primate-foundation-600);font-size:var(--primate-font-size-sm);margin:0 auto 12px;line-height:1.7}.global-error-panel small{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);display:block}.global-error-actions{justify-content:center;gap:10px;margin-top:24px;display:flex}.legal-page{padding:48px 24px}.legal-document{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);width:min(100%,860px);box-shadow:0 18px 52px rgb(var(--primate-foundation-950-rgb) / .07);border-radius:18px;margin:0 auto;padding:clamp(28px,6vw,64px)}.legal-brand{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:.16em;margin-bottom:38px;font-weight:700;text-decoration:none;display:inline-block}.legal-header h1{color:var(--primate-foundation-950);font-size:clamp(var(--primate-font-size-7xl), 5vw, var(--primate-font-size-display-md));margin:8px 0 14px;line-height:1.12}.legal-header>p:not(.eyebrow),.legal-sections p{color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);line-height:1.8}.legal-review-notice{color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);background:#ffc72c1a;border:1px solid #ffc72c8c;border-radius:10px;margin-top:24px;padding:16px 18px;font-weight:600;line-height:1.6}.legal-sections{gap:26px;margin-top:38px;display:grid}.legal-sections section{border-top:1px solid var(--primate-foundation-300);padding-top:24px}.legal-sections h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);margin:0 0 8px}.legal-sections p{margin:0}.legal-footer{margin-top:38px}.login-terms a{color:inherit;text-underline-offset:2px;font-weight:600}@media (width<=640px){.global-error-page,.legal-page{padding:20px}.global-error-panel{padding:32px 22px}.global-error-actions{flex-direction:column-reverse;align-items:stretch}.network-status-banner{border-radius:12px;top:8px}}@media (prefers-reduced-motion:reduce){.skip-link{transition:none}}@media print{.legal-page{background:var(--primate-color-white);padding:0}.legal-document{width:100%;box-shadow:none;border:0;padding:0}.legal-brand,.legal-footer{display:none}}.devices-page{width:min(100% - 64px,1240px);margin:0 auto;padding:48px 0 64px}.audit-page{width:min(100% - 64px,1440px);margin:0 auto;padding:48px 0 64px}.devices-page-heading,.audit-page-heading{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.devices-page-heading h1,.audit-page-heading h1{color:var(--primate-foundation-950);font-size:var(--primate-font-size-10xl);letter-spacing:-.04em;margin:0 0 8px;line-height:1.2}.devices-page-heading>div>p:last-child,.audit-page-heading>div>p:last-child{max-width:650px;color:var(--primate-foundation-700);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.devices-directory-card,.audit-directory-card{border:1px solid var(--primate-foundation-300);background:var(--primate-color-white);box-shadow:0 16px 40px rgb(var(--primate-foundation-950-rgb) / .04);border-radius:14px;margin-top:36px;overflow:hidden}.devices-toolbar,.audit-toolbar{border-bottom:1px solid var(--primate-foundation-300);justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:16px 24px;display:flex}.devices-search,.audit-search{width:min(100%,430px);position:relative}.devices-search input,.audit-search input{border:1px solid var(--primate-foundation-400);width:100%;min-height:44px;color:var(--primate-foundation-950);background:var(--primate-foundation-100);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-md);border-radius:9px;outline:none;padding:0 16px 0 42px}.devices-search input::placeholder,.audit-search input::placeholder{color:var(--primate-foundation-500)}.devices-search input:focus,.audit-search input:focus{border-color:var(--primate-primary-500);background:var(--primate-color-white);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .1)}.devices-search input:disabled,.audit-search input:disabled{cursor:not-allowed;opacity:.65}.audit-filters{align-items:center;gap:10px;display:flex}.audit-filters label{flex-direction:column;gap:6px;display:flex}.audit-filters label>span{color:var(--primate-foundation-600);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.audit-filters select{border:1px solid var(--primate-foundation-400);min-width:150px;min-height:44px;color:var(--primate-foundation-950);background-color:var(--primate-color-white);font-family:Montserrat,sans-serif;font-size:var(--primate-font-size-sm);appearance:none;background-image:none;background-position:right 15px center;background-repeat:no-repeat;background-size:14px;border-radius:10px;outline:none;padding:0 46px 0 14px;font-weight:500}.audit-filters select:hover:not(:disabled){border-color:var(--primate-foundation-400);background-color:var(--primate-foundation-100)}.audit-filters select:focus-visible{border-color:var(--primate-primary-500);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .12)}.devices-table-scroll,.audit-table-scroll{overflow-x:auto}.devices-table,.audit-table{border-collapse:collapse;text-align:left;width:100%}.devices-table{min-width:1260px}.audit-table{min-width:1240px}.devices-table th,.audit-table th{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-600);background:var(--primate-foundation-200);font-size:var(--primate-font-size-xs);letter-spacing:.09em;text-transform:uppercase;padding:13px 18px;font-weight:700}.devices-table td,.audit-table td{border-bottom:1px solid var(--primate-foundation-300);color:var(--primate-foundation-800);font-size:var(--primate-font-size-sm);vertical-align:middle;padding:17px 18px}.devices-table tbody tr,.audit-table tbody tr{transition:background .14s}.devices-table tbody tr:hover,.audit-table tbody tr:hover{background:rgb(var(--primate-foundation-200-rgb) / .72)}.devices-table tbody tr:last-child td,.audit-table tbody tr:last-child td{border-bottom:0}.devices-table td strong,.devices-table td small,.audit-table td strong,.audit-table td small{display:block}.devices-table td strong,.audit-table td strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.devices-table td small,.audit-table td small{max-width:220px;color:var(--primate-foundation-500);font-size:var(--primate-font-size-xs);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;overflow:hidden}.devices-table .technical-value{max-width:230px}.table-detail-action,.device-status-action{white-space:nowrap;border-radius:8px;min-height:36px;padding:0 12px;line-height:1}.table-detail-action{min-width:112px}.table-detail-action>svg{color:var(--primate-primary-600);flex:none}.device-status-action{min-width:108px}.device-actions-cell{flex-direction:column;align-items:stretch;gap:8px;min-width:108px;display:flex}.device-actions-cell .device-status-action{width:100%}.table-action-button.device-status-action-block:hover:not(:disabled),.table-action-button.device-status-action-block:focus-visible{border-color:rgb(var(--primate-error-rgb) / .28);color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .06)}.table-action-button.device-status-action-reactivate:hover:not(:disabled),.table-action-button.device-status-action-reactivate:focus-visible{border-color:rgb(var(--primate-success-rgb) / .28);color:var(--primate-success);background:rgb(var(--primate-success-rgb) / .07)}.table-action-button.device-status-action-revoke:hover:not(:disabled),.table-action-button.device-status-action-revoke:focus-visible{border-color:rgb(var(--primate-error-rgb) / .28);color:var(--primate-error);background:rgb(var(--primate-error-rgb) / .06)}.audit-table td:nth-child(6){text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.devices-state,.audit-state{text-align:left;justify-content:center;align-items:center;gap:20px;min-height:340px;padding:48px 24px;display:flex}.devices-state .spinner,.audit-state .spinner{flex:none}.devices-state h2,.audit-state h2{color:var(--primate-foundation-950);font-size:var(--primate-font-size-xl);letter-spacing:-.02em;margin:0 0 7px}.devices-state p,.audit-state p{max-width:440px;color:var(--primate-foundation-600);font-size:var(--primate-font-size-md);margin:0;line-height:1.7}.devices-state button,.audit-state button{border:1px solid var(--primate-primary-500);min-height:36px;color:var(--primate-primary-500);background:var(--primate-color-white);font-size:var(--primate-font-size-sm);border-radius:7px;margin-top:16px;padding:0 14px;font-weight:600}.devices-state button:hover,.audit-state button:hover{color:var(--primate-color-white);background:var(--primate-primary-500)}.devices-state button:focus-visible,.audit-state button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .38);outline-offset:2px}.attendance-tabs{margin-top:24px;margin-bottom:0}.attendance-tabs+.ui-kpi-grid{margin-top:20px}.attendance-records-table{min-width:1380px}.attendance-records-table td:first-child{min-width:190px}.attendance-records-table td:first-child strong,.attendance-records-table td:first-child small{display:block}.attendance-records-table td:first-child strong{color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);font-weight:600}.attendance-records-table td:first-child small{color:var(--primate-primary-500);font-size:var(--primate-font-size-xs);letter-spacing:.07em;margin-top:5px;font-weight:700}.detail-drawer .entity-drawer-footer{margin-top:auto}@media (width<=1024px){.devices-page,.audit-page{width:min(100% - 40px,1240px);padding:40px 0 48px}.audit-toolbar{flex-direction:column;align-items:stretch}.devices-search,.audit-search,.audit-filters{width:100%}.audit-filters label{flex:1}.audit-filters select{width:100%}}@media (width<=560px){.devices-page,.audit-page{width:min(100% - 32px,1240px);padding-top:32px}.devices-page-heading,.audit-page-heading{flex-direction:column;align-items:flex-start;gap:16px}.devices-page-heading h1,.audit-page-heading h1{font-size:var(--primate-font-size-7xl)}.devices-directory-card,.audit-directory-card{margin-top:28px}.devices-toolbar,.audit-toolbar{padding:14px 16px}.devices-search{width:100%}.devices-search input,.audit-search input{font-size:var(--primate-font-size-sm)}.audit-filters{flex-direction:column}.devices-state,.audit-state{text-align:center;flex-direction:column;align-items:center;min-height:300px}}.admin-shell{--admin-sidebar-width:256px;grid-template-columns:var(--admin-sidebar-width) minmax(0, 1fr);transition:grid-template-columns .18s;overflow-x:hidden}.admin-shell-collapsed{--admin-sidebar-width:88px}.admin-sidebar-desktop{position:sticky}.admin-sidebar-collapsed{padding:24px 12px}.admin-sidebar-collapsed .sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.admin-sidebar-collapsed .sidebar-brand-text,.admin-sidebar-collapsed .sidebar-section-label,.admin-sidebar-collapsed .sidebar-link-label,.admin-sidebar-collapsed .sidebar-footer p{display:none}.admin-sidebar-collapsed .sidebar-link{justify-content:center;padding:0}.admin-sidebar-collapsed .sidebar-footer{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapse-button,.sidebar-mobile-close,.header-menu-button{border:1px solid rgb(var(--primate-foundation-300-rgb) / .85);background:var(--primate-color-white);color:var(--primate-foundation-950);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:inline-flex}.sidebar-collapse-button:hover,.sidebar-mobile-close:hover,.header-menu-button:hover{border-color:rgb(var(--primate-primary-500-rgb) / .28);box-shadow:0 10px 24px rgb(var(--primate-foundation-950-rgb) / .12);transform:translateY(-1px)}.sidebar-collapse-button:focus-visible,.sidebar-mobile-close:focus-visible,.header-menu-button:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .34);outline-offset:2px}.sidebar-collapse-button{z-index:3;width:30px;height:30px;position:absolute;top:78px;right:-14px}.sidebar-mobile-close{width:36px;height:36px;color:var(--primate-color-white);border-color:rgb(var(--primate-white-rgb) / .16);background:rgb(var(--primate-white-rgb) / .08);margin-left:auto}.header-left{align-items:center;gap:14px;min-width:0;display:flex}.header-menu-button{flex:none;width:42px;height:42px;display:none}.environment-badge{min-height:26px;font-size:var(--primate-font-size-xs);letter-spacing:.11em;box-shadow:none;border-width:1px;gap:6px;padding:5px 9px}.environment-badge .ui-badge-dot{width:6px;height:6px}.environment-badge-local{border-color:rgb(var(--primate-info-rgb) / .24);background:rgb(var(--primate-info-rgb) / .1);color:var(--primate-foundation-900)}.environment-badge-staging{border-color:rgb(var(--primate-accent-yellow-rgb) / .38);background:rgb(var(--primate-accent-yellow-rgb) / .14);color:var(--primate-warning)}.environment-badge-production{border-color:rgb(var(--primate-success-rgb) / .22);background:rgb(var(--primate-success-rgb) / .1);color:var(--primate-success)}.mobile-sidebar-backdrop,.mobile-sidebar-drawer{display:none}.reports-page-heading{align-items:flex-start}.reports-page-heading .page-header-actions{align-self:center}.reports-filters,.reports-filters-grid,.reports-filters-actions{align-items:end}.reports-tabs{scrollbar-width:thin;overflow-x:auto}.reports-tabs .module-tab{white-space:nowrap}.module-toolbar,.module-filters,.attendance-filters,.alerts-filters,.devices-toolbar,.audit-toolbar,.audit-filters,.reports-filters,.reports-filters-grid,.reports-filters-actions{gap:12px}.module-toolbar input,.module-toolbar select,.module-filters input,.module-filters select,.attendance-filters input,.attendance-filters select,.alerts-filters input,.alerts-filters select,.devices-toolbar input,.devices-toolbar select,.audit-toolbar input,.audit-toolbar select,.audit-filters input,.audit-filters select,.reports-filters input,.reports-filters select,.reports-filters button,.reports-filters .ui-button,.module-toolbar button,.module-toolbar .ui-button,.attendance-filters button,.attendance-filters .ui-button,.alerts-filters button,.alerts-filters .ui-button,.devices-toolbar button,.devices-toolbar .ui-button,.audit-toolbar button,.audit-toolbar .ui-button{min-height:44px}@media (width<=1180px){.reports-filters{flex-direction:column;align-items:stretch}.reports-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.reports-filters-actions{justify-content:flex-start;width:100%}}@media (width<=900px){.admin-shell,.admin-shell-collapsed{--admin-sidebar-width:0;display:block}.admin-sidebar-desktop{display:none!important}.admin-main{min-height:100vh}.admin-header{min-height:68px;padding:0 20px;position:sticky;top:0}.header-menu-button{display:inline-flex}.header-context{display:flex}.mobile-sidebar-backdrop{z-index:70;background:rgb(var(--primate-foundation-950-rgb) / .48);opacity:0;pointer-events:none;transition:opacity .18s;display:block;position:fixed;inset:0}.mobile-sidebar-backdrop-open{opacity:1;pointer-events:auto}.mobile-sidebar-drawer{z-index:80;width:min(100vw - 48px,332px);transition:transform .22s;display:block;position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-105%)}.mobile-sidebar-drawer-open{transform:translate(0)}.admin-sidebar-mobile{border-right:1px solid rgb(var(--primate-white-rgb) / .08);width:100%;height:100%;min-height:100vh;box-shadow:26px 0 70px rgb(var(--primate-foundation-950-rgb) / .24);flex-direction:column;padding:24px 20px;position:static!important}.admin-sidebar-mobile .sidebar-brand{justify-content:flex-start;width:100%;padding:0 0 22px}.admin-sidebar-mobile .sidebar-brand .sidebar-brand-logo{object-fit:contain;object-position:left center;width:min(188px,100% - 52px);max-width:min(188px,100% - 52px);max-height:46px}.admin-sidebar-mobile .sidebar-brand-text,.admin-sidebar-mobile .sidebar-section-label,.admin-sidebar-mobile .sidebar-link-label,.admin-sidebar-mobile .sidebar-footer p{display:block!important}.admin-sidebar-mobile .sidebar-navigation{overscroll-behavior:contain;scrollbar-width:thin;width:100%;min-height:0;padding-right:4px;overflow-y:auto}.admin-sidebar-mobile .sidebar-navigation-section+.sidebar-navigation-section{margin-top:18px}.admin-sidebar-mobile .sidebar-navigation ul{flex-direction:column;justify-content:flex-start;width:100%}.admin-sidebar-mobile .sidebar-navigation li{display:list-item!important}.admin-sidebar-mobile .sidebar-link{justify-content:flex-start;padding:0 14px}.admin-sidebar-mobile .sidebar-footer{justify-content:flex-start;padding:18px 4px 0;display:flex!important}.reports-page,.employees-page,.locations-page,.geofences-page,.attendance-page,.alerts-page,.devices-page,.audit-page,.settings-page{width:min(100% - 40px,1240px)}.reports-page-heading{flex-direction:column;align-items:stretch;gap:18px}.reports-page-heading .page-header-actions{align-self:flex-start}.module-toolbar,.attendance-filters,.alerts-filters,.devices-toolbar,.audit-toolbar{flex-direction:column;align-items:stretch}.module-toolbar>*,.attendance-filters>*,.alerts-filters>*,.devices-toolbar>*,.audit-toolbar>*,.audit-filters{width:100%}}@media (width<=700px){.header-context,.user-summary{display:none}.environment-badge{text-overflow:ellipsis;max-width:112px;overflow:hidden}.reports-filters-grid{grid-template-columns:1fr}.reports-filters-actions{flex-direction:column}.reports-filters-actions button,.reports-filters-actions .ui-button{width:100%}}@media (width<=560px){.admin-shell{display:block}.admin-sidebar-desktop{display:none!important}.admin-header{min-height:64px;padding:0 16px}.header-user-area{gap:8px}.header-signout-button{min-height:36px;font-size:var(--primate-font-size-sm);padding:0 11px}.environment-badge{font-size:var(--primate-font-size-xs);padding:5px 8px}.reports-page,.employees-page,.locations-page,.geofences-page,.attendance-page,.alerts-page,.devices-page,.audit-page,.settings-page{width:min(100% - 32px,1240px)}.reports-page-heading h1{font-size:var(--primate-font-size-8xl)}}@media (prefers-reduced-motion:reduce){.admin-shell,.admin-sidebar,.sidebar-collapse-button,.sidebar-mobile-close,.header-menu-button,.mobile-sidebar-backdrop,.mobile-sidebar-drawer{transition:none}}.sidebar-brand-text{gap:2px;min-width:0;line-height:1.1;display:grid}.sidebar-brand-text strong,.sidebar-brand-text span{display:block}.sidebar-brand-text span{color:rgb(var(--primate-white-rgb) / .56);font-size:var(--primate-font-size-xs);letter-spacing:0;white-space:nowrap;font-weight:600}.sidebar-environment{border:1px solid rgb(var(--primate-white-rgb) / .09);background:rgb(var(--primate-white-rgb) / .045);min-height:38px;color:rgb(var(--primate-white-rgb) / .76);border-radius:10px;align-items:center;gap:10px;margin:0 2px 12px;padding:8px 10px;display:flex}.admin-sidebar:not(.admin-sidebar-collapsed) .sidebar-brand{padding-bottom:18px}.admin-sidebar:not(.admin-sidebar-collapsed) .sidebar-navigation{margin-top:24px}.sidebar-search{margin:18px 2px 0;position:relative}.sidebar-search .ui-search-input{width:100%;position:relative}.sidebar-search .search-mark{z-index:1;color:rgb(var(--primate-white-rgb) / .52);font-size:var(--primate-font-size-lg);pointer-events:none;line-height:1;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.sidebar-search input{border:1px solid rgb(var(--primate-white-rgb) / .13);width:100%;min-height:40px;color:var(--primate-color-white);background:rgb(var(--primate-white-rgb) / .06);font-size:var(--primate-font-size-sm);border-radius:9px;outline:none;padding:0 12px 0 34px}.sidebar-search input:hover:not(:focus):not(:disabled){border-color:rgb(var(--primate-primary-100-rgb) / .42);background:rgb(var(--primate-white-rgb) / .08)}.sidebar-search input::placeholder{color:rgb(var(--primate-white-rgb) / .46)}.sidebar-search input:focus{border-color:var(--primate-primary-500);background:rgb(var(--primate-white-rgb) / .1);box-shadow:0 0 0 3px rgb(var(--primate-primary-500-rgb) / .2)}.sidebar-search .search-clear{color:rgb(var(--primate-white-rgb) / .56);right:8px}.sidebar-search .search-clear:hover:not(:disabled){border-color:rgb(var(--primate-primary-100-rgb) / .34);color:var(--primate-color-white);background:rgb(var(--primate-primary-500-rgb) / .22)}.sidebar-search .search-clear:focus-visible{outline-color:rgb(var(--primate-primary-100-rgb) / .7)}.sidebar-section-toggle{cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.sidebar-section-toggle:hover{color:rgb(var(--primate-white-rgb) / .7)}.sidebar-section-toggle:focus-visible{outline:3px solid rgb(var(--primate-info-rgb) / .34);outline-offset:2px;border-radius:6px}.sidebar-section-chevron{opacity:.58;flex:none;transition:transform .16s,opacity .16s}.sidebar-section-chevron-open{opacity:.9;transform:rotate(90deg)}.sidebar-navigation ul[hidden]{display:none!important}.admin-sidebar-desktop .sidebar-navigation{padding-right:4px}.sidebar-section-toggle.sidebar-section-label{width:calc(100% - 4px);min-height:24px;margin-right:4px;padding-right:8px}.sidebar-search-empty{color:rgb(var(--primate-white-rgb) / .56);font-size:var(--primate-font-size-sm);margin:20px 12px;line-height:1.5}.admin-sidebar-collapsed .sidebar-search,.admin-sidebar-collapsed .sidebar-section-toggle{display:none}.admin-sidebar:not(.admin-sidebar-collapsed) .sidebar-section-label{margin-bottom:10px}.sidebar-environment>span{background:var(--primate-info);width:8px;height:8px;box-shadow:0 0 0 4px rgb(var(--primate-info-rgb) / .12);border-radius:999px;flex:none}.sidebar-environment-staging>span{background:var(--primate-accent-yellow);box-shadow:0 0 0 4px rgb(var(--primate-accent-yellow-rgb) / .13)}.sidebar-environment-production>span{background:var(--primate-success);box-shadow:0 0 0 4px rgb(var(--primate-success-rgb) / .12)}.sidebar-environment-copy{gap:1px;min-width:0;display:grid}.sidebar-environment-copy strong{color:var(--primate-color-white);font-size:var(--primate-font-size-xs);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.sidebar-environment-copy small{color:rgb(var(--primate-white-rgb) / .48);font-size:var(--primate-font-size-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.admin-sidebar-mobile .sidebar-brand-text{flex:1}.admin-sidebar-mobile .sidebar-brand-text span{margin-top:2px}.admin-sidebar-mobile .sidebar-brand{padding-bottom:16px}.admin-sidebar-mobile .sidebar-navigation{margin-top:24px}.admin-sidebar-mobile .sidebar-search{margin-top:20px}.sidebar-mobile-close{width:36px;height:36px;color:rgb(var(--primate-white-rgb) / .86);border-color:rgb(var(--primate-white-rgb) / .12);background:rgb(var(--primate-white-rgb) / .055);box-shadow:none;border-radius:10px}.sidebar-mobile-close:hover{color:var(--primate-color-white);border-color:rgb(var(--primate-info-rgb) / .26);background:rgb(var(--primate-info-rgb) / .12);box-shadow:none}.sidebar-environment-footer{align-items:center;gap:9px;min-height:42px}.sidebar-environment-footer .sidebar-accent{background:var(--primate-info);width:8px;height:8px;box-shadow:0 0 0 4px rgb(var(--primate-info-rgb) / .12);border-radius:999px;flex:none}.sidebar-environment-footer.sidebar-environment-staging .sidebar-accent{background:var(--primate-accent-yellow);box-shadow:0 0 0 4px rgb(var(--primate-accent-yellow-rgb) / .13)}.sidebar-environment-footer.sidebar-environment-production .sidebar-accent{background:var(--primate-success);box-shadow:0 0 0 4px rgb(var(--primate-success-rgb) / .12)}.sidebar-environment-footer p{gap:1px;min-width:0;margin:0;display:grid}.sidebar-environment-footer strong{color:rgb(var(--primate-white-rgb) / .78);font-size:var(--primate-font-size-xs);letter-spacing:.08em;font-weight:700}.sidebar-environment-footer small{color:rgb(var(--primate-white-rgb) / .44);font-size:var(--primate-font-size-xs);font-weight:600}.admin-sidebar-collapsed .sidebar-environment-footer{justify-content:center;padding-left:0;padding-right:0}.admin-sidebar-collapsed .sidebar-environment-footer p{display:none}.attendance-record-statuses{flex-wrap:wrap;gap:.4rem;display:flex}.map-picker-vertex-marker{background:0 0;border:0;justify-content:center;align-items:center;display:flex}.map-picker-vertex-marker>span{background:var(--primate-color-white);border:2px solid var(--primate-primary-500);box-shadow:0 4px 12px rgb(var(--primate-foundation-950-rgb) / .18);color:var(--primate-foundation-950);font-size:var(--primate-font-size-sm);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-weight:700;display:flex}.map-picker-vertex-marker-selected>span{background:var(--primate-primary-500);border-color:var(--primate-color-white);box-shadow:0 0 0 4px rgb(var(--primate-primary-500-rgb) / .24), 0 6px 16px rgb(var(--primate-foundation-950-rgb) / .24);color:var(--primate-color-white);transform:scale(1.12)}.polygon-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.polygon-editor-actions .polygon-editor-delete-button{color:var(--primate-error)}.polygon-editor-error,.polygon-editor-help{font-size:var(--primate-font-size-md);margin:10px 0 0;line-height:1.55}.polygon-editor-error{color:var(--primate-error)}.polygon-editor-help{color:var(--primate-foundation-600)}@media (width<=640px){.polygon-editor-actions>button{flex:100%}}.admin-shell{height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.admin-shell:before{z-index:0;width:var(--admin-sidebar-width);background:var(--primate-foundation-950);content:"";pointer-events:none;position:absolute;inset:0 auto 0 0}.admin-sidebar-desktop{z-index:1;align-self:start;height:100dvh;min-height:100vh;max-height:100dvh;overflow:visible}.admin-sidebar-desktop .sidebar-navigation{overscroll-behavior:contain;scrollbar-color:rgb(var(--primate-white-rgb) / .3) transparent;scrollbar-gutter:stable;scrollbar-width:thin;flex:auto;min-width:0;min-height:0;overflow:hidden auto}.admin-sidebar-desktop .sidebar-navigation::-webkit-scrollbar{width:10px}.admin-sidebar-desktop .sidebar-navigation::-webkit-scrollbar-track{background:rgb(var(--primate-white-rgb) / .04);border-radius:999px}.admin-sidebar-desktop .sidebar-navigation::-webkit-scrollbar-thumb{background:rgb(var(--primate-white-rgb) / .3);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.admin-sidebar-desktop .sidebar-navigation::-webkit-scrollbar-thumb:hover{background:rgb(var(--primate-info-rgb) / .68);background-clip:padding-box}.admin-main{z-index:1;flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.admin-content{overscroll-behavior:contain;flex:auto;min-height:0;overflow:hidden auto}@media (width<=900px){.admin-shell{height:auto;min-height:100dvh;overflow:visible}.admin-shell:before{display:none}.admin-sidebar-desktop{height:auto;min-height:0;max-height:none;overflow:visible}.admin-main{height:auto;min-height:100vh;display:block;overflow:visible}.admin-content{overflow:visible}}