/* Owner Portal — Premium UI contract (theme-independent)
   Mirrors Inventory's proven look and guarantees visibility on any theme.
   RULES:
   ✅ All markup wrapped in .ca-* containers (router wraps tab content in .ca-shell)
   ✅ Scoped styles under .ca-ui + data-scope + data-tab
   ✅ Modals use fixed overlay + own z-index + base typography reset inside .ca-modal-shell
*/

:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: #111;
  background: rgba(250, 246, 246, 1);
  border-radius: 18px;
  padding: 18px;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin, 
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin * , 
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin *::before, 
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin *::after { box-sizing: border-box; }

:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-shell-admin > * + * { margin-top: 12px; }

/* Premium cards (Inventory-grade softness) */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-card{
  background:#fff;
  border-radius:18px;
  border:1px solid rgba(15,23,42,.06);
  box-shadow: 0 10px 30px rgba(2,6,23,.06);
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-card-title,
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-card-h{
  padding: 14px 16px;
  font-weight: 700;
  font-size: 14px;
  color:#0f172a;
  border-bottom: 1px solid rgba(15,23,42,.06);
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-card-body{
  padding: 14px 16px;
}

/* Muted helpers */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-muted{ color:#6b7280; font-size: 13px; }
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-subtle{ color:#475569; font-size: 13px; }

/* Buttons (neutral, premium) */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-btn{
  border-radius: 12px;
  padding: 10px 14px;
  border: 1px solid rgba(15,23,42,.12);
  background:#fff;
  color:#0f172a;
  font-weight: 600;
  font-size: 13px;
  cursor:pointer;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-btn:hover{ box-shadow: 0 6px 16px rgba(2,6,23,.08); }
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-btn-primary{
  background:#0f172a;
  color:#fff;
  border-color:#0f172a;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-icon-btn{
  width:38px; height:38px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius: 999px;
  border:1px solid rgba(15,23,42,.12);
  background:#fff;
  cursor:pointer;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-icon-btn:hover{ box-shadow: 0 6px 16px rgba(2,6,23,.08); }

/* KPI grid (Dashboard/Achievements/Quotations) */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-grid{
  display:grid;
  gap:12px;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"])[data-tab="dashboard"] .ca-grid{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 980px){
  :is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"])[data-tab="dashboard"] .ca-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px){
  :is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"])[data-tab="dashboard"] .ca-grid{ grid-template-columns: 1fr; }
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-kpi{
  background:#fff;
  border-radius:18px;
  border:1px solid rgba(15,23,42,.06);
  padding:14px 16px;
  box-shadow: 0 10px 30px rgba(2,6,23,.06);
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-kpi .ca-kpi-label{ font-size: 12px; color:#64748b; font-weight:700; letter-spacing:.02em; }
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-kpi .ca-kpi-value{ margin-top:6px; font-size: 22px; font-weight: 800; color:#0f172a; }

/* Inventory-style tables/lists (Messages/Leads/Reviews) */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-list{
  display:block;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-list-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 14px 16px;
  background:#fff;
  border: 1px solid rgba(15,23,42,.06);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(2,6,23,.04);
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-list-item + .ca-list-item{ margin-top: 10px; }

/* Tabs (Discovery pills selector etc) */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,23,42,.10);
  font-size: 12px;
  font-weight: 700;
  color:#0f172a;
}

/* Theme-proof modal system */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-overlay{
  position: fixed;
  inset: 0;
  background: rgba(2,6,23,.45);
  z-index: 99990;
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 18px;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal{
  width: min(720px, 96vw);
  background:#fff;
  border-radius: 18px;
  border:1px solid rgba(15,23,42,.10);
  box-shadow: 0 18px 60px rgba(2,6,23,.25);
  overflow:hidden;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-header{
  padding: 14px 16px;
  font-weight: 800;
  border-bottom: 1px solid rgba(15,23,42,.06);
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-body{ padding: 14px 16px; }
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-actions{
  padding: 14px 16px;
  border-top: 1px solid rgba(15,23,42,.06);
  display:flex;
  justify-content:flex-end;
  gap:10px;
}

/* Typography reset inside modal */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell,
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell *{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  text-transform:none !important;
}
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell input,
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell textarea,
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell select,
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"]) .ca-modal-shell button{
  font: inherit !important;
}


/* Inventory tab is already fully theme-independent — keep it untouched. */
:is(.ca-ui[data-scope="admin"], .ca-portal[data-scope="admin"])[data-tab="inventory"] .ca-shell-admin{
  background: transparent;
  padding: 0;
  border-radius: 0;
}
