/* --- Chrono Planner --- */
.chrono-slot {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-bottom: 1px solid var(--border-subtle);
  cursor: pointer;
  font-size: 0.8rem;
  transition: background 0.15s;
}
.chrono-slot:hover {
  background: var(--content-bg-alt);
}
.chrono-slot.active {
  background: var(--accent-primary-light);
}
.chrono-slot-label {
  width: 42px;
  font-weight: 600;
  flex-shrink: 0;
}
.chrono-el-select {
  font-size: 0.75rem;
  padding: 1px 4px;
  border: 1px solid var(--border-strong);
  border-radius: 4px;
  background: var(--content-bg);
  color: var(--content-text);
  width: 80px;
  flex-shrink: 0;
}
.chrono-sm-badge {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
  min-width: 0;
  padding: 2px 6px;
  border-radius: 4px;
  border-left: 3px solid var(--border-strong);
  font-size: 0.75rem;
  overflow: hidden;
  white-space: nowrap;
}
.chrono-sm-badge img {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.chrono-sm-badge.eff-se {
  border-left-color: var(--accent-success);
  background: rgba(47, 158, 68, 0.08);
}
.chrono-sm-badge.eff-pe {
  border-left-color: var(--accent-info);
  background: rgba(41, 128, 185, 0.08);
}
.chrono-sm-badge.eff-nve {
  border-left-color: var(--rarity-common);
  background: var(--content-bg-alt);
}
.chrono-sm-badge.empty {
  color: var(--content-text-muted);
  border-left-color: var(--border-subtle);
}
.chrono-panel-card {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid var(--border-subtle);
  border-radius: 6px;
  cursor: pointer;
  font-size: 0.78rem;
  margin-bottom: 4px;
  transition: background 0.15s;
}
.chrono-panel-card:hover {
  background: var(--accent-primary-light);
}
.chrono-panel-card.assigned {
  opacity: 0.5;
}
.chrono-panel-card.locked {
  opacity: 0.35;
  cursor: default;
}
.chrono-panel-card.locked:hover {
  background: inherit;
}
.chrono-panel-card.excluded {
  opacity: 0.4;
  pointer-events: none;
}
.chrono-panel-card img {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.chrono-panel-card .chrono-badge {
  font-size: 0.65rem;
  color: var(--content-text-muted);
  margin-left: auto;
}
.chrono-eff-se {
  color: var(--accent-success);
}
.chrono-eff-pe {
  color: var(--accent-info);
}
.chrono-eff-nve {
  color: var(--content-text-muted);
}
.chrono-grid-wrap {
  max-height: 70vh;
  overflow-y: auto;
  position: sticky;
  top: 0;
}
.chrono-grid-col {
  align-self: flex-start;
}
.chrono-section-hdr {
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 0;
  margin-top: 6px;
  border-bottom: 1px solid var(--border-strong);
  color: var(--content-text);
}
