/* ===== EVALUASI KPI PAGE STYLES ===== */

/* Dimension weight tag */
.dim-weight {
  font-size: 0.5625rem;
  color: var(--muted);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

/* Masinis cell */
.masinis-name {
  font-weight: 600;
  font-size: 0.8125rem;
  color: var(--text);
}
.masinis-nip {
  font-size: 0.625rem;
  color: var(--muted);
  font-family: 'JetBrains Mono', monospace;
  margin-top: 1px;
}

/* Score cells */
.score-cell {
  display: inline-block;
  padding: 0.15rem 0.4rem;
  border-radius: 5px;
  font-weight: 700;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.8125rem;
  min-width: 28px;
  text-align: center;
}
.score-a { background: rgba(16,185,129,0.12); color: #047857; }
.score-b { background: rgba(37,99,235,0.10); color: #1E40AF; }
.score-c { background: rgba(245,158,11,0.12); color: #92400E; }
.score-d { background: rgba(239,68,68,0.12); color: #991B1B; }
.score-na { color: var(--muted); font-size: 0.875rem; }

/* Total score */
.total-score {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.875rem;
  color: var(--text);
}

/* Grade badges */
.grade-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 7px;
  font-weight: 800;
  font-size: 0.8125rem;
}
.grade-a { background: rgba(16,185,129,0.15); color: #047857; border: 1.5px solid rgba(16,185,129,0.3); }
.grade-b { background: rgba(37,99,235,0.12); color: #1E40AF; border: 1.5px solid rgba(37,99,235,0.25); }
.grade-c { background: rgba(245,158,11,0.12); color: #92400E; border: 1.5px solid rgba(245,158,11,0.3); }
.grade-d { background: rgba(239,68,68,0.12); color: #991B1B; border: 1.5px solid rgba(239,68,68,0.3); }

/* Trend arrows */
.trend-up   { color: var(--green); font-size: 1rem; font-weight: 800; }
.trend-down { color: var(--red);   font-size: 1rem; font-weight: 800; }
.trend-flat { color: var(--muted); font-size: 1rem; font-weight: 800; }

/* Detail button */
.btn-primary-xs {
  background: rgba(27,58,107,0.08);
  color: var(--navy);
  border-color: rgba(27,58,107,0.2);
  font-weight: 600;
}
.btn-primary-xs:hover {
  background: var(--navy);
  color: #fff;
}

/* Table footer pagination */
.table-footer {
  padding: 0.625rem 1rem;
  border-top: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.75rem;
  color: var(--muted);
}

/* Tab panels */
.tab-panel { }

/* Tab placeholder */
.tab-placeholder {
  padding: 3rem 1rem;
  text-align: center;
  color: var(--muted);
  font-size: 0.875rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.tab-placeholder > i {
  font-size: 2.5rem;
  opacity: 0.25;
  margin-bottom: 0.25rem;
}
.tab-placeholder-sub {
  font-size: 0.75rem;
  color: var(--muted);
  opacity: 0.75;
}

/* Grade distribution bars */
.grade-dist-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.gd-label {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  color: var(--text);
  min-width: 115px;
  flex-shrink: 0;
}
.gd-bar-bg {
  flex: 1;
  height: 8px;
  background: rgba(0,0,0,0.06);
  border-radius: 4px;
  overflow: hidden;
}
.gd-bar-fill {
  height: 100%;
  border-radius: 4px;
  transition: width 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.gd-count {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text);
  min-width: 28px;
  text-align: right;
}

/* Radar chart */
#radarChart {
  transition: opacity 0.3s;
}
#radarPoly {
  transition: opacity 0.6s ease;
}
.radar-dot {
  transition: opacity 0.6s ease;
}

/* Coaching list */
.coaching-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.coaching-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0;
  border-bottom: 1px solid rgba(0,0,0,0.04);
  font-size: 0.8125rem;
}
.coaching-item:last-child { border-bottom: none; }
.coaching-name {
  font-weight: 600;
  color: var(--text);
}
.coaching-score {
  font-weight: 700;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.875rem;
}
.coaching-border .coaching-name {
  color: var(--amber);
}

/* Highlighted row (filtered search) */
.data-table tr.highlight td {
  background: rgba(37,99,235,0.06);
}
.data-table tr.hidden {
  display: none;
}
