:root {
  --ink: #17142b;
  --ink-soft: #68647a;
  --canvas: #f6f5fb;
  --panel: #ffffff;
  --panel-soft: #fbfaff;
  --line: #e8e5f0;
  --brand: #6756d8;
  --brand-dark: #4b3cac;
  --brand-soft: #eeebff;
  --success: #168764;
  --success-soft: #e5f8f1;
  --warning: #b87318;
  --warning-soft: #fff3dc;
  --danger: #cb4660;
  --danger-soft: #ffebef;
  --blue: #2779d6;
  --shadow-sm: 0 2px 12px rgba(28, 22, 57, .055);
  --shadow-lg: 0 24px 70px rgba(25, 18, 57, .15);
  --radius: 18px;
  --radius-sm: 12px;
  --mobile-nav-height: 74px;
}

[data-bs-theme="dark"] {
  --ink: #f4f1ff;
  --ink-soft: #aaa5bd;
  --canvas: #100e1b;
  --panel: #191626;
  --panel-soft: #211d31;
  --line: #302b43;
  --brand: #9d8cff;
  --brand-dark: #b7aaff;
  --brand-soft: #2b2549;
  --success: #53d2a5;
  --success-soft: #17372f;
  --warning: #f0b35e;
  --warning-soft: #3a2b19;
  --danger: #ff7d93;
  --danger-soft: #3d202b;
  --blue: #74b3ff;
  --shadow-sm: 0 2px 14px rgba(0,0,0,.22);
  --shadow-lg: 0 24px 70px rgba(0,0,0,.4);
}

* { box-sizing: border-box; }
html { min-height: 100%; min-height: 100dvh;-webkit-text-size-adjust:100%;text-size-adjust:100%; }
body {
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0;
  color: var(--ink);
  background: var(--canvas);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.min-w-0 { min-width: 0; }

.app-shell { min-height: 100vh; min-height: 100dvh; }
.sidebar {
  position: fixed; inset: 0 auto 0 0; z-index: 1030;
  width: 264px; padding: 28px 18px 20px;
  flex-direction: column; color: #f6f4ff;
  background:
    radial-gradient(circle at 15% 5%, rgba(125,103,235,.32), transparent 31%),
    linear-gradient(165deg, #1c1834 0%, #131125 70%);
  transition:width .22s ease,padding .22s ease;
}
.brand { display: inline-flex; align-items: center; gap: 11px; }
.brand-mark {
  width: 39px; height: 39px; border-radius: 13px; display: inline-grid; place-items: center;
  color: #fff; background: linear-gradient(145deg, #806dec, #5746c7); box-shadow: 0 9px 24px rgba(104,86,216,.32);
}
.brand strong { font-size: 1.05rem; letter-spacing: -.025em; }
.brand small { display: block; margin-top: 1px; color: #aaa5c1; font-size: .67rem; letter-spacing: .04em; }
.sidebar-toggle {
  position:absolute;top:35px;right:-14px;width:28px;height:28px;display:grid;place-items:center;padding:0;
  border:1px solid rgba(255,255,255,.14);border-radius:9px;color:#c7c1dc;background:#24203d;
  box-shadow:0 5px 16px rgba(12,9,28,.28);font-size:.67rem;transition:.18s ease;
}
.sidebar-toggle:hover,.sidebar-toggle:focus-visible { color:#fff;border-color:#9b8bff;background:#332d54; }
.side-nav { display: flex; flex-direction: column; gap: 5px; margin-top: 37px; }
.side-nav a {
  display: flex; align-items: center; gap: 13px; min-height: 45px; padding: 0 13px;
  border-radius: 12px; color: #aaa6be; font-size: .88rem; font-weight: 600; transition: .2s ease;
}
.side-nav a i { width: 20px; text-align: center; font-size: .95rem; }
.side-nav a:hover { color: #fff; background: rgba(255,255,255,.055); transform: translateX(2px); }
.side-nav a.active { color: #fff; background: linear-gradient(90deg, rgba(126,104,235,.3), rgba(126,104,235,.11)); box-shadow: inset 3px 0 #9b8bff; }
.nav-label { margin: 22px 13px 7px; color: #68637d; font-size: .63rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.sidebar-user {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px;
  margin-top: auto; padding: 14px 8px 2px; border-top: 1px solid rgba(255,255,255,.08);
}
.sidebar-user strong { font-size: .78rem; color: #fff; }
.sidebar-user small { color: #817c96; font-size: .68rem; }
.avatar {
  width: 35px; height: 35px; display: inline-grid; place-items: center; flex: 0 0 auto;
  border-radius: 11px; color: #fff; background: linear-gradient(145deg,#7764e8,#4a3aa9); font-size: .78rem; font-weight: 800;
}
.icon-btn {
  width: 38px; height: 38px; display: inline-grid; place-items: center; flex: 0 0 auto;
  padding: 0; border: 1px solid var(--line); border-radius: 11px; color: var(--ink-soft); background: var(--panel); transition: .18s ease;
}
.icon-btn:hover { color: var(--brand); border-color: var(--brand); transform: translateY(-1px); }
.icon-btn.danger-action { color:var(--danger);background:var(--danger-soft); }
.icon-btn.danger-action:hover { color:#fff;border-color:var(--danger);background:var(--danger); }
.sidebar .icon-btn { color: #9993ad; background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.07); }
.main-content { min-height: 100vh; min-height: 100dvh; margin-left: 264px; transition:margin-left .22s ease; }

@media (min-width: 992px) {
  .sidebar-collapsed .sidebar { width:82px;padding-inline:14px; }
  .sidebar-collapsed .main-content { margin-left:82px; }
  .sidebar-collapsed .sidebar .brand { justify-content:center; }
  .sidebar-collapsed .brand-copy,
  .sidebar-collapsed .side-nav a span,
  .sidebar-collapsed .sidebar-user-details { display:none; }
  .sidebar-collapsed .side-nav a { justify-content:center;padding-inline:0; }
  .sidebar-collapsed .side-nav a i { width:auto;font-size:1rem; }
  .sidebar-collapsed .nav-label { height:1px;margin:22px 8px 7px;overflow:hidden;padding:0;background:rgba(255,255,255,.1);font-size:0; }
  .sidebar-collapsed .sidebar-user { grid-template-columns:1fr;justify-items:center;gap:8px;padding-inline:0; }
  .sidebar-collapsed .sidebar-user form { margin:0; }
  .sidebar-collapsed .sidebar-toggle i { transform:rotate(180deg); }
}
.desktop-topbar {
  min-height: 79px; padding: 0 36px; justify-content: space-between; align-items: center;
  border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--panel) 88%, transparent);
  backdrop-filter: blur(14px);
}
.topbar-date { margin-top: 2px; font-size: .82rem; color: var(--ink); font-weight: 650; }
.eyebrow { display: block; color: var(--brand); font-size: .66rem; font-weight: 800; letter-spacing: .115em; text-transform: uppercase; }
.eyebrow.light { color: #bdb3ff; }
.sync-state { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; color: var(--ink-soft); font-size: .7rem; font-weight: 700; }
.sync-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px color-mix(in srgb,var(--success) 13%,transparent); }
.sync-state.offline .sync-dot { background: var(--warning); box-shadow: 0 0 0 4px color-mix(in srgb,var(--warning) 13%,transparent); }
.content-wrap { max-width: 1540px; margin: 0 auto; padding: 32px 36px 56px; }
.page-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 22px; margin-bottom: 26px; }
.page-heading h1 { margin: 5px 0 5px; font-size: 1.45rem; line-height: 1.12; letter-spacing: -.035em; font-weight: 760; }
.page-heading p { margin: 0; color: var(--ink-soft); font-size: .88rem; }
.heading-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.btn { min-height: 42px; padding: .62rem 1rem; border-radius: 12px; border-width: 1px; font-size: .82rem; font-weight: 750; }
.btn i { margin-right: 5px; }
.btn-lg { min-height: 50px; border-radius: 14px; }
.btn-brand { color: #fff; border-color: var(--brand); background: linear-gradient(135deg, var(--brand), var(--brand-dark)); box-shadow: 0 8px 20px color-mix(in srgb,var(--brand) 23%,transparent); }
.btn-brand:hover, .btn-brand:focus { color:#fff; border-color:var(--brand-dark); background:var(--brand-dark); transform:translateY(-1px); }
.btn-outline-brand { color:var(--brand); border-color:color-mix(in srgb,var(--brand) 45%,var(--line)); background:var(--panel); }
.btn-outline-brand:hover { color:#fff; border-color:var(--brand); background:var(--brand); }
.btn-soft { color:var(--ink); border-color:var(--line); background:var(--panel-soft); }
.btn-soft:hover { color:var(--brand); border-color:var(--brand); background:var(--brand-soft); }
.panel {
  border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: var(--shadow-sm);
}
.panel-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px 16px; }
.panel-heading > div { display:flex; align-items:center; gap:11px; }
.panel-heading h2 { margin:3px 0 0; font-size:1rem; font-weight:760; letter-spacing:-.02em; }
.panel-chip { flex:0 0 auto;white-space:nowrap;padding:6px 9px;border:1px solid var(--line);border-radius:99px;color:var(--ink-soft);font-size:.65rem;font-weight:700; }
.panel-chip i { color:var(--success); font-size:.42rem; vertical-align:middle; }
.app-alert { display:flex; align-items:center; gap:9px; border:0; border-radius:13px; font-size:.81rem; font-weight:650; }
.alert-success { color:var(--success); background:var(--success-soft); }
.alert-danger { color:var(--danger); background:var(--danger-soft); }

.status-strip {
  display:grid; grid-template-columns:repeat(3,minmax(0,.72fr)) minmax(0,.85fr) repeat(4,minmax(0,1.22fr));
  gap:1px; overflow:hidden; margin-bottom:18px; border:1px solid var(--line); border-radius:var(--radius); background:var(--line); box-shadow:var(--shadow-sm);
}
.status-strip > div { display:flex; align-items:center; gap:11px; min-height:77px; padding:13px 18px; background:var(--panel); }
.status-strip .workflow-stat,.status-strip .status-action,.status-strip .overall-stat { grid-column:span 1; }
.status-strip strong { display:block; font-size:1.05rem; }
.status-strip small { display:block; color:var(--ink-soft); font-size:.68rem; }
.status-icon { width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:.76rem; }
.status-icon.pending { color:var(--warning);background:var(--warning-soft); }
.status-icon.submitted { color:var(--success);background:var(--success-soft); }
.status-icon.locked { color:var(--ink-soft);background:var(--canvas); }
.status-icon.sale-total { color:var(--brand);background:var(--brand-soft); }
.status-icon.cash-total { color:var(--success);background:var(--success-soft); }
.status-icon.upi-total { color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,var(--panel)); }
.status-icon.card-total { color:var(--warning);background:var(--warning-soft); }
.status-strip .status-action { margin-left:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;background:linear-gradient(135deg,var(--panel),var(--brand-soft)); }
.status-action span { color:var(--ink-soft);font-size:.68rem; }
.status-action strong { color:var(--brand);font-size:.82rem; }
.overall-stat strong { font-size:.9rem;letter-spacing:-.02em;white-space:nowrap; }
.overall-stat small { white-space:nowrap; }
.metric-grid { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin-bottom:18px; }
.metric-card { min-height:148px;padding:17px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-sm);transition:.2s ease; }
.metric-card:hover { transform:translateY(-3px);box-shadow:0 12px 34px rgba(30,23,60,.1); }
.metric-card-head { display:flex;align-items:center;gap:9px; }
.metric-store-title { min-width:0;overflow:hidden;color:var(--ink);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap; }
.store-summary-card { height:148px;padding:13px 14px; }
.store-summary-card .metric-icon { width:31px;height:31px;border-radius:9px;font-size:.72rem; }
.store-stat-list { display:grid;gap:4px;margin-top:9px;padding-top:7px;border-top:1px solid var(--line); }
.store-stat-row { display:flex;min-width:0;align-items:center;justify-content:space-between;gap:7px;white-space:nowrap; }
.store-stat-row > strong { flex:0 0 auto;font-size:.72rem;font-weight:800;line-height:1.3;letter-spacing:-.025em;white-space:nowrap; }
.store-stat-label { min-width:0;overflow:hidden;color:var(--ink-soft);font-size:.63rem;font-weight:700;line-height:1.3;text-overflow:ellipsis;white-space:nowrap; }
.store-stat-label i { width:14px;margin-right:4px;text-align:center; }
.store-stat-label.emerald i{color:#168764}.store-stat-label.blue i{color:#2779d6}.store-stat-label.amber i{color:#b87318}
.metric-icon { width:35px;height:35px;display:grid;place-items:center;border-radius:11px;font-size:.82rem; }
.metric-icon.violet{color:#6756d8;background:#eeebff}.metric-icon.emerald{color:#168764;background:#e5f8f1}.metric-icon.blue{color:#2779d6;background:#e7f2ff}.metric-icon.amber{color:#b87318;background:#fff3dc}.metric-icon.rose{color:#cb4660;background:#ffebef}.metric-icon.cyan{color:#128aa0;background:#e4f8fb}
[data-bs-theme="dark"] .metric-icon.violet{background:#2b2549;color:#ad9fff}[data-bs-theme="dark"] .metric-icon.emerald{background:#17372f;color:#53d2a5}[data-bs-theme="dark"] .metric-icon.blue{background:#172d48;color:#74b3ff}[data-bs-theme="dark"] .metric-icon.amber{background:#3a2b19;color:#f0b35e}[data-bs-theme="dark"] .metric-icon.rose{background:#3d202b;color:#ff7d93}[data-bs-theme="dark"] .metric-icon.cyan{background:#17343a;color:#58d0e5}
.metric-label { display:block;margin-top:14px;color:var(--ink-soft);font-size:.68rem;font-weight:650; }
.metric-card > strong { display:block;margin-top:3px;font-size:1.16rem;letter-spacing:-.035em;white-space:nowrap; }
.metric-card > small { display:block;margin-top:9px;color:var(--ink-soft);font-size:.6rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.metric-card > small i { color:var(--success);margin-right:3px; }
.dashboard-grid { display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.72fr);gap:18px;margin-bottom:18px; }
.dashboard-grid.lower { grid-template-columns:1fr 1fr; }
.chart-wrap { height:292px;padding:0 20px 20px; }
.store-sales-share-panel { overflow:hidden; }
.store-sales-pie-layout { display:grid;grid-template-columns:minmax(160px,.8fr) minmax(210px,1.2fr);align-items:center;gap:14px;padding:2px 18px 20px; }
.store-sales-pie-visual { position:relative;height:215px;min-width:0; }
.store-sales-pie-visual canvas { width:100%!important;height:100%!important; }
.store-sales-no-activity { width:170px;height:170px;display:flex;margin:18px auto;align-items:center;justify-content:center;flex-direction:column;border:18px solid var(--canvas);border-radius:50%;color:var(--ink-soft);text-align:center; }
.store-sales-no-activity i { margin-bottom:5px;color:var(--brand);font-size:1.05rem; }.store-sales-no-activity strong{color:var(--ink);font-size:.75rem}.store-sales-no-activity span{margin-top:2px;font-size:.6rem}
.store-sales-legend { min-width:0; }
.store-sales-legend ul { max-height:238px;margin:0;padding:0;overflow:auto;list-style:none;scrollbar-width:thin; }
.store-sales-legend-head,.store-sales-legend-row { display:grid;grid-template-columns:minmax(0,1fr) 52px minmax(88px,auto);align-items:center;gap:8px; }
.store-sales-legend-head { padding:0 4px 7px;color:var(--ink-soft);font-size:.54rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em; }
.store-sales-legend-head span:nth-child(n+2) { text-align:right; }
.store-sales-legend-row { min-height:31px;padding:6px 4px;border-top:1px solid var(--line);font-size:.63rem; }
.store-sales-legend-name { display:flex;min-width:0;align-items:center;gap:7px;overflow:hidden;font-weight:750;text-overflow:ellipsis;white-space:nowrap; }
.store-sales-legend-name i { width:8px;height:8px;display:block;flex:0 0 auto;border-radius:50%;background:var(--store-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--store-color) 14%,transparent); }
.store-sales-percentage,.store-sales-amount { text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums; }
.store-sales-percentage { color:var(--store-color); }
.store-sales-amount { color:var(--ink); }
.quick-actions { padding:0 12px 13px; }
.quick-actions a { display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:12px 9px;border-top:1px solid var(--line); }
.quick-actions a:first-child { border-top:0; }
.quick-actions a > span:nth-child(2) strong { display:block;font-size:.79rem; }
.quick-actions a > span:nth-child(2) small { display:block;margin-top:2px;color:var(--ink-soft);font-size:.65rem; }
.quick-actions a > i { color:var(--ink-soft);font-size:.65rem; }
.alert-list,.ranking-list { padding:0 15px 17px; }
.alert-list a { display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:10px 7px;border-top:1px solid var(--line); }
.store-dot { width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--brand);background:var(--brand-soft);font-size:.75rem;font-weight:800; }
.alert-list strong,.alert-list small { display:block; }.alert-list strong{font-size:.76rem}.alert-list small{color:var(--ink-soft);font-size:.65rem}.alert-list>a>i{color:var(--ink-soft);font-size:.6rem}
.count-badge { display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:9px;color:var(--brand);background:var(--brand-soft);font-size:.72rem;font-weight:800; }
.ranking-item { display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;margin:11px 0; }
.rank { color:var(--ink-soft);font-size:.72rem;font-weight:800;text-align:center; }
.rank-line { display:flex;justify-content:space-between;gap:10px;font-size:.71rem; }
.rank-line span { color:var(--ink-soft); }
.progress { height:5px;margin-top:7px;border-radius:99px;background:var(--canvas); }
.progress span { display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--brand),#9b8bff); }
.empty-state { display:flex;min-height:190px;padding:28px;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--ink-soft); }
.empty-state>i { margin-bottom:11px;color:var(--brand);font-size:1.5rem; }.empty-state strong{display:block;color:var(--ink);font-size:.9rem}.empty-state span{margin-top:4px;font-size:.72rem}

.dashboard-actions { align-items:center; }
.month-selector { display:flex;align-items:center;gap:8px;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm); }
.month-selector > label { display:flex;align-items:center;gap:7px;margin:0 4px;color:var(--ink-soft);font-size:.65rem;font-weight:750;white-space:nowrap; }
.month-selector > label i { color:var(--brand); }
.month-selector .form-control { width:155px;min-height:40px;border-color:var(--line);font-size:.72rem;font-weight:700; }
.month-selector .btn { min-height:40px;padding:.5rem .75rem; }
.chart-store-filter { display:flex;align-items:center;justify-content:center;gap:9px 18px;margin:0;padding:3px 20px 18px;border:0;flex-wrap:wrap; }
.chart-store-option { display:inline-flex;min-height:28px;align-items:center;gap:7px;color:var(--ink);font-size:.68rem;font-weight:700;white-space:nowrap;cursor:pointer; }
.chart-store-option input { width:17px;height:17px;margin:0;accent-color:var(--store-color,var(--brand));cursor:pointer; }
.chart-store-option span { transition:color .18s ease; }
.chart-store-option:hover span { color:var(--store-color,var(--brand)); }
.panel-button { display:inline-flex;min-height:31px;align-items:center;gap:7px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--brand) 27%,var(--line));border-radius:9px;color:var(--brand);background:var(--brand-soft);font-size:.62rem;font-weight:800;white-space:nowrap;transition:.18s ease; }
.panel-button:hover { color:#fff;border-color:var(--brand);background:var(--brand); }
.panel-button i { font-size:.55rem; }

.race-panel { margin-bottom:18px; }
.race-heading { flex-wrap:wrap; }
.race-month-nav { display:flex;align-items:center;gap:9px;padding:4px;border:1px solid var(--line);border-radius:99px;background:var(--panel-soft); }
.race-month-nav .icon-btn { width:30px;height:30px;border-radius:99px; }
.race-month-nav strong { min-width:96px;text-align:center;font-size:.76rem;font-weight:800;letter-spacing:-.01em; }
.race-month-nav .icon-btn:disabled { opacity:.35;cursor:not-allowed;transform:none; }
.race-chart-wrap { height:400px;padding:6px 20px 4px; }
.race-legend { display:flex;flex-wrap:wrap;gap:5px 14px;padding:0 20px 14px;justify-content:center; }
.race-legend-item { display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:99px;border:1px solid var(--line);background:var(--panel-soft);color:var(--ink);font-size:.63rem;font-weight:750;cursor:pointer;transition:.18s ease;user-select:none; }
.race-legend-item:hover { border-color:var(--race-color,var(--brand)); }
.race-legend-item i { width:8px;height:8px;flex:0 0 auto;border-radius:99px;background:var(--race-color,var(--brand)); }
.race-legend-item.is-hidden { opacity:.4; }
.race-legend-item.is-hidden i { background:var(--ink-soft); }
.race-rank-strip-wrap { padding:14px 20px 18px;border-top:1px solid var(--line); }
.race-rank-title { display:block;margin-bottom:10px;color:var(--ink-soft);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em; }
.race-rank-title small { color:var(--ink-soft);font-size:.62rem;font-weight:650;text-transform:none;letter-spacing:0; }
.race-rank-strip { display:flex;flex-wrap:wrap;gap:10px; }
.race-rank-chip { flex:1 1 165px;min-width:150px;display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft); }
.race-rank-chip.is-leader { border-color:color-mix(in srgb, var(--race-color, var(--brand)) 45%, var(--line));background:linear-gradient(135deg,var(--panel-soft),color-mix(in srgb,var(--race-color,var(--brand)) 12%,transparent)); }
.race-rank-badge { flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:99px;background:var(--canvas);color:var(--ink-soft);font-size:.65rem;font-weight:800; }
.race-rank-chip.is-leader .race-rank-badge { background:var(--race-color,var(--brand));color:#fff; }
.race-rank-body { min-width:0; }
.race-rank-name { display:flex;align-items:center;gap:6px;min-width:0;font-size:.68rem;font-weight:750;color:var(--ink); }
.race-rank-name i { width:7px;height:7px;flex:0 0 auto;border-radius:99px;background:var(--race-color,var(--brand)); }
.race-rank-name span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.race-rank-amount { display:block;margin-top:2px;font-size:.86rem;font-weight:800;letter-spacing:-.02em;color:var(--ink);white-space:nowrap; }
.race-rank-gap { display:block;margin-top:1px;font-size:.6rem;font-weight:650;color:var(--ink-soft);white-space:nowrap; }
.race-rank-gap.is-leader-tag { color:var(--success); }

.race-panel.is-loading .race-chart-wrap,
.race-panel.is-loading .race-rank-strip,
.race-panel.is-loading .race-legend { opacity:.5;pointer-events:none;transition:opacity .2s ease; }

@media (max-width:575.98px) {
  .race-chart-wrap { height:280px;padding:6px 10px 4px; }
  .race-rank-strip-wrap { padding:12px 12px 16px; }
  .race-heading { flex-direction:column;align-items:flex-start; }
}

.recent-expense-list { padding:0 14px 15px; }
.recent-expense-item { display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 7px;border-top:1px solid var(--line);transition:.18s ease; }
.recent-expense-item:first-child { border-top:0; }
.recent-expense-item:hover { padding-left:11px;color:var(--brand);background:color-mix(in srgb,var(--brand-soft) 35%,transparent); }
.recent-expense-copy { min-width:0; }
.recent-expense-copy strong,.recent-expense-copy small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.recent-expense-copy strong { color:var(--ink);font-size:.72rem; }
.recent-expense-copy small { margin-top:3px;color:var(--ink-soft);font-size:.58rem; }
.expense-amount { color:var(--danger);font-size:.72rem;white-space:nowrap; }
.compact-empty { min-height:250px; }
.chart-empty { min-height:312px; }

.expense-total-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.store-expense-panel { margin-bottom:17px;overflow:hidden; }
.store-expense-panel .panel-heading { padding:14px 17px 12px;border-bottom:1px solid var(--line); }
.store-expense-panel .store-expense-heading { display:block; }
.expense-month-selector { display:flex;align-items:flex-end;gap:7px; }
.expense-month-selector label { display:grid;gap:4px; }
.expense-month-selector label > span { color:var(--ink-soft);font-size:.56rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em; }
.expense-month-selector .form-control { width:145px;min-height:36px;padding:.42rem .65rem;font-size:.68rem;font-weight:700; }
.expense-month-selector .btn { min-height:36px;padding:.42rem .68rem;font-size:.65rem; }
.store-expense-summary { display:flex;gap:8px;overflow-x:auto;padding:12px 17px 14px;scrollbar-width:thin;scroll-snap-type:x proximity; }
.store-expense-empty { display:flex;align-items:center;gap:8px;padding:14px 17px;color:var(--ink-soft);font-size:.65rem; }
.store-expense-empty i { width:29px;height:29px;display:grid;place-items:center;border-radius:9px;color:var(--brand);background:var(--brand-soft); }
.store-expense-card { display:grid;grid-template-columns:auto minmax(58px,1fr) auto;align-items:center;gap:8px;min-width:190px;max-width:260px;min-height:54px;flex:1 0 190px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);scroll-snap-align:start;transition:.18s ease; }
.store-expense-card:hover { color:var(--brand);border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:var(--brand-soft);transform:translateY(-1px); }
.store-expense-card.active { border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:var(--brand-soft);box-shadow:inset 0 -3px var(--brand); }
.store-expense-card .store-dot { width:30px;height:30px;border-radius:9px;font-size:.65rem; }
.store-card-copy { min-width:0; }
.store-card-copy strong,.store-card-copy small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.store-card-copy strong { color:var(--ink);font-size:.66rem; }
.store-card-copy small { margin-top:2px;color:var(--ink-soft);font-size:.54rem; }
.store-card-amount { color:var(--ink);font-size:.69rem;white-space:nowrap; }
.expense-register-panel { margin-top:17px;overflow:hidden; }
.expense-register-panel > .panel-heading { border-bottom:1px solid var(--line); }
.expense-register-panel > .panel-heading > div:first-child { display:block; }
.expense-register-actions { display:flex;align-items:center;gap:8px; }
.expense-expand-all { cursor:pointer; }
.expense-day-list { display:grid;gap:10px;padding:16px 17px 17px;background:color-mix(in srgb,var(--canvas) 55%,var(--panel)); }
.expense-day-group { overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--panel);transition:border-color .18s ease,box-shadow .18s ease; }
.expense-day-group[open] { border-color:color-mix(in srgb,var(--brand) 35%,var(--line));box-shadow:0 8px 24px rgba(28,22,57,.07); }
.expense-day-summary { display:grid;grid-template-columns:minmax(220px,1.15fr) minmax(200px,.85fr) minmax(125px,auto) 34px;align-items:center;gap:14px;padding:13px 15px;list-style:none;cursor:pointer;transition:background .18s ease; }
.expense-day-summary::-webkit-details-marker { display:none; }
.expense-day-summary:hover,.expense-day-group[open] .expense-day-summary { background:color-mix(in srgb,var(--brand-soft) 40%,var(--panel)); }
.expense-day-summary:focus-visible { outline:3px solid color-mix(in srgb,var(--brand) 24%,transparent);outline-offset:-3px; }
.expense-day-date { display:flex;min-width:0;align-items:center;gap:11px; }
.expense-date-tile { width:48px;height:48px;display:grid;flex:0 0 auto;place-content:center;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));border-radius:12px;color:var(--brand);background:var(--brand-soft);text-align:center;line-height:1; }
.expense-date-tile strong { font-size:1rem;font-variant-numeric:tabular-nums; }
.expense-date-tile small { margin-top:3px;font-size:.53rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase; }
.expense-day-date > span:last-child { min-width:0; }
.expense-day-date > span:last-child strong,.expense-day-date > span:last-child small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.expense-day-date > span:last-child strong { font-size:.78rem; }
.expense-day-date > span:last-child small { margin-top:3px;color:var(--ink-soft);font-size:.62rem; }
.expense-day-facts { display:flex;align-items:center;gap:7px; }
.expense-day-facts > span { display:inline-flex;min-height:29px;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:9px;color:var(--ink-soft);background:var(--panel);font-size:.6rem;font-weight:720;white-space:nowrap; }
.expense-day-facts i { color:var(--brand);font-size:.56rem; }
.expense-day-total { display:block;text-align:right;white-space:nowrap; }
.expense-day-total small,.expense-day-total strong { display:block; }
.expense-day-total small { color:var(--ink-soft);font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em; }
.expense-day-total strong { margin-top:2px;color:var(--danger);font-size:.86rem;font-variant-numeric:tabular-nums; }
.expense-day-chevron { width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:var(--brand);background:var(--brand-soft);font-size:.61rem;transition:transform .2s ease; }
.expense-day-group[open] .expense-day-chevron { transform:rotate(180deg); }
.expense-day-details { padding:15px;border-top:1px solid var(--line);background:var(--panel-soft); }
.expense-detail-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px; }
.expense-detail-heading strong,.expense-detail-heading small { display:block; }
.expense-detail-heading strong { font-size:.7rem; }
.expense-detail-heading small { margin-top:2px;color:var(--ink-soft);font-size:.58rem; }
.expense-detail-heading > span { padding:5px 8px;border-radius:99px;color:var(--brand);background:var(--brand-soft);font-size:.58rem;font-weight:800;white-space:nowrap; }
.expense-detail-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.expense-detail-item { display:flex;min-width:0;min-height:48px;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel); }
.expense-detail-name { min-width:0;overflow:hidden;color:var(--ink);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap; }
.expense-detail-amount { flex:0 0 auto;color:var(--danger);font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap; }
.expense-day-footer { display:flex;align-items:center;justify-content:flex-end;gap:17px;margin-top:11px;padding:11px 3px 0;border-top:1px dashed var(--line); }
.expense-day-footer span { color:var(--ink-soft);font-size:.62rem;font-weight:700; }
.expense-day-footer strong { color:var(--danger);font-size:.76rem;font-variant-numeric:tabular-nums; }
.expense-pagination { display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 17px;border-top:1px solid var(--line); }
.expense-pagination > span { color:var(--ink-soft);font-size:.68rem;font-weight:700; }
.expense-pagination > div { display:flex;gap:7px; }
.expense-pagination .btn { min-height:36px;padding:.45rem .7rem;font-size:.68rem; }

.ledger-heading { align-items:center; }
.status-badge { display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:99px;font-size:.63rem;font-weight:800;text-transform:capitalize;white-space:nowrap; }
.status-badge.draft { color:var(--warning);background:var(--warning-soft); }
.status-badge.submitted,.status-badge.approved { color:var(--success);background:var(--success-soft); }
.status-badge.edited { color:var(--brand);background:var(--brand-soft); }
.status-badge.pending_sync { color:var(--warning);background:var(--warning-soft); }
.status-badge.locked,.status-badge.rejected { color:var(--ink-soft);background:var(--canvas); }
.ledger-layout { display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start; }
.ledger-main { display:grid;gap:16px;min-width:0; }
.ledger-main .form-panel { padding-bottom:22px; }
.ledger-main .form-panel > .panel-heading { min-height:74px; }
.step-number { width:31px;height:31px;display:grid;place-items:center;border-radius:10px;color:var(--brand);background:var(--brand-soft);font-size:.65rem;font-weight:850; }
.live-label { color:var(--success);font-size:.64rem;font-weight:750; }.live-label i{margin-right:4px}
.form-grid { display:grid;gap:14px;padding:0 22px; }
.form-grid.columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.form-grid.columns-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sales-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-areas:
    "total card upi"
    ". total-sum .";
  align-items:start;
}
.sales-grid > :nth-child(1) { grid-area:total; }
.sales-grid > :nth-child(2) { grid-area:total-sum; }
.sales-grid > :nth-child(3) { grid-area:card; }
.sales-grid > :nth-child(4) { grid-area:upi; }
.field { display:block;min-width:0; }
.field>span,.dynamic-row label>span { display:block;margin-bottom:6px;color:var(--ink);font-size:.69rem;font-weight:700; }
.field small { display:block;margin-top:5px;color:var(--ink-soft);font-size:.61rem; }
.field-lock { margin-left:4px;color:var(--ink-soft);font-size:.55rem; }
.field-icon { width:16px;margin-right:5px;color:var(--brand); }
.form-control,.form-select {
  min-height:43px;padding:.62rem .76rem;border:1px solid var(--line);border-radius:11px;color:var(--ink);background-color:var(--panel-soft);font-size:.8rem;
}
.form-control:focus,.form-select:focus { color:var(--ink);background:var(--panel);border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 13%,transparent); }
.form-control[readonly],.form-control:disabled,.form-select:disabled { color:var(--ink-soft);background:var(--canvas);opacity:1; }
textarea.form-control { resize:vertical; }
.money-input { position:relative; }
.money-input>span { position:absolute;z-index:2;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-soft);font-size:.78rem;font-weight:700; }
.money-input .form-control { padding-left:29px; }
.calculated-field { padding:10px;border:1px dashed color-mix(in srgb,var(--brand) 42%,var(--line));border-radius:13px;background:var(--brand-soft); }
.calculated-field .form-control { background:var(--panel); }
.calculated-field .form-control.negative { color:var(--danger);font-weight:800; }
.cash-result-panel { border-color:color-mix(in srgb,var(--brand) 28%,var(--line)); }
.cash-result-panel .closing-result { border-style:solid;background:color-mix(in srgb,var(--success) 9%,var(--panel));border-color:color-mix(in srgb,var(--success) 32%,var(--line)); }
.cash-result-panel .closing-result .form-control { color:var(--success);font-weight:850; }
.cash-rule { margin:18px 22px 0;padding:13px 15px;border:1px solid var(--line);border-radius:12px;color:var(--ink-soft);background:var(--panel-soft);font-size:.67rem;line-height:1.7; }
.cash-rule strong { color:var(--ink); }
.dynamic-list { display:grid;gap:9px;padding:0 22px; }
.dynamic-row { display:grid;grid-template-columns:minmax(0,1.6fr) minmax(130px,.75fr) 35px;gap:9px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft); }
.dynamic-row.expense-row { grid-template-columns:minmax(105px,.65fr) minmax(0,1.4fr) minmax(120px,.7fr) 35px; }
.remove-row { width:35px;height:43px;border:0;border-radius:10px;color:var(--danger);background:var(--danger-soft); }
.additional-notes { max-width:760px;margin-inline:auto;padding-inline:22px; }
.ledger-summary { position:static;display:grid;gap:14px;min-width:0; }
.closing-card {
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  grid-template-areas:
    "eyebrow formula"
    "amount formula"
    "state formula"
    "note note";
  column-gap:48px;
  padding:28px;
  border-radius:20px;
  color:#fff;
  background:radial-gradient(circle at 95% 0,rgba(157,140,255,.42),transparent 34%),linear-gradient(150deg,#272044,#17132d 75%);
  box-shadow:0 22px 45px rgba(32,24,69,.25);
}
.closing-card > .eyebrow { grid-area:eyebrow;align-self:end; }
.closing-card>strong { display:block;margin:7px 0 5px;font-size:2rem;letter-spacing:-.055em; }
.closing-card > strong { grid-area:amount;align-self:center; }
.closing-card>strong.negative { color:#ff9aac; }
.closing-state { grid-area:state;display:inline-flex;align-items:center;align-self:start;gap:5px;color:#bcb5d2;font-size:.62rem; }
.closing-state i { color:#a999ff; }
.formula-list { grid-area:formula;margin:0;padding:3px 0 3px 30px;border-top:0;border-left:1px solid rgba(255,255,255,.12); }
.formula-list div { display:flex;justify-content:space-between;gap:12px;padding:6px 0;color:#bcb5d2;font-size:.68rem; }
.formula-list strong { color:#fff;font-size:.7rem; }.formula-list .minus strong{color:#ff9aac}
.formula-note { grid-area:note;margin:22px -28px -28px;padding:12px 20px;text-align:center;color:#8e87a4;background:rgba(0,0,0,.16);font-size:.56rem;line-height:1.5; }
.summary-actions { display:grid;grid-template-columns:1fr;gap:12px;padding:14px; }
.summary-actions.locked-actions { grid-template-columns:1fr; }
.summary-actions .btn { min-height:78px;display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 18px; }
.action-note { grid-column:1/-1;padding:5px 7px;text-align:center;color:var(--ink-soft);font-size:.58rem;line-height:1.5; }
.action-note i { margin-right:4px; }
.draft-save-status { display:flex;align-items:center;justify-content:center;gap:7px;min-height:28px;color:var(--ink-soft);font-size:.66rem;font-weight:700; }
.draft-save-status[data-state="saving"] { color:var(--brand); }
.draft-save-status[data-state="offline"] { color:var(--warning); }
.locked-notice { display:grid;gap:3px;padding:12px 14px;border-radius:12px;color:var(--ink-soft);background:var(--canvas);text-align:center;font-size:.7rem; }
.locked-notice strong { color:var(--ink);font-size:.76rem; }
.confirmation-list { display:grid;gap:7px;margin:0;padding-left:20px; }
.success-copy-message { color:var(--success);font-weight:750; }

.filter-panel { margin-bottom:17px;padding:17px; }
.filter-grid { display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end; }
.report-filters { grid-template-columns:repeat(5,minmax(120px,1fr)) auto; }
.report-filter-form { display:block; }
.report-filter-toolbar { display:grid;grid-template-columns:max-content max-content minmax(320px,1fr) max-content;align-items:end;gap:14px; }
.report-filter-intro { display:grid;align-self:center;gap:3px; }
.report-filter-intro > strong { color:var(--ink);font-size:.76rem;white-space:nowrap; }
.filter-mode-switch { display:inline-grid;min-width:0;grid-template-columns:repeat(2,1fr);gap:4px;margin:0;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft); }
.filter-mode-option { display:block;cursor:pointer; }
.filter-mode-option input { position:absolute;width:1px;height:1px;overflow:hidden;opacity:0; }
.filter-mode-option span { display:flex;min-height:34px;align-items:center;justify-content:center;gap:7px;padding:6px 12px;border-radius:8px;color:var(--ink-soft);font-size:.66rem;font-weight:800;white-space:nowrap;transition:.18s ease; }
.filter-mode-option input:checked + span { color:#fff;background:var(--brand);box-shadow:0 5px 12px color-mix(in srgb,var(--brand) 24%,transparent); }
.filter-mode-option input:focus-visible + span { outline:3px solid color-mix(in srgb,var(--brand) 22%,transparent);outline-offset:2px; }
.auto-filter-note { display:inline-flex;align-self:center;align-items:center;gap:6px;color:var(--success);font-size:.62rem;font-weight:750;white-space:nowrap; }
.auto-filter-note i { font-size:.58rem; }
.report-filter-fields { display:grid;min-width:0;grid-template-columns:repeat(2,minmax(145px,1fr));gap:10px;align-items:end; }
.report-date-range { display:contents; }
.report-month-field { grid-column:1/-1; }
.report-date-range[hidden],.report-month-field[hidden] { display:none; }
.ledger-history-filters { grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); }
.store-tabs-panel { margin-bottom:17px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-sm); }
.store-tabs { display:flex;gap:7px;overflow-x:auto;padding:10px;scrollbar-width:thin; }
.store-tab { display:inline-flex;min-height:42px;flex:0 0 auto;align-items:center;gap:8px;padding:7px 13px;border:1px solid transparent;border-radius:11px;color:var(--ink-soft);background:transparent;font-size:.72rem;font-weight:750;white-space:nowrap;transition:.18s ease; }
.store-tab:hover { color:var(--brand);background:var(--brand-soft); }
.store-tab:focus-visible { outline:3px solid color-mix(in srgb,var(--brand) 24%,transparent);outline-offset:1px; }
.store-tab.active { color:var(--brand);border-color:color-mix(in srgb,var(--brand) 28%,var(--line));background:var(--brand-soft); }
.store-tab-mark { width:24px;height:24px;display:grid;place-items:center;border-radius:8px;color:var(--brand);background:color-mix(in srgb,var(--brand) 11%,var(--panel));font-size:.62rem;font-weight:850; }
.table-panel { overflow:hidden; }
.app-table { margin:0;--bs-table-bg:transparent;--bs-table-color:var(--ink); }
.app-table thead th { padding:11px 17px;border-color:var(--line);color:var(--ink-soft);background:var(--panel-soft);font-size:.61rem;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap; }
.app-table tbody td { padding:13px 17px;border-color:var(--line);font-size:.73rem;white-space:nowrap; }
.app-table tbody tr:last-child td { border-bottom:0; }
.app-table tbody tr:hover { background:color-mix(in srgb,var(--brand-soft) 38%,transparent); }
.app-table td small { display:block;margin-top:2px;color:var(--ink-soft);font-size:.6rem; }
.app-table .serial-column { width:1%;text-align:center; }
.expense-toggle { display:inline-flex;min-height:32px;align-items:center;justify-content:flex-end;gap:8px;padding:5px 8px 5px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--panel-soft);font-size:.71rem;font-weight:750;white-space:nowrap;transition:.18s ease; }
.expense-toggle:hover { color:var(--brand);border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:var(--brand-soft); }
.expense-toggle:focus-visible { outline:3px solid color-mix(in srgb,var(--brand) 22%,transparent);outline-offset:1px; }
.expense-toggle i { width:17px;height:17px;display:grid;place-items:center;border-radius:6px;color:var(--brand);background:var(--brand-soft);font-size:.52rem;transition:transform .18s ease; }
.expense-toggle[aria-expanded="true"] i { transform:rotate(180deg); }
.expense-empty { display:inline-block;padding-right:26px; }
.expense-detail-row[hidden] { display:none; }
.app-table tbody tr.expense-detail-row:hover { background:transparent; }
.app-table tbody td.expense-detail-cell { padding:0;border-bottom:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));white-space:normal;background:color-mix(in srgb,var(--brand-soft) 33%,var(--panel)); }
.expense-breakdown { padding:17px 20px 19px 72px; }
.expense-breakdown-heading { display:flex;align-items:center;gap:11px;margin-bottom:12px; }
.expense-breakdown-icon { width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;color:var(--brand);background:var(--brand-soft); }
.expense-breakdown-heading > div { min-width:0; }
.expense-breakdown-heading > div > span,.expense-breakdown-heading > div > strong,.expense-breakdown-heading > div > small { display:block; }
.expense-breakdown-heading > div > span { color:var(--ink-soft);font-size:.58rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em; }
.expense-breakdown-heading > div > strong { margin-top:2px;font-size:.76rem; }
.expense-breakdown-heading > div > small { margin-top:2px;color:var(--ink-soft);font-size:.62rem; }
.expense-count { margin-left:auto;padding:5px 8px;border-radius:99px;color:var(--brand);background:var(--brand-soft);font-size:.59rem;font-weight:800;white-space:nowrap; }
.expense-list { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px; }
.expense-item { display:flex;min-width:0;align-items:center;justify-content:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel); }
.expense-item-number { width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:var(--brand);background:var(--brand-soft);font-size:.61rem;font-weight:850;font-variant-numeric:tabular-nums; }
.expense-item > div { min-width:0;flex:1 1 auto;text-align:left; }
.expense-item strong,.expense-item small { display:block; }
.expense-item > div > strong { overflow:hidden;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap; }
.expense-item small { margin-top:2px;color:var(--ink-soft);font-size:.59rem; }
.expense-item > strong { flex:0 0 auto;margin-left:auto;font-size:.7rem;text-align:right; }
.expense-breakdown-total { display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:.67rem; }
.expense-breakdown-total span { color:var(--ink-soft); }
.expense-breakdown-total strong { font-size:.74rem; }
.loading-row { display:flex;align-items:center;justify-content:center;gap:8px;padding:42px;color:var(--ink-soft); }
.report-total-grid { display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:17px; }
.report-total { padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm); }
.report-total span { display:block;color:var(--ink-soft);font-size:.63rem; }.report-total strong{display:block;margin-top:4px;font-size:.91rem;white-space:nowrap}

.store-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px; }
.store-card { padding:19px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-sm); }
.store-card-top { display:flex;justify-content:space-between;align-items:center;margin-bottom:17px; }
.store-icon { width:41px;height:41px;display:grid;place-items:center;border-radius:13px;color:var(--brand);background:var(--brand-soft); }
.store-card h2 { margin:4px 0;font-size:1.08rem;letter-spacing:-.03em; }.store-card p{height:36px;margin:0;color:var(--ink-soft);font-size:.7rem}
.store-meta { display:grid;grid-template-columns:1fr 1fr;margin:16px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.store-meta div+div{padding-left:15px;border-left:1px solid var(--line)}.store-meta span,.store-meta strong{display:block}.store-meta span{color:var(--ink-soft);font-size:.61rem}.store-meta strong{margin-top:3px;font-size:.78rem}
.modal-content { overflow:hidden;border:1px solid var(--line);border-radius:20px;color:var(--ink);background:var(--panel);box-shadow:var(--shadow-lg); }
.modal-header,.modal-footer { padding:18px 20px;border-color:var(--line); }.modal-body{padding:20px}
.modal-title { margin:3px 0 0;font-size:1.1rem;font-weight:760; }
.user-cell { display:flex;align-items:center;gap:10px; }.user-cell strong,.user-cell small{display:block}.user-cell strong{font-size:.75rem}.user-cell small{margin-top:2px;color:var(--ink-soft);font-size:.61rem}
.role-pill { display:inline-flex;align-items:center;gap:5px;color:var(--brand);font-size:.67rem;font-weight:700; }.role-pill i{font-size:.6rem}
.access-note { display:flex;align-items:flex-start;gap:10px;margin:16px 0 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--brand) 6%,var(--surface));color:var(--ink-soft);font-size:.78rem; }
.access-note i { margin-top:2px;color:var(--brand); }
.permission-editor { margin-top:20px; }
.permission-editor-heading { display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px; }
.permission-editor-heading h3 { margin:2px 0 0;font-size:1rem; }
.permission-editor-heading > small { color:var(--ink-soft);font-size:.7rem;text-align:right; }
.permission-groups { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.permission-card { min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-subtle); }
.permission-card:first-child { grid-column:1/-1; }
.permission-card legend { float:none;width:auto;margin:0 0 8px;padding:0;color:var(--ink-soft);font-size:.64rem;font-weight:800;letter-spacing:.09em; }
.permission-option { display:flex;align-items:flex-start;gap:9px;margin:0;padding:8px;border-radius:9px;cursor:pointer; }
.permission-option:hover { background:var(--surface); }
.permission-option input { margin-top:3px;accent-color:var(--brand); }
.permission-option span,.permission-option strong,.permission-option small { display:block;min-width:0; }
.permission-option strong { color:var(--ink);font-size:.76rem; }
.permission-option small { margin-top:1px;color:var(--ink-soft);font-size:.62rem;overflow-wrap:anywhere; }
.permission-option.is-unavailable { display:none; }
.table-actions { display:flex;justify-content:flex-end;gap:5px; }.table-actions form{display:inline-flex}
.request-list { display:grid;gap:14px; }
.request-card { padding:19px; }
.request-top { display:flex;align-items:center;justify-content:space-between;gap:15px; }
.request-body { display:grid;grid-template-columns:1fr 1.4fr;gap:14px;margin:16px 0; }
.request-body>div { padding:13px;border-radius:12px;background:var(--panel-soft); }
.request-body span { color:var(--brand);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }.request-body p{margin:6px 0 0;color:var(--ink);font-size:.72rem;line-height:1.55}
.admin-note { display:flex;gap:10px;padding:12px;border-radius:12px;color:var(--success);background:var(--success-soft);font-size:.7rem; }.admin-note strong{display:block;margin-bottom:3px}
.decision-form { display:grid;grid-template-columns:1fr auto auto auto;gap:8px;padding-top:16px;border-top:1px solid var(--line); }
.audit-timeline { padding:0 22px 20px; }
.audit-timeline article { position:relative;display:grid;grid-template-columns:34px 1fr;gap:11px;padding:13px 0; }
.audit-timeline article:not(:last-child):after { content:"";position:absolute;left:16px;top:47px;bottom:-3px;width:1px;background:var(--line); }
.audit-dot { width:34px;height:34px;display:grid;place-items:center;z-index:1;border-radius:11px;color:var(--brand);background:var(--brand-soft);font-size:.7rem; }
.audit-content { min-width:0;padding:3px 0 13px;border-bottom:1px solid var(--line);font-size:.72rem; }.audit-content>small{display:block;margin-top:4px;color:var(--ink-soft);font-size:.6rem}.audit-content p{display:flex;gap:6px;margin:8px 0 0;color:var(--ink-soft);font-size:.66rem}.audit-content details{margin-top:8px}.audit-content summary{cursor:pointer;color:var(--brand);font-size:.62rem;font-weight:700}.audit-content pre{max-height:260px;overflow:auto;margin-top:8px;padding:12px;border-radius:10px;color:var(--ink);background:var(--canvas);font-size:.61rem}
.settings-panel { max-width:860px;padding-bottom:0;overflow:hidden; }.settings-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:16px 22px;border-top:1px solid var(--line);background:var(--panel-soft)}.settings-footer span{color:var(--ink-soft);font-size:.67rem}.settings-footer i{margin-right:5px;color:var(--brand)}
.backup-panel { margin-top:18px; }
.backup-body { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 22px 22px; }
.backup-body strong { display:block;font-size:.84rem; }
.backup-body p { max-width:570px;margin:5px 0 0;color:var(--ink-soft);font-size:.71rem;line-height:1.55; }
.backup-body .btn { flex:0 0 auto; }
.danger-zone{margin-top:24px;border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}.danger-zone .step-number{color:var(--danger);background:color-mix(in srgb,var(--danger) 11%,var(--panel))}.danger-zone-body{padding:0 22px 22px}.danger-zone-body>p{margin:0 0 14px;color:var(--ink-soft);font-size:.76rem;line-height:1.65}.reset-preserves{display:flex;align-items:flex-start;gap:11px;margin-bottom:20px;padding:14px;border:1px solid color-mix(in srgb,var(--success) 24%,var(--line));border-radius:12px;color:var(--ink-soft);background:color-mix(in srgb,var(--success) 6%,var(--panel));font-size:.72rem;line-height:1.55}.reset-preserves>i{margin-top:2px;color:var(--success)}.reset-preserves strong{display:block;color:var(--ink)}.reset-fields{padding:0}.reset-acknowledgement{display:flex;align-items:flex-start;gap:9px;margin-top:16px;color:var(--ink-soft);font-size:.7rem;line-height:1.5}.reset-acknowledgement input{margin-top:3px;accent-color:var(--danger)}.danger-footer{margin-inline:-22px;margin-bottom:-22px;background:color-mix(in srgb,var(--danger) 5%,var(--panel))}.danger-footer span i{color:var(--danger)}
.error-state { min-height:60vh; }.error-state .btn{margin-top:16px}

.guest-body { background:#f6f5fb; }
.login-shell { display:grid;grid-template-columns:minmax(410px,1.08fr) minmax(420px,.92fr);min-height:100vh;min-height:100dvh; }
.login-story { position:relative;display:flex;flex-direction:column;overflow:hidden;padding:42px 54px;color:#fff;background:radial-gradient(circle at 10% 15%,rgba(130,105,239,.45),transparent 28%),radial-gradient(circle at 90% 70%,rgba(88,187,210,.18),transparent 30%),linear-gradient(145deg,#211a41,#121022 75%); }
.login-story:after { content:"";position:absolute;width:350px;height:350px;right:-160px;top:16%;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018); }
.login-brand { position:relative;z-index:1;display:flex;align-items:center;gap:11px; }.login-brand strong{display:block}.login-brand small{display:block;color:#aaa5c1;font-size:.66rem;letter-spacing:.05em}
.story-content { position:relative;z-index:1;max-width:560px;margin:auto 0; }
.story-content h1 { margin:13px 0 19px;font-size:clamp(2.6rem,5vw,4.7rem);line-height:.99;letter-spacing:-.065em;font-weight:780; }
.story-content p { max-width:510px;color:#bbb6cd;font-size:.94rem;line-height:1.7; }
.story-metrics { display:flex;gap:46px;margin-top:39px; }.story-metrics strong,.story-metrics span{display:block}.story-metrics strong{font-size:1.25rem}.story-metrics span{margin-top:2px;color:#8f89a2;font-size:.65rem}
.story-footer { position:relative;z-index:1;color:#8d879e;font-size:.65rem; }.story-footer i{margin-right:6px;color:#a99cff}
.login-panel { display:grid;place-items:center;padding:42px;background:#fff; }
.login-card { width:min(390px,100%); }
.login-card h2 { margin:7px 0 6px;font-size:1.78rem;letter-spacing:-.045em;font-weight:760; }.login-card>p{margin-bottom:28px;font-size:.78rem}
.login-card .form-label { margin-bottom:7px;color:#272238;font-size:.7rem;font-weight:720; }
.input-icon { position:relative; }.input-icon>i{position:absolute;z-index:2;left:14px;top:50%;transform:translateY(-50%);color:#8a849c;font-size:.75rem}.input-icon .form-control{min-height:49px;padding-left:40px;color:#17142b;background:#fbfaff;border-color:#e6e2ed}
.password-toggle { position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;color:#8a849c;background:transparent; }.input-icon input[type=password],.input-icon input[type=text]{padding-right:44px}
.login-help { margin:18px 0 0!important;text-align:center;color:#8a849c;font-size:.65rem!important; }.login-help i{margin-right:4px}
.btn-app-download { display:flex;align-items:center;justify-content:center;gap:7px;min-height:47px;color:#4b3cac;border:1px solid #ded8fa;background:#f4f1ff; }
.btn-app-download:hover { color:#fff;border-color:#6756d8;background:#6756d8; }
.btn-app-download small { margin-left:auto;padding-left:9px;border-left:1px solid currentColor;font-size:.6rem;opacity:.75; }
.login-brand.compact { margin-bottom:35px;color:#17142b; }
.setup-shell { display:grid;place-items:center;min-height:100vh;padding:24px; }.setup-card{max-width:560px;padding:36px;border:1px solid #e5e1ef;border-radius:22px;background:#fff;box-shadow:var(--shadow-lg)}.setup-card .brand-mark{margin-bottom:22px}.setup-card h1{margin:8px 0;font-size:1.7rem}.setup-card p{color:#68647a;line-height:1.6}.setup-card code,.setup-card pre{color:#4b3cac;background:#f0edff}.setup-card pre{padding:12px;border-radius:10px;white-space:pre-wrap}
.mobile-header { position:sticky;top:0;z-index:1025;min-height:64px;padding:0 17px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 91%,transparent);backdrop-filter:blur(14px); }
.mobile-header .brand-mark { width:34px;height:34px;border-radius:11px; }.mobile-header .brand strong{font-size:.94rem}
.bottom-nav { position:fixed;z-index:1040;right:0;bottom:0;left:0;min-height:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom));padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));justify-content:space-around;align-items:end;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 -8px 28px rgba(25,18,57,.09);backdrop-filter:blur(16px); }
.bottom-nav a,.bottom-nav form,.bottom-nav button { flex:1;min-width:0; }
.bottom-nav a,.bottom-nav button { display:flex;min-height:48px;padding:3px 0;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;color:var(--ink-soft);background:transparent;font-size:.57rem;font-weight:700; }
.bottom-nav i { font-size:.91rem; }.bottom-nav .active{color:var(--brand)}
.bottom-nav .primary-action { position:relative;top:-12px;color:var(--ink); }.bottom-nav .primary-action i{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));box-shadow:0 9px 24px color-mix(in srgb,var(--brand) 35%,transparent)}
.toast { overflow:hidden;border:1px solid var(--line);border-radius:13px;color:var(--success);background:var(--panel);box-shadow:var(--shadow-lg);font-size:.75rem;font-weight:650; }.toast.error{color:var(--danger)}

@media (min-width: 992px) and (max-width: 1280px) {
  .report-filter-toolbar { grid-template-columns:max-content minmax(290px,1fr) max-content;gap:10px; }
  .report-filter-intro { display:none; }
  .filter-mode-option span { padding-inline:9px; }
}
@media (min-width: 992px) and (max-width: 1100px) {
  .report-filter-toolbar { grid-template-columns:max-content minmax(280px,1fr); }
  .auto-filter-note { display:none; }
}
@media (max-width: 1280px) {
  .metric-grid { grid-template-columns:repeat(3,1fr); }
  .metric-card { min-height:135px; }
  .report-total-grid { grid-template-columns:repeat(3,1fr); }
  .report-filters { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 991.98px) {
  .main-content { margin-left:0; }
  .content-wrap { padding:24px 17px calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 16px); }
  .mobile-header { display:flex!important; }
  .bottom-nav { display:flex!important; }
  .ledger-layout { grid-template-columns:1fr; }
  .ledger-summary { position:static;grid-row:auto; }
  .closing-card { padding:22px; }.closing-card>strong{font-size:2.15rem}.formula-note{margin:12px -22px -22px}
  .dashboard-grid,.dashboard-grid.lower { grid-template-columns:1fr; }
  .status-strip > div { gap:7px;padding-inline:10px; }
  .status-strip .status-icon { width:30px;height:30px;flex:0 0 auto; }
  .status-strip .overall-stat strong { font-size:.68rem; }
  .login-shell { grid-template-columns:1fr; }
  .login-story { display:none; }
  .login-panel { min-height:100vh;min-height:100dvh;padding:28px 22px calc(28px + env(safe-area-inset-bottom)); }
  .store-grid { grid-template-columns:repeat(2,1fr); }
  .filter-grid,.report-filters { grid-template-columns:repeat(2,1fr); }
  .report-filter-toolbar { grid-template-columns:1fr 1fr;align-items:end; }
  .report-filter-intro { grid-column:1/-1; }
  .auto-filter-note { justify-self:end; }
  .report-filter-fields { grid-template-columns:repeat(2,1fr); }
  .filter-grid .btn { align-self:end; }
  .expense-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
  .page-heading { align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:20px; }
  .page-heading .btn { width:100%; }
  .backup-body { align-items:stretch;flex-direction:column; }
  .backup-body .btn { width:100%; }
  .heading-actions { width:100%;display:grid;grid-template-columns:repeat(3,1fr); }.heading-actions .btn{padding:.55rem .4rem}
  .report-filter-toolbar { display:flex;align-items:stretch;flex-direction:column; }
  .filter-mode-switch { width:100%; }
  .auto-filter-note { margin-left:0;justify-content:center; }
  .status-strip { grid-template-columns:repeat(3,1fr); }.status-strip .workflow-stat,.status-strip .overall-stat{grid-column:span 1}.status-strip>div{min-height:69px;padding:10px;flex-direction:column;text-align:center;gap:5px}.status-strip .status-action{display:none}.overall-stat strong{font-size:.72rem}
  .metric-grid { grid-template-columns:repeat(2,1fr);gap:10px; }.metric-card{min-height:129px;padding:14px}.metric-card>strong{font-size:1rem}
  .form-grid.columns-3 { grid-template-columns:repeat(2,1fr); }
  .sales-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:
      "total card"
      "upi upi"
      "total-sum total-sum";
  }
  .closing-card {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:
      "eyebrow"
      "amount"
      "state"
      "formula"
      "note";
    row-gap:0;
  }
  .formula-list { margin-top:22px;padding:13px 0 0;border-top:1px solid rgba(255,255,255,.12);border-left:0; }
  .additional-notes { max-width:none; }
  .summary-actions,.summary-actions.locked-actions { grid-template-columns:1fr; }
  .dynamic-row,.dynamic-row.expense-row { grid-template-columns:1fr 110px 35px; }.dynamic-row.expense-row label:first-child{grid-column:1/-1}.dynamic-row.expense-row .remove-row{grid-column:3;grid-row:2}
  .store-grid { grid-template-columns:1fr; }
  .report-total-grid { display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:5px; }.report-total{min-width:145px;scroll-snap-align:start}
  .expense-breakdown { padding:15px; }
  .expense-list { grid-template-columns:1fr; }
  .request-body { grid-template-columns:1fr; }.decision-form{grid-template-columns:1fr 1fr}.decision-form .form-control{grid-column:1/-1}
  .dashboard-actions { display:grid;grid-template-columns:1fr;width:100%; }
  .month-selector { display:grid;grid-template-columns:1fr auto;width:100%; }
  .month-selector > label { grid-column:1/-1;padding:2px 2px 0; }
  .month-selector .form-control { width:100%; }
  .month-selector .btn { width:auto; }
  .store-expense-summary { scroll-snap-type:x mandatory; }
  .store-expense-card { min-width:205px;flex-basis:205px; }
  .store-expense-panel .panel-heading { align-items:stretch;flex-direction:column; }
  .expense-month-selector { display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%; }
  .expense-month-selector label { grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px; }
  .expense-month-selector .form-control { width:100%; }
  .expense-register-panel > .panel-heading { align-items:flex-start;flex-direction:column; }
  .expense-register-actions { width:100%;justify-content:space-between; }
  .expense-day-summary { grid-template-columns:minmax(0,1fr) auto 34px;gap:10px;padding:12px; }
  .expense-day-date { grid-column:1;grid-row:1; }
  .expense-day-facts { grid-column:1/-1;grid-row:2; }
  .expense-day-total { grid-column:2;grid-row:1; }
  .expense-day-chevron { grid-column:3;grid-row:1; }
  .expense-detail-list { grid-template-columns:1fr; }
  .store-sales-pie-layout { grid-template-columns:1fr;padding:0 16px 18px; }
  .store-sales-pie-visual { width:100%;max-width:280px;height:235px;margin:0 auto 5px; }
}
@media (max-width: 479.98px) {
  .content-wrap { padding-inline:13px; }
  .page-heading h1 { font-size:1.45rem; }
  .panel-heading { padding:17px 16px 13px; }
  .store-sales-legend-head,.store-sales-legend-row { grid-template-columns:minmax(0,1fr) 46px minmax(82px,auto);gap:6px; }
  .form-grid,.dynamic-list { padding-inline:15px; }
  .form-grid.columns-2,.form-grid.columns-3 { grid-template-columns:1fr; }
  .permission-groups { grid-template-columns:1fr; }
  .permission-card:first-child { grid-column:auto; }
  .permission-editor-heading { align-items:flex-start;flex-direction:column;gap:4px; }
  .permission-editor-heading > small { text-align:left; }
  .ledger-main .form-panel > .panel-heading { min-height:auto; }
  .sales-grid {
    grid-template-areas:
      "total"
      "card"
      "upi"
      "total-sum";
  }
  .additional-notes { padding-inline:15px; }
  .summary-actions { grid-template-columns:1fr; }
  .dynamic-row,.dynamic-row.expense-row { grid-template-columns:1fr 35px; }.dynamic-row label{grid-column:1}.dynamic-row .remove-row{grid-column:2;grid-row:2;align-self:end}.dynamic-row.expense-row .remove-row{grid-column:2;grid-row:3}
  .filter-grid,.report-filters { grid-template-columns:1fr 1fr; }.filter-grid .field:first-of-type{grid-column:1/-1}.filter-grid .btn{grid-column:1/-1}
  .report-filter-fields { grid-template-columns:1fr; }
  .chart-wrap { height:250px;padding-inline:10px; }
  .login-panel { align-items:start;padding-top:55px; }
  .login-card h2 { font-size:1.55rem; }
  .modal-dialog { margin:10px; }
  .recent-expense-item { grid-template-columns:auto minmax(0,1fr); }
  .recent-expense-item .expense-amount { grid-column:2; }
  .expense-pagination { align-items:stretch;flex-direction:column; }
  .expense-pagination > div { display:grid;grid-template-columns:1fr 1fr; }
  .expense-register-actions .panel-chip { min-width:0;overflow:hidden;text-overflow:ellipsis; }
  .expense-day-list { padding:10px; }
  .expense-date-tile { width:42px;height:42px;border-radius:10px; }
  .expense-day-facts { overflow-x:auto;padding-bottom:1px;scrollbar-width:none; }
  .expense-day-facts::-webkit-scrollbar { display:none; }
  .expense-day-details { padding:11px; }
  .expense-detail-heading small { display:none; }
  .expense-detail-item { column-gap:8px;padding:9px; }
  .expense-day-footer { justify-content:space-between; }
}

/* The native client identifies itself through its existing WebView user agent.
   These layout-only rules keep the PC browser presentation independent. */
@media (max-width: 767.98px) {
  .android-app .content-wrap {
    padding:18px 12px calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 8px);
  }
  .android-app .ledger-heading {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:8px 12px;
    margin-bottom:14px;
  }
  .android-app .ledger-heading > div { min-width:0; }
  .android-app .ledger-heading .status-badge {
    grid-column:2;
    grid-row:1;
    align-self:start;
  }
  .android-app .ledger-layout { gap:12px; }
  .android-app .ledger-main { gap:12px; }
  .android-app .ledger-main .form-panel { padding-bottom:16px; }
  .android-app .ledger-main .form-panel > .panel-heading {
    min-height:auto;
    padding:14px 14px 12px;
  }
  .android-app .form-grid,
  .android-app .dynamic-list {
    gap:10px;
    padding-inline:14px;
  }
  .android-app .additional-notes { padding-inline:14px; }
  .android-app .cash-rule { margin:14px 14px 0; }
  .android-app .summary-actions {
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px;
    padding:10px;
  }
  .android-app .summary-actions.locked-actions {
    grid-template-columns:1fr;
  }
  .android-app .summary-actions .btn {
    min-width:0;
    min-height:68px;
    padding:9px 5px;
    flex-direction:row;
    gap:9px;
    white-space:normal;
    line-height:1.25;
  }
  .android-app .summary-actions #draftSaveStatus,
  .android-app .summary-actions #submitLedger,
  .android-app .summary-actions .action-note {
    grid-column:1/-1;
    width:100%;
  }
  .android-app .summary-actions #submitLedger {
    max-width:none;
    min-height:72px;
    padding:16px 18px;
    box-sizing:border-box;
    flex-flow:row nowrap;
    font-size:clamp(.8rem,3.8vw,.95rem);
  }
  .android-app .summary-actions #submitLedger span {
    white-space:normal;
    text-wrap:balance;
  }
  .android-app .summary-actions .btn i { margin-right:0; }
}

@media (max-width: 479.98px) {
  .android-app .form-grid.columns-2,
  .android-app .form-grid.columns-3 {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .android-app .ledger-main .form-panel:nth-child(1) .form-grid > :nth-child(3),
  .android-app .ledger-main .form-panel:nth-child(7) .form-grid > :nth-child(3) {
    grid-column:1/-1;
  }
  .android-app .sales-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:
      "total card"
      "upi upi"
      "total-sum total-sum";
  }
  .android-app .dynamic-row,
  .android-app .dynamic-row.expense-row {
    grid-template-columns:minmax(0,1fr) minmax(88px,.52fr) auto;
    gap:7px;
    padding:10px;
  }
  .android-app .dynamic-row label,
  .android-app .dynamic-row .remove-row {
    grid-column:auto;
    grid-row:auto;
  }
  .android-app .dynamic-row.expense-row label:first-child {
    grid-column:1/-1;
  }
  .android-app .dynamic-row.expense-row .remove-row {
    grid-column:3;
    grid-row:2;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important; }
}

/* Daily closing: compact blue mobile-first workflow. */
.closing-page {
  --closing-blue:#1976e9;
  --closing-blue-dark:#0758b8;
  --closing-blue-soft:#edf6ff;
  --closing-line:#d8e3f0;
  --closing-green:#087b48;
}
.closing-page-heading { align-items:center;margin-bottom:18px; }
.closing-page-heading h1 { margin-top:3px;font-size:1.45rem; }
.closing-page .ledger-layout { grid-template-columns:minmax(0,1fr) 350px;gap:18px; }
.closing-page .ledger-main { gap:14px; }
.closing-page .ledger-main .form-panel { overflow:hidden;padding-bottom:20px;border-color:var(--closing-line);border-radius:17px;box-shadow:0 5px 22px rgba(23,75,126,.045); }
.closing-section-heading { display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:17px 20px 15px; }
.closing-section-heading h2 { margin:2px 0 0;font-size:.98rem;font-weight:780;letter-spacing:-.025em; }
.closing-step { width:34px;height:34px;display:grid;place-items:center;border:1.5px solid var(--closing-blue);border-radius:10px;color:var(--closing-blue);background:#fff;font-size:.78rem;font-weight:850; }
.closing-page .eyebrow { color:var(--closing-blue);font-size:.6rem;letter-spacing:.1em; }
.closing-page .live-label { justify-self:end;color:var(--closing-blue);white-space:nowrap; }
.closing-page .form-grid,.closing-page .dynamic-list { padding-inline:20px; }
.closing-page .field > span,.closing-page .dynamic-row label > span { margin-bottom:6px;color:var(--ink-soft);font-size:.68rem;font-weight:750; }
.closing-page .field > span small { display:inline;margin:0 0 0 4px;color:var(--ink-soft);font-size:.56rem;font-weight:650; }
.closing-page .form-control,.closing-page .form-select { min-height:46px;padding:.67rem .78rem;border-color:var(--closing-line);border-radius:10px;background:var(--panel);font-size:.84rem;font-weight:620; }
.closing-page .form-control:not([readonly]):hover,.closing-page .form-select:not(:disabled):hover { border-color:#abc5df; }
.closing-page .form-control:focus,.closing-page .form-select:focus { border-color:var(--closing-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--closing-blue) 13%,transparent); }
.closing-page .form-control[readonly],.closing-page .form-control:disabled,.closing-page .form-select:disabled { color:var(--ink);border-color:#dce7f2;background:#f0f5fa; }
.closing-page .money-input > span { left:13px;color:#718096; }
.closing-page .money-input .form-control { padding-left:31px;text-align:right;font-variant-numeric:tabular-nums; }
.closing-page .calc-input { color:var(--ink);background:var(--panel); }
.closing-page .primary-entry .form-control { border-color:color-mix(in srgb,var(--closing-blue) 54%,var(--closing-line));box-shadow:inset 3px 0 var(--closing-blue);font-weight:800; }
.closing-page .calculated-field { padding:10px;border:1px solid #bdd8f6;border-radius:12px;background:var(--closing-blue-soft); }
.closing-page .calculated-field .form-control { color:#24517d;border-color:transparent;background:transparent;font-weight:800; }
.closing-page .calculated-field small { color:#6b849c; }
.closing-page .sales-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-areas:
    "total total total-sum total-sum"
    "card card upi upi";
}
.closing-page .sales-grid > .total-sale-entry { grid-area:total; }
.closing-page .sales-grid > .card-sale-entry { grid-area:card; }
.closing-page .sales-grid > .upi-sale-entry { grid-area:upi; }
.closing-page .sales-grid > .total-sum-field { grid-area:total-sum; }

.closing-start-panel { color:#fff;border:0!important;background:radial-gradient(circle at 94% 5%,rgba(255,255,255,.17),transparent 28%),linear-gradient(135deg,var(--closing-blue),#0b63ca);box-shadow:0 14px 32px rgba(12,97,197,.2)!important; }
.closing-start-panel .closing-section-heading { padding-bottom:8px; }
.closing-start-panel .closing-step { color:#fff;border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.09); }
.closing-start-panel .eyebrow,.closing-start-panel .closing-section-heading h2 { color:#fff; }
.start-grid { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:20px;align-items:end;padding:8px 20px 2px; }
.start-details { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.closing-start-panel .field > span { color:rgba(255,255,255,.78); }
.closing-start-panel .form-control,.closing-start-panel .form-select { color:#fff;border-color:rgba(255,255,255,.32);background:rgba(8,68,138,.23); }
.closing-start-panel .form-control:focus,.closing-start-panel .form-select:focus { color:#fff;border-color:#fff;background:rgba(8,68,138,.34);box-shadow:0 0 0 3px rgba(255,255,255,.14); }
.closing-start-panel .form-control[readonly] { color:#fff;border-color:rgba(255,255,255,.2);background:rgba(8,68,138,.16); }
.closing-start-panel .form-select option { color:#172033;background:#fff; }
.opening-cash-block { display:flex;min-width:0;flex-direction:column;align-items:flex-end;padding:2px 0 4px;text-align:right; }
.opening-cash-block > span { color:rgba(255,255,255,.76);font-size:.66rem;font-weight:750;text-transform:uppercase;letter-spacing:.075em; }
.opening-cash-block > span i { margin-right:5px;font-size:.56rem; }
.opening-cash-value { display:block;max-width:100%;overflow:hidden;margin-top:3px;font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.1;letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums; }
.opening-cash-block small { margin-top:4px;color:rgba(255,255,255,.72);font-size:.58rem; }

.add-row-button { display:inline-flex;min-height:36px;align-items:center;gap:6px;padding:7px 10px;border:1px solid #b7d5f7;border-radius:10px;color:var(--closing-blue);background:var(--closing-blue-soft);font-size:.65rem;font-weight:800;white-space:nowrap; }
.add-row-button:hover { color:#fff;border-color:var(--closing-blue);background:var(--closing-blue); }
.closing-page .dynamic-list { gap:8px; }
.closing-page .dynamic-row { grid-template-columns:minmax(0,1.6fr) minmax(115px,.6fr) 38px;gap:8px;padding:11px;border-color:var(--closing-line);border-radius:12px;background:#f8fafc; }
.closing-page .dynamic-row.expense-row { grid-template-columns:minmax(105px,.55fr) minmax(0,1.35fr) minmax(115px,.6fr) 38px; }
.closing-page .dynamic-row .form-control,.closing-page .dynamic-row .form-select { min-height:44px; }
.closing-page .remove-row { width:38px;height:44px;border:1px solid #f2d6dc;border-radius:10px;color:#bd4059;background:#fff0f3; }
.closing-page .remove-row:hover { color:#fff;border-color:var(--danger);background:var(--danger); }
.closing-page .cash-result-panel { border-color:#bcd7f5; }
.closing-page .cash-result-panel .closing-result { border-color:#9dcaf4;background:#e3f1ff; }
.closing-page .cash-result-panel .closing-result .form-control { color:var(--closing-blue-dark); }
.closing-page .cash-rule { display:flex;justify-content:center;gap:10px 28px;flex-wrap:wrap;margin:16px 20px 0;padding:11px 13px;border-color:#d8e7f6;background:#f5f9fd;font-size:.63rem; }
.closing-page .additional-notes { max-width:none;margin:14px 0 0;padding-inline:20px; }

.closing-page .ledger-summary { position:sticky;top:96px;gap:12px; }
.closing-page .closing-card { display:block;padding:22px;border-radius:18px;color:#fff;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.17),transparent 32%),linear-gradient(145deg,#0c65ce,#0753ad);box-shadow:0 18px 38px rgba(8,77,157,.22); }
.summary-kicker { display:flex;align-items:center;justify-content:space-between;color:#cfe5ff;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em; }
.summary-kicker i { color:#fff; }
.closing-card-label { display:block;margin-top:18px;color:#cfe5ff;font-size:.68rem;font-weight:650; }
.closing-page .closing-card > strong { display:block;margin:2px 0 3px;font-size:clamp(1.75rem,2.7vw,2.35rem);line-height:1.13;letter-spacing:-.05em;font-variant-numeric:tabular-nums; }
.closing-page .closing-state { display:block;color:#bcd8f7;font-size:.58rem; }
.closing-page .formula-list { margin:18px 0 0;padding:13px 0 0;border-top:1px solid rgba(255,255,255,.18);border-left:0; }
.closing-page .formula-list div { padding:4px 0;color:#d2e6fd;font-size:.66rem;font-variant-numeric:tabular-nums; }
.closing-page .formula-list strong { color:#fff;font-size:.67rem; }
.closing-page .formula-list .minus strong { color:#ffced5; }
.closing-page .formula-list .plus strong { color:#bff3d9; }
.closing-page .formula-list .summary-divider { margin-top:8px;padding-top:11px;border-top:1px dashed rgba(255,255,255,.24);font-weight:800; }
.closing-page .summary-actions { gap:9px;padding:11px;border-color:var(--closing-line); }
.closing-page .summary-actions .btn { min-height:52px; }
.closing-submit-button { display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;border:1px solid #056a3d;border-radius:12px;background:linear-gradient(135deg,#087b48,#055d36);box-shadow:0 8px 18px rgba(5,107,61,.2);font-size:.76rem;font-weight:820; }
.closing-submit-button:hover,.closing-submit-button:focus { color:#fff;background:#055d36;transform:translateY(-1px); }
.closing-submit-button i { margin:0;font-size:1.05rem; }
.closing-page .action-note { padding:2px 5px;color:var(--ink-soft);font-size:.57rem; }

.closing-sheet-modal .modal-dialog { display:flex;align-items:center;min-height:calc(100% - 1rem);max-width:480px;margin:.5rem auto; }
.closing-sheet { position:relative;align-items:center;padding:25px 28px 22px;border-radius:24px!important;text-align:center; }
.sheet-handle { display:none;width:50px;height:5px;margin:-8px auto 22px;border-radius:99px;background:#cfd7e2; }
.sheet-close { position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;border-radius:50%;color:var(--ink-soft);background:var(--canvas); }
.closing-sheet-icon { width:50px;height:50px;display:grid;place-items:center;margin-bottom:14px;border-radius:16px;color:var(--closing-blue);background:var(--closing-blue-soft);font-size:1.05rem; }
.closing-sheet .modal-title { font-size:1.25rem;letter-spacing:-.03em; }
.confirm-closing-amount { display:block;margin:7px 0 19px;color:var(--closing-blue);font-size:clamp(2rem,8vw,2.75rem);line-height:1.05;letter-spacing:-.055em;font-variant-numeric:tabular-nums; }
.confirmation-note { display:grid;grid-template-columns:auto 1fr;gap:10px;width:100%;padding:13px;border-radius:13px;color:var(--ink-soft);background:#f2f5f8;text-align:left; }
.confirmation-note i { margin-top:3px;color:var(--closing-blue); }
.confirmation-note p { margin:0;font-size:.7rem;line-height:1.55; }
.confirmation-note strong { color:var(--ink); }
.confirm-submit-button { width:100%;min-height:52px;margin-top:19px;color:#fff;border-color:var(--closing-blue);border-radius:13px;background:linear-gradient(135deg,var(--closing-blue),#0861c8);font-weight:820; }
.confirm-submit-button:hover,.confirm-submit-button:focus { color:#fff;background:var(--closing-blue-dark); }
.sheet-cancel { margin-top:10px;padding:10px 18px;border:0;color:var(--closing-blue);background:transparent;font-size:.76rem;font-weight:800; }

.success-modal-dialog { max-width:470px; }
.success-dialog { align-items:center;padding:36px 30px 30px;border-radius:24px!important;text-align:center; }
.success-check { width:68px;height:68px;display:grid;place-items:center;margin-bottom:22px;border-radius:50%;color:#fff;background:#087b48;box-shadow:0 0 0 13px #e6f8ef,0 12px 28px rgba(8,123,72,.22);font-size:1.5rem; }
.success-dialog .modal-title { max-width:330px;font-size:1.45rem;line-height:1.2;letter-spacing:-.035em; }
.copy-status-pill { display:flex;align-items:center;gap:8px;margin:19px 0 30px;padding:9px 13px;border-radius:99px;color:#5d6878;background:#eef1f4;font-size:.67rem;font-weight:700; }
.copy-status-pill.warning { color:#986012;background:#fff3dc; }
.whatsapp-open-button { width:100%;min-height:52px;color:#087b48;border:1.5px solid #0a8d53;border-radius:13px;background:#fff;font-size:.86rem;font-weight:820; }
.whatsapp-open-button:hover,.whatsapp-open-button:focus { color:#fff;background:#087b48; }
.view-closing-report { display:inline-flex;align-items:center;gap:7px;margin-top:18px;padding:8px;color:var(--closing-blue);font-size:.73rem;font-weight:800; }

[data-bs-theme="dark"] .closing-page { --closing-line:#34465b;--closing-blue-soft:#182f49; }
[data-bs-theme="dark"] .closing-page .form-control,[data-bs-theme="dark"] .closing-page .form-select { background:#1d2531; }
[data-bs-theme="dark"] .closing-page .form-control[readonly],[data-bs-theme="dark"] .closing-page .form-control:disabled,[data-bs-theme="dark"] .closing-page .form-select:disabled { background:#18202a; }
[data-bs-theme="dark"] .closing-page .dynamic-row { background:#151c25; }
[data-bs-theme="dark"] .closing-page .calculated-field,[data-bs-theme="dark"] .closing-page .cash-rule { background:#172b40; }
[data-bs-theme="dark"] .closing-page .calculated-field .form-control { color:#aad3ff;background:transparent; }
[data-bs-theme="dark"] .closing-page .cash-result-panel .closing-result { background:#143a58; }
[data-bs-theme="dark"] .confirmation-note { background:#202936; }

@media (max-width:1199.98px) {
  .closing-page .ledger-layout { grid-template-columns:minmax(0,1fr) 315px; }
  .closing-page .sales-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:"total total-sum" "card upi";
  }
  .start-grid { grid-template-columns:minmax(0,1fr) minmax(235px,.65fr); }
}

@media (max-width:991.98px) {
  .closing-page .ledger-layout { grid-template-columns:1fr; }
  .closing-page .ledger-summary { position:static; }
  .closing-page .closing-card > strong { font-size:2.4rem; }
  .closing-page .formula-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px; }
  .closing-page .formula-list .summary-divider { margin-top:0;padding-top:4px;border-top:0; }
}

@media (max-width:767.98px) {
  .closing-page-heading { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:14px; }
  .closing-page-heading .status-badge { grid-column:2;grid-row:1; }
  .closing-page-heading p { font-size:.74rem;line-height:1.5; }
  .closing-page .ledger-layout,.closing-page .ledger-main { gap:11px; }
  .closing-page .ledger-main .form-panel { padding-bottom:16px;border-radius:15px; }
  .closing-section-heading { padding:14px 15px 12px; }
  .closing-section-heading h2 { font-size:.9rem; }
  .closing-page .form-grid,.closing-page .dynamic-list,.start-grid { padding-inline:15px; }
  .start-grid { grid-template-columns:1fr;gap:14px; }
  .opening-cash-block { align-items:flex-start;text-align:left; }
  .opening-cash-value { font-size:2rem; }
  .closing-page .cash-rule { align-items:flex-start;flex-direction:column;gap:4px;margin:14px 15px 0; }
  .closing-page .additional-notes { padding-inline:15px; }
  .closing-page .formula-list { grid-template-columns:1fr; }
  .closing-page .formula-list .summary-divider { margin-top:8px;padding-top:11px;border-top:1px dashed rgba(255,255,255,.24); }
  .closing-sheet-modal .modal-dialog { align-items:flex-end;min-height:100%;margin:0; }
  .closing-sheet { width:100%;padding:18px max(22px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));border-width:0;border-radius:25px 25px 0 0!important; }
  .sheet-handle { display:block; }
  .sheet-close { top:15px;right:max(15px,env(safe-area-inset-right)); }
  .success-dialog { margin:8px;padding:32px 22px calc(26px + env(safe-area-inset-bottom)); }
}

@media (max-width:575.98px) {
  .closing-page-heading h1 { font-size:1.45rem; }
  .closing-page-heading p { max-width:265px; }
  .closing-page .eyebrow { font-size:.56rem; }
  .closing-step { width:31px;height:31px;border-radius:9px;font-size:.72rem; }
  .closing-page .form-control,.closing-page .form-select { min-height:47px;font-size:16px;line-height:1.25; }
  .closing-page .form-control::placeholder { font-size:16px;font-weight:500; }
  .start-details { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
  .closing-start-panel .form-control,.closing-start-panel .form-select { padding-inline:10px;font-size:16px; }
  .opening-cash-block small { max-width:260px; }
  .closing-page .sales-grid { grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"total total-sum" "card upi"; }
  .closing-page .dynamic-row,.closing-page .dynamic-row.expense-row { grid-template-columns:minmax(0,1fr) minmax(92px,.52fr) 38px;gap:7px;padding:9px; }
  .closing-page .dynamic-row label { min-width:0;grid-column:auto;grid-row:auto; }
  .closing-page .dynamic-row .remove-row { grid-column:3;grid-row:1;align-self:end; }
  .closing-page .form-grid.columns-2 { grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }
  .closing-page .calculated-field { padding:8px; }
  .closing-page .closing-card { padding:20px 18px; }
  .closing-page .closing-card > strong { font-size:2rem; }
  .closing-page .summary-actions { padding:9px; }
  .closing-submit-button { min-height:58px!important;font-size:.78rem; }
  .add-row-button span { display:none; }
  .add-row-button { width:36px;padding:0;justify-content:center; }
  .confirm-closing-amount { font-size:2.35rem; }
}

@media (display-mode:standalone) and (max-width:991.98px) {
  .mobile-header { padding-top:env(safe-area-inset-top);min-height:calc(64px + env(safe-area-inset-top)); }
  .content-wrap { padding-right:max(17px,env(safe-area-inset-right));padding-left:max(17px,env(safe-area-inset-left)); }
}

/* Employee Ledger */
.employee-page-heading { align-items:center; }
.employee-directory-overview { display:grid;grid-template-columns:minmax(430px,1.05fr) minmax(470px,1fr);align-items:end;gap:14px;margin-bottom:17px;padding:15px 17px; }
.employee-summary-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.employee-summary-card { display:flex;min-height:70px;align-items:center;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft); }
.employee-summary-card > span:last-child { min-width:0; }
.employee-summary-card small,.employee-summary-card strong { display:block; }
.employee-summary-card small { overflow:hidden;color:var(--ink-soft);font-size:.57rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap; }
.employee-summary-card strong { margin-top:4px;overflow:hidden;font-size:.85rem;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap; }
.employee-filter-form { display:grid;grid-template-columns:minmax(210px,1.8fr) minmax(120px,.8fr) minmax(120px,.72fr);align-items:end;gap:10px; }
.employee-search-control { position:relative;display:block; }
.employee-search-control > i { position:absolute;z-index:2;top:50%;left:13px;transform:translateY(-50%);color:var(--ink-soft);font-size:.7rem; }
.employee-search-control .form-control { padding-left:36px; }
.employee-serial { width:64px;text-align:center!important;white-space:nowrap; }
.employee-table-panel > .panel-heading,.employee-ledger-table-panel > .panel-heading,.employee-import-preview > .panel-heading,.employee-import-history > .panel-heading { border-bottom:1px solid var(--line); }
.employee-name-cell { display:flex;min-width:190px;align-items:center;gap:10px; }
.employee-name-cell > span:last-child { min-width:0; }
.employee-name-cell strong,.employee-name-cell small { display:block; }
.employee-name-cell strong { overflow:hidden;max-width:220px;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap; }
.employee-avatar { width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;color:var(--brand);background:var(--brand-soft);font-size:.75rem;font-weight:850; }
.employee-avatar.large { width:52px;height:52px;border-radius:16px;font-size:1.05rem; }
.employee-id-chip { display:inline-flex;align-items:center;min-height:28px;padding:5px 8px;border:1px solid color-mix(in srgb,var(--brand) 23%,var(--line));border-radius:8px;color:var(--brand);background:var(--brand-soft);font-size:.64rem;font-weight:850;letter-spacing:.035em;white-space:nowrap; }
.employee-status { display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:99px;font-size:.63rem;font-weight:800;white-space:nowrap; }
.employee-status i { font-size:.38rem; }
.employee-status.active { color:var(--success);background:var(--success-soft); }
.employee-status.left { color:var(--ink-soft);background:var(--canvas); }
.balance-badge { display:inline-flex;align-items:center;justify-content:center;min-width:88px;padding:5px 8px;border-radius:8px;font-size:.68rem;font-weight:850;white-space:nowrap; }
.balance-badge.debit { color:var(--danger);background:var(--danger-soft); }
.balance-badge.credit { color:var(--success);background:var(--success-soft); }
.balance-badge.zero { color:var(--ink-soft);background:var(--canvas); }
.employee-row-actions { display:flex;align-items:center;justify-content:flex-end;gap:6px; }
.employee-row-actions .btn-sm { min-height:34px;padding:.42rem .65rem;border-radius:9px;font-size:.66rem; }
.employee-row-actions .icon-btn { width:34px;height:34px;border-radius:9px;font-size:.66rem; }
.employee-form-panel { max-width:980px;margin:0 auto;overflow:hidden; }
.employee-profile-form { padding-bottom:20px; }
.employee-notes-field { grid-column:1/-1; }
.employee-opening-section { display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:2px 22px 20px;padding:16px;border:1px solid color-mix(in srgb,var(--blue) 24%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--blue) 6%,var(--panel)); }
.employee-section-copy { display:flex;min-width:0;align-items:center;gap:12px; }
.employee-section-copy strong,.employee-section-copy small { display:block; }
.employee-section-copy strong { font-size:.77rem; }
.employee-section-copy small { margin-top:3px;color:var(--ink-soft);font-size:.63rem;line-height:1.5; }
.employee-opening-fields { display:grid;min-width:340px;grid-template-columns:1fr 1fr;gap:10px; }
.employee-form-footer,.employee-import-footer { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px;border-top:1px solid var(--line);background:var(--panel-soft); }
.employee-form-footer > span,.employee-import-footer > span { color:var(--ink-soft);font-size:.65rem; }
.employee-form-footer > span i,.employee-import-footer > span i { margin-right:5px;color:var(--brand); }
.employee-form-footer > div,.employee-import-footer > div { display:flex;gap:8px; }
.employee-profile-title { display:flex;min-width:0;align-items:center;gap:12px; }
.employee-profile-title > div { min-width:0; }
.employee-profile-title h1 { overflow:hidden;max-width:480px;text-overflow:ellipsis;white-space:nowrap; }
.employee-back-link { width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);background:var(--panel); }
.employee-back-link:hover { color:var(--brand);border-color:var(--brand); }
.employee-profile-grid { display:grid;grid-template-columns:minmax(235px,.64fr) minmax(0,1.7fr) minmax(210px,.58fr);gap:14px;margin-bottom:17px; }
.employee-balance-card { display:flex;min-height:154px;padding:20px;flex-direction:column;justify-content:center; }
.employee-balance-card > span { color:var(--ink-soft);font-size:.66rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em; }
.employee-balance-card > strong { display:block;margin-top:6px;font-size:1.55rem;letter-spacing:-.045em; }
.employee-balance-card > small { display:block;margin-top:10px;color:var(--ink-soft);font-size:.61rem;line-height:1.45; }
.employee-balance-card.debit { border-color:color-mix(in srgb,var(--danger) 28%,var(--line));background:linear-gradient(145deg,var(--panel),var(--danger-soft)); }
.employee-balance-card.debit > strong { color:var(--danger); }
.employee-balance-card.credit { border-color:color-mix(in srgb,var(--success) 28%,var(--line));background:linear-gradient(145deg,var(--panel),var(--success-soft)); }
.employee-balance-card.credit > strong { color:var(--success); }
.employee-detail-card { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;background:var(--line); }
.employee-detail-card > div { min-width:0;padding:15px;background:var(--panel); }
.employee-detail-card span:not(.employee-status),.employee-detail-card strong { display:block; }
.employee-detail-card > div > span { color:var(--ink-soft);font-size:.57rem;font-weight:750;text-transform:uppercase;letter-spacing:.055em; }
.employee-detail-card > div > strong { margin-top:5px;overflow:hidden;font-size:.69rem;text-overflow:ellipsis;white-space:nowrap; }
.employee-account-actions { display:grid;overflow:hidden;align-content:center; }
.employee-account-actions button { display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:15px;border:0;border-top:1px solid var(--line);color:var(--ink);background:var(--panel);text-align:left; }
.employee-account-actions button:first-child { border-top:0; }
.employee-account-actions button > i { width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:var(--brand);background:var(--brand-soft); }
.employee-account-actions button:hover { background:var(--panel-soft); }
.employee-account-actions strong,.employee-account-actions small { display:block; }
.employee-account-actions strong { font-size:.7rem; }.employee-account-actions small{margin-top:2px;color:var(--ink-soft);font-size:.58rem}
.employee-ledger-filters { margin-bottom:17px;padding:16px 17px 12px; }
.employee-ledger-filters form { display:grid;grid-template-columns:minmax(210px,1.35fr) minmax(130px,.7fr) minmax(128px,.6fr) minmax(128px,.6fr) minmax(145px,.75fr) auto;align-items:end;gap:9px; }
.employee-filter-period { margin-top:11px;padding-top:10px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.62rem;font-weight:700; }
.employee-filter-period i { margin-right:5px;color:var(--brand); }
.employee-field-muted { opacity:.52; }
.employee-ledger-totals { display:flex;gap:14px; }
.employee-ledger-totals span { color:var(--ink-soft);font-size:.62rem; }.employee-ledger-totals strong{margin-left:4px;color:var(--ink);font-size:.68rem}
.employee-ledger-table td { vertical-align:middle; }
.employee-ledger-table .employee-particulars { min-width:230px;max-width:390px;white-space:normal; }
.employee-particulars > strong,.employee-particulars > small { display:block; }
.employee-particulars > small { overflow:hidden;max-width:360px;text-overflow:ellipsis;white-space:nowrap; }
.category-chip { display:inline-flex;padding:5px 8px;border-radius:8px;color:var(--brand);background:var(--brand-soft);font-size:.61rem;font-weight:750;white-space:nowrap; }
.amount { font-weight:750;font-variant-numeric:tabular-nums; }.debit-amount{color:var(--danger)}.credit-amount{color:var(--success)}
.entry-state { display:inline-flex;margin-top:5px;padding:3px 6px;border-radius:6px;font-size:.54rem;font-weight:800; }
.entry-state.reversed { color:var(--danger);background:var(--danger-soft); }.entry-state.reversal{color:var(--warning);background:var(--warning-soft)}
.reversed-row { opacity:.72; }.reversed-row .employee-particulars > strong{text-decoration:line-through}.reversal-row{background:color-mix(in srgb,var(--warning-soft) 38%,transparent)}
.entry-locked { width:32px;height:32px;display:grid;place-items:center;margin-left:auto;color:var(--ink-soft);font-size:.6rem; }
.employee-ledger-table tfoot td { border-top:2px solid var(--line);border-bottom:0;background:var(--panel-soft);font-weight:800; }
.employee-transfer-history { margin-top:17px;overflow:hidden; }
.employee-transfer-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 20px; }
.employee-transfer-list > div { padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft); }
.employee-transfer-list span,.employee-transfer-list strong,.employee-transfer-list small { display:block; }
.employee-transfer-list .transfer-date { color:var(--brand);font-size:.57rem;font-weight:800;text-transform:uppercase; }.employee-transfer-list strong{margin-top:4px;font-size:.7rem}.employee-transfer-list strong i{margin-inline:5px;color:var(--ink-soft);font-size:.55rem}.employee-transfer-list small{margin-top:4px;color:var(--ink-soft);font-size:.59rem}
.employee-modal-form { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.employee-modal-wide { grid-column:1/-1; }
.employee-warning { display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px;border:1px solid color-mix(in srgb,var(--danger) 25%,var(--line));border-radius:11px;color:var(--danger);background:var(--danger-soft);font-size:.68rem;line-height:1.5; }
.employee-warning.neutral { color:var(--ink-soft);border-color:var(--line);background:var(--panel-soft); }.employee-warning.neutral i{color:var(--brand)}
.reverse-entry-label { margin:0 0 14px;color:var(--ink);font-size:.72rem;font-weight:750; }
.employee-import-grid { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:17px; }
.employee-import-panel,.employee-import-guide { overflow:hidden; }
.employee-import-form { display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 22px 22px; }
.employee-file-drop { min-height:150px;display:flex;grid-column:1/-1;align-items:center;justify-content:center;padding:22px;flex-direction:column;border:1px dashed color-mix(in srgb,var(--brand) 48%,var(--line));border-radius:14px;color:var(--ink-soft);background:var(--panel-soft);text-align:center;cursor:pointer; }
.employee-file-drop:hover { color:var(--brand);border-color:var(--brand);background:var(--brand-soft); }.employee-file-drop>i{font-size:1.5rem;color:var(--brand)}.employee-file-drop strong{margin-top:9px;color:var(--ink);font-size:.78rem}.employee-file-drop span{margin-top:3px;font-size:.62rem}.employee-file-drop input{width:100%;margin-top:12px;font-size:.68rem}
.employee-import-help { grid-column:1/-1;padding:11px 13px;border-radius:10px;color:var(--ink-soft);background:var(--brand-soft);font-size:.65rem;line-height:1.5; }
.employee-import-form > .btn { grid-column:1/-1; }
.employee-guide-list { display:grid;gap:0;padding:0 18px 20px; }
.employee-guide-list > div { display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:13px 3px;border-top:1px solid var(--line); }.employee-guide-list>div:first-child{border-top:0}.employee-guide-list>div>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:var(--brand);background:var(--brand-soft);font-size:.62rem;font-weight:850}.employee-guide-list p{margin:0;color:var(--ink-soft);font-size:.64rem;line-height:1.55}.employee-guide-list strong{display:block;margin-bottom:2px;color:var(--ink);font-size:.69rem}
.employee-import-preview { overflow:hidden; }
.employee-import-table td { white-space:normal; }.employee-import-table td strong,.employee-import-table td small{display:block}.employee-import-table td small{max-width:260px;line-height:1.45}
.import-match { display:inline-flex;padding:4px 7px;border-radius:7px;font-size:.58rem;font-weight:850;white-space:nowrap; }.import-match.existing,.import-match.completed{color:var(--success);background:var(--success-soft)}.import-match.new{color:var(--brand);background:var(--brand-soft)}.import-match.uncertain,.import-match.processing{color:var(--warning);background:var(--warning-soft)}.import-match.failed{color:var(--danger);background:var(--danger-soft)}
.employee-import-mapping-note { display:flex;align-items:flex-start;gap:11px;margin:0 20px 14px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--blue) 26%,var(--line));border-radius:12px;color:var(--ink-soft);background:color-mix(in srgb,var(--blue) 7%,var(--panel));font-size:.67rem;line-height:1.55; }.employee-import-mapping-note>i{margin-top:2px;color:var(--blue)}.employee-import-mapping-note strong{color:var(--ink)}
.employee-import-bulk-actions { display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 20px;border-block:1px solid var(--line);background:var(--panel-soft);color:var(--ink-soft);font-size:.65rem; }.employee-import-bulk-actions>div{display:flex;gap:7px}
.employee-import-sheets { display:grid;gap:12px;padding:16px 20px 20px; }
.employee-import-sheet { overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm); }
.employee-import-sheet>summary { display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;list-style:none;cursor:pointer; }.employee-import-sheet>summary::-webkit-details-marker{display:none}.employee-import-sheet>summary:after{content:'\f078';flex:0 0 auto;color:var(--ink-soft);font:600 .65rem/1 'Font Awesome 6 Free';transition:transform .2s}.employee-import-sheet[open]>summary:after{transform:rotate(180deg)}
.employee-import-sheet-title { display:flex;min-width:0;align-items:center;gap:10px; }.employee-import-sheet-title>i{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;color:var(--success);background:var(--success-soft)}.employee-import-sheet-title strong,.employee-import-sheet-title small{display:block}.employee-import-sheet-title strong{font-size:.74rem}.employee-import-sheet-title small{margin-top:2px;color:var(--ink-soft);font-size:.59rem}
.employee-import-sheet-count { margin-left:auto;color:var(--ink-soft);font-size:.61rem;white-space:nowrap; }.employee-import-sheet-count strong{color:var(--brand);font-size:.68rem}
.employee-import-sheet-controls { display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(180px,.7fr) minmax(150px,.55fr);align-items:end;gap:11px;padding:14px 16px;border-top:1px solid var(--line);background:var(--panel-soft); }
.employee-sheet-match { display:flex;min-height:42px;align-items:flex-start;justify-content:center;flex-direction:column; }.employee-sheet-match small{display:block;margin-top:3px;color:var(--ink-soft);font-size:.57rem}
.employee-import-row-scroll { max-height:440px;border-top:1px solid var(--line); }
.employee-ledger-row-preview { margin:0; }.employee-ledger-row-preview thead{position:sticky;z-index:2;top:0}.employee-ledger-row-preview th,.employee-ledger-row-preview td{font-size:.64rem}.employee-ledger-row-preview td strong,.employee-ledger-row-preview td small{display:block}.employee-ledger-row-preview td small{margin-top:2px}.employee-ledger-row-preview tr:has([data-ledger-row]:not(:checked)){opacity:.5;background:var(--panel-soft)}
.employee-row-check { width:42px;text-align:center!important; }.employee-row-check input{width:16px;height:16px;accent-color:var(--brand);cursor:pointer}
.import-direction { display:inline-flex;padding:4px 7px;border-radius:7px;font-size:.59rem;font-weight:800;white-space:nowrap; }.import-direction.debit{color:var(--danger);background:var(--danger-soft)}.import-direction.credit{color:var(--success);background:var(--success-soft)}
.employee-sheet-skipped { opacity:.68; }
.employee-import-history { margin-top:17px; }.employee-import-history td{font-size:.67rem}
@media (max-width:1250px) {
  .employee-profile-heading { align-items:flex-start;flex-direction:column; }
  .employee-profile-grid { grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr); }
  .employee-account-actions { grid-column:1/-1;grid-template-columns:1fr 1fr; }.employee-account-actions button{border-top:0;border-left:1px solid var(--line)}.employee-account-actions button:first-child{border-left:0}
  .employee-detail-card { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .employee-ledger-filters form { grid-template-columns:repeat(3,minmax(0,1fr)); }.employee-ledger-filters .employee-search-field{grid-column:span 2}
}
@media (max-width:1199.98px) {
  .employee-directory-overview { grid-template-columns:1fr; }
}
@media (max-width:991.98px) {
  .employee-import-grid { grid-template-columns:1fr; }
}
@media (max-width:767.98px) {
  .employee-profile-actions { display:grid;width:100%;grid-template-columns:1fr 1fr; }.employee-profile-actions .btn{width:auto}.employee-profile-actions .btn-brand{grid-column:1/-1;grid-row:1}
  .employee-profile-grid { grid-template-columns:1fr; }.employee-account-actions{grid-column:auto}.employee-detail-card{grid-template-columns:repeat(2,minmax(0,1fr))}
  .employee-balance-card { min-height:128px; }
  .employee-ledger-filters form { grid-template-columns:1fr 1fr; }.employee-ledger-filters .employee-search-field{grid-column:1/-1}.employee-ledger-filters form>.btn{grid-column:1/-1}
  .employee-ledger-table-panel > .panel-heading { align-items:flex-start;flex-direction:column; }.employee-ledger-totals{width:100%;justify-content:space-between}
  .employee-transfer-list { grid-template-columns:1fr; }
  .employee-opening-section { align-items:stretch;flex-direction:column; }.employee-opening-fields{min-width:0;width:100%}
  .employee-form-footer,.employee-import-footer { align-items:stretch;flex-direction:column; }.employee-form-footer>div,.employee-import-footer>div{display:grid;grid-template-columns:1fr 1fr}.employee-form-footer .btn,.employee-import-footer .btn{width:auto}
  .employee-import-bulk-actions { align-items:stretch;flex-direction:column; }.employee-import-bulk-actions>div{display:grid;grid-template-columns:1fr 1fr}
  .employee-import-sheet-controls { grid-template-columns:1fr 1fr; }.employee-sheet-match{grid-column:1/-1}
}
@media (max-width:575.98px) {
  .employee-summary-grid { display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory; }.employee-summary-card{min-width:205px;scroll-snap-align:start}
  .employee-filter-form { grid-template-columns:1fr; }.employee-filter-form .employee-search-field{grid-column:auto}
  .employee-profile-title { display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:9px; }.employee-profile-title .employee-avatar{width:43px;height:43px;border-radius:13px}.employee-profile-title h1{font-size:1.45rem}.employee-profile-title p{font-size:.7rem}
  .employee-detail-card { grid-template-columns:1fr 1fr; }.employee-detail-card>div{padding:12px}
  .employee-account-actions { grid-template-columns:1fr; }.employee-account-actions button{border-left:0;border-top:1px solid var(--line)}.employee-account-actions button:first-child{border-top:0}
  .employee-ledger-filters form { grid-template-columns:1fr 1fr; }.employee-ledger-filters .employee-search-field,.employee-ledger-filters label:nth-child(2),.employee-ledger-filters label:nth-child(5){grid-column:1/-1}
  .employee-modal-form,.employee-import-form { grid-template-columns:1fr; }.employee-modal-wide,.employee-file-drop,.employee-import-help,.employee-import-form>.btn{grid-column:auto}
  .employee-opening-fields { grid-template-columns:1fr; }
  .employee-table-panel .panel-heading { align-items:flex-start; }.employee-table-panel .panel-chip{display:none}
  .employee-import-mapping-note { margin-inline:12px; }.employee-import-sheets{padding:12px}.employee-import-sheet>summary{align-items:flex-start;flex-wrap:wrap}.employee-import-sheet-count{order:3;width:100%;margin-left:44px}.employee-import-sheet-controls{grid-template-columns:1fr}.employee-sheet-match{grid-column:auto}.employee-import-row-scroll{max-height:380px}.employee-ledger-row-preview{min-width:760px}
}

/* Employee Ledger workspace */
.employee-workspace-page-heading { align-items:center;margin-bottom:14px; }
.employee-workspace-page-heading h1 { margin:2px 0 2px;font-size:1.45rem; }
.employee-workspace-page-heading p { font-size:.82rem; }
.employee-workspace-page-heading .btn { min-height:38px;padding:.5rem .78rem;border-radius:10px;font-size:.75rem; }
.employee-ledger-workspace { display:grid;grid-template-columns:minmax(300px,.47fr) minmax(0,1fr);align-items:start;gap:14px; }
.employee-directory-panel { position:sticky;top:94px;display:flex;max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);overflow:hidden;align-self:start;flex-direction:column; }
.employee-directory-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px 10px; }
.employee-directory-heading h2 { margin:2px 0 0;font-size:1rem;letter-spacing:-.02em; }
.employee-directory-filter { display:grid;grid-template-columns:minmax(145px,1fr) minmax(112px,.82fr) minmax(90px,.62fr);gap:6px;padding:10px 12px 12px;border-top:1px solid var(--line);background:var(--panel-soft); }
.employee-directory-filter .employee-search-field { grid-column:auto; }
.employee-directory-filter .field > span:first-child { margin-bottom:5px;font-size:.65rem; }
.employee-directory-filter .form-control,.employee-directory-filter .form-select { min-height:38px;padding-block:.44rem;font-size:.76rem; }
.employee-directory-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border-block:1px solid var(--line);background:var(--line); }
.employee-directory-summary > span { min-width:0;padding:8px 9px;background:var(--panel); }
.employee-directory-summary small,.employee-directory-summary strong { display:block;overflow:hidden;text-overflow:ellipsis; }
.employee-directory-summary small { min-height:1.95em;color:var(--ink-soft);font-size:.54rem;font-weight:750;text-transform:uppercase;letter-spacing:.035em;line-height:1.05; }
.employee-directory-summary strong { white-space:nowrap; }
.employee-directory-summary strong { margin-top:2px;font-size:.74rem; }
.employee-directory-scroll { min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain; }
.employee-directory-table { width:100%;min-width:0;margin:0;table-layout:fixed; }
.employee-directory-table thead { position:sticky;z-index:3;top:0; }
.employee-directory-table thead th,.employee-directory-table tbody td { overflow:hidden;padding:9px 7px;font-size:.75rem;text-overflow:ellipsis; }
.employee-directory-table thead th { overflow:visible;font-size:.62rem;line-height:1.12;letter-spacing:.03em;text-overflow:clip;white-space:normal; }
.employee-directory-table th:nth-child(1),.employee-directory-table td:nth-child(1) { width:44px; }
.employee-directory-table th:nth-child(2),.employee-directory-table td:nth-child(2) { width:auto; }
.employee-directory-table th:nth-child(3),.employee-directory-table td:nth-child(3) { width:21%; }
.employee-directory-table th:nth-child(4),.employee-directory-table td:nth-child(4) { width:31%; }
.employee-directory-table tbody tr { transition:background .18s ease,box-shadow .18s ease; }
.employee-directory-table tbody tr:hover { background:var(--panel-soft); }
.employee-directory-table tbody tr.is-selected { background:var(--brand-soft);box-shadow:inset 3px 0 var(--brand); }
.employee-directory-name { display:block;min-width:0;padding-block:1px;color:var(--ink); }
.employee-directory-name:hover strong { color:var(--brand);text-decoration:underline;text-underline-offset:2px; }
.employee-directory-name > span { min-width:0;display:block; }
.employee-directory-name strong,.employee-directory-name small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.employee-directory-name strong { font-size:.79rem;line-height:1.15;white-space:normal; }
.employee-directory-name small { margin-top:1px;color:var(--ink-soft);font-size:.64rem; }
.employee-directory-store { display:block;overflow:hidden;line-height:1.2;text-overflow:ellipsis;white-space:normal; }
.employee-directory-balance { font-size:.71rem;font-weight:850;white-space:nowrap;font-variant-numeric:tabular-nums; }
.employee-directory-balance.debit { color:var(--danger); }
.employee-directory-balance.credit { color:var(--success); }
.employee-directory-balance.zero { color:var(--ink-soft); }
.employee-directory-empty { min-height:250px; }
.employee-ledger-detail { min-width:0; }
.employee-ledger-view-bar { display:none; }
.employee-ledger-pane { overflow:visible; }
.employee-ledger-compact-header { display:grid;grid-template-columns:minmax(230px,1fr) auto auto;align-items:center;gap:13px;padding:14px 15px;border-bottom:1px solid var(--line); }
.employee-ledger-identity { display:flex;min-width:0;align-items:center;gap:10px; }
.employee-ledger-identity > div { min-width:0; }
.employee-ledger-identity .employee-avatar.large { width:42px;height:42px;border-radius:12px;font-size:.88rem; }
.employee-ledger-identity h2 { margin:2px 0;font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.employee-ledger-identity p { margin:0;color:var(--ink-soft);font-size:.67rem; }
.employee-ledger-key-meta { display:flex;min-width:0;align-items:center;gap:5px 9px;overflow:hidden;white-space:nowrap; }
.employee-ledger-key-meta > span { overflow:hidden;text-overflow:ellipsis; }
.employee-ledger-key-meta i { margin-right:3px;color:var(--brand);font-size:.58rem; }
.employee-ledger-key-meta .employee-status { flex:0 0 auto;padding:2px 6px;border-radius:999px;color:var(--success);background:color-mix(in srgb,var(--success) 11%,var(--panel));font-size:.55rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em; }
.employee-ledger-key-meta .employee-status.left { color:var(--warning);background:color-mix(in srgb,var(--warning) 13%,var(--panel)); }
.employee-ledger-balance { min-width:126px;height:38px;display:flex;padding:3px 10px;justify-content:center;flex-direction:column;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);text-align:right; }
.employee-ledger-balance small,.employee-ledger-balance strong { display:block;white-space:nowrap; }
.employee-ledger-balance small { color:var(--ink-soft);font-size:.52rem;font-weight:750;text-transform:uppercase;letter-spacing:.045em;line-height:1; }
.employee-ledger-balance strong { margin-top:3px;font-size:.78rem;line-height:1.05; }
.employee-ledger-balance.debit strong { color:var(--danger); }
.employee-ledger-balance.credit strong { color:var(--success); }
.employee-ledger-header-actions { display:flex;align-items:center;gap:6px; }
.employee-ledger-header-actions .icon-btn { width:38px;height:38px;border-radius:9px;font-size:.62rem; }
.employee-ledger-header-actions .btn { height:38px;min-height:38px;padding:.45rem .68rem;border-radius:9px;font-size:.72rem;white-space:nowrap; }
.employee-ledger-desktop-actions { display:flex;align-items:center;gap:6px; }
.employee-ledger-more-actions { position:relative;display:none; }
.employee-ledger-more-actions > summary { min-height:40px;display:flex;padding:7px 11px;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--panel);font-size:.69rem;font-weight:800;list-style:none;cursor:pointer;white-space:nowrap; }
.employee-ledger-more-actions > summary::-webkit-details-marker { display:none; }
.employee-ledger-more-actions > summary:hover,.employee-ledger-more-actions > summary:focus-visible { color:var(--brand);border-color:var(--brand);background:var(--brand-soft); }
.employee-ledger-more-actions > div { position:absolute;z-index:20;top:calc(100% + 6px);right:0;width:min(245px,calc(100vw - 42px));padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--panel);box-shadow:0 14px 34px rgba(25,18,57,.16); }
.employee-ledger-more-actions a,.employee-ledger-more-actions button { width:100%;min-height:40px;display:flex;padding:8px 10px;align-items:center;gap:9px;border:0;border-radius:8px;color:var(--ink);background:transparent;font-size:.72rem;font-weight:750;text-align:left; }
.employee-ledger-more-actions a:hover,.employee-ledger-more-actions button:hover,.employee-ledger-more-actions a:focus-visible,.employee-ledger-more-actions button:focus-visible { color:var(--brand);background:var(--brand-soft); }
.employee-ledger-more-actions a i,.employee-ledger-more-actions button i { width:17px;color:var(--brand);text-align:center; }
.employee-ledger-meta-strip { display:flex;align-items:stretch;gap:0;overflow:hidden;flex-wrap:wrap;border-bottom:1px solid var(--line);background:var(--panel-soft); }
.employee-ledger-meta-strip > span:not(.employee-ledger-account-buttons) { min-width:112px;padding:9px 11px;border-right:1px solid var(--line); }
.employee-ledger-meta-strip small,.employee-ledger-meta-strip strong { display:block; }
.employee-ledger-meta-strip small { color:var(--ink-soft);font-size:.55rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em; }
.employee-ledger-meta-strip strong { max-width:145px;margin-top:2px;overflow:hidden;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap; }
.employee-ledger-account-buttons { display:flex;margin-left:auto;align-items:center;gap:6px;padding:7px 9px; }
.employee-ledger-account-buttons button { min-height:32px;padding:5px 9px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--panel);font-size:.64rem;font-weight:750;white-space:nowrap; }
.employee-ledger-account-buttons button:hover { color:var(--brand);border-color:var(--brand);background:var(--brand-soft); }
.employee-ledger-account-buttons i { margin-right:4px;color:var(--brand); }
.employee-ledger-filter-wrap { overflow:hidden;padding:11px 13px 8px;border-bottom:1px solid var(--line); }
.employee-ledger-filter-toggle { display:none; }
.employee-ledger-filter-form { width:100%;min-width:0; }
.employee-ledger-filter-primary { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(125px,.72fr) minmax(135px,.82fr);align-items:end;gap:8px; }
.employee-ledger-filter-primary.has-custom-dates { grid-template-columns:minmax(180px,1.15fr) minmax(110px,.62fr) minmax(125px,.72fr) minmax(250px,1.25fr); }
.employee-ledger-filter-form .field { min-width:0;display:grid;grid-template-rows:13px 40px;gap:5px; }
.employee-ledger-filter-form .field > span { margin-bottom:0; }
.employee-ledger-filter-form .field > span:first-child { min-height:13px;display:flex;align-items:center;font-size:.64rem;line-height:1; }
.employee-ledger-filter-form .form-control,.employee-ledger-filter-form .form-select { width:100%;height:40px;min-width:0;min-height:40px;padding-block:.42rem;font-size:.76rem; }
.employee-ledger-custom-dates { min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:8px; }
.employee-ledger-custom-dates.is-visible { display:grid; }
.employee-entry-modal-footer { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.employee-entry-modal-actions { display:flex;margin-left:auto;align-items:center;gap:8px; }
.employee-entry-delete[hidden] { display:none; }
.employee-ledger-filter-wrap .employee-filter-period { margin-top:8px;padding-top:7px;font-size:.62rem; }
.employee-ledger-table-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px 9px; }
.employee-ledger-table-heading > div:first-child { display:flex;align-items:center;gap:9px; }
.employee-ledger-table-heading h3 { margin:2px 0 0;font-size:.91rem; }
.employee-ledger-table-heading h3 small { margin-left:4px;color:var(--brand);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap; }
.employee-ledger-table-heading .metric-icon { width:31px;height:31px;border-radius:9px;font-size:.65rem; }
.employee-ledger-scroll { overflow:hidden;border-top:1px solid var(--line); }
.employee-ledger-pane .employee-ledger-table { width:100%;min-width:0;margin:0;table-layout:fixed; }
.employee-ledger-pane .employee-ledger-table th,.employee-ledger-pane .employee-ledger-table td { overflow:hidden;padding:10px 8px;font-size:.75rem;text-overflow:ellipsis; }
.employee-ledger-pane .employee-ledger-table th { font-size:.62rem; }
.employee-ledger-pane .employee-ledger-table .employee-entry-serial { width:6%;text-align:center; }
.employee-ledger-pane .employee-ledger-table .employee-entry-date { width:14%; }
.employee-ledger-pane .employee-ledger-table .employee-entry-particulars { width:25%; }
.employee-ledger-pane .employee-ledger-table .employee-entry-category { width:12%; }
.employee-ledger-pane .employee-ledger-table .employee-entry-debit,.employee-ledger-pane .employee-ledger-table .employee-entry-credit { width:13%; }
.employee-ledger-pane .employee-ledger-table .employee-entry-balance { width:17%; }
.employee-ledger-pane .employee-ledger-table .employee-particulars { min-width:0;max-width:none;white-space:normal; }
.employee-entry-date-short { display:none; }
.employee-ledger-pane .employee-ledger-table td small { font-size:.64rem; }
.employee-ledger-pane .employee-ledger-table .category-chip { font-size:.66rem; }
.employee-ledger-pane .employee-ledger-table .balance-badge { max-width:100%;min-width:0;padding:5px 7px;font-size:.71rem;overflow:hidden;text-overflow:ellipsis; }
.employee-particulars-trigger,.employee-particulars-content { width:100%;display:block;overflow:hidden;padding:0;border:0;color:inherit;background:transparent;text-align:left; }
.employee-particulars-trigger { cursor:pointer;border-radius:5px; }
.employee-particulars-trigger > strong { color:var(--brand); }
.employee-particulars-trigger:hover strong { color:var(--brand);text-decoration:underline;text-underline-offset:2px; }
.employee-particulars-trigger:focus-visible { outline:2px solid var(--brand);outline-offset:3px; }
.employee-particulars-trigger > strong,.employee-particulars-trigger > small,.employee-particulars-content > strong,.employee-particulars-content > small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.employee-particulars-category { display:none;margin-top:3px;color:var(--brand);font-size:.59rem;font-weight:750; }
.reversed-row .employee-particulars-content > strong { text-decoration:line-through; }
.employee-ledger-pane .employee-ledger-totals span { font-size:.68rem; }
.employee-ledger-pane .employee-ledger-totals strong { font-size:.75rem; }
.employee-ledger-empty-state { min-height:245px; }
.employee-ledger-pagination { display:grid;grid-template-columns:minmax(120px,1fr) auto auto;align-items:center;gap:12px;padding:10px 13px;border-top:1px solid var(--line);background:var(--panel-soft); }
.employee-ledger-pagination p { margin:0;color:var(--ink-soft);font-size:.65rem;font-weight:700; }
.employee-pagination-pages { display:flex;align-items:center;gap:4px; }
.employee-ledger-pagination a,.employee-pagination-pages > span:not(.employee-pagination-gap) { width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--ink-soft);background:var(--panel);font-size:.64rem;font-weight:800; }
.employee-ledger-pagination a:hover,.employee-ledger-pagination a.is-current { color:#fff;border-color:var(--brand);background:var(--brand); }
.employee-ledger-pagination .is-disabled { opacity:.45; }
.employee-pagination-gap { padding-inline:2px;color:var(--ink-soft);font-size:.62rem; }
.employee-pagination-rows { display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:.62rem;font-weight:800; }
.employee-pagination-rows .form-select { width:68px;min-height:32px;padding:.3rem 1.75rem .3rem .55rem;border-radius:8px;font-size:.68rem; }
.employee-ledger-empty-panel { min-height:520px;display:flex;align-items:center;justify-content:center;padding:30px;flex-direction:column;text-align:center; }
.employee-ledger-empty-panel strong { margin-top:12px;font-size:.9rem; }
.employee-ledger-empty-panel p { max-width:330px;margin:5px 0 0;color:var(--ink-soft);font-size:.67rem;line-height:1.55; }
.employee-ledger-empty-icon { width:54px;height:54px;display:grid;place-items:center;border-radius:16px;color:var(--brand);background:var(--brand-soft);font-size:1.05rem; }
.employee-transfer-history-compact { margin-top:12px; }
.employee-transfer-history-compact > summary { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;list-style:none;cursor:pointer; }
.employee-transfer-history-compact > summary::-webkit-details-marker { display:none; }
.employee-transfer-history-compact > summary span { display:flex;align-items:center;gap:8px;font-size:.67rem; }
.employee-transfer-history-compact > summary span i { color:var(--brand); }
.employee-transfer-history-compact > summary small { color:var(--ink-soft);font-size:.57rem; }
.employee-transfer-history-compact .employee-transfer-list { padding:0 14px 14px; }

@media (max-width:1199.98px) {
  .employee-ledger-workspace { display:block; }
  .employee-ledger-has-selection > .employee-directory-panel,.employee-ledger-workspace-empty > .employee-ledger-empty-panel { display:none; }
  .employee-directory-panel { position:relative;top:auto;max-height:none; }
  .employee-directory-scroll { max-height:none; }
  .employee-detail-page-heading { display:none; }
  .employee-ledger-view-bar { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px; }
  .employee-ledger-view-bar .btn { min-height:40px;padding:.5rem .78rem;border-radius:10px;font-size:.72rem; }
  .employee-ledger-view-bar > span { color:var(--ink-soft);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em; }
  .employee-ledger-view-bar > span i { margin-right:4px;color:var(--brand); }
  .employee-ledger-compact-header { grid-template-columns:minmax(0,1fr) auto; }
  .employee-ledger-header-actions { grid-column:1/-1;justify-content:flex-end; }
  .employee-ledger-desktop-actions,.employee-ledger-account-buttons { display:none; }
  .employee-ledger-more-actions { display:block; }
  .employee-ledger-meta-strip > span:not(.employee-ledger-account-buttons) { flex:1 1 25%; }
}
@media (max-width:767.98px) {
  .employee-workspace-page-heading { align-items:flex-start;flex-direction:column; }
  .employee-workspace-page-heading .heading-actions { width:100%;display:grid;grid-template-columns:1fr 1fr; }
  .employee-workspace-page-heading .btn { width:auto; }
  .employee-ledger-view-bar { margin-bottom:8px; }
  .employee-ledger-compact-header { padding:12px; }
  .employee-ledger-header-actions { display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr); }
  .employee-ledger-header-actions .btn { width:auto; }
  .employee-ledger-meta-strip { flex-wrap:wrap; }
  .employee-ledger-meta-strip > span:not(.employee-ledger-account-buttons) { flex:1 1 25%; }
  .employee-ledger-filter-wrap { padding:0; }
  .employee-ledger-filter-toggle { width:100%;min-height:46px;display:grid;padding:9px 12px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;border:0;color:var(--ink);background:var(--panel-soft);font-size:.7rem;font-weight:800;text-align:left; }
  .employee-ledger-filter-toggle > span { display:flex;align-items:center;gap:6px;white-space:nowrap; }
  .employee-ledger-filter-toggle > span i { color:var(--brand); }
  .employee-ledger-filter-toggle small { overflow:hidden;color:var(--ink-soft);font-size:.6rem;font-weight:700;text-align:right;text-overflow:ellipsis;white-space:nowrap; }
  .employee-ledger-filter-toggle > i:last-child { color:var(--ink-soft);transition:transform .18s ease; }
  .employee-ledger-filter-toggle[aria-expanded="true"] > i:last-child { transform:rotate(180deg); }
  .employee-ledger-filter-panel { display:none;padding:10px 12px 8px;border-top:1px solid var(--line); }
  .employee-ledger-filter-panel.is-open { display:block; }
  .employee-ledger-filter-primary,.employee-ledger-filter-primary.has-custom-dates { grid-template-columns:1fr 1fr; }
  .employee-ledger-filter-primary .employee-search-field { grid-column:1/-1; }
  .employee-ledger-custom-dates { grid-column:1/-1; }
  .employee-ledger-table-heading { display:grid;grid-template-columns:1fr;align-items:center;gap:7px;padding:10px 12px 8px; }
  .employee-ledger-totals { width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:7px;border-top:1px solid var(--line); }
  .employee-ledger-pane .employee-ledger-totals span { min-width:0;font-size:.64rem; }
  .employee-ledger-pane .employee-ledger-totals strong { display:block;margin:2px 0 0;font-size:.72rem; }
  .employee-ledger-pagination { grid-template-columns:1fr auto; }
  .employee-ledger-pagination p { grid-column:1; }
  .employee-pagination-pages { grid-column:1/-1;grid-row:2; }
  .employee-pagination-rows { grid-column:2;grid-row:1; }
  .employee-ledger-scroll { padding:0;background:var(--panel); }
  .employee-ledger-pane .employee-ledger-table,.employee-ledger-pane .employee-ledger-table thead,.employee-ledger-pane .employee-ledger-table tbody { width:100%;display:block; }
  .employee-ledger-pane .employee-ledger-table tfoot { display:none; }
  .employee-ledger-pane .employee-ledger-table thead tr,.employee-ledger-pane .employee-ledger-table tbody tr { display:grid;grid-template-columns:clamp(52px,15vw,80px) minmax(0,1fr) repeat(2,clamp(68px,21vw,88px));column-gap:5px; }
  .employee-ledger-pane .employee-ledger-table thead tr { padding:7px 10px;border-bottom:1px solid var(--line);background:var(--panel-soft); }
  .employee-ledger-pane .employee-ledger-table thead th { width:auto!important;padding:0;border:0;font-size:.61rem;line-height:1.2;letter-spacing:.04em; }
  .employee-ledger-pane .employee-ledger-table tbody tr { row-gap:5px;margin:0;padding:10px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--panel);box-shadow:none; }
  .employee-ledger-pane .employee-ledger-table tbody tr:last-child { border-bottom:0; }
  .employee-ledger-pane .employee-ledger-table tbody td { width:auto!important;display:block;min-width:0;overflow:visible;padding:0;border:0;font-size:.78rem;line-height:1.35;text-align:left!important;white-space:normal; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-serial,.employee-ledger-pane .employee-ledger-table .employee-entry-category,.employee-ledger-pane .employee-ledger-table thead .employee-entry-balance { display:none; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-date { grid-column:1;grid-row:1; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-particulars { grid-column:2;grid-row:1; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-debit { grid-column:3;grid-row:1; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-credit { grid-column:4;grid-row:1; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-balance { display:flex;grid-column:1/-1;grid-row:2;align-items:baseline;gap:4px;padding-top:1px; }
  .employee-ledger-pane .employee-ledger-table thead .employee-entry-debit,.employee-ledger-pane .employee-ledger-table thead .employee-entry-credit,.employee-ledger-pane .employee-ledger-table tbody .employee-entry-debit,.employee-ledger-pane .employee-ledger-table tbody .employee-entry-credit { text-align:right!important; }
  .employee-ledger-pane .employee-ledger-table tbody .employee-entry-debit,.employee-ledger-pane .employee-ledger-table tbody .employee-entry-credit { overflow:hidden;padding-top:1px;font-size:.77rem;letter-spacing:-.015em;white-space:nowrap; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-date > strong { display:block;font-size:.78rem;white-space:nowrap; }
  .employee-entry-date-full { display:none; }
  .employee-entry-date-short { display:inline; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-date small { display:block;margin-top:3px;color:var(--ink-soft);font-size:.61rem;line-height:1.3;white-space:normal; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-date small > span { display:block;white-space:nowrap; }
  .employee-ledger-pane .employee-ledger-table .employee-particulars-trigger > strong,.employee-ledger-pane .employee-ledger-table .employee-particulars-content > strong { display:-webkit-box;overflow:hidden;font-size:.78rem;line-height:1.35;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2; }
  .employee-ledger-pane .employee-ledger-table .employee-particulars-category { display:block;margin-top:2px;font-size:.6rem; }
  .employee-ledger-pane .employee-ledger-table .employee-particulars-trigger > small,.employee-ledger-pane .employee-ledger-table .employee-particulars-content > small { display:block;margin-top:1px;overflow:hidden;font-size:.61rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-debit::before,.employee-ledger-pane .employee-ledger-table .employee-entry-credit::before { content:none; }
  .employee-ledger-pane .employee-ledger-table .employee-entry-balance::before { content:'Balance:';display:inline;margin:0;color:var(--ink-soft);font-size:.64rem;font-weight:800;text-transform:none;letter-spacing:0; }
  .employee-ledger-pane .employee-ledger-table thead .employee-entry-balance::before { content:none; }
  .employee-ledger-pane .employee-ledger-table .balance-badge { display:inline-flex;max-width:none;min-width:0;padding:0;border-radius:0;background:transparent;font-size:.7rem; }
  .employee-directory-scroll { max-height:none;padding:9px;background:var(--panel-soft); }
  .employee-directory-table,.employee-directory-table tbody { width:100%;display:block; }
  .employee-directory-table thead { display:none; }
  .employee-directory-table tbody { display:grid;gap:8px; }
  .employee-directory-table tbody tr { position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:5px 9px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel); }
  .employee-directory-table tbody tr.is-selected { box-shadow:inset 3px 0 var(--brand); }
  .employee-directory-table tbody td { width:auto!important;display:block;overflow:visible;padding:0;border:0;font-size:.77rem;text-align:left!important; }
  .employee-directory-table .employee-directory-serial { grid-column:1;grid-row:1/3;align-self:center;color:var(--ink-soft);text-align:center!important; }
  .employee-directory-table .employee-directory-person { grid-column:2/4;grid-row:1; }
  .employee-directory-table .employee-directory-store-cell { grid-column:2;grid-row:2;min-width:0; }
  .employee-directory-table .employee-directory-balance-cell { grid-column:3;grid-row:2; }
  .employee-directory-name::after { position:absolute;z-index:1;inset:0;content:""; }
  .employee-directory-name > span { position:relative;z-index:2;pointer-events:none; }
}
@media (max-width:575.98px) {
  .employee-ledger-workspace { gap:10px; }
  .employee-directory-filter { grid-template-columns:1fr 1fr; }
  .employee-directory-filter .employee-search-field { grid-column:1/-1; }
  .employee-directory-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .employee-ledger-compact-header { grid-template-columns:1fr; }
  .employee-ledger-balance { width:100%;text-align:left; }
  .employee-ledger-header-actions { grid-column:auto; }
  .employee-ledger-meta-strip > span:not(.employee-ledger-account-buttons) { flex-basis:50%; }
  .employee-ledger-filter-primary,.employee-ledger-filter-primary.has-custom-dates { grid-template-columns:1fr; }
  .employee-ledger-filter-primary .employee-search-field { grid-column:auto; }
  .employee-ledger-custom-dates { grid-column:auto; }
  .employee-pagination-pages { max-width:100%;flex-wrap:wrap;overflow:hidden; }
  .employee-transfer-history-compact .employee-transfer-list { grid-template-columns:1fr; }
}
@media (max-width:479.98px) {
  .employee-ledger-custom-dates { grid-template-columns:1fr; }
  .employee-entry-modal-footer { align-items:stretch;flex-direction:column; }
  .employee-entry-modal-actions { width:100%;display:grid;margin-left:0;grid-template-columns:1fr 1fr; }
  .employee-entry-modal-footer .employee-entry-delete { width:100%; }
}
@media (max-width:359.98px) {
  .employee-ledger-pane .employee-ledger-table thead tr,.employee-ledger-pane .employee-ledger-table tbody tr { grid-template-columns:46px minmax(0,1fr) repeat(2,68px);column-gap:3px; }
  .employee-ledger-pane .employee-ledger-table thead tr,.employee-ledger-pane .employee-ledger-table tbody tr { padding-inline:8px; }
  .employee-ledger-pane .employee-ledger-table tbody .employee-entry-debit,.employee-ledger-pane .employee-ledger-table tbody .employee-entry-credit { font-size:.76rem;letter-spacing:-.045em; }
}

/* Sales Reconciliation */
.reconciliation-page-heading { align-items:center;margin-bottom:18px; }
.reconciliation-page-heading .heading-actions { justify-content:flex-end; }
.reconciliation-start-grid { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:16px; }
.reconciliation-upload-panel,.reconciliation-guide-panel,.reconciliation-mapping-panel { overflow:hidden; }
.reconciliation-upload-panel > .panel-heading,.reconciliation-guide-panel > .panel-heading,.reconciliation-mapping-panel > .panel-heading,.reconciliation-table-panel > .panel-heading { border-bottom:1px solid var(--line); }
.reconciliation-step { padding:5px 9px;border-radius:99px;color:var(--brand);background:var(--brand-soft);font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap; }
.reconciliation-upload-body { display:grid;gap:16px;padding:20px 22px 22px; }
.reconciliation-file-drop { min-height:185px;display:flex;padding:24px;align-items:center;justify-content:center;flex-direction:column;border:1.5px dashed color-mix(in srgb,var(--brand) 42%,var(--line));border-radius:15px;color:var(--ink-soft);background:color-mix(in srgb,var(--brand-soft) 46%,var(--panel));cursor:pointer;text-align:center;transition:.18s ease; }
.reconciliation-file-drop:hover,.reconciliation-file-drop:focus-within { border-color:var(--brand);background:var(--brand-soft); }
.reconciliation-file-drop > i { margin-bottom:10px;color:var(--brand);font-size:1.65rem; }
.reconciliation-file-drop strong { max-width:100%;overflow:hidden;color:var(--ink);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap; }
.reconciliation-file-drop span { margin-top:5px;font-size:.66rem; }
.reconciliation-file-drop input { position:absolute;width:1px;height:1px;overflow:hidden;opacity:0; }
.reconciliation-guide-list { display:grid;gap:0;padding:4px 20px 10px; }
.reconciliation-guide-list > div { display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line); }
.reconciliation-guide-list > div:last-child { border-bottom:0; }
.reconciliation-guide-list > div > span { width:27px;height:27px;display:grid;place-items:center;border-radius:9px;color:var(--brand);background:var(--brand-soft);font-size:.65rem;font-weight:850; }
.reconciliation-guide-list p { margin:0;color:var(--ink-soft);font-size:.68rem;line-height:1.5; }
.reconciliation-guide-list p strong { display:block;color:var(--ink);font-size:.72rem; }
.reconciliation-safety-note { display:flex;align-items:flex-start;gap:10px;margin:2px 18px 18px;padding:12px;border:1px solid color-mix(in srgb,var(--success) 25%,var(--line));border-radius:12px;color:var(--ink-soft);background:color-mix(in srgb,var(--success-soft) 48%,var(--panel));font-size:.65rem;line-height:1.5; }
.reconciliation-safety-note > i { margin-top:2px;color:var(--success); }
.reconciliation-safety-note strong { display:block;color:var(--ink); }
.reconciliation-mapping-intro { display:flex;align-items:flex-start;gap:11px;margin:18px 20px 0;padding:13px;border:1px solid color-mix(in srgb,var(--warning) 28%,var(--line));border-radius:12px;color:var(--ink-soft);background:var(--warning-soft); }
.reconciliation-mapping-intro > i { margin-top:2px;color:var(--warning); }
.reconciliation-mapping-intro p { margin:0;font-size:.71rem;line-height:1.55; }
.reconciliation-mapping-intro strong { color:var(--ink); }
.reconciliation-mapping-form { padding:18px 20px 20px; }
.reconciliation-mapping-fields { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px; }
.reconciliation-preview-scroll { max-height:310px;border:1px solid var(--line);border-radius:12px; }
.reconciliation-preview-table { min-width:720px; }
.reconciliation-mapping-footer { display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px; }
.reconciliation-mapping-footer > span { color:var(--ink-soft);font-size:.65rem; }
.reconciliation-mapping-footer > span i { margin-right:5px;color:var(--brand); }
.reconciliation-mapping-footer > div { display:flex;gap:8px; }
.reconciliation-context-bar { display:flex;align-items:stretch;gap:1px;overflow:hidden;margin-bottom:12px;border:1px solid var(--line);border-radius:14px;background:var(--line);box-shadow:var(--shadow-sm); }
.reconciliation-context-bar > span { min-width:0;display:grid;padding:10px 13px;grid-template-columns:20px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;background:var(--panel); }
.reconciliation-context-bar > span > i { grid-row:1/3;color:var(--brand); }
.reconciliation-context-bar small,.reconciliation-context-bar strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.reconciliation-context-bar small { color:var(--ink-soft);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em; }
.reconciliation-context-bar strong { margin-top:2px;font-size:.7rem; }
.reconciliation-context-bar .reconciliation-context-note { display:flex;margin-left:auto;align-items:center;gap:7px;color:var(--ink-soft);font-size:.62rem;font-weight:700;white-space:nowrap; }
.reconciliation-context-bar .reconciliation-context-note > i { color:var(--success); }
.reconciliation-warning-list { display:flex;gap:7px;margin-bottom:12px;flex-wrap:wrap; }
.reconciliation-warning-list > span { padding:7px 9px;border:1px solid color-mix(in srgb,var(--warning) 25%,var(--line));border-radius:9px;color:var(--warning);background:var(--warning-soft);font-size:.62rem;font-weight:700; }
.reconciliation-warning-list i { margin-right:5px; }
.reconciliation-filter-panel { margin-bottom:12px;padding:14px; }
.reconciliation-filter-form { display:grid;grid-template-columns:minmax(155px,1.15fr) repeat(3,minmax(130px,.8fr)) auto;align-items:end;gap:9px; }
.reconciliation-filter-form .btn { min-height:39px; }
.reconciliation-summary-grid { display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:12px; }
.reconciliation-summary-card { min-width:0;display:flex;min-height:94px;padding:13px;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm); }
.reconciliation-summary-card .metric-icon { width:32px;height:32px;flex:0 0 auto;border-radius:10px;font-size:.68rem; }
.reconciliation-summary-card > div { min-width:0; }
.reconciliation-summary-card small,.reconciliation-summary-card strong,.reconciliation-summary-card > div > span { display:block; }
.reconciliation-summary-card small { min-height:2.2em;color:var(--ink-soft);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em;line-height:1.15; }
.reconciliation-summary-card strong { margin-top:4px;overflow:hidden;font-size:.84rem;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap; }
.reconciliation-summary-card > div > span { margin-top:4px;color:var(--ink-soft);font-size:.54rem;white-space:nowrap; }
.reconciliation-summary-card.difference-card.positive strong { color:var(--success); }
.reconciliation-summary-card.difference-card.negative strong { color:var(--danger); }
.reconciliation-table-panel { overflow:hidden; }
.reconciliation-difference-note { color:var(--ink-soft);font-size:.61rem;font-weight:700;white-space:nowrap; }
.reconciliation-table-scroll { max-height:62vh; }
.reconciliation-table { min-width:1320px; }
.reconciliation-table thead { position:sticky;z-index:2;top:0; }
.reconciliation-table th,.reconciliation-table td { font-variant-numeric:tabular-nums; }
.reconciliation-table tbody tr.matched { box-shadow:inset 3px 0 var(--success); }
.reconciliation-table tbody tr.mismatch { box-shadow:inset 3px 0 var(--warning); }
.reconciliation-table tbody tr.missing_cash_flow,.reconciliation-table tbody tr.missing_software { box-shadow:inset 3px 0 var(--danger); }
.reconciliation-difference { font-weight:800; }
.reconciliation-difference.positive { color:var(--success); }
.reconciliation-difference.negative { color:var(--danger); }
.reconciliation-difference.zero { color:var(--ink-soft); }
.reconciliation-status { display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:99px;font-size:.59rem;font-weight:850;white-space:nowrap; }
.reconciliation-status.matched { color:var(--success);background:var(--success-soft); }
.reconciliation-status.mismatch { color:var(--warning);background:var(--warning-soft); }
.reconciliation-status.missing_cash_flow,.reconciliation-status.missing_software { color:var(--danger);background:var(--danger-soft); }

@media (max-width:1399.98px) {
  .reconciliation-summary-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .reconciliation-summary-card { min-height:82px; }
}
@media (max-width:991.98px) {
  .reconciliation-start-grid { grid-template-columns:1fr; }
  .reconciliation-filter-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .reconciliation-filter-form .btn { grid-column:1/-1; }
  .reconciliation-context-bar { overflow-x:auto; }
  .reconciliation-context-bar > span { min-width:190px; }
  .reconciliation-context-bar .reconciliation-context-note { min-width:225px; }
}
@media (max-width:767.98px) {
  .reconciliation-page-heading .heading-actions { width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
  .reconciliation-page-heading .heading-actions .btn { width:auto; }
  .reconciliation-mapping-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .reconciliation-mapping-footer { align-items:stretch;flex-direction:column; }
  .reconciliation-mapping-footer > div { display:grid;grid-template-columns:1fr 1fr; }
  .reconciliation-summary-grid { display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory; }
  .reconciliation-summary-card { min-width:215px;scroll-snap-align:start; }
  .reconciliation-table-panel > .panel-heading { align-items:flex-start;flex-direction:column; }
}
@media (max-width:575.98px) {
  .reconciliation-upload-body,.reconciliation-mapping-form { padding:14px; }
  .reconciliation-file-drop { min-height:155px;padding:18px; }
  .reconciliation-mapping-intro { margin:14px 14px 0; }
  .reconciliation-mapping-fields,.reconciliation-filter-form { grid-template-columns:1fr; }
  .reconciliation-filter-form .btn { grid-column:auto; }
  .reconciliation-context-bar { margin-inline:-2px; }
}
