/* =====================================================
   TRADE MANAGER · DASHBOARD
===================================================== */

.tm-dashboard{
  max-width:100%;
  display:grid;
  gap:18px;
}

.tm-hero-actions{
  display:flex;
  align-items:center;
  gap:12px;
}

.tm-icon-btn{
  width:48px;
  height:48px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  color:var(--primary);
  font-size:20px;
  font-weight:900;
  box-shadow:var(--shadow-sm);
}

.tm-dashboard-main{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.tm-dashboard-main-single{
  grid-template-columns:1fr;
}

.tm-dashboard-bottom{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
}

.tm-chart{
  height:140px;
  display:flex;
  align-items:end;
  gap:8px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(15,107,87,.04),rgba(15,107,87,.09));
}

.tm-chart i{
  flex:1;
  min-width:10px;
  border-radius:999px 999px 0 0;
  background:linear-gradient(180deg,var(--primary-2),var(--primary));
}

.tm-ring{
  width:138px;
  height:138px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:conic-gradient(var(--primary) 0deg,var(--primary-soft) 0deg);
  margin:10px auto 18px;
}

.tm-ring div{
  width:102px;
  height:102px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#fff;
  color:var(--primary);
  font-size:34px;
  font-weight:950;
}

.tm-map-placeholder,
.tm-empty-clients{
  min-height:150px;
  display:grid;
  place-items:center;
  text-align:center;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fafc,#eef8f4);
  color:var(--muted);
  font-weight:800;
}

.tm-modules-panel{
  padding:22px;
}

.tm-modules-panel .tm-module-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
}

.tm-modules-panel .tm-module-card{
  min-height:168px;
}

.tm-modules-panel .tm-module-card p{
  min-height:52px;
}

@media(max-width:1280px){
  .tm-modules-panel .tm-module-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:1180px){
  .tm-dashboard-main,
  .tm-dashboard-bottom{
    grid-template-columns:1fr;
  }
}
/* DASHBOARD · REMATE VISUAL FINAL */

.tm-main-cta{
  min-height:56px !important;
  padding:0 24px !important;
  font-size:14px !important;
}

.tm-activity-panel{
  padding:24px !important;
}

.tm-activity-panel .tm-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.tm-activity-panel .tm-panel-head strong{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  border-radius:999px;
  background:var(--primary-soft);
  color:var(--primary);
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}

.tm-chart-colored{
  height:160px !important;
  gap:10px !important;
  background:
    radial-gradient(circle at 92% 8%,rgba(25,165,125,.12),transparent 32%),
    linear-gradient(180deg,#f8fafc,#eef8f4) !important;
}

.tm-chart-colored i{
  box-shadow:inset 0 -14px 18px rgba(0,0,0,.08), 0 8px 14px rgba(15,23,42,.08);
}

.tm-chart-colored .bar-blue,
.tm-chart-legend .bar-blue{background:linear-gradient(180deg,#60a5fa,#2563eb) !important;}

.tm-chart-colored .bar-green,
.tm-chart-legend .bar-green{background:linear-gradient(180deg,#34d399,#047857) !important;}

.tm-chart-colored .bar-orange,
.tm-chart-legend .bar-orange{background:linear-gradient(180deg,#fb923c,#ea580c) !important;}

.tm-chart-colored .bar-purple,
.tm-chart-legend .bar-purple{background:linear-gradient(180deg,#a78bfa,#7c3aed) !important;}

.tm-chart-colored .bar-gold,
.tm-chart-legend .bar-gold{background:linear-gradient(180deg,#facc15,#ca8a04) !important;}

.tm-chart-colored .bar-red,
.tm-chart-legend .bar-red{background:linear-gradient(180deg,#fb7185,#e11d48) !important;}

.tm-chart-legend{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.tm-chart-legend span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
}

.tm-chart-legend i{
  width:10px;
  height:10px;
  border-radius:999px;
}

.tm-health-chips{
  display:grid;
  gap:9px;
  margin-top:12px;
}

.tm-health-chips span{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 13px;
  border-radius:999px;
  background:var(--primary-soft);
  color:var(--primary);
  font-size:12px;
  font-weight:950;
}

.tm-health-chips b{
  color:var(--heading);
  font-size:15px;
}

.tm-map-pro{
  gap:9px;
  padding:22px;
}

.tm-map-pro strong{
  display:block;
  color:var(--heading);
  font-size:20px;
  font-weight:1000;
}

.tm-map-pro span{
  color:var(--muted);
  font-size:15px;
  font-weight:900;
}

.tm-map-pro .ghost-btn{
  margin-top:8px;
  min-height:40px;
  padding:0 16px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:#fff;
  color:var(--primary);
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}

.tm-empty-clients-pro{
  gap:8px;
  padding:20px;
}

.tm-empty-clients-pro strong{
  color:var(--heading);
  font-size:18px;
  font-weight:1000;
}

.tm-empty-clients-pro small{
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}

.tm-empty-clients-pro .pro-btn{
  margin-top:8px;
  min-height:42px;
  padding:0 18px;
}

.tm-status-bar-pro{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}

.tm-status-item .ok{
  color:#16a34a;
}