/* Capacitor Android presentation. Every rule is scoped to the canonical
   platform root; browser/PWA layout cannot receive these geometry rules. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]), html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body {
  width:100%; height:100%; min-height:0; margin:0; overflow:hidden;
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) {
  --android-bottom-nav-height:72px;
  --android-content-bottom-gap:24px;
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #appShell {
  width:100%; height:100dvh; min-height:0; max-height:100dvh; overflow:hidden;
}
/* Build 15 top is frozen: native root already begins below system bars. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .topbar { height:auto; min-height:76px; padding:16px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .main {
  min-width:0; min-height:0; height:100%; overflow:hidden; display:flex; flex-direction:column;
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .content {
  min-width:0; min-height:0; flex:1 1 auto; overflow-y:auto; overflow-x:hidden;
  box-sizing:border-box;
  padding-bottom:calc(var(--android-bottom-nav-height) + var(--android-content-bottom-gap));
  scroll-padding-bottom:calc(var(--android-bottom-nav-height) + var(--android-content-bottom-gap));
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #androidBottomNav {
  position:fixed; left:0; right:0; bottom:0; z-index:80; display:flex; width:100%;
  height:var(--android-bottom-nav-height); min-height:var(--android-bottom-nav-height);
  max-height:var(--android-bottom-nav-height); padding:6px 4px;
  overflow:hidden;
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #androidBottomNav .android-nav-item {
  flex:1 1 25%; width:25%; height:100%; min-height:0; max-height:100%; padding:4px;
  font-size:12px; white-space:nowrap; overflow:hidden;
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .app-footer { padding-bottom:14px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .modal-overlay,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .map-modal { padding:16px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .camera-modal { padding:0; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) input,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) select,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) textarea { min-height:46px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .sidebar,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #sidebarToggle,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #sidebarBackdrop { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .app-shell { grid-template-columns:1fr; }


/* Android-only compact settings/profile presentation; no geometry changes. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-layout { display:block; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-layout > .card { padding:16px; margin-bottom:12px; border-radius:16px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-data-grid { gap:13px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-data-value { font-size:14px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-photo-form { gap:10px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-photo-form .row-actions { margin-top:0; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .profile-layout h3, html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #notifReadinessCard h3 { font-size:16px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #notifReadinessCard { padding:16px; border-radius:16px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-setting-row { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--border); }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-setting-row:last-child { border-bottom:0; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .setting-leading { display:flex; align-items:center; gap:10px; font-size:14px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .setting-icon { width:21px; height:21px; fill:none; stroke:#91a8c8; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch { width:46px; height:27px; padding:2px; border:0; border-radius:999px; background:#3b4656; position:relative; appearance:none; -webkit-appearance:none; transition:background .18s ease-out; cursor:pointer; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch::after { content:""; display:block; width:23px; height:23px; border-radius:50%; background:#e8eef7; transform:translateX(0); transition:transform .18s ease-out; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch.on { background:#287bf2; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch.on::after { transform:translateX(19px); }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch:disabled { opacity:.42; cursor:default; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-switch:focus-visible { outline:2px solid #7db0ff; outline-offset:2px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .app-about-footer { padding-bottom:8px; }

html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) #notifReadinessCard::before { content:"PENGATURAN"; display:block; color:#91a8c8; font-size:11px; font-weight:800; letter-spacing:.08em; margin-bottom:10px; }

html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #userDropdown { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .mobile-profile-photo { width:100%; height:100%; object-fit:cover; border-radius:50%; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .status-svg { width:18px; height:18px; max-width:24px; max-height:24px; flex:0 0 18px; }


/* Role-aware Android More and ManualTask surfaces. Employee selectors are intentionally absent. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .android-more-menu { display:grid; gap:14px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .android-more-group h4 { margin:0 0 7px; color:#91a8c8; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .android-more-items { display:grid; gap:7px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .android-more-item { display:flex; align-items:center; gap:11px; width:100%; min-height:48px; padding:10px 12px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); color:var(--text); font:inherit; text-align:left; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .android-more-item svg { width:20px; height:20px; flex:0 0 20px; color:#7db0ff; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .admin-task-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .admin-task-filters .task-monitor-search { grid-column:1/-1; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .admin-task-filters > .btn { width:100%; }
@media(max-width:380px){ html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .admin-task-filters { grid-template-columns:1fr; } html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) .admin-task-filters .task-monitor-search { grid-column:auto; } }

/* Employee Android action polish: scoped to Employee shell only; geometry and nav stay frozen. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #attendanceRequests,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .attendance-history-search,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-create-btn {
  background:linear-gradient(180deg,#234d86,#1d3f70); color:#dbeaff; border:1px solid #4d83c9; box-shadow:0 3px 10px rgba(23,84,157,.24);
}
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #attendanceRequests:hover,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .attendance-history-search:hover,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-create-btn:hover { background:#2b5d9b; color:#fff; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #attendanceRequests:active,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .attendance-history-search:active,
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-create-btn:active { transform:translateY(1px); box-shadow:0 1px 5px rgba(23,84,157,.22); }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .profile-photo-form .row-actions .btn.secondary { background:#1c3b68; color:#dbeaff; border-color:#4d83c9; box-shadow:0 2px 8px rgba(23,84,157,.2); }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-history-filter { margin-top:0; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-history-query { flex:0 1 150px; min-width:74px; width:150px; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .employee-task-history-card { overflow:hidden; }
/* Android Employee Profile: explicit secondary hierarchy for the actionable Ganti Foto control. */
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #profilePhotoChoose { background:#1c3b68; color:#dbeaff; border:1px solid #4d83c9; opacity:1; pointer-events:auto; cursor:pointer; min-height:40px; display:inline-flex; align-items:center; justify-content:center; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #profilePhotoChoose:hover { background:#2b5d9b; color:#fff; border-color:#6da4ee; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #profilePhotoChoose:active { background:#17365f; transform:translateY(1px); }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #profilePhotoSave:disabled { background:#111c2d; color:#72839b; border:1px solid #293952; opacity:.6; cursor:not-allowed; }
html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell #profilePhotoSave:not(:disabled) { background:#287bf2; color:#fff; border:1px solid #5d9cff; opacity:1; }
@media(max-width:380px){ html:is([data-ui-profile="android-app"], [data-ui-preview="android"]) body.employee-shell .task-history-query { flex:1 1 70px; width:70px; } }

/* Admin Android/WebView shell: seven equal icon-only domains. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #androidBottomNav .android-nav-item { flex:1 1 0; width:14.2857%; min-width:0; font-size:0; gap:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #androidBottomNav .android-nav-item span { display:none; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #androidBottomNav .android-nav-item svg { width:23px; height:23px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #androidBottomNav .android-nav-item.active { color:#7db0ff; background:#172b49; }

/* Admin Android/Preview Dashboard: presentation-only 8-icon 4x2 summary. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi { padding:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .section-title { margin-bottom:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .dashboard-kpi-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .stat-card { min-width:0; min-height:72px; padding:8px 3px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; border-radius:10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .metric-icon { display:grid; place-items:center; color:#7db0ff; height:22px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .stat-card .n { font-size:20px; line-height:1; }

/* Final Admin Android/Preview dashboard lock: fixed 4x2 compact grid. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .dashboard-kpi-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; grid-template-rows:repeat(2,62px) !important; grid-auto-rows:62px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .stat-card { min-height:62px !important; height:62px; padding:5px 2px; gap:2px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .metric-icon { height:19px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .metric-icon svg { width:19px; height:19px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-dashboard-kpi .stat-card .n { font-size:18px; }

/* Runtime-verified Admin Android/Preview presentation contract. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-summary-grid {
  display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,56px) !important; grid-auto-rows:56px !important; gap:7px !important;
}
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-summary-metric {
  display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important;
  min-width:0 !important; min-height:56px !important; height:56px !important; padding:4px 2px !important; gap:2px !important;
}
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-summary-icon { height:19px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-summary-icon svg { width:19px !important; height:19px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-summary-value { font-size:18px !important; line-height:1 !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-bottom-nav .android-nav-item > span { display:none !important; }

/* Admin Android/Preview trend chart: compact container only; SVG labels remain visible. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-trend-card { padding:12px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-trend-body { min-height:0 !important; margin-bottom:0 !important; padding-bottom:10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-trend-body .trend-chart-wrap { height:230px !important; min-height:0 !important; margin:0 !important; overflow:visible !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-attendance-trend-body .trend-chart-wrap > svg { display:block; width:100%; height:230px !important; min-height:0 !important; max-height:230px !important; }

/* Admin Attendance Android/Preview compact presentation only. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary { padding:10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .section-title { margin-bottom:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .admin-attendance-summary-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; grid-template-rows:repeat(2,56px) !important; gap:7px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .admin-attendance-summary-metric { display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; min-width:0 !important; min-height:56px !important; height:56px !important; padding:4px 2px !important; gap:2px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .admin-attendance-summary-icon { height:18px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .admin-attendance-summary-icon svg { width:18px !important; height:18px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell #khSummary .admin-attendance-summary-value { font-size:17px !important; line-height:1 !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-desktop-toolbar { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-attendance-toolbar { display:grid !important; grid-template-columns:104px minmax(0,1fr) 58px; align-items:center; gap:6px; margin:-2px 0 8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-attendance-toolbar input { width:100%; min-width:0; min-height:40px; height:40px; padding:7px 8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-btn { width:58px; min-width:58px; height:40px; min-height:40px; padding:0 4px !important; display:inline-flex; align-items:center; justify-content:center; gap:3px; position:relative; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-btn.active { color:#7db0ff; border-color:#7db0ff; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-text { font-size:11px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:#287bf2; color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-issues { grid-column:1/-1; display:inline-flex; align-items:center; gap:6px; min-height:32px; font-size:12px; color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-issues input { width:18px; min-height:18px; height:18px; margin:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-cards { gap:7px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-card { gap:7px !important; padding:10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-head { gap:7px; padding-bottom:7px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-times { gap:7px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-bottom { gap:7px; padding-top:7px; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-attendance-toolbar { grid-template-columns:96px minmax(0,1fr) 52px; gap:5px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-btn { width:52px; min-width:52px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-text { display:none; } }

/* Ultra-compact Admin Attendance Android/Preview summary cards. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-card { position:relative; display:block !important; min-height:0 !important; padding:10px 58px 10px 10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-head { display:flex !important; align-items:flex-start; justify-content:space-between; gap:8px; padding:0 0 4px !important; border:0 !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-employee { display:flex; flex-direction:column; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-employee strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status { display:inline-flex; align-items:center; gap:3px; flex:0 0 auto; max-width:45%; color:#7db0ff; font-size:11px; font-weight:750; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status > svg { flex:0 0 15px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status .attendance-icon { width:16px; height:16px; flex-basis:16px; color:#ff8f8f; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-meta { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); font-size:11px; line-height:1.35; padding-bottom:4px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-details { display:grid; gap:2px; min-width:0; font-size:11px; line-height:1.3; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-line { display:flex; align-items:center; gap:4px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-line > span:last-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-line .attendance-icon { width:16px; height:16px; flex-basis:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-no-activity { color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-detail { position:absolute; right:10px; bottom:10px; width:44px; height:44px; min-width:44px; min-height:44px; }

/* Final Admin Attendance Android/Preview card alignment. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-card { position:relative; display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,auto); grid-template-rows:auto auto auto auto; min-height:0 !important; padding:10px 58px 10px 10px !important; gap:4px 8px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-head { grid-column:1/-1; display:flex !important; align-items:flex-start; justify-content:space-between; gap:8px; padding:0 !important; border:0 !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-employee { min-width:0; display:block; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-employee strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status { display:inline-flex; align-items:center; justify-content:flex-end; gap:3px; min-width:0; max-width:48%; color:#7db0ff; font-size:11px; font-weight:750; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status > svg { flex:0 0 15px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status .attendance-icon { width:16px; height:16px; flex:0 0 16px; color:#ff8f8f; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-status .attendance-mobile-ot-indicator { display:inline-flex; flex:0 0 14px; color:#7db0ff; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-meta { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; padding:0 !important; color:var(--muted); font-size:11px; line-height:1.3; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-summary-meta > span { overflow:hidden; text-overflow:ellipsis; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-org { text-align:right; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-labels, html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-values { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-labels { color:var(--muted); font-size:10px; line-height:1.2; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-labels span, html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-values span { display:flex; align-items:center; gap:4px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-labels span:nth-child(2), html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-values span:nth-child(2) { justify-content:flex-end; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-labels svg { width:15px; height:15px; flex:0 0 15px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-values { font-size:13px; font-weight:750; line-height:1.2; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-time-values span:nth-child(2) { text-align:right; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .attendance-mobile-detail { position:absolute; right:10px; bottom:10px; width:44px; height:44px; min-width:44px; min-height:44px; }

/* Ada Masalah is intentionally owned by the Android Filter modal, never the page toolbar. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-issues { display:flex; align-items:center; gap:7px; min-height:40px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-filter-issues input { width:18px; min-width:18px; height:18px; min-height:18px; margin:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-issues { display:none !important; }

/* Admin Personnel Android/Preview presentation ownership. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-desktop-personalia-toolbar { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar { display:grid !important; grid-template-columns:minmax(0,1fr) 68px; align-items:center; gap:6px; margin:-2px 0 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar label { min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter { position:relative; width:68px; min-width:68px; height:40px; min-height:40px; padding:0 5px !important; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter.active { color:#7db0ff; border-color:#7db0ff; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter > span { font-size:11px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:#287bf2; color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-cards { gap:7px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-card { position:relative; display:grid; gap:4px; min-height:0; padding:10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head .badge { flex:0 0 auto; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity { display:flex; justify-content:space-between; gap:8px; min-width:0; color:var(--muted); font-size:11px; line-height:1.3; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity span:last-child { text-align:right; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-org, html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-useful { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; line-height:1.3; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-useful { color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-actions { justify-content:flex-end; gap:4px; margin:2px 0 0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-actions .icon-btn { width:44px; min-width:44px; height:44px; min-height:44px; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar { grid-template-columns:minmax(0,1fr) 58px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter { width:58px; min-width:58px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter > span { display:none; } }

/* Admin Personnel Android/Preview presentation ownership. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-desktop-personalia-toolbar { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar { display:grid !important; grid-template-columns:minmax(0,1fr) 68px; align-items:center; gap:6px; margin:-2px 0 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar label { min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter { position:relative; width:68px; min-width:68px; height:40px; min-height:40px; padding:0 5px !important; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter.active { color:#7db0ff; border-color:#7db0ff; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter > span { font-size:11px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:#287bf2; color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-cards { gap:7px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-card { display:grid; gap:4px; min-height:0; padding:10px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-head .badge { flex:0 0 auto; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity { display:flex; justify-content:space-between; gap:8px; min-width:0; color:var(--muted); font-size:11px; line-height:1.3; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-identity span:last-child { text-align:right; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-org, html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-useful { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; line-height:1.3; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-useful { color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-actions { justify-content:flex-end; gap:4px; margin:2px 0 0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-actions .icon-btn { width:44px; min-width:44px; height:44px; min-height:44px; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-toolbar { grid-template-columns:minmax(0,1fr) 58px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter { width:58px; min-width:58px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.admin-shell .admin-mobile-personalia-filter > span { display:none; } }

/* Admin Task/Ticket mobile compact presentation; desktop/employee/finance unchanged. */
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-toolbar .section-title { margin-bottom:8px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-export,
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-filter { width:44px; min-width:44px; height:44px; min-height:44px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-controls { display:grid; grid-template-columns:minmax(0,1fr) 68px; gap:6px; align-items:center; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-controls input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-filter { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-filter.active { color:var(--accent-strong); border-color:var(--accent-strong); }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:var(--accent-strong); color:#fff; font-size:10px; line-height:16px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-cards { gap:7px !important; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card { gap:5px; min-height:90px; padding:9px 10px; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-top { align-items:center; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-top strong,
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-type { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-status { flex:0 0 auto; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-detail-row { display:flex; justify-content:flex-end; }
html[data-ui-profile="mobile-web"] body.admin-shell .admin-task-card-detail { width:44px; min-width:44px; height:44px; min-height:44px; }
@media(max-width:360px){ html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-controls { grid-template-columns:minmax(0,1fr) 56px; } html[data-ui-profile="mobile-web"] body.admin-shell .admin-mobile-task-filter span { display:none; } }

/* Admin Task/Ticket mobile compact presentation; desktop/employee/finance unchanged. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-toolbar .section-title { margin-bottom:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-export,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-filter { width:44px; min-width:44px; height:44px; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-controls { display:grid; grid-template-columns:minmax(0,1fr) 68px; gap:6px; align-items:center; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-controls input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-filter { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-filter.active { color:var(--accent-strong); border-color:var(--accent-strong); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:var(--accent-strong); color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-cards { gap:7px !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card { gap:5px; min-height:90px; padding:9px 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-top { align-items:center; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-top strong,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-type { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-status { flex:0 0 auto; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-detail-row { display:flex; justify-content:flex-end; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-task-card-detail { width:44px; min-width:44px; height:44px; min-height:44px; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-controls { grid-template-columns:minmax(0,1fr) 56px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-task-filter span { display:none; } }


/* Admin ClientVisit monitoring: compact only on mobile/Android. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell #notifBtn { width:44px; min-width:44px; height:44px; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell #notifDropdown { position:relative; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .notif-summary,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .notif-status { font-size:11px; color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-card { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; min-width:0; min-height:84px; padding:10px 11px; border:1px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); text-align:left; cursor:pointer; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-card:hover,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-card:focus-visible { border-color:var(--accent-strong); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-card strong { min-width:0; max-width:100%; font-size:13px; line-height:1.2; overflow:hidden; text-overflow:ellipsis; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-system-mobile-card .badge { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-finance-mobile-page .section-title { margin-bottom:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:10px 12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-summary-metric { display:grid; grid-template-columns:20px minmax(0,1fr); grid-template-rows:18px 18px; align-items:center; column-gap:5px; min-width:0; min-height:62px; padding:7px 8px; border:1px solid var(--border); border-radius:10px; background:var(--surface-muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-summary-icon { grid-row:1 / span 2; color:var(--accent-strong); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-summary-metric .l { color:var(--muted); font-size:10px; line-height:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-summary-metric .n { font-size:18px; line-height:1; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-toolbar { display:grid; grid-template-columns:minmax(0,1fr) 68px; gap:6px; align-items:center; margin:0 0 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-toolbar input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-filter { position:relative; width:68px; min-width:68px; height:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:var(--accent-strong); color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card { display:grid; gap:4px; min-height:95px; padding:10px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-head,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-main { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-head strong,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-employee,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-reference,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-date { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-employee,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-reference,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-date { color:var(--muted); font-size:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-actions { display:flex; justify-content:flex-end; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-card-actions .icon-btn { width:44px; min-width:44px; height:44px; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-finance-mobile-page + .admin-finance-mobile-list #pjTableWrap { display:grid; gap:7px; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-toolbar { grid-template-columns:minmax(0,1fr) 56px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-filter { width:56px; min-width:56px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-reimbursement-filter > span { display:none; } }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-head .icon-btn,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-actions .icon-btn { width:44px; min-width:44px; height:44px; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-toolbar { display:grid; grid-template-columns:minmax(0,1fr) 68px; gap:6px; align-items:center; margin:0 0 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-toolbar input { width:100%; min-width:0; height:40px; min-height:40px; padding:7px 9px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-filter { position:relative; width:68px; min-width:68px; height:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-filter-count { position:absolute; top:-5px; right:-4px; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:var(--accent-strong); color:#fff; font-size:10px; line-height:16px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-card { display:grid; gap:4px; min-height:90px; padding:9px 10px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-card-head { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-card-head strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-identity,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-period { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; color:var(--muted); font-size:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-period > span:first-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-actions { display:inline-flex; flex:0 0 auto; gap:3px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-shifts { display:none; }
@media(max-width:360px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-toolbar { grid-template-columns:minmax(0,1fr) 56px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-filter { width:56px; min-width:56px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-schedule-filter > span { display:none; } }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:8px 0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-summary-metric { display:grid; grid-template-columns:20px minmax(0,1fr); grid-template-rows:18px 18px; align-items:center; column-gap:5px; min-width:0; min-height:54px; padding:6px 8px; border:1px solid var(--border); border-radius:10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-metric-icon { grid-row:1 / span 2; color:var(--primary); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-metric-label { color:var(--muted); font-size:10px; line-height:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-metric-value { font-size:18px; line-height:1; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-visit-toolbar { display:grid; grid-template-columns:minmax(0,1fr) 68px; gap:6px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-visit-toolbar input { min-width:0; width:100%; height:40px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-visit-toolbar button { min-width:44px; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-mobile-visit-toolbar button.has-filter { color:var(--primary); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-filter-badge { display:inline-flex; align-items:center; justify-content:center; min-width:16px; height:16px; padding:0 4px; border-radius:999px; background:var(--primary); color:#fff; font-size:10px; line-height:1; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-desktop-table { display:none; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-cards { display:grid; gap:7px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card { display:grid; gap:5px; min-height:95px; padding:10px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-top { display:flex; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-top strong,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-title { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-meta,html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-location { color:var(--muted); font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-detail { display:flex; justify-content:flex-end; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"]) body.admin-shell .admin-visit-card-detail .icon-btn { width:44px; min-width:44px; height:44px; min-height:44px; }


/* Finance Android shell: presentation-only rules scoped to Finance role. */
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .app-shell { grid-template-columns:1fr; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .sidebar,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #sidebarBackdrop,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #sidebarToggle,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #notifDropdown { display:none !important; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .topbar { min-height:64px; height:64px; padding:10px 12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .topbar h2 { font-size:18px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .topbar p,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .app-footer { display:none; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .content { padding:12px 12px calc(var(--android-bottom-nav-height) + 18px); width:100%; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav { height:72px; min-height:72px; max-height:72px; padding:6px 3px; background:var(--card); border-top:1px solid var(--border); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav .android-nav-item { flex:1 1 0; width:20%; min-width:0; min-height:44px; height:60px; max-height:60px; padding:5px 1px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; font-size:10px; white-space:nowrap; color:var(--muted); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav .android-nav-item svg { width:21px; height:21px; flex:0 0 21px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav .android-nav-item span { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; line-height:1.1; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav .android-nav-item.active { color:#7db0ff; background:#172b49; font-weight:750; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-page { max-width:none; width:100%; margin:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-section-head { margin-bottom:10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-metrics > .finance-metric { min-width:0; min-height:78px; padding:10px; border-radius:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-metrics > .finance-metric:last-child { grid-column:1/-1; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-metrics .finance-metric-value { font-size:18px; overflow-wrap:anywhere; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:6px; align-items:center; margin:0 0 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-toolbar input { min-width:0; width:100%; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-toolbar .btn,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-actions .btn { min-width:44px; min-height:44px; padding:9px 10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-report-toolbar { grid-template-columns:1fr 1fr; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-results,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-report-grid { display:grid; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card { min-width:0; padding:12px; border-radius:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; min-width:0; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-head strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-amount { margin-top:9px; font-size:21px; font-weight:850; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-meta,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-line { color:var(--muted); font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-card-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; margin-top:10px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-empty { padding:18px 10px; text-align:center; color:var(--muted); border:1px dashed var(--border); border-radius:12px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-report-grid { grid-template-columns:1fr; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-form { display:grid; gap:10px; max-height:calc(100dvh - 150px); overflow:auto; padding:1px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-form label { display:grid; gap:5px; color:var(--muted); font-size:12px; font-weight:700; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-form input,
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-form select { width:100%; min-width:0; min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding-top:4px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-actions .btn { min-height:44px; }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-modal { max-height:calc(100dvh - 24px); }
html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-filter-modal .modal-body { overflow:hidden; }
@media(max-width:380px){ html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell .finance-mobile-toolbar { grid-template-columns:minmax(0,1fr) 44px 52px; } html:is([data-ui-profile="android-app"], [data-ui-profile="android-preview"], [data-ui-preview="android"]) body.finance-shell #androidBottomNav .android-nav-item span { font-size:9px; } }
