.dashboard-page{display:grid;gap:22px}
.dashboard-main-grid .vs-card{min-height:260px}
.dashboard-secondary-grid .vs-card{min-height:240px}
.dashboard-section{
  min-width:0;
  display:grid;
  gap:12px;
}
.dashboard-section-head{
  min-width:0;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
}
.dashboard-section-head span{
  color:var(--text-soft);
  font:700 12px/1 var(--mono);
  letter-spacing:.12em;
}
.dashboard-section-head p{
  margin:0;
  color:var(--text-muted);
  font-size:13px;
}
.dashboard-overview-grid,
.dashboard-attention-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.dashboard-attention-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.dashboard-tile{
  min-width:0;
  min-height:116px;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface);
  box-shadow:var(--shadow-card);
  overflow:hidden;
}
.dashboard-tile > a,
.dashboard-tile > div{
  min-height:116px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-content:start;
  gap:8px 10px;
  padding:16px;
  color:inherit;
  text-decoration:none;
}
.dashboard-tile-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  grid-row:1 / span 3;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
  color:var(--accent);
}
.dashboard-tile span:not(.dashboard-tile-icon){
  min-width:0;
  color:var(--text-muted);
  font-size:13px;
}
.dashboard-tile strong{
  display:block;
  color:var(--text);
  font-size:28px;
  line-height:1;
}
.dashboard-tile small{
  min-width:0;
  color:var(--success);
  font-size:12px;
}
.dashboard-attention-section{
  padding:16px;
  border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border));
  border-radius:var(--radius-lg);
  background:color-mix(in srgb, var(--warning-soft) 28%, var(--surface));
}
.dashboard-attention-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:14px;
  align-items:stretch;
}
.dashboard-attention-layout .dashboard-attention-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.dashboard-tile.attention{
  border-color:color-mix(in srgb, var(--warning) 24%, var(--border));
  background:var(--surface);
}
.dashboard-tile.attention .dashboard-tile-icon{
  color:var(--warning);
  background:color-mix(in srgb, var(--warning-soft) 46%, var(--surface));
}
.dashboard-today-grid,
.dashboard-ops-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.dashboard-list-card,
.dashboard-compact-card{min-width:0}
.dashboard-list-card .vs-card-header,
.dashboard-compact-card .vs-card-header,
.dashboard-quick-card .vs-card-header,
.dashboard-subscription-card .vs-card-header{
  margin-bottom:0;
}
.dashboard-people-list,
.dashboard-compact-list,
.dashboard-activity-timeline{
  min-width:0;
  display:grid;
}
.dashboard-person-row{
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--border);
  color:inherit;
  text-decoration:none;
}
.dashboard-person-row:last-child{border-bottom:0}
.dashboard-person-row .avatar{
  width:42px;
  height:42px;
  flex:0 0 42px;
}
.dashboard-person-row img.avatar{
  object-fit:cover;
}
.dashboard-person-row h3,
.dashboard-person-row p,
.dashboard-person-row small{
  margin:0;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-person-row p{color:var(--text-muted)}
.dashboard-person-row small{display:block;margin-top:3px;color:var(--text-soft)}
.dashboard-leave-types{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:4px;
}
.dashboard-leave-types span{
  padding:6px 9px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text-muted);
  font-size:12px;
}
.dashboard-compact-row,
.dashboard-activity-row{
  min-width:0;
  display:grid;
  align-items:center;
  gap:10px;
  padding:12px 0;
  border-bottom:1px solid var(--border);
  color:inherit;
  text-decoration:none;
}
.dashboard-compact-row{
  grid-template-columns:minmax(0,1fr) auto;
}
.dashboard-compact-row:last-child,
.dashboard-activity-row:last-child{border-bottom:0}
.dashboard-compact-row span,
.dashboard-compact-row small,
.dashboard-activity-row small{
  min-width:0;
  color:var(--text-muted);
}
.dashboard-compact-row strong{
  font-size:22px;
  line-height:1;
}
.dashboard-compact-row small{grid-column:1 / -1}
.dashboard-activity-card{min-height:0}
.dashboard-attention-activity{
  box-shadow:none;
  background:var(--surface);
}
.dashboard-attention-activity .vs-card-header{
  padding-top:14px;
  padding-bottom:14px;
}
.dashboard-attention-activity .dashboard-activity-row{
  padding:10px 0;
}
.dashboard-activity-row{
  grid-template-columns:48px minmax(0,1fr);
  align-items:start;
}
.dashboard-activity-row time{
  color:var(--text-soft);
  font:700 12px/1.4 var(--mono);
}
.dashboard-activity-row strong,
.dashboard-activity-row small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-quick-card .vs-card-footer{
  margin-top:0;
  justify-content:flex-start;
}
.dashboard-subscription-section{
  margin-top:4px;
}
.dashboard-subscription-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.dashboard-subscription-grid article{
  min-width:0;
  padding:12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.dashboard-subscription-grid span{
  display:block;
  color:var(--text-muted);
  font-size:12px;
}
.dashboard-subscription-grid strong{
  display:block;
  margin-top:4px;
  color:var(--text);
}
.vs-info-grid,
.info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.vs-info-grid article,
.info-grid>div{
  padding:14px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.vs-info-grid span,
.info-grid span{display:block;color:var(--text-muted);font-size:12px}
.vs-info-grid strong,
.info-grid b{display:block;margin-top:4px;color:var(--text);font-weight:650}
.dashboard-metric-card a{display:block;color:inherit;text-decoration:none}
.dashboard-metric-card strong{font-size:24px;line-height:1.1}
.dashboard-metric-card small{display:block;margin-top:4px;color:var(--text-muted);font-size:12px}
.dashboard-metric-card.needs-attention{border-color:var(--warning-soft);background:color-mix(in srgb, var(--warning-soft) 34%, var(--surface-soft))}
.dashboard-quick-links{justify-content:flex-start;flex-wrap:wrap}
.dashboard-activity-list .vs-list-icon{font-weight:700}

@media (max-width:1180px){
  .dashboard-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dashboard-attention-layout{grid-template-columns:1fr}
  .dashboard-attention-grid,
  .dashboard-subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:900px){
  .dashboard-overview-grid,
  .dashboard-attention-grid,
  .dashboard-attention-layout .dashboard-attention-grid,
  .dashboard-today-grid,
  .dashboard-ops-grid,
  .dashboard-subscription-grid{grid-template-columns:1fr}
  .dashboard-section-head{
    display:grid;
    align-items:start;
  }
  .dashboard-attention-section{padding:12px}
}

.employee-profile-layout,
.employee-editor-shell,
.settings-layout,
.layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.35fr);
  gap:18px;
}
.employee-editor-page .employee-editor-shell{
  grid-template-columns:minmax(210px,260px) minmax(0,1fr);
  gap:16px;
}
.access-users-page .stats,
.access-users-page .users-panel{grid-column:1/-1}
.employee-profile-main,
.employee-editor-grid{display:grid;gap:18px}
.employee-profile-contact,
.employee-profile-tabs,
.employee-profile-actions,
.employee-editor-head-actions,
.employee-editor-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.employee-profile-tabs,
.settings-nav{
  padding:6px;
  gap:0;
}
.employee-profile-tabs a,
.settings-nav a{
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 12px;
  border-radius:var(--radius-sm);
  color:var(--text-muted);
  text-decoration:none;
  font-weight:500;
}
.employee-profile-tabs a:hover,
.settings-nav a:hover{background:var(--surface-soft);color:var(--text)}
.employee-profile-tabs a.active,
.settings-nav a.active{background:var(--accent-soft);color:var(--accent)}
.employee-profile-hero{align-items:center}
.employee-profile-identity{
  display:flex;
  align-items:center;
  gap:16px;
}
.employee-profile-avatar{
  width:72px;
  height:72px;
  border-radius:999px;
  overflow:hidden;
  background:#f4dfcc;
  display:grid;
  place-items:center;
  color:#6a3a18;
  font-size:24px;
  font-weight:720;
}
.employee-profile-avatar img{width:100%;height:100%;object-fit:cover}
.employee-profile-section{display:grid;gap:16px}
.employee-profile-list{display:grid;gap:10px}
.employee-profile-list li,
.timeline-item,
.history-item{
  display:grid;
  gap:4px;
  padding:14px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:#fff;
}

/* Employee Profile 2.0 */
.employee-profile-page{
  max-width:1340px;
  gap:22px;
}
.employee-profile-hero.card{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:20px;
  padding:24px;
  border-color:color-mix(in srgb, var(--accent) 20%, var(--border));
  overflow:hidden;
}
.employee-profile-hero .employee-profile-main{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
}
.employee-profile-avatar-wrap{
  align-self:start;
}
.employee-profile-avatar{
  width:92px;
  height:92px;
  border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));
  background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 76%, #fff), #fff);
  color:var(--accent);
  font-size:28px;
  box-shadow:0 10px 24px rgb(15 23 42 / .10);
}
.avatar-lightbox-trigger[data-avatar-lightbox-src],
[data-avatar-lightbox-src]{
  cursor:zoom-in;
}
button.avatar-lightbox-trigger{
  padding:0;
  border:0;
  font:inherit;
}
.avatar-lightbox{
  position:fixed;
  inset:0;
  z-index:1200;
  display:grid;
  place-items:center;
  padding:calc(24px + env(safe-area-inset-top)) calc(24px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left));
  background:color-mix(in srgb, var(--text) 72%, transparent);
}
.avatar-lightbox[hidden]{
  display:none !important;
}
.avatar-lightbox img{
  display:block;
  max-width:min(92vw,980px);
  max-height:86vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:var(--radius);
  box-shadow:0 24px 80px rgb(15 23 42 / .32);
  background:var(--surface);
}
.avatar-lightbox-close{
  position:fixed;
  top:calc(18px + env(safe-area-inset-top));
  right:calc(18px + env(safe-area-inset-right));
  width:44px;
  height:44px;
  border:1px solid color-mix(in srgb, var(--surface) 55%, var(--border));
  border-radius:999px;
  display:grid;
  place-items:center;
  background:color-mix(in srgb, var(--surface) 92%, transparent);
  color:var(--text);
  font-size:28px;
  line-height:1;
  box-shadow:var(--shadow-sm);
}
.avatar-lightbox-close:hover{
  background:var(--surface);
}
@media (max-width:760px){
  .avatar-lightbox{
    padding:calc(16px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));
  }
  .avatar-lightbox img{
    max-width:100%;
    max-height:100%;
    border-radius:0;
    box-shadow:none;
    background:transparent;
  }
}
.employee-profile-kicker{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:var(--text-muted);
  font-size:12px;
  font-weight:650;
}
.employee-profile-kicker span{
  min-height:26px;
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-soft);
}
.employee-profile-kicker .employee-profile-status{
  border-color:color-mix(in srgb, var(--success) 28%, var(--border));
  background:color-mix(in srgb, var(--success-soft) 58%, #fff);
  color:var(--success);
}
.employee-profile-title h2{
  margin:8px 0 4px;
  font-size:32px;
  line-height:1.08;
  letter-spacing:0;
}
.employee-profile-title p{
  margin:0;
  color:var(--text-muted);
  font-weight:500;
}
.employee-profile-chips{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}
.employee-profile-chips span{
  min-width:0;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-profile-chips small,
.employee-profile-grid span,
.employee-leave-grid span{
  display:block;
  color:var(--text-muted);
  font-size:12px;
}
.employee-profile-chips b{
  display:block;
  margin-top:3px;
  color:var(--text);
  font-size:13px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.employee-profile-contact{
  margin-top:12px;
  align-items:flex-start;
}
.employee-profile-contact span{
  min-width:0;
  max-width:240px;
  padding:6px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--border);
  color:var(--text-muted);
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.employee-profile-actions{
  justify-content:flex-end;
  align-self:start;
}
.employee-profile-actions .btn{
  min-width:104px;
  justify-content:center;
}
.employee-profile-tabs{
  margin-top:20px;
  grid-column:1 / -1;
  width:100%;
  display:flex;
  align-items:center;
  gap:0;
  flex-wrap:wrap;
  padding:6px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-profile-tabs button,
.employee-profile-tabs a{
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 12px;
  border:0;
  border-radius:var(--radius-sm);
  background:transparent;
  color:var(--text-muted);
  font:inherit;
  font-weight:600;
  text-decoration:none;
}
.employee-profile-tabs button:hover,
.employee-profile-tabs a:hover{
  background:#fff;
  color:var(--text);
}
@media (min-width:901px){
  .employee-profile-hero .employee-profile-main{
    grid-template-columns:minmax(120px,180px) minmax(360px,1fr) minmax(260px,auto);
    align-items:start;
  }
  .employee-profile-avatar-wrap{
    min-width:120px;
    max-width:180px;
  }
  .employee-profile-title{
    min-width:0;
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .employee-profile-title h2,
  .employee-profile-title p{
    max-width:100%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:normal;
    overflow-wrap:normal;
    writing-mode:horizontal-tb;
  }
  .employee-profile-actions{
    min-width:260px;
    max-width:360px;
    align-self:start;
  }
  .employee-profile-actions .btn{
    white-space:nowrap;
  }
}
.employee-profile-stats{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.employee-summary-card{
  display:grid;
  align-content:start;
  gap:4px;
  min-height:104px;
}
.employee-summary-card span{
  color:var(--text-muted);
  font-size:12px;
  font-weight:650;
}
.employee-summary-card b{
  margin-top:4px;
  color:var(--text);
  font-size:24px;
  line-height:1.12;
  overflow-wrap:anywhere;
}
.employee-summary-card small{
  color:var(--text-muted);
}
.employee-profile-layout{
  grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);
  gap:20px;
  align-items:start;
}
.employee-profile-layout > div,
.employee-profile-layout aside{
  min-width:0;
  display:grid;
  gap:18px;
}
.employee-profile-section{
  gap:16px;
  padding:20px;
}
.employee-profile-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--border);
}
.employee-profile-section-head h3{
  margin:0;
  font-size:16px;
  line-height:1.2;
}
.employee-profile-section-head p{
  margin:5px 0 0;
  color:var(--text-muted);
  font-size:13px;
  line-height:1.35;
}
.employee-profile-section-head a{
  flex:0 0 auto;
  color:var(--accent);
  font-size:13px;
  font-weight:650;
  text-decoration:none;
}
.employee-profile-section-head a:hover{
  text-decoration:underline;
}
.employee-profile-grid,
.employee-leave-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.employee-profile-grid-compact{
  grid-template-columns:1fr;
}
.employee-profile-grid > div,
.employee-leave-grid > div{
  min-width:0;
  padding:12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-profile-grid b,
.employee-leave-grid b{
  display:block;
  margin-top:4px;
  color:var(--text);
  overflow-wrap:anywhere;
}
.employee-profile-grid small,
.employee-leave-grid small{
  display:block;
  margin-top:3px;
  color:var(--text-muted);
}
.employee-attendance-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.employee-attendance-kpis > div,
.employee-attendance-last > div,
.employee-attendance-workplaces > div{
  min-width:0;
  padding:12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-attendance-kpis span,
.employee-attendance-last span,
.employee-attendance-workplaces > span{
  display:block;
  color:var(--text-muted);
  font-size:12px;
}
.employee-attendance-kpis b{
  display:block;
  margin-top:4px;
  color:var(--text);
  font-size:22px;
  line-height:1.1;
}
.employee-attendance-last{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.employee-attendance-last b,
.employee-attendance-workplaces b{
  display:block;
  margin-top:4px;
  color:var(--text);
  overflow-wrap:anywhere;
}
.employee-attendance-last small,
.employee-attendance-workplaces small{
  display:block;
  margin-top:3px;
  color:var(--text-muted);
}
.employee-attendance-workplaces{
  display:grid;
  gap:8px;
}
.employee-attendance-workplaces > span{
  font-weight:650;
}
.employee-profile-note{
  margin:0;
  color:var(--text-muted);
  line-height:1.55;
}
.employee-profile-quick a{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
  color:var(--text);
  font-weight:650;
  text-decoration:none;
}
.employee-profile-quick a:hover{
  border-color:color-mix(in srgb, var(--accent) 28%, var(--border));
  color:var(--accent);
}
.employee-profile-list{
  gap:10px;
}
.employee-profile-list > div{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  padding:12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-profile-list > div > div{
  min-width:0;
}
.employee-profile-list b,
.employee-profile-list a,
.employee-profile-list button{
  overflow-wrap:anywhere;
}
.employee-profile-list small{
  display:block;
  margin-top:4px;
  color:var(--text-muted);
}
.employee-profile-list span{
  flex:0 0 auto;
  color:var(--text-muted);
  font-size:12px;
  font-weight:650;
}
.employee-profile-list span.pending{
  color:var(--warning);
}
.employee-history-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.employee-history-filters a{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 11px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text-muted);
  font-size:12px;
  font-weight:650;
  text-decoration:none;
}
.employee-history-filters a:hover,
.employee-history-filters a.active{
  border-color:color-mix(in srgb, var(--accent) 30%, var(--border));
  background:color-mix(in srgb, var(--accent-soft) 50%, #fff);
  color:var(--accent);
}
.employee-history-filters span{
  min-width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 6px;
  border-radius:999px;
  background:#fff;
  color:inherit;
  font-size:11px;
}
.employee-history-page-filters{
  margin-bottom:16px;
}
.employee-history-timeline{
  display:grid;
  gap:12px;
}
.employee-history-timeline-compact{
  gap:10px;
}
.employee-history-item{
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:14px;
  min-width:0;
  padding:14px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-history-timeline-compact .employee-history-item{
  grid-template-columns:96px minmax(0,1fr);
  padding:12px;
}
.employee-history-item time{
  color:var(--text-muted);
  font-size:12px;
  font-weight:650;
  line-height:1.35;
}
.employee-history-item-body{
  min-width:0;
  display:grid;
  gap:7px;
}
.employee-history-title-row{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.employee-history-title-row b,
.employee-history-title-row strong{
  min-width:0;
  color:var(--text);
  font-size:14px;
  overflow-wrap:anywhere;
}
.employee-history-item p{
  margin:0;
  color:var(--text-muted);
  font-size:13px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.employee-history-item small,
.employee-history-meta{
  color:var(--text-muted);
  font-size:12px;
}
.employee-history-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
}
.employee-history-meta span{
  min-width:0;
}
.employee-history-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:2px;
}
.workplace-access-list{
  max-height:440px;
  overflow:auto;
  padding-right:2px;
}
.workplace-access-row{
  background:var(--surface-soft);
}
.workplace-access-row:has(input:checked){
  border-color:color-mix(in srgb, var(--accent) 28%, var(--border));
  background:color-mix(in srgb, var(--accent-soft) 46%, #fff);
}
.attendance-pass-preview{
  padding:12px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.employee-profile-modal{
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  box-shadow:0 24px 70px rgb(15 23 42 / .24);
}
.employee-profile-modal .modal-head{
  border-bottom:1px solid var(--border);
}
.employee-profile-modal .modal-grid,
.employee-profile-modal .modal-list{
  padding:22px;
}

.locations-page{display:grid;gap:22px}
.loc-add-btn svg,
.add-btn svg{width:18px;height:18px}
.loc-stat{display:grid;grid-template-columns:1fr;gap:4px}
.loc-row{
  min-height:70px;
  padding:0 18px;
  border-bottom:1px solid var(--border);
}
.loc-row:last-child{border-bottom:0}
.loc-actions,
.row-actions{display:flex;justify-content:flex-end;gap:8px}
.loc-view-employees{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.loc-view-employee{
  display:flex;
  gap:10px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}

.users-shell,
.access-users-page{
  display:grid;
  gap:18px;
}
.create-panel,
.users-panel{
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:#fff;
  box-shadow:var(--shadow-card);
}
.create-panel{padding:22px}
.create-panel form{display:grid;gap:16px}
.form-grid,
.user-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.password-row,
.copy-row,
.push-panel,
.credential-box,
.mobile-install-card,
.security-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
}
.mobile-install-card{
  width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
}
.mobile-install-card > *{
  min-width:0;
  max-width:100%;
  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  writing-mode:horizontal-tb;
}
.mobile-install-card p{
  margin:0;
  line-height:1.45;
}
.mobile-install-card .btn{
  width:max-content;
  max-width:100%;
  justify-self:start;
}
.auto-badge{
  width:max-content;
  max-width:100%;
  margin-top:7px;
  padding:4px 8px;
  border-radius:var(--radius-sm);
  background:var(--accent-soft);
  color:var(--accent);
  font-size:12px;
  font-weight:500;
}
.checks{display:grid;gap:10px}
.check strong{display:block}

.ops-stats{margin:18px 0}
.ops-task-card{
  display:grid;
  gap:12px;
  padding:18px;
}
.ops-task-head,
.ops-task-actions{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.ops-task-meta,
.task-assignee-list{display:flex;flex-wrap:wrap;gap:8px}
.task-assignee-more{
  border:0;
  background:transparent;
  color:var(--accent);
  font-weight:500;
}
.ops-table table{width:100%}

.requests-overview,
.request-detail,
.notifications-layout{
  display:grid;
  gap:18px;
}
.request-card,
.notification-card{
  display:grid;
  gap:12px;
  padding:18px;
}
.request-card-head,
.notification-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.settings-grid,
.company-settings-grid{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:18px;
}
.settings-grid.controls{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.settings-content{display:grid;gap:18px}
.setting-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);
  gap:18px;
  padding:18px;
}
.setting-mini{padding:16px}

.invoice-paper{
  max-width:980px;
  margin:0 auto;
}
.invoice-paper-head,
.doc-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}
.invoice-paper-head img,
.doc-brand img{max-width:150px;height:auto}

.changelog-timeline{
  display:grid;
  gap:14px;
  max-width:900px;
}
.changelog-entry{padding:20px}
.changelog-version{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.changelog-version span{font-weight:720}
.changelog-version small{color:var(--text-muted)}
