/* ===== emergency.css ===== */
body:not(.tv-body) {
  background:
    radial-gradient(900px 520px at 8% -10%, rgba(44,92,113,.08), transparent 58%),
    linear-gradient(180deg, #f4f8fa 0%, #eef4f7 100%) !important;
  color: var(--admin-text) !important;
  font-size: var(--font-body) !important;
}

/* Text scale consistency */
body:not(.tv-body) .page-header h1,
body:not(.tv-body) .section-title h2,
body:not(.tv-body) .settings-hero h2,
body:not(.tv-body) .users-hero h2,
body:not(.tv-body) .screens-hero h2,
body:not(.tv-body) .v5-hero h2,
body:not(.tv-body) .media-hero h2,
body:not(.tv-body) .playlist-hero h2,
body:not(.tv-body) .activity-hero h2,
body:not(.tv-body) .emergency-hero h2 {
  color: var(--admin-text) !important;
  font-size: var(--font-page-title) !important;
  line-height: 1.14 !important;
  letter-spacing: -.015em !important;
}
body:not(.tv-body) .card h3,
body:not(.tv-body) .settings-category-card b,
body:not(.tv-body) .help-card h3,
body:not(.tv-body) .screen-card h3,
body:not(.tv-body) .screen-card h3,
body:not(.tv-body) .user-card h3,
body:not(.tv-body) .modal h2 {
  font-size: var(--font-card-title) !important;
  color: var(--admin-text) !important;
  line-height: 1.25 !important;
}
body:not(.tv-body) p,
body:not(.tv-body) .help,
body:not(.tv-body) small,
body:not(.tv-body) .muted,
body:not(.tv-body) .section-title p {
  color: var(--admin-muted) !important;
}

/* Reduced shadow system */
body:not(.tv-body) .topbar,
body:not(.tv-body) .card,
body:not(.tv-body) .metric-card,
body:not(.tv-body) .quick-action,
body:not(.tv-body) .settings-category-card,
body:not(.tv-body) .settings-card,
body:not(.tv-body) .help-card,
body:not(.tv-body) .screen-card,
body:not(.tv-body) .screen-card,
body:not(.tv-body) .user-card,
body:not(.tv-body) .asset-card,
body:not(.tv-body) .playlist-select-card,
body:not(.tv-body) .playlist-item,
body:not(.tv-body) .activity-row,
body:not(.tv-body) .default-screen-card,
body:not(.tv-body) .ticker-card,
body:not(.tv-body) .smtp-settings-card {
  box-shadow: var(--admin-shadow-card) !important;
  border-color: var(--admin-border) !important;
}
body:not(.tv-body) .card:hover,
body:not(.tv-body) .quick-action:hover,
body:not(.tv-body) .settings-category-card:hover,
body:not(.tv-body) .help-card:hover,
body:not(.tv-body) .screen-card:hover,
body:not(.tv-body) .screen-card:hover,
body:not(.tv-body) .user-card:hover,
body:not(.tv-body) .asset-card:hover,
body:not(.tv-body) .playlist-select-card:hover,
body:not(.tv-body) .playlist-item:hover {
  transform: translateY(-1px) !important;
  box-shadow: var(--admin-shadow-hover) !important;
}


body:not(.tv-body) .settings-category-icon,
body:not(.tv-body) .help-card > .icon,
body:not(.tv-body) .metric-icon,
body:not(.tv-body) .android-tv-icon,
body:not(.tv-body) .screen-health-head > span,
body:not(.tv-body) .dashboard-tv-health-popup-btn > span,
body:not(.tv-body) .screen-card-icon,
body:not(.tv-body) .user-avatar,
body:not(.tv-body) .empty-state .icon {
  background: var(--primary-soft) !important;
  color: var(--primary) !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-status-grid span::before,
body:not(.tv-body) .screen-health-grid span::before,
body:not(.tv-body) .progress-bar,
body:not(.tv-body) .active-line {
  background: #2C5C71 !important;
}
body:not(.tv-body) .library-note,
body:not(.tv-body) .inline-tip,
body:not(.tv-body) .empty-state {
  border-color: var(--admin-border) !important;
  background: var(--admin-card-soft) !important;
  color: var(--admin-text-soft) !important;
}

/* Settings category active state: readable light selected card */
body:not(.tv-body) .settings-category-card {
  background: #fff !important;
  color: var(--admin-text) !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 18px !important;
}
body:not(.tv-body) .settings-category-card.active {
  background: linear-gradient(180deg, #ffffff 0%, #eef6f8 100%) !important;
  color: var(--admin-text) !important;
  border: 2px solid #2C5C71 !important;
  box-shadow: 0 0 0 3px rgba(44,92,113,.10) !important;
}
body:not(.tv-body) .settings-category-card.active b,
body:not(.tv-body) .settings-category-card.active .settings-category-copy b {
  color: var(--admin-text) !important;
}
body:not(.tv-body) .settings-category-card.active small,
body:not(.tv-body) .settings-category-card.active .settings-category-copy small {
  color: var(--admin-muted) !important;
}
body:not(.tv-body) .settings-category-card.active .settings-category-icon {
  background: #2C5C71 !important;
  color: #fff !important;
}
body:not(.tv-body) .settings-category-card.active .settings-category-arrow {
  color: #2C5C71 !important;
}

/* Unified buttons with lighter shadows */
body:not(.tv-body) .btn,
body:not(.tv-body) button.btn,
body:not(.tv-body) .rich-editor-toolbar button,
body:not(.tv-body) .full-toolbar button {
  min-height: 36px !important;
  padding: 8px 12px !important;
  border-radius: 12px !important;
  font-size: var(--font-button) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  box-shadow: none !important;
  border: 1px solid var(--admin-border) !important;
  transition: background .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease !important;
}
body:not(.tv-body) .btn:hover,
body:not(.tv-body) .rich-editor-toolbar button:hover,
body:not(.tv-body) .full-toolbar button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 9px rgba(15,23,42,.07) !important;
}
body:not(.tv-body) .btn.primary,
body:not(.tv-body) .btn.primary.soft,
body:not(.tv-body) .btn.save,
body:not(.tv-body) button[type="submit"].btn {
  background: #2C5C71 !important;
  border-color: #2C5C71 !important;
  color: #fff !important;
}
body:not(.tv-body) .btn.ghost,
body:not(.tv-body) .btn.soft,
body:not(.tv-body) .btn:not(.primary):not(.danger):not(.warning) {
  background: #fff !important;
  color: var(--admin-text-soft) !important;
  border-color: var(--admin-border) !important;
}
body:not(.tv-body) .btn.danger { box-shadow: none !important; }
body:not(.tv-body) .btn.warning { box-shadow: none !important; }

/* Unified form/type fields */
body:not(.tv-body) .input,
body:not(.tv-body) .select,
body:not(.tv-body) .textarea,
body:not(.tv-body) input[type="text"],
body:not(.tv-body) input[type="email"],
body:not(.tv-body) input[type="password"],
body:not(.tv-body) input[type="number"],
body:not(.tv-body) input[type="time"],
body:not(.tv-body) input[type="url"],
body:not(.tv-body) input[type="date"],
body:not(.tv-body) select,
body:not(.tv-body) textarea {
  background: #fbfdfe !important;
  border: 1px solid #d5e3ea !important;
  border-radius: 12px !important;
  color: var(--admin-text) !important;
  min-height: 38px !important;
  box-shadow: none !important;
}
body:not(.tv-body) textarea,
body:not(.tv-body) .textarea { line-height: 1.45 !important; }
body:not(.tv-body) .input:focus,
body:not(.tv-body) .select:focus,
body:not(.tv-body) .textarea:focus,
body:not(.tv-body) input:focus,
body:not(.tv-body) select:focus,
body:not(.tv-body) textarea:focus,
body:not(.tv-body) button:focus-visible,
body:not(.tv-body) a:focus-visible {
  outline: none !important;
  border-color: #2C5C71 !important;
  box-shadow: var(--admin-focus) !important;
}
body:not(.tv-body) .form-row label {
  color: var(--admin-text-soft) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Unified popup windows */
body:not(.tv-body) .modal {
  background: #fff !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 22px !important;
  box-shadow: var(--admin-shadow-modal) !important;
  color: var(--admin-text) !important;
}
body:not(.tv-body) .modal-head,
body:not(.tv-body) .android-tv-modal-head,
body:not(.tv-body) .android-tv-schedule-head,
body:not(.tv-body) .android-tv-child-head {
  background: linear-gradient(180deg, #f8fbfc 0%, #eef6f8 100%) !important;
  border-bottom: 1px solid var(--admin-border) !important;
  border-radius: 22px 22px 0 0 !important;
  color: var(--admin-text) !important;
}
body:not(.tv-body) .modal-head h2,
body:not(.tv-body) .android-tv-modal-head h2,
body:not(.tv-body) .android-tv-schedule-head h2,
body:not(.tv-body) .android-tv-child-head h2 {
  color: var(--admin-text) !important;
}
body:not(.tv-body) .close-btn {
  background: #fff !important;
  color: var(--admin-text-soft) !important;
  border: 1px solid var(--admin-border) !important;
  box-shadow: none !important;
}

/* Android TV Control: compact, no-scroll desktop layout */
body:not(.tv-body) .modal:has(.android-tv-control-modal) {
  width: min(960px, calc(100vw - 26px)) !important;
  max-height: min(94vh, 820px) !important;
  overflow: hidden !important;
}
body:not(.tv-body) .android-tv-control-modal {
  padding: 10px !important;
  gap: 8px !important;
  overflow: hidden !important;
}
body:not(.tv-body) .android-tv-control-title {
  padding: 8px 12px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-control,
body:not(.tv-body) .android-tv-panel {
  padding: 10px !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
body:not(.tv-body) .android-tv-topbar {
  padding: 8px 10px !important;
  margin-bottom: 8px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 12px !important;
}
body:not(.tv-body) .android-tv-title b { font-size: 13.5px !important; }
body:not(.tv-body) .android-tv-title small { font-size: 10.5px !important; }
body:not(.tv-body) .android-tv-section {
  padding: 9px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-section-head {
  margin-bottom: 7px !important;
}
body:not(.tv-body) .android-tv-section-head b { font-size: 12.5px !important; }
body:not(.tv-body) .android-tv-section-head small { font-size: 10.5px !important; }
body:not(.tv-body) .android-tv-status-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px !important;
}
body:not(.tv-body) .android-tv-status-grid span {
  min-height: 50px !important;
  padding: 7px 8px 7px 10px !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-status-grid .icon {
  width: 14px !important;
  height: 14px !important;
  color: #2C5C71 !important;
}
body:not(.tv-body) .android-tv-status-grid b { font-size: 9.3px !important; }
body:not(.tv-body) .android-tv-status-grid em { font-size: 11px !important; line-height: 1.2 !important; }
body:not(.tv-body) .android-tv-two-col {
  grid-template-columns: .95fr 1.25fr !important;
  gap: 8px !important;
  margin-top: 8px !important;
}
body:not(.tv-body) .android-tv-watchdog-card,
body:not(.tv-body) .android-tv-set-url-card {
  padding: 9px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-watchdog-main {
  grid-template-columns: 30px minmax(0,1fr) !important;
  gap: 8px !important;
}
body:not(.tv-body) .android-tv-watchdog-main > span {
  width: 30px !important;
  height: 30px !important;
  color: #2C5C71 !important;
  background: var(--primary-soft) !important;
}
body:not(.tv-body) .android-tv-watchdog-main b,
body:not(.tv-body) .android-tv-url-head b { font-size: 12.5px !important; }
body:not(.tv-body) .android-tv-watchdog-main small,
body:not(.tv-body) .android-tv-url-head small { font-size: 10.5px !important; line-height: 1.35 !important; }
body:not(.tv-body) .android-tv-set-url-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 6px !important;
}
body:not(.tv-body) .android-tv-set-url-row .input { height: 34px !important; min-height: 34px !important; }
body:not(.tv-body) .android-tv-controls-section { margin-top: 8px !important; }
body:not(.tv-body) .android-tv-control-actions,
body:not(.tv-body) .android-tv-control-actions {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 6px !important;
}
body:not(.tv-body) .android-tv-control-actions .btn,
body:not(.tv-body) .android-tv-control-actions .btn {
  min-height: 36px !important;
  padding: 6px 7px !important;
  font-size: 10.8px !important;
  border-radius: 11px !important;
}
body:not(.tv-body) .android-tv-last-command {
  padding: 7px 9px !important;
  font-size: 10.8px !important;
}

/* Operating Schedule popup */
body:not(.tv-body) .modal:has(.android-tv-schedule-modal) {
  width: min(900px, calc(100vw - 26px)) !important;
  max-height: min(92vh, 760px) !important;
  overflow: hidden !important;
}
body:not(.tv-body) .android-tv-schedule-modal { overflow: hidden !important; }
body:not(.tv-body) .android-tv-schedule-inner { padding: 10px !important; }
body:not(.tv-body) .android-tv-schedule-grid {
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 6px !important;
}
body:not(.tv-body) .android-tv-schedule-row {
  padding: 7px 6px !important;
  border-radius: 12px !important;
  min-height: 0 !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-day-badge {
  background: var(--primary-soft) !important;
  border-color: var(--primary-border) !important;
  color: #2C5C71 !important;
}
body:not(.tv-body) .android-tv-schedule-row .input {
  height: 29px !important;
  min-height: 29px !important;
  font-size: 10.5px !important;
}
body:not(.tv-body) .android-tv-schedule-summary {
  margin-top: 8px !important;
  gap: 6px !important;
}
body:not(.tv-body) .android-tv-schedule-summary .sum {
  padding: 7px 8px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .android-tv-schedule-actions {
  padding: 9px 12px !important;
}

/* TV Health Monitor popup */
body:not(.tv-body) .modal:has(.screen-health-modal),
body:not(.tv-body) .modal:has(.screen-health-modal),
body:not(.tv-body) .modal:has(.screen-health-panel) {
  width: min(740px, calc(100vw - 26px)) !important;
  max-height: min(90vh, 680px) !important;
  overflow: hidden !important;
}
body:not(.tv-body) .screen-health-modal,
body:not(.tv-body) .screen-health-modal,
body:not(.tv-body) .screen-health-modal,
body:not(.tv-body) .screen-health-modal {
  gap: 8px !important;
  overflow: hidden !important;
}
body:not(.tv-body) .screen-health-panel {
  padding: 10px !important;
  box-shadow: none !important;
}
body:not(.tv-body) .screen-health-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px !important;
}
body:not(.tv-body) .screen-health-grid span {
  min-height: 62px !important;
  padding: 8px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

@media (max-width: 1180px) {
  body:not(.tv-body) .android-tv-status-grid,
  body:not(.tv-body) .screen-health-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body:not(.tv-body) .android-tv-control-actions,
  body:not(.tv-body) .android-tv-control-actions { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body:not(.tv-body) .modal:has(.android-tv-control-modal),
  body:not(.tv-body) .modal:has(.android-tv-schedule-modal),
  body:not(.tv-body) .modal:has(.screen-health-panel) { overflow: auto !important; }
}
@media (max-width: 900px) {
  body:not(.tv-body) .modal { width: min(94vw, 840px) !important; max-height: 90vh !important; }
  body:not(.tv-body) .android-tv-two-col { grid-template-columns: 1fr !important; }
  body:not(.tv-body) .android-tv-schedule-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 720px) {
  body:not(.tv-body) .android-tv-status-grid,
  body:not(.tv-body) .screen-health-grid,
  body:not(.tv-body) .android-tv-control-actions,
  body:not(.tv-body) .android-tv-control-actions,
  body:not(.tv-body) .android-tv-schedule-grid { grid-template-columns: 1fr !important; }
  body:not(.tv-body) .modal .btn-row { justify-content: stretch !important; }
  body:not(.tv-body) .modal .btn-row .btn { flex: 1 1 100% !important; justify-content: center !important; }
}


body:not(.tv-body) .android-tv-icon,
body:not(.tv-body) .android-tv-watchdog-main > span {
  display: inline-grid !important;
  place-items: center !important;
  align-items: center !important;
  justify-items: center !important;
  line-height: 0 !important;
  flex: 0 0 auto !important;
}
body:not(.tv-body) .android-tv-icon .icon,
body:not(.tv-body) .android-tv-watchdog-main > span .icon {
  display: block !important;
  margin: 0 !important;
  width: 18px !important;
  height: 18px !important;
  stroke-width: 2.25 !important;
}
body:not(.tv-body) .android-tv-watchdog-main > span .icon {
  width: 17px !important;
  height: 17px !important;
}

/* Keep Android TV Control content inside the popup without clipping the last-action text */
body:not(.tv-body) .modal:has(.android-tv-control-modal) {
  width: min(920px, calc(100vw - 26px)) !important;
  max-height: min(92vh, 760px) !important;
  overflow: hidden !important;
}
body:not(.tv-body) .android-tv-control-modal,
body:not(.tv-body) .android-tv-control,
body:not(.tv-body) .android-tv-panel {
  overflow: visible !important;
}
body:not(.tv-body) .android-tv-control-title {
  padding: 7px 11px !important;
}
body:not(.tv-body) .android-tv-topbar {
  padding: 7px 9px !important;
  margin-bottom: 7px !important;
}
body:not(.tv-body) .android-tv-icon {
  width: 34px !important;
  height: 34px !important;
}
body:not(.tv-body) .android-tv-section {
  padding: 8px !important;
}
body:not(.tv-body) .android-tv-status-grid span {
  min-height: 46px !important;
  padding: 6px 7px 6px 9px !important;
}
body:not(.tv-body) .android-tv-two-col {
  margin-top: 7px !important;
  gap: 7px !important;
}
body:not(.tv-body) .android-tv-watchdog-card,
body:not(.tv-body) .android-tv-set-url-card {
  padding: 8px !important;
}
body:not(.tv-body) .android-tv-control-actions,
body:not(.tv-body) .android-tv-control-actions {
  gap: 5px !important;
}
body:not(.tv-body) .android-tv-control-actions .btn,
body:not(.tv-body) .android-tv-control-actions .btn {
  min-height: 34px !important;


/* ===== ticker.css ===== */
padding: 5px 6px !important;
}


.emergency-auto-clear-row, .screen-emergency-auto-clear-row { padding:12px; border:1px dashed rgba(44,92,113,.22); border-radius:16px; background:#f8fbfc; }
