/* ==========================================================================
   AstroDev App — Data Tables (Dasha timeline, bookings)
   ========================================================================== */

.dasha-list {
  list-style: none;
}

.dasha-row {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--line);
  cursor: pointer;
  transition: background 0.15s;
}

.dasha-row:hover { background: var(--ink-softer); }

.dasha-row__lord {
  font-family: var(--font-display);
  font-size: var(--text-base);
  color: var(--maroon);
  min-width: 90px;
}

.dasha-row__range {
  font-family: var(--font-data);
  font-size: var(--text-sm);
  color: var(--muted);
}

.dasha-row__duration {
  font-family: var(--font-data);
  font-size: var(--text-xs);
  color: var(--muted-soft);
}

.dasha-row__chevron {
  color: var(--muted-soft);
  transition: transform 0.2s;
}

.dasha-row.is-open .dasha-row__chevron { transform: rotate(90deg); color: var(--maroon); }

.dasha-sub-panel {
  padding: var(--space-2) var(--space-4) var(--space-4) var(--space-12);
  border-bottom: 1px solid var(--line);
}

.dasha-sub-panel[hidden] { display: none; }

.dasha-sub-row {
  display: flex;
  justify-content: space-between;
  padding: var(--space-2) 0;
  font-size: var(--text-sm);
  color: var(--muted);
  border-bottom: 1px solid rgba(255,255,255,0.03);
}

.dasha-sub-row .lord { color: var(--parchment); }

.booking-row {
  display: grid;
  grid-template-columns: 1fr auto auto auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4);
  border-bottom: 1px solid var(--line);
}

.booking-row__consultant {
  font-family: var(--font-display);
  font-size: var(--text-base);
  color: var(--parchment);
}

.booking-row__datetime {
  font-family: var(--font-data);
  font-size: var(--text-sm);
  color: var(--muted);
}

@media (max-width: 700px) {
  .dasha-row, .booking-row { grid-template-columns: 1fr; row-gap: var(--space-1); }
}

.admin-booking-row {
  display: grid;
  grid-template-columns: 1.5fr 1fr auto auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4);
  border-bottom: 1px solid var(--line);
}

.admin-booking-row__client {
  font-family: var(--font-display);
  font-size: var(--text-base);
  color: var(--parchment);
}

.admin-booking-row__contact {
  font-size: var(--text-xs);
  color: var(--muted-soft);
}

.admin-booking-row__details {
  font-size: var(--text-sm);
  color: var(--muted);
}

.admin-booking-row select.status-select {
  background: var(--ink);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--parchment);
  padding: var(--space-2) var(--space-3);
  font-size: var(--text-sm);
}

@media (max-width: 800px) {
  .admin-booking-row { grid-template-columns: 1fr; row-gap: var(--space-2); }
}

.gun-milan-score-card {
  text-align: center;
  padding: var(--space-8);
}

.gun-milan-score-value {
  font-family: var(--font-display);
  font-size: 4rem;
  color: var(--maroon);
  line-height: 1;
}

.gun-milan-score-max {
  font-size: var(--text-lg);
  color: var(--muted-soft);
}

.gun-milan-verdict {
  font-size: var(--text-lg);
  color: var(--parchment);
  margin-top: var(--space-2);
}

.gun-milan-people {
  display: flex;
  justify-content: center;
  gap: var(--space-8);
  margin-top: var(--space-4);
  font-size: var(--text-sm);
  color: var(--muted);
}

.koota-row {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--line);
}

.koota-row:first-child {
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted-soft);
}

.koota-name {
  font-family: var(--font-display);
  font-size: var(--text-base);
  color: var(--parchment);
}

.koota-points {
  font-family: var(--font-data);
  text-align: right;
}

.koota-points.is-zero { color: var(--terracotta); }
.koota-points.is-full { color: var(--success); }

@media (max-width: 700px) {
  .koota-row { grid-template-columns: 1fr 1fr; row-gap: var(--space-1); }
}

.muhurat-day-card {
  border-left: 3px solid var(--line);
}

.muhurat-day-card.is-favorable { border-left-color: var(--success); }
.muhurat-day-card.is-caution { border-left-color: var(--terracotta); }

.muhurat-day-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}

.muhurat-day-date {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  color: var(--parchment);
}

.muhurat-badge {
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 2px var(--space-3);
  border-radius: 999px;
  border: 1px solid;
}

.muhurat-badge--favorable { color: var(--success); border-color: var(--success); }
.muhurat-badge--caution { color: var(--terracotta); border-color: var(--terracotta); }

.muhurat-reasons {
  font-size: var(--text-xs);
  color: var(--muted-soft);
  margin: var(--space-2) 0;
}

.muhurat-windows-row {
  display: flex;
  justify-content: space-between;
  padding: var(--space-2) 0;
  font-size: var(--text-sm);
  border-bottom: 1px solid var(--line);
}

.muhurat-windows-row:last-child { border-bottom: none; }

.wallet-txn-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4);
  border-bottom: 1px solid var(--line);
}

.wallet-txn-row__desc {
  font-size: var(--text-sm);
  color: var(--parchment);
}

.wallet-txn-row__date {
  font-size: var(--text-xs);
  color: var(--muted-soft);
}

.wallet-txn-amount {
  font-family: var(--font-data);
  font-size: var(--text-base);
}

.wallet-txn-amount.is-credit { color: var(--success); }
.wallet-txn-amount.is-debit { color: var(--terracotta); }

.premium-lock-card {
  text-align: center;
  padding: var(--space-8);
  border: 1px dashed var(--gold-dim);
}

.premium-lock-card .lock-icon {
  font-size: 2rem;
  margin-bottom: var(--space-3);
  display: block;
}
