/* Browser/PWA semantic Web tokens. Android keeps its own visual authority. */
html:is([data-ui-profile="desktop"], [data-ui-profile="mobile-web"]) {
  --web-action-primary-bg:var(--accent-strong); --web-action-primary-fg:#fff; --web-action-primary-hover:var(--action-hover);
  --web-action-secondary-bg:var(--surface-muted); --web-action-secondary-fg:var(--text); --web-action-secondary-border:var(--border-strong, var(--border)); --web-action-secondary-hover:var(--action-hover-surface);
  --web-action-icon-bg:var(--surface-muted); --web-action-icon-fg:var(--accent-strong); --web-action-icon-border:var(--border-strong, var(--border)); --web-action-icon-hover:var(--action-hover-surface);
  --web-action-disabled-bg:var(--surface-muted); --web-action-disabled-fg:var(--muted); --web-action-disabled-border:var(--border);
  --web-action-danger-bg:color-mix(in srgb, var(--danger) 16%, var(--surface)); --web-action-danger-fg:var(--danger); --web-focus-ring:var(--focus-ring, var(--primary));
}
html[data-theme="dark"]:is([data-ui-profile="desktop"], [data-ui-profile="mobile-web"]) {
  --web-action-primary-bg:#2563eb; --web-action-primary-fg:#fff; --web-action-primary-hover:#1d4ed8;
  --web-action-secondary-bg:#182235; --web-action-secondary-fg:#e5e7eb; --web-action-secondary-border:#334155; --web-action-secondary-hover:#22304a;
  --web-action-icon-bg:#182235; --web-action-icon-fg:#60a5fa; --web-action-icon-border:#334155; --web-action-icon-hover:#22304a;
  --web-action-disabled-bg:#111827; --web-action-disabled-fg:#64748b; --web-action-disabled-border:#243044;
  --web-action-danger-bg:#3b1f2a; --web-action-danger-fg:#fca5a5; --web-focus-ring:#60a5fa;
}
/* Browser/PWA presentation. Android native geometry lives in android.css. */
html:is([data-ui-profile="desktop"], [data-ui-profile="mobile-web"]) body.employee-shell .android-bottom-nav {
  position:fixed; left:0; right:0; bottom:0; z-index:50; display:flex; width:100%;
  padding:6px 4px calc(6px + env(safe-area-inset-bottom, 0px));
}
html:is([data-ui-profile="desktop"], [data-ui-profile="mobile-web"]) body.employee-shell .content { padding-bottom:calc(28px + 64px + env(safe-area-inset-bottom, 0px)); }


/* Shared Admin/Finance ManualTask monitoring layout. */
.task-monitor-toolbar .section-title { align-items:flex-start; flex-wrap:wrap; }
.task-monitor-toolbar .section-title > div { flex:1 1 320px; min-width:0; }
.admin-task-filters { justify-content:flex-start; align-items:flex-end; flex-wrap:wrap; gap:10px; }
.admin-task-filters label { min-width:140px; }
.admin-task-filters .task-monitor-search { flex:1 1 220px; }
.admin-task-filters input, .admin-task-filters select { width:100%; }
.task-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 18px; margin:14px 0; }
.task-detail-field { display:grid; gap:4px; min-width:0; }
.task-detail-label { color:var(--muted); font-size:12px; font-weight:700; }
.task-detail-field strong { overflow-wrap:anywhere; }
.task-evidence { display:grid; gap:8px; padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); }
.task-evidence a { color:var(--primary); font-weight:650; }
.task-evidence-link { background:none; border:0; padding:0; color:var(--primary); font:inherit; font-weight:650; text-align:left; cursor:pointer; }
.task-evidence-link:hover { text-decoration:underline; }
.task-evidence-preview { display:flex; flex-direction:column; gap:12px; }
.task-evidence-preview-image { display:block; max-width:100%; max-height:65vh; margin:0 auto; object-fit:contain; border-radius:10px; }
.task-audit-note { color:var(--muted); font-size:12px; }
@media(max-width:760px){.task-monitor-toolbar .section-title > .btn{flex:1 1 auto}.admin-task-filters{align-items:stretch}.admin-task-filters label,.admin-task-filters .task-monitor-search{flex:1 1 100%;min-width:0}.task-detail-grid{grid-template-columns:1fr;gap:11px}}
.task-evidence-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; min-width:0; width:100%; overflow-x:hidden; }
.task-evidence-gallery-card { min-width:0; width:100%; display:grid; gap:8px; padding:10px; border:1px solid var(--border); border-radius:12px; background:var(--surface-muted); overflow:hidden; }
.task-evidence-gallery-card > strong { font-size:13px; }
.task-evidence-gallery-media { min-width:0; width:100%; height:200px; display:grid; place-items:center; align-content:center; gap:8px; overflow:hidden; }
.task-evidence-gallery-image { display:block; width:100%; max-width:100%; height:200px; max-height:200px; object-fit:contain; border-radius:8px; background:var(--surface); }
.task-evidence-gallery-error { color:var(--danger); font-size:12px; text-align:center; }
.task-evidence-open-tab, .task-evidence-gallery-card .btn-link { justify-self:center; display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:6px 10px; border:1px solid var(--border); border-radius:8px; background:var(--surface); color:var(--primary); font:inherit; font-size:12px; font-weight:700; text-decoration:none; cursor:pointer; }
.nested-modal-overlay.task-evidence-gallery-modal { z-index:330; }
.nested-modal-overlay.task-evidence-gallery-modal .modal-card { width:min(900px,calc(100vw - 48px)); max-width:900px; max-height:calc(100vh - 32px); }
@media(max-width:760px){.nested-modal-overlay.task-evidence-gallery-modal .modal-card{width:calc(100vw - 16px);max-width:calc(100vw - 16px);}}

@media(max-width:760px){.task-evidence-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow-x:hidden}.task-evidence-gallery-card{width:100%;flex:none}.task-evidence-gallery-media{height:150px;min-height:150px}.task-evidence-gallery-image{height:150px;max-height:150px}}
