/*
 * Automazy — Institutional workspace layer
 * UI-only overrides for the operational modules. IDs and interaction hooks live
 * in index.html/app.js and are intentionally left untouched.
 */

:root {
  --workspace-bg: #080b11;
  --workspace-surface: #0f141d;
  --workspace-surface-raised: #131a25;
  --workspace-surface-soft: #0b1018;
  --workspace-border: #252e3c;
  --workspace-border-strong: #344054;
  --workspace-text: #f5f7fa;
  --workspace-text-secondary: #a8b1c0;
  --workspace-text-muted: #6f7a8c;
  --workspace-accent: #7c6cf2;
  --workspace-accent-strong: #8b7cf6;
  --workspace-accent-soft: rgba(124, 108, 242, 0.12);
  --workspace-success: #42c998;
  --workspace-warning: #e7b75e;
  --workspace-danger: #ef7373;
  --workspace-radius-lg: 14px;
  --workspace-radius-md: 10px;
  --workspace-shadow: 0 14px 36px rgba(0, 0, 0, 0.16);
}

/* 2026 operational clarity: business outcomes first, technical detail on demand. */
.impact-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin: 8px 0 14px;
}

.impact-heading h3 {
  margin: 5px 0 0;
  color: #f3f5f8;
  font-size: clamp(18px, 2vw, 24px);
  letter-spacing: -0.035em;
}

.impact-source {
  color: #778294;
  font-size: 11px;
  text-align: right;
}

#view-dashboard .impact-grid {
  order: 2;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

#view-dashboard .dashboard-intro { order: 0; }
#view-dashboard .impact-heading { order: 1; }
#view-dashboard .dashboard-columns { order: 3; }
#view-dashboard .setup-panel { order: 4; }

#view-dashboard .impact-card {
  min-width: 0;
  min-height: 112px;
  padding: 16px;
  align-items: flex-start;
  gap: 12px;
  border-color: #252d3a;
  background: linear-gradient(145deg, #111722, #0d121a);
  box-shadow: none;
}

#view-dashboard .impact-card:hover {
  border-color: rgba(124, 108, 242, .42);
  transform: translateY(-1px);
}

.impact-icon {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid rgba(124, 108, 242, .3);
  border-radius: 8px;
  background: rgba(124, 108, 242, .08);
  color: #a99df8;
  font: 700 14px/1 "JetBrains Mono", monospace;
}

.impact-card .stat-value {
  overflow: hidden;
  color: #f6f7fa;
  font-size: clamp(20px, 2.1vw, 28px);
  line-height: 1.1;
  text-overflow: ellipsis;
}

#view-dashboard .impact-card:last-child .stat-value { font-size: clamp(17px, 1.45vw, 22px); }

#nav-btn-prompt { display: none !important; }

#knowledge-new-modal .agent-subtabs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  overflow: visible !important;
}

#knowledge-new-modal .agent-subtab-btn {
  min-width: 0;
  justify-content: center;
  white-space: normal;
  text-align: center;
}

.impact-card .stat-label {
  margin-top: 7px;
  color: #9da6b5;
  font-size: 9px;
  letter-spacing: .08em;
}

.impact-card small {
  display: block;
  margin-top: 5px;
  color: #667183;
  font-size: 10px;
  line-height: 1.35;
}

.campaign-ai-builder {
  padding: 22px;
  border: 1px solid rgba(124, 108, 242, .28);
  border-radius: 14px;
  background: radial-gradient(circle at 100% 0, rgba(124,108,242,.12), transparent 42%), #0d131c;
}

.campaign-ai-builder h4,
.campaign-review-head h4 {
  margin: 6px 0;
  color: #f4f5f8;
  font-size: 20px;
  letter-spacing: -.025em;
}

.campaign-ai-builder p {
  max-width: 600px;
  margin: 0 0 16px;
  color: #929cad;
  font-size: 13px;
  line-height: 1.55;
}

.campaign-ai-builder textarea {
  width: 100%;
  min-height: 120px !important;
  box-sizing: border-box;
  padding: 14px !important;
  font-size: 14px !important;
  line-height: 1.55;
  resize: vertical;
}

.campaign-ai-builder > .btn {
  width: 100%;
  margin-top: 14px;
  min-height: 44px;
}

.campaign-idea-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}

.campaign-idea-chips button,
.campaign-advanced-toggle {
  border: 1px solid #2b3442;
  border-radius: 999px;
  background: #121925;
  color: #aab3c2;
  padding: 6px 10px;
  font-size: 11px;
  cursor: pointer;
}

.campaign-idea-chips button:hover { border-color: #7769e8; color: #ddd9ff; }

.campaign-review-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

#modal-create-campaign .campaign-mode-controls,
#modal-create-campaign .campaign-technical-options {
  display: none !important;
}

.campaign-advanced-toggle {
  width: 100%;
  margin: 2px 0 12px;
  border-radius: 8px;
  text-align: left;
}

/* Keep dense workspaces inside the viewport at every common laptop size. */
.tab-view,
.workspace-view,
.calendar-container,
.knowledge-editor,
.calendar-card,
.dashboard-columns > * { min-width: 0; }

#view-campaigns .campaign-monitoring-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
}

#view-campaigns .campaign-monitoring-grid .calendar-card { min-width: 0; }
#view-campaigns .campaign-monitoring-grid .calendar-card:nth-child(n+4) { display: none !important; }
#view-campaigns #campaign-live-hud { box-shadow: none !important; backdrop-filter: none !important; }
#view-campaigns #hud-active-wrapper > div:last-child { color: #788395 !important; }

@media (max-width: 1120px) {
  #view-dashboard .impact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #view-knowledge .knowledge-layout { grid-template-columns: minmax(240px, .65fr) minmax(0, 1.35fr) !important; }
}

@media (max-width: 820px) {
  .impact-heading { align-items: flex-start; flex-direction: column; }
  .impact-source { text-align: left; }
  #view-campaigns .campaign-monitoring-grid { grid-template-columns: 1fr !important; }
  #view-knowledge .knowledge-layout { grid-template-columns: 1fr !important; }
  #view-knowledge .knowledge-list { max-height: 280px !important; }
  #view-knowledge #knowledge-editor { height: min(48vh, 420px) !important; }
}

@media (max-width: 560px) {
  #view-dashboard .impact-grid { grid-template-columns: minmax(0, 1fr) !important; }
  #view-dashboard .impact-card { min-height: 94px; }
  .campaign-ai-builder { padding: 16px; }
  .campaign-review-head { flex-direction: column; }
}

/* Quieter navigation: product names, not sales labels. */
#nav-btn-recovery .badge,
#nav-btn-calendar .badge,
#nav-btn-campaigns .badge {
  display: none !important;
}

.sidebar .nav-btn {
  border-radius: 8px !important;
}

.sidebar .nav-btn.active {
  background: rgba(124, 108, 242, 0.1) !important;
  border-color: rgba(139, 124, 246, 0.3) !important;
  color: #f5f3ff !important;
}

.sidebar .nav-btn.active::before {
  background: var(--workspace-accent-strong) !important;
}

/* Shared page system */
.workspace-view {
  color: var(--workspace-text);
}

.workspace-view .recovery-container,
.workspace-view .calendar-container {
  width: min(100%, 1380px);
  margin: 0 auto;
  gap: 16px !important;
}

.workspace-eyebrow {
  display: block;
  margin-bottom: 5px;
  color: #9185f7;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
}

.workspace-title-line {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.workspace-view h2 {
  margin: 0 !important;
  color: var(--workspace-text) !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  font-weight: 680 !important;
  letter-spacing: -0.035em;
  line-height: 1.1;
}

.workspace-view .recovery-header-info,
.workspace-view .calendar-header-info {
  min-width: min(100%, 420px);
  flex: 1 1 520px;
}

.workspace-view .recovery-header-info > div,
.workspace-view .calendar-header-info > div {
  align-items: flex-start !important;
}

.workspace-view .recovery-header-info > p,
.workspace-view .calendar-header-info > p {
  max-width: 700px;
  margin-top: 9px !important;
  color: var(--workspace-text-secondary) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.workspace-view .recovery-header-card,
.workspace-view .calendar-header-card {
  min-height: 104px;
  padding: 22px 24px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--workspace-radius-lg) !important;
  background:
    linear-gradient(120deg, rgba(124, 108, 242, 0.08), transparent 42%),
    var(--workspace-surface) !important;
  box-shadow: var(--workspace-shadow) !important;
}

.workspace-view .recovery-header-toggle,
.workspace-view .calendar-header-toggle {
  height: 40px;
  padding: 0 12px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 9px !important;
  background: var(--workspace-surface-soft) !important;
}

.workspace-view .btn {
  min-height: 36px;
  border-radius: 8px !important;
  box-shadow: none !important;
  font-weight: 620 !important;
}

.workspace-view .btn-primary,
#modal-create-campaign .btn-primary {
  border-color: #8173ed !important;
  background: #8173ed !important;
  color: #fff !important;
}

.workspace-view .btn-primary:hover,
#modal-create-campaign .btn-primary:hover {
  border-color: #9487f7 !important;
  background: #9487f7 !important;
  transform: translateY(-1px);
}

.workspace-view .btn-secondary {
  border-color: var(--workspace-border) !important;
  background: #151c27 !important;
  color: #d8deea !important;
}

.workspace-view .btn-secondary:hover {
  border-color: var(--workspace-border-strong) !important;
  background: #1a2230 !important;
  color: #fff !important;
}

.workspace-view .icon-refresh-btn {
  width: 32px;
  height: 32px;
  padding: 0 !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 8px !important;
  background: var(--workspace-surface-soft) !important;
  color: var(--workspace-text-secondary) !important;
}

.workspace-view .icon-refresh-btn:hover {
  border-color: var(--workspace-border-strong) !important;
  color: #fff !important;
}

/* Recovery: a clear three-step setup with a secondary activity rail. */
#view-recovery .recovery-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start;
}

#view-recovery .recovery-col {
  display: contents !important;
}

#view-recovery .recovery-card {
  overflow: hidden;
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--workspace-radius-lg) !important;
  background: var(--workspace-surface) !important;
  box-shadow: 0 8px 26px rgba(0, 0, 0, 0.12) !important;
}

#view-recovery .recovery-card-header {
  min-height: 54px;
  padding: 13px 16px !important;
  border-bottom: 1px solid var(--workspace-border) !important;
  background: var(--workspace-surface-raised) !important;
}

#view-recovery .recovery-card-header > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

#view-recovery .recovery-card-header h4 {
  color: #e8ebf2 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
}

.step-number {
  display: inline-flex;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(139, 124, 246, 0.38);
  border-radius: 7px;
  background: var(--workspace-accent-soft);
  color: #a99efc;
  font-size: 11px;
  font-weight: 750;
}

#view-recovery .recovery-card-body {
  padding: 16px !important;
}

#view-recovery .recovery-url-box {
  min-height: 42px;
  padding: 3px 4px 3px 11px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 9px !important;
  background: var(--workspace-surface-soft) !important;
}

#view-recovery .recovery-url-box input {
  color: #c5bfff !important;
}

#view-recovery .platform-badges {
  gap: 5px !important;
}

#view-recovery .plat-badge {
  padding: 5px 8px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: var(--workspace-text-secondary) !important;
}

#view-recovery .plat-badge:hover {
  border-color: #786be2 !important;
  color: #d9d4ff !important;
}

#view-recovery .mode-radio-card {
  padding: 12px 13px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 9px !important;
  background: var(--workspace-surface-soft) !important;
}

#view-recovery .mode-radio-card:hover,
#view-recovery .mode-radio-card:has(input:checked) {
  border-color: rgba(139, 124, 246, 0.62) !important;
  background: rgba(124, 108, 242, 0.07) !important;
}

#view-recovery .mode-radio-card input {
  accent-color: var(--workspace-accent);
}

#view-recovery .recovery-textarea,
#view-recovery input,
#view-recovery select {
  border-color: var(--workspace-border) !important;
  background: var(--workspace-surface-soft) !important;
  color: #e8ecf4 !important;
}

#view-recovery .recovery-textarea:focus,
#view-recovery input:focus,
#view-recovery select:focus {
  border-color: rgba(139, 124, 246, 0.75) !important;
  box-shadow: 0 0 0 3px rgba(124, 108, 242, 0.1);
  outline: none;
}

#view-recovery .recovery-test-card summary {
  cursor: pointer;
  list-style: none;
  border-bottom: 0 !important;
}

#view-recovery .recovery-test-card,
#view-recovery .recovery-grid > .recovery-col:last-child > .recovery-card:last-child {
  grid-column: 1 / -1;
}

#view-recovery .recovery-test-card summary::-webkit-details-marker {
  display: none;
}

#view-recovery .recovery-test-card[open] summary {
  border-bottom: 1px solid var(--workspace-border) !important;
}

.details-hint {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--workspace-text-secondary);
  font-size: 11px;
  font-weight: 600;
}

.details-hint::after {
  content: "+";
  color: #a99efc;
  font-size: 16px;
  line-height: 1;
}

details[open] .details-hint::after {
  content: "−";
}

#view-recovery .recovery-table-container {
  max-height: 430px !important;
}

/* Calendar: stable grid, useful density, restrained visual hierarchy. */
#view-calendar .calendar-header-card > div:last-child {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

#view-calendar #cal-conn-badge {
  margin-top: 3px;
  border: 1px solid rgba(231, 183, 94, 0.24);
  background: rgba(231, 183, 94, 0.1) !important;
  color: #e6bd72 !important;
  font-size: 10px !important;
  letter-spacing: 0.03em;
}

#view-calendar .cal-kpi-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

#view-calendar .cal-kpi-card {
  min-height: 76px;
  padding: 14px 15px !important;
  gap: 12px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--workspace-radius-md) !important;
  background: var(--workspace-surface) !important;
  box-shadow: none !important;
}

#view-calendar .cal-kpi-card:hover {
  border-color: var(--workspace-border-strong) !important;
  transform: none !important;
}

#view-calendar .cal-kpi-icon {
  width: 28px !important;
  height: 28px !important;
  border: 1px solid rgba(139, 124, 246, 0.3) !important;
  border-radius: 7px !important;
  background: var(--workspace-accent-soft) !important;
  color: #9e93f8 !important;
  font-family: var(--font-mono);
  font-size: 9px !important;
  font-weight: 700;
}

#view-calendar .cal-kpi-val {
  color: var(--workspace-text) !important;
  font-size: 20px !important;
  font-weight: 680 !important;
}

#view-calendar .cal-kpi-label {
  margin-top: 3px !important;
  color: var(--workspace-text-muted) !important;
  font-size: 11px !important;
}

#view-calendar .cal-interactive-layout {
  display: grid !important;
  grid-template-columns: minmax(520px, 1.55fr) minmax(320px, 0.85fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

#view-calendar .cal-main-calendar-card,
#view-calendar .cal-day-detail-card,
#view-calendar .cal-all-appts-card {
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--workspace-radius-lg) !important;
  background: var(--workspace-surface) !important;
  box-shadow: var(--workspace-shadow) !important;
}

#view-calendar .cal-main-calendar-card {
  min-width: 0;
  padding: 18px !important;
}

#view-calendar .cal-nav-bar {
  margin-bottom: 10px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid var(--workspace-border) !important;
}

#view-calendar #cal-current-month-label {
  min-width: 145px !important;
  color: var(--workspace-text) !important;
  font-size: 16px !important;
  font-weight: 660 !important;
}

#view-calendar .cal-nav-buttons {
  border-color: var(--workspace-border) !important;
  background: var(--workspace-surface-soft) !important;
}

#view-calendar .cal-nav-btn {
  min-width: 32px;
  min-height: 30px;
  color: var(--workspace-text-secondary) !important;
}

#view-calendar .cal-nav-btn:hover {
  background: #1a2230 !important;
  color: #fff !important;
}

#view-calendar .cal-nav-today-btn {
  border-color: var(--workspace-border) !important;
}

#view-calendar .cal-weekdays-grid {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  padding: 7px 0 8px !important;
  color: var(--workspace-text-muted) !important;
  font-size: 9px !important;
  letter-spacing: 0.08em;
}

#view-calendar .cal-month-days-grid {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(66px, 1fr);
  gap: 5px !important;
}

#view-calendar .cal-day-cell {
  min-width: 0;
  min-height: 66px !important;
  padding: 7px !important;
  border: 1px solid #202938 !important;
  border-radius: 8px !important;
  background: var(--workspace-surface-soft) !important;
}

#view-calendar .cal-day-cell:hover {
  border-color: #51478f !important;
  background: #121824 !important;
  transform: none !important;
}

#view-calendar .cal-day-cell.today {
  border-color: #7468d7 !important;
  box-shadow: 0 0 0 1px rgba(124, 108, 242, 0.14) inset !important;
}

#view-calendar .cal-day-cell.today .cal-day-number {
  background: #786be2 !important;
}

#view-calendar .cal-day-cell.selected {
  border-color: #8b7cf6 !important;
  background: rgba(124, 108, 242, 0.09) !important;
  box-shadow: none !important;
}

#view-calendar .cal-day-badge {
  background: rgba(66, 201, 152, 0.11) !important;
  color: #69d6ad !important;
}

#view-calendar .cal-day-detail-card {
  min-width: 0;
  padding: 17px !important;
  gap: 12px !important;
}

#view-calendar .cal-day-header {
  padding-bottom: 12px !important;
  border-color: var(--workspace-border) !important;
}

#view-calendar .cal-day-header > div > span {
  color: #9185f7 !important;
}

#view-calendar .cal-section-box {
  padding: 12px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 9px !important;
  background: var(--workspace-surface-soft) !important;
}

#view-calendar .cal-slots-container {
  max-height: 190px !important;
  gap: 5px !important;
}

#view-calendar .cal-slot-btn,
#view-calendar .cal-slot-chip {
  border-color: #2d3747 !important;
  background: #151c27 !important;
  color: #c7c1ff !important;
}

#view-calendar .cal-all-appts-card {
  padding: 18px !important;
}

#view-calendar .table-responsive {
  border-color: var(--workspace-border) !important;
  border-radius: 9px !important;
}

/* Campaigns: simple summary + one operational list. */
#view-campaigns .calendar-header-card > div:last-child {
  flex: 0 0 auto;
}

#view-campaigns .calendar-header-card .btn-primary {
  min-width: 132px;
}

#view-campaigns .campaign-metrics-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
}

#view-campaigns .calendar-card {
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--workspace-radius-md) !important;
  background: var(--workspace-surface) !important;
  box-shadow: none !important;
}

#view-campaigns .campaign-metrics-grid .calendar-card {
  min-height: 82px;
  padding: 14px 16px !important;
}

#view-campaigns .campaign-metrics-grid .calendar-card > span {
  color: var(--workspace-text-muted) !important;
  letter-spacing: 0.05em;
}

#view-campaigns .campaign-metrics-grid .calendar-card > div {
  color: var(--workspace-text) !important;
}

#view-campaigns > .calendar-container > .calendar-card {
  overflow: hidden !important;
  border-radius: var(--workspace-radius-lg) !important;
  box-shadow: var(--workspace-shadow) !important;
}

#view-campaigns .calendar-card-header {
  min-height: 56px;
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--workspace-border) !important;
  background: var(--workspace-surface-raised);
}

/* Shared operational tables */
.workspace-view .recovery-table {
  font-size: 12px !important;
}

.workspace-view .recovery-table th {
  padding: 10px 13px !important;
  border-bottom: 1px solid var(--workspace-border) !important;
  background: #0c1119 !important;
  color: #7f8a9c !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}

.workspace-view .recovery-table td {
  padding: 12px 13px !important;
  border-bottom: 1px solid #1e2633 !important;
  color: #dce1ea !important;
}

.workspace-view .recovery-table tbody tr:last-child td {
  border-bottom: 0 !important;
}

.workspace-view .recovery-table tr:hover td {
  background: rgba(124, 108, 242, 0.035) !important;
}

/* Campaign creation is a compact guided form instead of a wall of controls. */
#modal-create-campaign .modal-card {
  width: min(760px, calc(100vw - 32px));
  max-width: 760px !important;
  overflow: hidden;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 16px !important;
  background: var(--workspace-surface) !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.45) !important;
}

#modal-create-campaign .modal-header {
  padding: 18px 20px !important;
  border-bottom: 1px solid var(--workspace-border) !important;
  background: var(--workspace-surface-raised) !important;
}

#modal-create-campaign .modal-header h3 {
  margin: 0 !important;
  color: var(--workspace-text) !important;
  font-size: 19px !important;
  letter-spacing: -0.02em;
}

#modal-create-campaign .modal-body {
  max-height: min(76vh, 720px);
  padding: 18px 20px !important;
  overflow-y: auto;
}

#modal-create-campaign form > div[style*="background:#090e15"] {
  padding: 14px !important;
  border: 1px solid var(--workspace-border) !important;
  border-radius: 10px !important;
  background: var(--workspace-surface-soft) !important;
}

#modal-create-campaign input[type="text"],
#modal-create-campaign input[type="number"],
#modal-create-campaign select,
#modal-create-campaign textarea {
  min-height: 38px;
  border-color: var(--workspace-border-strong) !important;
  background: #0b1018 !important;
  color: #ebedf3 !important;
}

#modal-create-campaign textarea {
  min-height: 96px;
}

#modal-create-campaign input:focus,
#modal-create-campaign select:focus,
#modal-create-campaign textarea:focus {
  border-color: rgba(139, 124, 246, 0.8) !important;
  box-shadow: 0 0 0 3px rgba(124, 108, 242, 0.1);
  outline: none;
}

#modal-create-campaign input[type="radio"] {
  accent-color: var(--workspace-accent);
}

#modal-create-campaign .modal-step-label {
  display: block;
  margin-bottom: 9px;
  color: #8f83f4;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#modal-create-campaign #camp-audience-badge {
  background: rgba(66, 201, 152, 0.1) !important;
  color: #69d6ad !important;
}

@media (max-width: 1180px) {
  #view-calendar .cal-kpi-grid,
  #view-campaigns .campaign-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #view-calendar .cal-interactive-layout {
    grid-template-columns: minmax(480px, 1.3fr) minmax(300px, 0.8fr) !important;
  }

}

@media (max-width: 920px) {
  #view-recovery .recovery-grid,
  #view-calendar .cal-interactive-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #view-calendar .cal-day-detail-card {
    min-height: 360px;
  }
}

@media (max-width: 640px) {
  .workspace-view .recovery-container,
  .workspace-view .calendar-container {
    gap: 12px !important;
  }

  .workspace-view .recovery-header-card,
  .workspace-view .calendar-header-card {
    align-items: stretch !important;
    padding: 17px !important;
  }

  .workspace-view .recovery-header-card > div:last-child,
  .workspace-view .calendar-header-card > div:last-child {
    width: 100%;
  }

  #view-calendar .calendar-header-card > div:last-child {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  #view-calendar .calendar-header-toggle {
    justify-content: space-between;
  }

  #view-calendar .cal-kpi-grid,
  #view-campaigns .campaign-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #view-calendar .cal-kpi-card {
    min-height: 70px;
    padding: 12px !important;
  }

  #view-calendar .cal-kpi-icon {
    display: none !important;
  }

  #view-calendar .cal-main-calendar-card {
    padding: 12px !important;
  }

  #view-calendar .cal-nav-bar > div:first-child {
    width: 100%;
    justify-content: space-between;
  }

  #view-calendar .cal-nav-bar > div:last-child {
    display: none !important;
  }

  #view-calendar #cal-current-month-label {
    min-width: 0 !important;
    font-size: 15px !important;
  }

  #view-calendar .cal-month-days-grid {
    gap: 3px !important;
    grid-auto-rows: minmax(48px, 1fr);
  }

  #view-calendar .cal-day-cell {
    min-height: 48px !important;
    padding: 5px !important;
    border-radius: 6px !important;
  }

  #view-calendar .cal-day-badge {
    display: none !important;
  }

  #view-calendar .cal-day-number {
    font-size: 11px !important;
  }

  #view-calendar .cal-day-cell.today .cal-day-number {
    width: 20px !important;
    height: 20px !important;
  }

  #view-recovery .test-form-grid,
  #modal-create-campaign div[style*="grid-template-columns:1fr 1fr 1fr"],
  #modal-create-campaign div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  #modal-create-campaign .modal-card {
    width: calc(100vw - 16px);
  }

  #modal-create-campaign .modal-body {
    padding: 15px !important;
  }
}
