/* Scoped to domain rotation: existing admin pages keep their current layout. */
.shell main .scan-domain-panel {
  width: 100%;
  max-width: none;
  min-width: 0;
  padding: 28px;
  overflow: visible;
  box-sizing: border-box;
}
.scan-domain-panel .scan-domain-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 24px;
}
.shell main .scan-domain-panel h2 { margin: 0 0 8px; font-size: 22px; }
.scan-domain-panel .scan-domain-description,
.scan-domain-panel .scan-domain-help { margin: 0; color: var(--admin-muted, #75686d); font-size: 13px; line-height: 1.65; }
.scan-domain-panel .scan-domain-count { padding: 7px 12px; border-radius: 8px; background: var(--admin-soft, #fff4f5); color: var(--admin-primary, #d83d52); font-size: 13px; white-space: nowrap; }
.scan-domain-panel .scan-domain-config-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-bottom: 30px; }
.scan-domain-panel .scan-domain-config-card { min-width: 0; padding: 20px; border: 1px solid var(--admin-border, #eee); border-radius: 12px; background: #fff; }
.scan-domain-panel .scan-domain-label { display: block; margin: 0 0 6px; color: var(--admin-ink, #2b2025); font-size: 15px; font-weight: 600; }
.scan-domain-panel .scan-domain-form-row { display: flex; align-items: center; gap: 10px; margin-top: 16px; }
.scan-domain-panel .scan-domain-form-row input { width: auto; min-width: 0; flex: 1 1 0; margin: 0; min-height: 42px; padding: 10px 12px; box-sizing: border-box; }
.scan-domain-panel .scan-domain-form-row button { flex: 0 0 auto; margin: 0; min-height: 42px; padding: 10px 16px; white-space: nowrap; }
.scan-domain-panel .scan-domain-entry { margin-top: 14px; color: var(--admin-muted, #75686d); font-size: 12px; line-height: 1.7; }
.scan-domain-panel .scan-domain-entry summary { width: fit-content; cursor: pointer; }
.scan-domain-panel .scan-domain-entry p { margin: 12px 0 4px; }
.scan-domain-panel .scan-domain-entry code { display: block; padding: 12px; border-radius: 8px; background: #f8f8fa; overflow-wrap: anywhere; white-space: normal; font-size: 12px; }
.scan-domain-panel .scan-domain-list-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 14px; }
.scan-domain-panel .scan-domain-list-heading h3 { margin: 0; font-size: 16px; }
.scan-domain-panel .scan-domain-table-wrap { width: 100%; max-width: 100%; overflow-x: auto; border: 1px solid var(--admin-border, #eee); border-radius: 10px; -webkit-overflow-scrolling: touch; }
.shell .scan-domain-panel .scan-domain-table { width: 100%; min-width: 980px; margin: 0; border-collapse: collapse; table-layout: fixed; }
.scan-domain-table .scan-col-domain { width: 23%; }
.scan-domain-table .scan-col-status { width: 10%; }
.scan-domain-table .scan-col-order { width: 17%; }
.scan-domain-table .scan-col-health { width: 26%; }
.scan-domain-table .scan-col-actions { width: 24%; }
.scan-domain-panel .scan-domain-table th { padding: 15px 18px; white-space: nowrap; font-size: 13px; font-weight: 600; text-align: left; }
.scan-domain-panel .scan-domain-table td { padding: 18px; vertical-align: middle; font-size: 13px; line-height: 1.5; border-bottom: 1px solid var(--admin-border, #eee); }
.scan-domain-panel .scan-domain-table tbody tr:last-child td { border-bottom: 0; }
.scan-domain-panel .scan-domain-table tbody tr:hover { background: #fcfafb; }
.scan-domain-panel .scan-domain-name { white-space: nowrap; font-weight: 500; font-variant-numeric: tabular-nums; }
.scan-domain-panel .scan-domain-badge { display: inline-flex; align-items: center; padding: 4px 9px; border-radius: 6px; white-space: nowrap; font-size: 12px; }
.scan-domain-panel .scan-domain-badge.is-enabled { color: #258349; background: #eef8f1; }
.scan-domain-panel .scan-domain-badge.is-disabled { color: #777; background: #f1f2f4; }
.scan-domain-panel .scan-domain-order,
.scan-domain-panel .scan-domain-actions { display: flex; align-items: center; flex-wrap: nowrap; gap: 8px; }
.scan-domain-panel .scan-domain-order input { flex: 0 0 68px; width: 68px; min-width: 0; min-height: 36px; margin: 0; padding: 7px 8px; box-sizing: border-box; }
.scan-domain-panel .scan-domain-table button { flex: 0 0 auto; min-height: 36px; margin: 0; padding: 8px 12px; border-radius: 7px; line-height: 20px; white-space: nowrap; font-size: 13px; }
.scan-domain-panel .scan-domain-table .scan-domain-delete { background: #fff1f2; color: #c53949; }
.scan-domain-panel .scan-domain-table .scan-domain-delete:hover { background: #ffe5e8; }
.scan-domain-panel .scan-domain-health { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.scan-domain-panel .scan-domain-health-label { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; }
.scan-domain-panel .scan-domain-health-label::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.scan-domain-panel .is-healthy { color: #258349; }
.scan-domain-panel .is-unhealthy { color: #c53949; }
.scan-domain-panel .is-pending { color: #8a8286; }
.scan-domain-panel .scan-domain-health time { color: var(--admin-muted, #75686d); font-size: 12px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.scan-domain-panel .scan-domain-health-message { color: #c53949; font-size: 12px; overflow-wrap: anywhere; }
.scan-domain-panel .scan-domain-empty { margin: 0; padding: 38px 20px; border: 1px dashed var(--admin-border, #eee); border-radius: 10px; text-align: center; color: var(--admin-muted, #75686d); }
@media (max-width: 1200px) {
  .shell main .scan-domain-panel { padding: 22px; }
  .scan-domain-panel .scan-domain-config-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 600px) {
  .shell main .scan-domain-panel { padding: 16px; }
  .scan-domain-panel .scan-domain-heading { margin-bottom: 18px; gap: 10px; }
  .scan-domain-panel .scan-domain-config-card { padding: 16px; }
  .scan-domain-panel .scan-domain-form-row { flex-wrap: wrap; }
  .scan-domain-panel .scan-domain-form-row input { flex-basis: 100%; width: 100%; }
  .scan-domain-panel .scan-domain-form-row button { width: 100%; }
  .scan-domain-panel .scan-domain-list-heading { margin-top: 4px; }
}
