/* InternetRemovals design tokens — distilled from stylesheet_example.css (no Tailwind) */
:root {
  --ir-bg: hsl(220, 20%, 4%);
  --ir-surface: hsl(220, 15%, 7%);
  --ir-surface-2: hsl(220, 12%, 10%);
  --ir-border: hsl(220, 10%, 16%);
  --ir-text: hsl(0, 0%, 95%);
  --ir-muted: hsl(0, 0%, 68%);
  --ir-gold: hsl(45, 100%, 58%);
  --ir-gold-bright: hsl(45, 100%, 68%);
  --ir-gold-dim: hsl(45, 80%, 42%);
  --ir-shadow-gold: 0 0 24px hsl(45 100% 50% / 0.15);
}

body.ir-app {
  background-color: var(--ir-bg);
  color: var(--ir-text);
  min-height: 100vh;
  padding-bottom: 2rem;
}

/* URL submit pipeline: lightweight busy indicator (not a second Bootstrap modal) */
.ir-pipeline-busy {
  position: fixed;
  top: 1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20000;
  display: flex;
  align-items: flex-start;
  padding: 0.5rem 1rem;
  border-radius: 10px;
  border: 1px solid hsl(45 100% 55% / 0.35);
  background: hsl(220 18% 8% / 0.95);
  color: var(--ir-text);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
  font-size: 0.9rem;
  font-weight: 500;
  min-width: min(820px, calc(100vw - 2rem));
  max-width: min(920px, calc(100vw - 2rem));
}

html[data-ir-theme="light"] .ir-pipeline-busy {
  background: hsl(0 0% 100% / 0.97);
  border-color: hsl(43 80% 45% / 0.4);
  color: var(--ir-text);
}

.ir-pipeline-busy-spinner {
  margin-top: 0.2rem;
}

.ir-pipeline-busy-body {
  min-width: 0;
  flex: 1 1 auto;
}

#pipelineBusyMeta {
  color: var(--ir-muted);
  margin-top: 0.15rem;
}

#pipelineBusyLog {
  margin-top: 0.5rem;
  padding: 0.6rem 0.7rem;
  max-height: 260px;
  overflow: auto;
  background: hsl(220 16% 6% / 0.96);
  border: 1px solid hsl(45 100% 55% / 0.15);
  border-radius: 8px;
  color: var(--ir-text);
  font-size: 0.78rem;
  line-height: 1.35;
  white-space: pre-wrap;
  word-break: break-word;
}

html[data-ir-theme="light"] #pipelineBusyLog {
  background: hsl(0 0% 98% / 0.98);
}

.ir-navbar {
  background: linear-gradient(135deg, hsl(220, 22%, 3%) 0%, hsl(220, 18%, 9%) 100%) !important;
  border-bottom: 1px solid hsl(45 100% 55% / 0.22);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
  padding: 0.85rem 0;
}

.ir-navbar .navbar-brand span,
.ir-brand-text {
  color: var(--ir-gold) !important;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-shadow: 0 0 20px hsl(45 100% 50% / 0.25);
}

.ir-nav-link {
  color: var(--ir-muted) !important;
  font-weight: 500;
  padding: 0.35rem 0.65rem !important;
  border-radius: 6px;
  transition: color 0.2s, background 0.2s;
}

.ir-nav-link:hover {
  color: var(--ir-gold) !important;
  background: hsl(45 100% 50% / 0.08);
}

.ir-btn-outline {
  border: 1px solid hsl(45 100% 55% / 0.45) !important;
  color: var(--ir-gold) !important;
  background: transparent;
}

.ir-btn-outline:hover {
  background: hsl(45 100% 50% / 0.12) !important;
  color: var(--ir-gold-bright) !important;
  box-shadow: var(--ir-shadow-gold);
}

.ir-card {
  background: hsl(220 15% 8% / 0.92) !important;
  border: 1px solid hsl(45 100% 55% / 0.18) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(8px);
  transition: border-color 0.3s, box-shadow 0.3s;
}

.ir-card:hover {
  border-color: hsl(45 100% 55% / 0.35) !important;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.45), var(--ir-shadow-gold);
}

.ir-card .card-header {
  background: hsl(220 18% 6%) !important;
  border-bottom: 1px solid hsl(45 100% 55% / 0.12) !important;
  color: var(--ir-text);
  border-radius: 14px 14px 0 0 !important;
}

.ir-card .form-label {
  color: var(--ir-muted);
}

.ir-card .form-control,
.ir-card .form-select {
  background: var(--ir-surface-2);
  border: 1px solid var(--ir-border);
  color: var(--ir-text);
}

.ir-card .form-control:focus,
.ir-card .form-select:focus {
  border-color: var(--ir-gold-dim);
  box-shadow: 0 0 0 0.2rem hsl(45 100% 50% / 0.2);
  background: hsl(220 12% 12%);
  color: var(--ir-text);
}

.ir-card .form-text {
  color: var(--ir-muted);
}

.ir-btn-primary {
  background: linear-gradient(135deg, var(--ir-gold-dim), var(--ir-gold)) !important;
  border: none !important;
  color: hsl(220 20% 8%) !important;
  font-weight: 600;
  box-shadow: 0 4px 16px hsl(45 100% 45% / 0.35);
}

.ir-btn-primary:hover {
  filter: brightness(1.08);
  box-shadow: 0 6px 24px hsl(45 100% 50% / 0.45);
}

.ir-alert-dark {
  background: hsl(220 15% 12%);
  border: 1px solid hsl(45 100% 50% / 0.2);
  color: var(--ir-muted);
}

.ir-alert-dark strong {
  color: var(--ir-gold);
}

.ir-modal .modal-content {
  background: var(--ir-surface);
  border: 1px solid hsl(45 100% 55% / 0.2);
  color: var(--ir-text);
}

.ir-modal .modal-header {
  background: hsl(220 18% 6%) !important;
  border-bottom: 1px solid hsl(45 100% 55% / 0.15) !important;
}

.ir-modal .btn-close {
  filter: invert(1);
}

/* Login page */
body.ir-login-page {
  min-height: 100vh;
  margin: 0;
  background: hsl(220, 20%, 2%);
  color: var(--ir-text);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.ir-login-page .cyber-grid {
  position: fixed;
  inset: 0;
  background-image:
    linear-gradient(hsl(45 100% 50% / 0.06) 1px, transparent 1px),
    linear-gradient(90deg, hsl(45 100% 50% / 0.06) 1px, transparent 1px);
  background-size: 48px 48px;
  animation: ir-grid-move 22s linear infinite;
  z-index: 0;
  pointer-events: none;
}

@keyframes ir-grid-move {
  0% { background-position: 0 0; }
  100% { background-position: 48px 48px; }
}

.ir-login-shell {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  padding: 1.5rem;
}

.ir-login-card {
  background: hsl(220 15% 6% / 0.95);
  border: 1px solid hsl(45 100% 55% / 0.25);
  border-radius: 16px;
  padding: 2rem;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55), 0 0 40px hsl(45 100% 50% / 0.08);
  backdrop-filter: blur(12px);
}

.ir-login-card h1 {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--ir-gold);
  letter-spacing: 0.04em;
}

.ir-login-card .form-control {
  background: hsl(220 12% 10%);
  border: 1px solid var(--ir-border);
  color: var(--ir-text);
  padding: 0.75rem 1rem;
  border-radius: 10px;
}

.ir-login-card .form-control:focus {
  border-color: var(--ir-gold-dim);
  box-shadow: 0 0 0 0.2rem hsl(45 100% 50% / 0.18);
}

.ir-login-error {
  background: hsl(0 70% 20% / 0.5);
  border: 1px solid hsl(0 70% 45% / 0.5);
  color: hsl(0 0% 92%);
  border-radius: 8px;
  padding: 0.65rem 1rem;
  font-size: 0.9rem;
}

.ir-badge-passes {
  background: hsl(45 60% 25%);
  color: var(--ir-gold-bright);
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
}

/* ---------- Dark theme readability (override style.css navy headings on dark UI) ---------- */
html:not([data-ir-theme="light"]) body.ir-app h1,
html:not([data-ir-theme="light"]) body.ir-app h2,
html:not([data-ir-theme="light"]) body.ir-app h3,
html:not([data-ir-theme="light"]) body.ir-app h4,
html:not([data-ir-theme="light"]) body.ir-app h5,
html:not([data-ir-theme="light"]) body.ir-app h6 {
  color: var(--ir-gold) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .form-check-label,
html:not([data-ir-theme="light"]) body.ir-app .form-check-label strong {
  color: var(--ir-text) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .form-control::placeholder,
html:not([data-ir-theme="light"]) body.ir-app textarea.form-control::placeholder {
  color: hsl(220, 8%, 58%);
  opacity: 1;
}

/* Bootstrap modals default to a light header; force IR surfaces so title isn’t light-on-light */
html:not([data-ir-theme="light"]) body.ir-app .modal-content {
  background: var(--ir-surface) !important;
  color: var(--ir-text) !important;
  border: 1px solid hsl(45 100% 55% / 0.22) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal-header {
  background: hsl(220 18% 6%) !important;
  color: var(--ir-text) !important;
  border-bottom: 1px solid hsl(45 100% 55% / 0.15) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal-body {
  background: var(--ir-surface);
  color: var(--ir-text);
}
html:not([data-ir-theme="light"]) body.ir-app .modal-footer {
  background: hsl(220 18% 8%) !important;
  border-top: 1px solid var(--ir-border) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal-title {
  color: var(--ir-gold) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal .btn-close {
  filter: invert(1) grayscale(100%) brightness(1.15);
  opacity: 0.85;
}
html:not([data-ir-theme="light"]) body.ir-app .modal .btn-close:hover {
  opacity: 1;
}
html:not([data-ir-theme="light"]) body.ir-app .modal .form-label {
  color: var(--ir-muted) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal .form-control,
html:not([data-ir-theme="light"]) body.ir-app .modal .form-select,
html:not([data-ir-theme="light"]) body.ir-app .modal textarea {
  background: var(--ir-surface-2) !important;
  border-color: var(--ir-border) !important;
  color: var(--ir-text) !important;
}
html:not([data-ir-theme="light"]) body.ir-app .modal .form-control:focus,
html:not([data-ir-theme="light"]) body.ir-app .modal textarea:focus {
  border-color: var(--ir-gold-dim) !important;
  box-shadow: 0 0 0 0.2rem hsl(45 100% 50% / 0.2);
}

/*
 * URL result rows (style.css): pastel backgrounds stay light while IR dark theme sets
 * modal/card body text to light --ir-text -> unreadable. Use dark-tinted surfaces here.
 */
html:not([data-ir-theme="light"]) body.ir-app .modal .url-result-item,
html:not([data-ir-theme="light"]) body.ir-app .ir-card .url-result-item {
  color: var(--ir-text) !important;
  word-break: break-word;
}

html:not([data-ir-theme="light"]) body.ir-app .modal .url-result-success,
html:not([data-ir-theme="light"]) body.ir-app .ir-card .url-result-success {
  background: hsl(220 18% 11%) !important;
  border: 1px solid var(--ir-border) !important;
  border-left: 4px solid var(--ir-gold) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .modal .url-result-warning,
html:not([data-ir-theme="light"]) body.ir-app .ir-card .url-result-warning {
  background: hsl(45 18% 9%) !important;
  border: 1px solid hsl(45 35% 22% / 0.4) !important;
  border-left: 4px solid var(--ir-gold-dim) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .modal .url-result-danger,
html:not([data-ir-theme="light"]) body.ir-app .ir-card .url-result-danger {
  background: hsl(350 20% 11%) !important;
  border: 1px solid hsl(350 28% 24% / 0.45) !important;
  border-left: 4px solid #e85d75 !important;
}

html:not([data-ir-theme="light"]) body.ir-app .modal .url-result-info,
html:not([data-ir-theme="light"]) body.ir-app .ir-card .url-result-info {
  background: hsl(215 22% 11%) !important;
  border: 1px solid var(--ir-border) !important;
  border-left: 4px solid hsl(210 45% 48%) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .btn-outline-secondary {
  border-color: hsl(45 40% 45%) !important;
  color: var(--ir-muted) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .btn-outline-secondary:hover {
  background: hsl(220 15% 18%) !important;
  color: var(--ir-text) !important;
  border-color: var(--ir-gold-dim) !important;
}

html:not([data-ir-theme="light"]) body.ir-app .text-muted {
  color: hsl(220, 8%, 58%) !important;
}

/* ---------- Light theme ---------- */
html[data-ir-theme="light"] {
  --ir-bg: hsl(220, 14%, 94%);
  --ir-surface: hsl(0, 0%, 100%);
  --ir-surface-2: hsl(220, 14%, 98%);
  --ir-border: hsl(220, 12%, 88%);
  --ir-text: hsl(220, 35%, 14%);
  --ir-muted: hsl(220, 10%, 38%);
  --ir-gold: hsl(43, 96%, 42%);
  --ir-gold-bright: hsl(43, 100%, 48%);
  --ir-gold-dim: hsl(43, 90%, 36%);
  --ir-shadow-gold: 0 0 20px hsl(43 100% 40% / 0.12);
}

html[data-ir-theme="light"] body.ir-app {
  background-color: var(--ir-bg);
  color: var(--ir-text);
}

html[data-ir-theme="light"] body.ir-app .modal-content {
  background: var(--ir-surface) !important;
  color: var(--ir-text) !important;
  border-color: var(--ir-border) !important;
}
html[data-ir-theme="light"] body.ir-app .modal-header {
  background: linear-gradient(135deg, hsl(220, 20%, 97%) 0%, hsl(0, 0%, 100%) 100%) !important;
  color: var(--ir-text) !important;
  border-bottom-color: var(--ir-border) !important;
}
html[data-ir-theme="light"] body.ir-app .modal-body {
  background: var(--ir-surface);
  color: var(--ir-text);
}
html[data-ir-theme="light"] body.ir-app .modal-footer {
  background: hsl(220, 14%, 98%) !important;
  border-top-color: var(--ir-border) !important;
}
html[data-ir-theme="light"] body.ir-app .modal-title {
  color: hsl(220, 45%, 18%) !important;
}
html[data-ir-theme="light"] body.ir-app .modal .form-label {
  color: var(--ir-muted) !important;
}
html[data-ir-theme="light"] body.ir-app .modal .form-control,
html[data-ir-theme="light"] body.ir-app .modal textarea {
  background: var(--ir-surface-2) !important;
  border-color: var(--ir-border) !important;
  color: var(--ir-text) !important;
}

html[data-ir-theme="light"] body.ir-app .modal .url-result-item,
html[data-ir-theme="light"] body.ir-app .ir-card .url-result-item {
  color: var(--ir-text) !important;
  word-break: break-word;
}

html[data-ir-theme="light"] .ir-navbar {
  background: linear-gradient(135deg, hsl(220, 45%, 18%) 0%, hsl(220, 40%, 26%) 100%) !important;
  border-bottom-color: hsl(45 100% 50% / 0.35);
}

html[data-ir-theme="light"] .ir-card {
  background: var(--ir-surface) !important;
  border-color: hsl(45 80% 45% / 0.25) !important;
  box-shadow: 0 8px 28px rgba(18, 24, 50, 0.08);
}

html[data-ir-theme="light"] .ir-card .card-header {
  background: linear-gradient(135deg, hsl(220, 20%, 97%) 0%, hsl(0, 0%, 100%) 100%) !important;
  border-bottom-color: var(--ir-border) !important;
  color: var(--ir-text);
}

html[data-ir-theme="light"] body.ir-app h1,
html[data-ir-theme="light"] body.ir-app h2,
html[data-ir-theme="light"] body.ir-app h3,
html[data-ir-theme="light"] body.ir-app h4,
html[data-ir-theme="light"] body.ir-app h5,
html[data-ir-theme="light"] body.ir-app h6 {
  color: hsl(220, 45%, 18%) !important;
}

html[data-ir-theme="light"] .ir-card .form-label {
  color: var(--ir-muted);
}

html[data-ir-theme="light"] .ir-card .form-control,
html[data-ir-theme="light"] .ir-card .form-select {
  background: var(--ir-surface);
  border-color: var(--ir-border);
  color: var(--ir-text);
}

html[data-ir-theme="light"] .ir-card .form-control:focus,
html[data-ir-theme="light"] .ir-card .form-select:focus {
  background: var(--ir-surface);
  color: var(--ir-text);
}

html[data-ir-theme="light"] .ir-alert-dark {
  background: hsl(220 14% 96%);
  border-color: hsl(45 60% 70% / 0.5);
  color: var(--ir-muted);
}

html[data-ir-theme="light"] body.ir-login-page {
  background: hsl(220, 18%, 92%);
  color: var(--ir-text);
}

html[data-ir-theme="light"] .ir-login-card {
  background: hsl(0, 0%, 100%);
  border-color: hsl(45 70% 55% / 0.35);
  box-shadow: 0 20px 50px rgba(18, 24, 50, 0.12);
}

html[data-ir-theme="light"] .ir-login-card h1 {
  color: var(--ir-gold-dim);
}

html[data-ir-theme="light"] .ir-login-card .form-control {
  background: var(--ir-surface-2);
  border-color: var(--ir-border);
  color: var(--ir-text);
}

/* Theme toggle (navbar) */
.ir-theme-toggle .ir-theme-icon-sun,
.ir-theme-toggle .ir-theme-icon-moon {
  font-size: 1rem;
  line-height: 1;
}

html:not([data-ir-theme="light"]) .ir-theme-toggle .ir-theme-icon-sun {
  display: inline;
}
html:not([data-ir-theme="light"]) .ir-theme-toggle .ir-theme-icon-moon {
  display: none;
}
html[data-ir-theme="light"] .ir-theme-toggle .ir-theme-icon-sun {
  display: none;
}
html[data-ir-theme="light"] .ir-theme-toggle .ir-theme-icon-moon {
  display: inline;
}

.ir-theme-toggle-label {
  margin-left: 0.25rem;
  font-size: 0.8rem;
}

/* ---------- Bulk upload page (dark: style.css heading navy + low-contrast muted) ---------- */
html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-card .card-header h5,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-card .card-header h5 {
  color: var(--ir-text) !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-section-title,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-section-title {
  color: var(--ir-gold) !important;
  font-weight: 600;
  letter-spacing: 0.02em;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-preview-meta {
  color: hsl(220, 6%, 82%) !important;
  font-size: 0.9rem;
  line-height: 1.45;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-preview-extras {
  color: hsl(220, 8%, 72%) !important;
  font-size: 0.875rem;
  line-height: 1.45;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-preview-table,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-preview-table {
  color: var(--ir-text);
  --bs-table-bg: transparent;
  --bs-table-color: var(--ir-text);
  border-color: var(--ir-border);
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-table-head th,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-table-head th {
  background: hsl(220, 14%, 14%) !important;
  color: var(--ir-text) !important;
  border-color: var(--ir-border) !important;
  font-weight: 600;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-preview-table td,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-preview-table td {
  border-color: var(--ir-border);
  color: var(--ir-text);
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-preview-table tbody tr.table-secondary td {
  background: hsl(220, 12%, 16%) !important;
  color: hsl(220, 5%, 78%) !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides {
  color: var(--ir-text);
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides-intro {
  color: hsl(220, 6%, 80%) !important;
  font-size: 0.9rem;
  line-height: 1.5;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides-intro code {
  color: var(--ir-gold-bright);
  background: hsl(220 16% 12%);
  padding: 0.1em 0.35em;
  border-radius: 4px;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-override-row {
  padding: 0.75rem 0.65rem;
  margin-bottom: 0.65rem;
  border-radius: 10px;
  border: 1px solid hsl(45 100% 55% / 0.14) !important;
  background: hsl(220, 14%, 9%);
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-client-name {
  color: var(--ir-text) !important;
  font-size: 1rem;
  line-height: 1.35;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-hint {
  color: hsl(220, 8%, 72%) !important;
  font-size: 0.8rem;
  margin-top: 0.15rem;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides .ir-sheet-field-label {
  color: hsl(220, 8%, 80%) !important;
  font-size: 0.8rem !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides .form-select {
  background: hsl(220, 12%, 12%) !important;
  border: 1px solid hsl(220, 10%, 28%) !important;
  color: var(--ir-text) !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-sheet-overrides .form-select:focus {
  border-color: var(--ir-gold-dim) !important;
  box-shadow: 0 0 0 0.2rem hsl(45 100% 50% / 0.2);
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-bulk-section-title,
html[data-ir-theme="light"] body.ir-quick-add-page .ir-bulk-section-title {
  color: var(--ir-gold-dim) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-sheet-override-row {
  background: var(--ir-surface-2);
  border: 1px solid var(--ir-border) !important;
  border-radius: 10px;
  padding: 0.65rem;
  margin-bottom: 0.65rem;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-sheet-client-name {
  color: var(--ir-text) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-sheet-hint {
  color: var(--ir-muted) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-bulk-table-head th,
html[data-ir-theme="light"] body.ir-quick-add-page .ir-bulk-table-head th {
  background: hsl(220, 14%, 94%) !important;
  color: var(--ir-text) !important;
}

/* Bulk upload: in-flight Preview / Commit progress */
html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-operation-progress,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-operation-progress {
  background: hsl(220, 16%, 11%) !important;
  border: 1px solid hsl(45 100% 55% / 0.28) !important;
  color: var(--ir-text) !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-progress-title,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-progress-title {
  color: var(--ir-gold-bright) !important;
}

html:not([data-ir-theme="light"]) body.ir-bulk-upload-page .ir-bulk-progress-detail,
html:not([data-ir-theme="light"]) body.ir-quick-add-page .ir-bulk-progress-detail {
  color: hsl(220, 6%, 82%) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-bulk-operation-progress,
html[data-ir-theme="light"] body.ir-quick-add-page .ir-bulk-operation-progress {
  background: hsl(220, 40%, 97%) !important;
  border: 1px solid var(--ir-border) !important;
  color: var(--ir-text) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-bulk-progress-title,
html[data-ir-theme="light"] body.ir-quick-add-page .ir-bulk-progress-title {
  color: var(--ir-gold-dim) !important;
}

html[data-ir-theme="light"] body.ir-bulk-upload-page .ir-bulk-progress-detail,
html[data-ir-theme="light"] body.ir-quick-add-page .ir-bulk-progress-detail {
  color: var(--ir-muted) !important;
}

/* ---------- Persistent design switcher (bottom-left) ---------- */
.dmca-design-switcher {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 21000;
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 5px;
  border: 1px solid hsl(45 100% 55% / 0.28);
  border-radius: 999px;
  background: hsl(220 18% 7% / 0.94);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(18px) saturate(160%);
}

.dmca-design-switcher__label {
  padding: 0 7px 0 9px;
  color: var(--ir-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dmca-design-switcher button {
  min-height: 32px;
  padding: 0 11px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--ir-muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.dmca-design-switcher button:hover { color: var(--ir-text); }
.dmca-design-switcher button.is-active {
  background: linear-gradient(135deg, var(--ir-gold-dim), var(--ir-gold));
  color: hsl(220 20% 8%);
  box-shadow: 0 3px 12px hsl(45 100% 45% / 0.3);
}

@media (max-width: 520px) {
  .dmca-design-switcher { left: 8px; bottom: 8px; }
  .dmca-design-switcher__label { display: none; }
}

/* ---------- IR_WEBSITE_3.0 / approved Fable 5 design ---------- */
html[data-design-theme="website"] {
  --dmca-page-width: 1580px;
  --brand-gold: #009eea;
  --brand-navy: #070c19;
  --ir-bg: #f7f8fc;
  --ir-surface: #ffffff;
  --ir-surface-2: #f7f8fc;
  --ir-border: #e7eaf0;
  --ir-text: #11131b;
  --ir-muted: #687080;
  --ir-gold: #009eea;
  --ir-gold-bright: #08b8f3;
  --ir-gold-dim: #0270c8;
  --ir-shadow-gold: 0 12px 30px rgba(0, 158, 234, 0.18);
  --bs-code-color: #0270c8;
  color-scheme: light;
}

html[data-design-theme="website"] body.ir-app,
html[data-design-theme="website"] body.ir-login-page {
  background-color: #f7f8fc !important;
  background-image: radial-gradient(900px 440px at 85% 0%, rgba(0, 174, 255, 0.11), transparent 62%), radial-gradient(700px 440px at 8% 100%, rgba(34, 211, 238, 0.07), transparent 62%) !important;
  color: #11131b !important;
}

html[data-design-theme="website"] .cyber-grid { opacity: 0.12; filter: hue-rotate(145deg) saturate(1.4); }

html[data-design-theme="website"] .ir-navbar {
  width: min(1740px, calc(100% - 48px));
  margin: 14px auto 0;
  padding: 0.55rem 0;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 999px;
  background: rgba(7, 12, 25, 0.94) !important;
  box-shadow: 0 14px 42px rgba(7, 12, 25, 0.22), 0 0 30px rgba(0, 174, 255, 0.08);
  backdrop-filter: blur(24px) saturate(170%);
}

html[data-design-theme="website"] .ir-navbar .container {
  width: 100%;
  max-width: none;
  padding-inline: 1.6rem;
  gap: 1.25rem;
}
html[data-design-theme="website"] .ir-navbar .navbar-brand { flex: 0 0 auto; }
html[data-design-theme="website"] .ir-navbar .navbar-collapse { min-width: 0; flex-wrap: nowrap; }
html[data-design-theme="website"] .ir-navbar .navbar-nav {
  flex-wrap: nowrap !important;
  white-space: nowrap;
  gap: 0.2rem !important;
}
html[data-design-theme="website"] .ir-navbar .nav-link { padding-inline: 0.55rem !important; }
html[data-design-theme="website"] .ir-navbar img { filter: brightness(0) invert(1); }
html[data-design-theme="website"] .ir-navbar .navbar-brand span,
html[data-design-theme="website"] .ir-navbar .ir-brand-text { color: #f6f8fb !important; letter-spacing: 0.02em; text-shadow: none; }
html[data-design-theme="website"] .ir-navbar .ir-muted { color: #9ca5b5 !important; }
html[data-design-theme="website"] .ir-nav-link { color: rgba(255, 255, 255, 0.74) !important; border-radius: 999px; }
html[data-design-theme="website"] .ir-nav-link:hover { color: #fff !important; background: rgba(255, 255, 255, 0.08); }
html[data-design-theme="website"] .ir-navbar .ir-btn-outline { border-color: rgba(255, 255, 255, 0.2) !important; color: #f6f8fb !important; }
html[data-design-theme="website"] .ir-navbar .ir-btn-outline:hover { border-color: rgba(8, 184, 243, 0.6) !important; background: rgba(0, 158, 234, 0.16) !important; color: #fff !important; }

html[data-design-theme="website"] body.ir-app > .container,
html[data-design-theme="website"] body.ir-app > main.container,
html[data-design-theme="website"] body.ir-app > .jobs-container,
html[data-design-theme="website"] body.ir-app > .doc-page,
html[data-design-theme="website"] body.ir-app > .deliv-wrap {
  width: min(var(--dmca-page-width), calc(100% - 48px));
  max-width: none !important;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}

html[data-design-theme="website"] body.ir-app > .container .col-lg-10.mx-auto,
html[data-design-theme="website"] body.ir-app > .container .col-xl-10.mx-auto {
  width: 100%;
  max-width: 100%;
}

html[data-design-theme="website"] .ir-card,
html[data-design-theme="website"] .ir-login-card {
  border: 1px solid #e7eaf0 !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  color: #11131b !important;
  box-shadow: 0 8px 30px rgba(15, 23, 42, 0.06), 0 2px 8px rgba(15, 23, 42, 0.03);
  backdrop-filter: blur(10px);
}

html[data-design-theme="website"] .ir-card:hover { border-color: rgba(0, 158, 234, 0.28) !important; box-shadow: 0 18px 42px rgba(15, 23, 42, 0.09), 0 0 28px rgba(0, 174, 255, 0.08); }
html[data-design-theme="website"] .ir-card .card-header { border-bottom: 1px solid #e7eaf0 !important; border-radius: 18px 18px 0 0 !important; background: linear-gradient(135deg, #fff, #f7f8fc) !important; color: #11131b !important; }
html[data-design-theme="website"] .ir-login-card > img { filter: brightness(0) saturate(100%) invert(45%) sepia(91%) saturate(2403%) hue-rotate(165deg) brightness(94%) contrast(101%); }

html[data-design-theme="website"] body.ir-app h1,
html[data-design-theme="website"] body.ir-app h2,
html[data-design-theme="website"] body.ir-app h3,
html[data-design-theme="website"] body.ir-app h4,
html[data-design-theme="website"] body.ir-app h5,
html[data-design-theme="website"] body.ir-app h6,
html[data-design-theme="website"] .ir-card .form-label,
html[data-design-theme="website"] .ir-login-card h1,
html[data-design-theme="website"] .ir-login-card .form-label { color: #11131b !important; }

html[data-design-theme="website"] .ir-card .form-control,
html[data-design-theme="website"] .ir-card .form-select,
html[data-design-theme="website"] .ir-login-card .form-control,
html[data-design-theme="website"] .modal .form-control,
html[data-design-theme="website"] .modal .form-select,
html[data-design-theme="website"] .modal textarea {
  border: 1px solid #dfe3eb !important;
  border-radius: 9px;
  background: #fff !important;
  color: #11131b !important;
}

html[data-design-theme="website"] .ir-card .form-control:focus,
html[data-design-theme="website"] .ir-card .form-select:focus,
html[data-design-theme="website"] .ir-login-card .form-control:focus,
html[data-design-theme="website"] .modal .form-control:focus,
html[data-design-theme="website"] .modal .form-select:focus { border-color: #009eea !important; background: #fff !important; box-shadow: 0 0 0 0.2rem rgba(0, 158, 234, 0.15) !important; }

html[data-design-theme="website"] .form-control::placeholder,
html[data-design-theme="website"] textarea.form-control::placeholder { color: #99a1af !important; }

html[data-design-theme="website"] .ir-btn-primary,
html[data-design-theme="website"] .btn-primary {
  border: 0 !important;
  border-radius: 9px;
  background: linear-gradient(135deg, #08b8f3, #009eea) !important;
  color: #fff !important;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(0, 158, 234, 0.25);
}

html[data-design-theme="website"] .btn-outline-primary,
html[data-design-theme="website"] .btn-outline-info {
  border-color: #009eea !important;
  background: #fff !important;
  color: #0270c8 !important;
}

html[data-design-theme="website"] .btn-outline-primary:hover,
html[data-design-theme="website"] .btn-outline-primary:focus,
html[data-design-theme="website"] .btn-outline-info:hover,
html[data-design-theme="website"] .btn-outline-info:focus {
  border-color: #009eea !important;
  background: #009eea !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(0, 158, 234, 0.2) !important;
}

html[data-design-theme="website"] .btn-outline-secondary {
  border-color: #c9ced8 !important;
  background: #fff !important;
  color: #3e4654 !important;
}

html[data-design-theme="website"] .btn-outline-secondary:hover,
html[data-design-theme="website"] .btn-outline-secondary:focus {
  border-color: #687080 !important;
  background: #687080 !important;
  color: #fff !important;
}

html[data-design-theme="website"] .btn-outline-warning {
  border-color: #ff647c !important;
  background: #fff !important;
  color: #c93650 !important;
}

html[data-design-theme="website"] .btn-outline-warning:hover,
html[data-design-theme="website"] .btn-outline-warning:focus {
  border-color: #ff647c !important;
  background: #ff647c !important;
  color: #fff !important;
}

html[data-design-theme="website"] body.ir-app > .container .ir-btn-outline,
html[data-design-theme="website"] .ir-card .ir-btn-outline { border-color: #cfd5df !important; border-radius: 9px; background: #fff !important; color: #0270c8 !important; }
html[data-design-theme="website"] body.ir-app > .container .ir-btn-outline:hover,
html[data-design-theme="website"] .ir-card .ir-btn-outline:hover { border-color: #009eea !important; color: #009eea !important; box-shadow: 0 8px 20px rgba(0, 158, 234, 0.12); }

html[data-design-theme="website"] .ir-alert-dark { border: 1px solid rgba(0, 158, 234, 0.2); border-radius: 12px; background: rgba(0, 158, 234, 0.07); color: #1c3f58; }
html[data-design-theme="website"] code,
html[data-design-theme="website"] .font-monospace { color: #0270c8; }
html[data-design-theme="website"] .text-warning { color: #c93650 !important; }
html[data-design-theme="website"] .alert-warning { border-color: rgba(0, 158, 234, 0.24); background: rgba(0, 158, 234, 0.08); color: #164d70; }
html[data-design-theme="website"] .status-warning {
  border-color: rgba(255, 100, 124, 0.3) !important;
  background: rgba(255, 100, 124, 0.1) !important;
  color: #a92c43 !important;
}
html[data-design-theme="website"] .url-result-warning {
  border-left-color: #ff647c !important;
  background: #fff5f7 !important;
}
html[data-design-theme="website"] .modal-content { border: 1px solid #e7eaf0 !important; border-radius: 18px !important; background: #fff !important; color: #11131b !important; box-shadow: 0 24px 70px rgba(7, 12, 25, 0.22); }
html[data-design-theme="website"] .modal-header,
html[data-design-theme="website"] .modal-footer { border-color: #e7eaf0 !important; background: #f7f8fc !important; }
html[data-design-theme="website"] .modal-body,
html[data-design-theme="website"] .modal-title,
html[data-design-theme="website"] .modal .form-label { color: #11131b !important; }

html[data-design-theme="website"] .table { --bs-table-color: #11131b; --bs-table-bg: #fff; --bs-table-border-color: #e7eaf0; --bs-table-hover-bg: #f2f9fd; color: #11131b !important; }
html[data-design-theme="website"] .table thead th { background: #f7f8fc !important; color: #687080 !important; }
html[data-design-theme="website"] .text-muted,
html[data-design-theme="website"] .form-text,
html[data-design-theme="website"] .ir-muted { color: #687080 !important; }

html[data-design-theme="website"] .jobs-container {
  width: min(var(--dmca-page-width), calc(100% - 48px));
  max-width: none !important;
}
html[data-design-theme="website"] .jobs-header form button {
  border-color: #009eea !important;
  background: #fff !important;
  color: #0270c8 !important;
}
html[data-design-theme="website"] .jobs-header form button:hover {
  background: #009eea !important;
  color: #fff !important;
}
html[data-design-theme="website"] .jobs-table-wrap {
  border-color: #e7eaf0 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 8px 30px rgba(15, 23, 42, 0.06);
}
html[data-design-theme="website"] .jobs-table th {
  border-color: rgba(255, 255, 255, 0.1) !important;
  background: #070c19 !important;
  color: #f6f8fb !important;
}
html[data-design-theme="website"] .jobs-table td {
  border-color: #e7eaf0 !important;
  color: #11131b !important;
}
html[data-design-theme="website"] .jobs-table tbody tr,
html[data-design-theme="website"] .jobs-table tbody tr:nth-child(odd) {
  background: #fff !important;
}
html[data-design-theme="website"] .jobs-table tbody tr:nth-child(even) {
  background: #f7f8fc !important;
}
html[data-design-theme="website"] .jobs-table tbody tr:hover {
  background: #edf8fd !important;
}
html[data-design-theme="website"] .jobs-table .muted { color: #687080 !important; }
html[data-design-theme="website"] .jobs-table a { color: #0270c8 !important; font-weight: 600; }
html[data-design-theme="website"] .status.pending { background: #e8f6fd !important; color: #026a9c !important; }

html[data-design-theme="website"] ::-webkit-scrollbar-thumb {
  background: #009eea;
}
html[data-design-theme="website"] ::-webkit-scrollbar-thumb:hover {
  background: #0270c8;
}

html[data-design-theme="website"] .dmca-design-switcher { border-color: rgba(15, 23, 42, 0.1); background: rgba(255, 255, 255, 0.92); box-shadow: 0 12px 36px rgba(15, 23, 42, 0.14); }
html[data-design-theme="website"] .dmca-design-switcher button.is-active { background: linear-gradient(135deg, #08b8f3, #009eea); color: #fff; box-shadow: 0 5px 14px rgba(0, 158, 234, 0.26); }
html[data-design-theme="website"] .ir-theme-toggle { display: none !important; }

/* Website 3.0 interaction states: switches, overlays, results and expansion logs. */
html[data-design-theme="website"] body.ir-app .ir-toggle-option {
  position: relative;
  margin-bottom: 0.65rem !important;
  padding: 0.8rem 0.95rem;
  border: 1px solid #e3e8ef;
  border-radius: 12px;
  background: #fbfcfe;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

html[data-design-theme="website"] body.ir-app .ir-toggle-option:hover {
  border-color: rgba(0, 158, 234, 0.38);
  background: #f7fbfe;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

html[data-design-theme="website"] body.ir-app .ir-toggle-option--featured {
  border-color: rgba(0, 158, 234, 0.32);
  background: linear-gradient(135deg, rgba(0, 158, 234, 0.07), rgba(8, 184, 243, 0.025));
}

html[data-design-theme="website"] body.ir-app .ir-toggle-option--notice {
  padding-top: 0.7rem;
}

html[data-design-theme="website"] body.ir-app .ir-toggle-option--notice .ir-alert-dark {
  margin-bottom: 0.7rem;
}

html[data-design-theme="website"] body.ir-app .ir-switch-row {
  display: grid;
  grid-template-columns: 2.9rem minmax(0, 1fr);
  align-items: center;
  min-height: 1.55rem;
  padding-left: 0;
}

html[data-design-theme="website"] body.ir-app .ir-switch-row .form-check-input {
  float: none;
  width: 2.55rem;
  height: 1.35rem;
  margin: 0;
  border: 1px solid #c5ccd7;
  background-color: #dfe4eb;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.1);
  cursor: pointer;
}

html[data-design-theme="website"] body.ir-app .ir-switch-row .form-check-input:checked,
html[data-design-theme="website"] body.ir-app .modal .form-check-input:checked {
  border-color: #009eea;
  background-color: #009eea;
}

html[data-design-theme="website"] body.ir-app .ir-switch-row .form-check-input:focus,
html[data-design-theme="website"] body.ir-app .modal .form-check-input:focus {
  border-color: #009eea;
  box-shadow: 0 0 0 0.22rem rgba(0, 158, 234, 0.16);
}

html[data-design-theme="website"] body.ir-app .ir-switch-row .form-check-label {
  margin: 0;
  color: #242a35 !important;
  cursor: pointer;
}

html[data-design-theme="website"] body.ir-app .ir-toggle-option > .form-text {
  margin: 0.35rem 0 0 2.9rem;
  line-height: 1.45;
}

html[data-design-theme="website"] body.ir-app .modal-backdrop.show {
  opacity: 0.42;
  backdrop-filter: blur(3px);
}

html[data-design-theme="website"] body.ir-app .modal-dialog {
  padding-inline: 0.6rem;
}

html[data-design-theme="website"] body.ir-app .modal-content {
  overflow: hidden;
  border: 1px solid #dfe5ec !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #11131b !important;
  box-shadow: 0 28px 80px rgba(7, 12, 25, 0.28), 0 0 0 1px rgba(255, 255, 255, 0.38);
}

html[data-design-theme="website"] body.ir-app .modal-header {
  min-height: 68px;
  padding: 1rem 1.3rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: linear-gradient(135deg, #070c19, #111a2c) !important;
  color: #f7fafc !important;
}

html[data-design-theme="website"] body.ir-app .modal-title {
  color: #f7fafc !important;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -0.01em;
}

html[data-design-theme="website"] body.ir-app .modal-title::before {
  display: inline-block;
  width: 0.48rem;
  height: 0.48rem;
  margin-right: 0.65rem;
  border-radius: 999px;
  background: #08b8f3;
  box-shadow: 0 0 14px rgba(8, 184, 243, 0.7);
  content: "";
  vertical-align: 0.08rem;
}

html[data-design-theme="website"] body.ir-app .modal-header .btn-close {
  margin-right: 0;
  border-radius: 8px;
  filter: invert(1) grayscale(1) brightness(1.5) !important;
  opacity: 0.78;
}

html[data-design-theme="website"] body.ir-app .modal-header .btn-close:hover {
  background-color: rgba(255, 255, 255, 0.12);
  opacity: 1;
}

html[data-design-theme="website"] body.ir-app .modal-body {
  padding: 1.25rem 1.3rem;
  background: #fff !important;
  color: #242a35 !important;
}

html[data-design-theme="website"] body.ir-app .modal-footer {
  padding: 0.9rem 1.3rem;
  border-top: 1px solid #e4e8ef !important;
  background: #f7f9fc !important;
}

html[data-design-theme="website"] body.ir-app .modal-footer .btn {
  min-height: 42px;
  border-radius: 9px;
  font-weight: 650;
}

html[data-design-theme="website"] body.ir-app .modal .btn-secondary {
  border-color: #667080 !important;
  background: #667080 !important;
  color: #fff !important;
}

html[data-design-theme="website"] body.ir-app .modal .btn-secondary:hover,
html[data-design-theme="website"] body.ir-app .modal .btn-secondary:focus {
  border-color: #3f4857 !important;
  background: #3f4857 !important;
}

html[data-design-theme="website"] body.ir-app .modal .table-responsive {
  border: 1px solid #e1e6ed;
  border-radius: 11px;
  background: #fff;
}

html[data-design-theme="website"] body.ir-app .modal .table,
html[data-design-theme="website"] body.ir-app .modal .table-dark {
  --bs-table-bg: #fff !important;
  --bs-table-color: #242a35 !important;
  --bs-table-striped-bg: #f7f9fc !important;
  --bs-table-hover-bg: #eef8fd !important;
  --bs-table-border-color: #e6eaf0 !important;
  margin: 0;
  box-shadow: none;
}

html[data-design-theme="website"] body.ir-app .modal .table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  border-color: rgba(255, 255, 255, 0.08) !important;
  background: #111a2c !important;
  color: #eaf7fd !important;
}

html[data-design-theme="website"] body.ir-app .results-success-banner {
  padding: 0.9rem 1rem !important;
  border: 1px solid rgba(0, 158, 234, 0.22) !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, rgba(0, 158, 234, 0.09), rgba(8, 184, 243, 0.025)) !important;
  box-shadow: inset 4px 0 0 #009eea;
}

html[data-design-theme="website"] body.ir-app .results-success-title {
  color: #0270c8 !important;
  font-size: 1.02rem;
}

html[data-design-theme="website"] body.ir-app .results-success-subtitle {
  color: #536071 !important;
  opacity: 1;
}

html[data-design-theme="website"] body.ir-app .results-success-total {
  padding: 0.3rem 0.7rem !important;
  border: 1px solid rgba(0, 158, 234, 0.25) !important;
  border-radius: 999px !important;
  background: #eaf7fd !important;
  color: #026a9c !important;
}

html[data-design-theme="website"] body.ir-app .results-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.55rem;
  margin-inline: 0;
}

html[data-design-theme="website"] body.ir-app .results-summary-grid > [class*="col"] {
  width: auto;
  padding: 0;
}

html[data-design-theme="website"] body.ir-app .results-summary-grid .status-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 38px;
  margin: 0;
  border-radius: 9px;
  font-weight: 650;
}

html[data-design-theme="website"] body.ir-app .status-success {
  border-color: #b9e5d4 !important;
  background: #e8f7f1 !important;
  color: #176b50 !important;
}

html[data-design-theme="website"] body.ir-app .status-danger {
  border-color: #f3c8d0 !important;
  background: #fff0f3 !important;
  color: #a92c43 !important;
}

html[data-design-theme="website"] body.ir-app .status-warning {
  border-color: #ffd0d8 !important;
  background: #fff3f5 !important;
  color: #a92c43 !important;
}

html[data-design-theme="website"] body.ir-app .status-info {
  border-color: #bde7f4 !important;
  background: #e9f8fc !important;
  color: #15657c !important;
}

html[data-design-theme="website"] body.ir-app .modal .url-result-item,
html[data-design-theme="website"] body.ir-app .ir-card .url-result-item {
  padding: 0.78rem 0.9rem;
  border: 1px solid #e1e6ed !important;
  border-left-width: 4px !important;
  border-radius: 9px;
  background: #fbfcfe !important;
  color: #263141 !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.84rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

html[data-design-theme="website"] body.ir-app .modal .url-result-success,
html[data-design-theme="website"] body.ir-app .ir-card .url-result-success {
  border-left-color: #20a879 !important;
  background: #f2fbf7 !important;
}

html[data-design-theme="website"] body.ir-app .modal .url-result-danger,
html[data-design-theme="website"] body.ir-app .ir-card .url-result-danger,
html[data-design-theme="website"] body.ir-app .modal .url-result-warning,
html[data-design-theme="website"] body.ir-app .ir-card .url-result-warning {
  border-left-color: #e45670 !important;
  background: #fff6f8 !important;
}

html[data-design-theme="website"] body.ir-app .modal .url-result-info,
html[data-design-theme="website"] body.ir-app .ir-card .url-result-info {
  border-left-color: #009eea !important;
  background: #f0f9fd !important;
}

html[data-design-theme="website"] body.ir-app .modal pre,
html[data-design-theme="website"] body.ir-app .modal .font-monospace {
  border-color: #dfe6ee !important;
  background: #f7f9fc !important;
  color: #263141 !important;
}

html[data-design-theme="website"] body.ir-app .ir-pipeline-busy {
  top: 1.35rem;
  width: min(780px, calc(100vw - 2rem));
  min-width: 0;
  max-width: none;
  padding: 0.95rem 1.05rem;
  border: 1px solid rgba(0, 158, 234, 0.32);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.98);
  color: #202735;
  box-shadow: 0 22px 60px rgba(7, 12, 25, 0.22), inset 4px 0 0 #009eea;
  backdrop-filter: blur(18px) saturate(150%);
}

html[data-design-theme="website"] body.ir-app .ir-pipeline-busy-spinner {
  margin-top: 0.15rem;
  color: #009eea !important;
}

html[data-design-theme="website"] body.ir-app #pipelineBusyText {
  color: #111827;
  font-weight: 700;
}

html[data-design-theme="website"] body.ir-app #pipelineBusyMeta {
  color: #667080;
}

html[data-design-theme="website"] body.ir-app #pipelineBusyLog {
  max-height: 230px;
  margin-top: 0.75rem;
  padding: 0.8rem 0.9rem;
  border: 1px solid #263650;
  border-radius: 10px;
  background: #0b1220;
  color: #d8e8f2;
  font-size: 0.78rem;
  line-height: 1.5;
  box-shadow: inset 0 1px 8px rgba(0, 0, 0, 0.24);
}

html[data-design-theme="website"] body.ir-app .progress {
  height: 9px;
  border-radius: 999px;
  background: #e3e9f0;
}

html[data-design-theme="website"] body.ir-app .progress-bar {
  border-radius: 999px;
  background: linear-gradient(90deg, #0270c8, #08b8f3) !important;
}

html[data-design-theme="website"] body.ir-app .toast,
html[data-design-theme="website"] body.ir-app .popover,
html[data-design-theme="website"] body.ir-app .dropdown-menu {
  border: 1px solid #dfe5ec !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #242a35 !important;
  box-shadow: 0 18px 48px rgba(7, 12, 25, 0.16);
}

html[data-design-theme="website"] body.ir-app .popover-header,
html[data-design-theme="website"] body.ir-app .toast-header {
  border-bottom-color: #e5e9ef !important;
  background: #f7f9fc !important;
  color: #111827 !important;
}

@media (max-width: 767.98px) {
  html[data-design-theme="website"] body.ir-app .results-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-design-theme="website"] body.ir-app .ir-toggle-option {
    padding: 0.75rem;
  }

  html[data-design-theme="website"] body.ir-app .ir-toggle-option > .form-text {
    margin-left: 0;
  }

  html[data-design-theme="website"] body.ir-app .modal-body,
  html[data-design-theme="website"] body.ir-app .modal-header,
  html[data-design-theme="website"] body.ir-app .modal-footer {
    padding-inline: 1rem;
  }

  html[data-design-theme="website"] body.ir-app .modal-footer .btn {
    width: 100%;
    margin: 0;
  }
}
