/* Tenant onboarding dashboard — RENTALL-inspired layout for new GC companies */
body.gce-tenant-onboarding #dashboard-main{
  background:#f3f4f6;
  padding:0 20px 32px;
}
.tenant-onboard{
  max-width:1280px;
  margin:0 auto;
  padding:4px 0 24px;
}
.tenant-onboard--loading{
  padding:56px 16px;
  color:#64748b;
  font-size:14px;
}

/* Top bar */
.tenant-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  padding:16px 0 8px;
  margin-bottom:4px;
}
.tenant-topbar-title{
  margin:0;
  font-size:22px;
  font-weight:800;
  color:#0f172a;
}
.tenant-topbar-right{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.tenant-topbar-bell{
  width:40px;
  height:40px;
  border-radius:10px;
  border:1px solid #e2e8f0;
  background:#fff;
  color:#475569;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.tenant-topbar-bell:hover{background:#f8fafc;border-color:#cbd5e1}
.tenant-topbar-company{
  padding:8px 14px;
  border-radius:10px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:13px;
  font-weight:700;
  color:#334155;
  max-width:240px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tenant-topbar-user{
  display:flex;
  align-items:center;
  gap:10px;
  padding:6px 8px 6px 14px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:#fff;
}
.tenant-topbar-user-text{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  line-height:1.2;
}
.tenant-topbar-user-text b{font-size:13px;color:#0f172a}
.tenant-topbar-user-text span{font-size:11px;color:#64748b;font-weight:600}
.tenant-topbar-avatar{
  width:36px;
  height:36px;
  border-radius:50%;
  background:linear-gradient(135deg,#2563eb,#6366f1);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:800;
}

/* Welcome */
.tenant-welcome{margin:8px 0 20px}
.tenant-welcome h2{
  margin:0 0 6px;
  font-size:26px;
  font-weight:800;
  color:#0f172a;
  line-height:1.2;
}
.tenant-welcome p{margin:0;font-size:15px;color:#64748b;line-height:1.5}

/* KPI row */
.tenant-kpi-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}
.tenant-kpi{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:16px 18px;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
  min-height:132px;
  display:flex;
  flex-direction:column;
}
.tenant-kpi-lbl{
  font-size:12px;
  font-weight:700;
  color:#64748b;
  margin-bottom:8px;
}
.tenant-kpi-val{
  font-size:30px;
  font-weight:800;
  color:#0f172a;
  line-height:1;
  margin-bottom:6px;
}
.tenant-kpi-sub{
  font-size:12px;
  color:#94a3b8;
  margin-bottom:auto;
  padding-bottom:10px;
}
.tenant-kpi-link{
  margin-top:auto;
  padding:0;
  border:0;
  background:none;
  color:#2563eb;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  text-align:left;
}
.tenant-kpi-link:hover{text-decoration:underline}

/* Panels */
.tenant-mid-row,
.tenant-bottom-row{
  display:grid;
  gap:16px;
  margin-bottom:16px;
}
.tenant-mid-row{grid-template-columns:1.35fr 1fr 1fr;align-items:stretch}
.tenant-bottom-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.tenant-panel{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:18px 20px;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.tenant-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}
.tenant-panel-head h3{
  margin:0;
  font-size:15px;
  font-weight:800;
  color:#0f172a;
}
.tenant-panel-link{
  padding:0;
  border:0;
  background:none;
  color:#2563eb;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.tenant-panel-link:hover{text-decoration:underline}

/* Company summary */
.tenant-summary{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:16px;
  align-items:start;
}
.tenant-summary-visual{
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(145deg,#dbeafe,#eff6ff);
  border:1px solid #bfdbfe;
  min-height:120px;
  display:grid;
  place-items:center;
}
.tenant-summary-icon{color:#2563eb;opacity:.85}
.tenant-summary-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}
.tenant-summary-title-row h4{
  margin:0 0 4px;
  font-size:16px;
  font-weight:800;
  color:#0f172a;
}
.tenant-summary-title-row p{
  margin:0;
  font-size:12px;
  color:#64748b;
}
.tenant-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.tenant-summary-cell{
  padding:10px 12px;
  border-radius:10px;
  background:#f8fafc;
  border:1px solid #eef2f7;
}
.tenant-summary-cell span{
  display:block;
  font-size:11px;
  font-weight:700;
  color:#64748b;
  margin-bottom:4px;
}
.tenant-summary-cell b{
  font-size:14px;
  color:#0f172a;
}

/* Badges */
.tenant-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  flex-shrink:0;
}
.tenant-badge--ok{background:#dcfce7;color:#15803d}
.tenant-badge--warn{background:#ffedd5;color:#c2410c}
.tenant-badge--open{background:#dbeafe;color:#1d4ed8}

/* Setup tasks */
.tenant-task-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.tenant-task{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid #eef2f7;
  background:#fafafa;
}
.tenant-task--click{cursor:pointer}
.tenant-task--click:hover{border-color:#bfdbfe;background:#eff6ff}
.tenant-task-main b{
  display:block;
  font-size:13px;
  color:#0f172a;
  margin-bottom:2px;
}
.tenant-task-main span{
  display:block;
  font-size:12px;
  color:#64748b;
  line-height:1.35;
}

/* CTA panel */
.tenant-panel--cta .tenant-cta{
  display:flex;
  flex-direction:column;
  flex:1;
}
.tenant-cta-kicker{
  margin:0 0 6px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#64748b;
}
.tenant-cta-title{
  font-size:18px;
  font-weight:800;
  color:#0f172a;
  line-height:1.25;
  margin-bottom:6px;
}
.tenant-cta-sub{
  margin:0 0 14px;
  font-size:13px;
  color:#64748b;
  line-height:1.45;
}
.tenant-cta-progress{
  height:8px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
  margin-bottom:6px;
}
.tenant-cta-progress-bar{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#6366f1);
}
.tenant-cta-pct{
  margin:0 0 16px;
  font-size:12px;
  font-weight:700;
  color:#475569;
}
.tenant-cta-primary,
.tenant-cta-secondary{
  display:block;
  width:100%;
  padding:12px 16px;
  border-radius:12px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  text-align:center;
}
.tenant-cta-primary{
  border:0;
  background:#2563eb;
  color:#fff;
  margin-bottom:10px;
}
.tenant-cta-primary:hover{background:#1d4ed8}
.tenant-cta-secondary{
  border:1px solid #cbd5e1;
  background:#fff;
  color:#334155;
}
.tenant-cta-secondary:hover{background:#f8fafc}
.tenant-cta-secondary--inline{width:auto;display:inline-block;margin-top:8px}

/* Documents empty */
.tenant-doc-empty{
  text-align:center;
  padding:24px 12px;
  color:#64748b;
}
.tenant-doc-icon{font-size:28px;display:block;margin-bottom:8px}
.tenant-doc-empty p{margin:0 0 4px;font-size:14px;font-weight:600;color:#475569}
.tenant-empty-note{margin:0;font-size:13px;color:#64748b;line-height:1.5}

/* Announcements */
.tenant-announce-list{display:flex;flex-direction:column;gap:12px}
.tenant-announce{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 0;
  border-bottom:1px solid #f1f5f9;
}
.tenant-announce:last-child{border-bottom:0;padding-bottom:0}
.tenant-announce-icon{font-size:18px;line-height:1;margin-top:2px}
.tenant-announce b{
  display:block;
  font-size:13px;
  color:#0f172a;
  margin-bottom:3px;
}
.tenant-announce span{
  display:block;
  font-size:12px;
  color:#64748b;
  line-height:1.4;
}

/* Account links */
.tenant-account-list{display:flex;flex-direction:column;gap:8px}
.tenant-account-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid #eef2f7;
  background:#fafafa;
  cursor:pointer;
  text-align:left;
}
.tenant-account-link:hover{border-color:#bfdbfe;background:#eff6ff}
.tenant-account-link b{
  display:block;
  font-size:13px;
  color:#0f172a;
  margin-bottom:2px;
}
.tenant-account-link small{
  display:block;
  font-size:12px;
  color:#64748b;
}
.tenant-account-chev{
  font-size:18px;
  color:#94a3b8;
  font-weight:700;
}

/* Responsive */
@media (max-width:1100px){
  .tenant-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tenant-mid-row{grid-template-columns:1fr}
  .tenant-bottom-row{grid-template-columns:1fr}
  .tenant-summary{grid-template-columns:1fr}
  .tenant-summary-visual{min-height:96px}
}
@media (max-width:560px){
  .tenant-kpi-row{grid-template-columns:1fr}
  .tenant-topbar-user-text{display:none}
  .tenant-welcome h2{font-size:22px}
  .tenant-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Dark mode */
body:not([data-gce-mode="light"]).gce-tenant-onboarding #dashboard-main{background:#0b1220}
body:not([data-gce-mode="light"]) .tenant-topbar-title,
body:not([data-gce-mode="light"]) .tenant-welcome h2,
body:not([data-gce-mode="light"]) .tenant-kpi-val,
body:not([data-gce-mode="light"]) .tenant-panel-head h3,
body:not([data-gce-mode="light"]) .tenant-summary-title-row h4,
body:not([data-gce-mode="light"]) .tenant-cta-title,
body:not([data-gce-mode="light"]) .tenant-task-main b,
body:not([data-gce-mode="light"]) .tenant-announce b,
body:not([data-gce-mode="light"]) .tenant-account-link b{color:#f1f5f9}
body:not([data-gce-mode="light"]) .tenant-welcome p,
body:not([data-gce-mode="light"]) .tenant-kpi-lbl,
body:not([data-gce-mode="light"]) .tenant-kpi-sub,
body:not([data-gce-mode="light"]) .tenant-summary-title-row p,
body:not([data-gce-mode="light"]) .tenant-task-main span,
body:not([data-gce-mode="light"]) .tenant-cta-sub,
body:not([data-gce-mode="light"]) .tenant-announce span,
body:not([data-gce-mode="light"]) .tenant-account-link small{color:#94a3b8}
body:not([data-gce-mode="light"]) .tenant-kpi,
body:not([data-gce-mode="light"]) .tenant-panel,
body:not([data-gce-mode="light"]) .tenant-topbar-bell,
body:not([data-gce-mode="light"]) .tenant-topbar-company,
body:not([data-gce-mode="light"]) .tenant-topbar-user{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.08);
}
body:not([data-gce-mode="light"]) .tenant-task,
body:not([data-gce-mode="light"]) .tenant-account-link,
body:not([data-gce-mode="light"]) .tenant-summary-cell{
  background:rgba(255,255,255,.03);
  border-color:rgba(255,255,255,.08);
}
body:not([data-gce-mode="light"]) .tenant-summary-visual{
  background:rgba(37,99,235,.12);
  border-color:rgba(59,130,246,.25);
}
body:not([data-gce-mode="light"]) .tenant-cta-secondary{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.12);
  color:#e2e8f0;
}
