/*
 * IDEAS Inbox Visual System V1 · Foundation
 * Visual-only layer. No functional selectors, endpoints or behavior.
 */
:root{
  --esca-primary:#FFD400;
  --esca-accent:#FFC800;
  --esca-background:#F6F6F4;
  --esca-surface:#FFFFFF;
  --esca-text:#171717;
  --esca-text-secondary:#666666;
  --esca-border:#E5E5E2;
  --esca-success:#16A66A;
  --esca-warning:#E8A11B;
  --esca-danger:#D84A4A;
  --esca-info:#FFD400;
  --esca-on-primary:#171717;
  --esca-surface-subtle:#FAFAF8;
  --esca-success-soft:#EAF8F2;
  --esca-warning-soft:#FFF6E3;
  --esca-warning-text:#8A5A00;
  --esca-danger-soft:#FCEEEE;

  --esca-space-1:4px;
  --esca-space-2:8px;
  --esca-space-3:12px;
  --esca-space-4:16px;
  --esca-space-6:24px;
  --esca-space-8:32px;
  --esca-space-10:40px;

  --esca-radius-control:8px;
  --esca-radius-card:12px;
  --esca-radius-modal:16px;
  --esca-radius-pill:999px;

  --esca-shadow-card:0 2px 8px rgba(20,40,61,.04);
  --esca-shadow-raised:0 8px 24px rgba(20,40,61,.08);
  --esca-shadow-focus:0 0 0 3px rgba(255,212,0,.24);

  --esca-topbar-height:64px;
  --esca-sidebar-width:240px;
  --esca-sidebar-collapsed:72px;
  /* Navigation and action colors are intentionally independent from brand colors. */
  --esca-menu-background:#171717;
  --esca-menu-text:#FFFFFF;
  --esca-menu-text-muted:#B8B8B8;
  --esca-menu-active-background:#FFD400;
  --esca-menu-active-text:#171717;
  --esca-menu-hover-background:#2A2A2A;
  --esca-button-primary-background:#FFD400;
  --esca-button-primary-text:#171717;
  --esca-button-secondary-background:#FFFFFF;
  --esca-button-secondary-text:#171717;
  --esca-button-secondary-border:#D8D8D4;
  --esca-sidebar-background:var(--esca-menu-background);
  --esca-sidebar-background-deep:var(--esca-menu-background);
  --esca-sidebar-background-end:var(--esca-menu-background);
  --esca-sidebar-text:var(--esca-menu-text);
  --esca-sidebar-text-muted:var(--esca-menu-text-muted);
  --esca-sidebar-hover:var(--esca-menu-hover-background);
  --esca-sidebar-border:rgba(255,255,255,.09);

  --esca-font-family:"Plus Jakarta Sans",Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --esca-font-title:28px;
  --esca-font-page:24px;
  --esca-font-section:20px;
  --esca-font-body:14px;
  --esca-font-small:12px;
  --esca-font-micro:11px;

  /* Compatibility aliases for the current V1.18 component layer. */
  --esca-blue:var(--esca-primary);
  --esca-bg:var(--esca-background);
  --esca-muted:var(--esca-text-secondary);
  --esca-white:var(--esca-surface);
}

.esca-admin-wrap,
.esca-app,
.esca-shell{
  font-family:var(--esca-font-family);
  color:var(--esca-text);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.esca-admin-wrap *,
.esca-app *,
.esca-shell *{box-sizing:border-box}

.esca-admin-wrap h1,
.esca-admin-wrap h2,
.esca-admin-wrap h3,
.esca-app h1,
.esca-app h2,
.esca-app h3{
  color:var(--esca-text);
  font-family:var(--esca-font-family);
  letter-spacing:-.015em;
}
.esca-admin-wrap h1,.esca-app h1{font-size:var(--esca-font-page);font-weight:700;line-height:1.2}
.esca-admin-wrap h2,.esca-app h2{font-size:var(--esca-font-section);font-weight:650;line-height:1.25}
.esca-muted{color:var(--esca-text-secondary)!important}

/* Surfaces */
.esca-panel,
.esca-stat,
.esca-metric-card,
.esca-health-card,
.esca-metric,
.esca-agent-card,
.esca-reply-card,
.esca-campaign-card{
  background:var(--esca-surface)!important;
  border-color:var(--esca-border)!important;
  border-radius:var(--esca-radius-card)!important;
  box-shadow:var(--esca-shadow-card);
}

/* Controls */
.esca-admin-wrap input[type=text],
.esca-admin-wrap input[type=email],
.esca-admin-wrap input[type=password],
.esca-admin-wrap input[type=search],
.esca-admin-wrap input[type=number],
.esca-admin-wrap select,
.esca-admin-wrap textarea,
.esca-app input[type=text],
.esca-app input[type=email],
.esca-app input[type=password],
.esca-app input[type=search],
.esca-app input[type=number],
.esca-app select,
.esca-app textarea{
  border-color:var(--esca-border)!important;
  border-radius:var(--esca-radius-control)!important;
  color:var(--esca-text)!important;
  background:var(--esca-surface)!important;
  font-family:var(--esca-font-family);
  box-shadow:none!important;
  min-height:40px;
}
.esca-admin-wrap input:focus,
.esca-admin-wrap select:focus,
.esca-admin-wrap textarea:focus,
.esca-app input:focus,
.esca-app select:focus,
.esca-app textarea:focus{
  border-color:var(--esca-accent)!important;
  box-shadow:var(--esca-shadow-focus)!important;
  outline:none!important;
}

.esca-btn,
.esca-admin-wrap .button.button-primary,
.esca-admin-wrap .button-primary{
  background:var(--esca-button-primary-background)!important;
  border-color:var(--esca-primary)!important;
  border-radius:var(--esca-radius-control)!important;
  color:var(--esca-on-primary)!important;
  font-family:var(--esca-font-family);
  font-weight:600;
  min-height:40px;
  padding:8px 14px;
  box-shadow:none!important;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease;
}
.esca-btn:hover,
.esca-admin-wrap .button.button-primary:hover,
.esca-admin-wrap .button-primary:hover{filter:brightness(.96);box-shadow:0 3px 10px rgba(0,99,174,.16)!important}
.esca-btn:focus-visible,
.esca-admin-wrap .button:focus-visible{outline:0;box-shadow:var(--esca-shadow-focus)!important}
.esca-btn-secondary,
.esca-admin-wrap .button:not(.button-primary){
  background:var(--esca-surface)!important;
  color:var(--esca-primary)!important;
  border-color:var(--esca-border)!important;
  border-radius:var(--esca-radius-control)!important;
  min-height:40px;
}

/* Badges / statuses */
.esca-badge{border-radius:var(--esca-radius-pill)!important;font-weight:650;letter-spacing:.02em}
.esca-badge.is-success,.esca-health-good{background:var(--esca-success-soft)!important;color:var(--esca-success)!important}
.esca-badge.is-warning,.esca-health-warn{background:var(--esca-warning-soft)!important;color:var(--esca-warning-text)!important}
.esca-badge.is-danger,.esca-health-bad{background:var(--esca-danger-soft)!important;color:var(--esca-danger)!important}

/* Tables */
.esca-admin-wrap table.widefat{
  border-color:var(--esca-border);
  border-radius:var(--esca-radius-card);
  overflow:hidden;
  box-shadow:var(--esca-shadow-card);
}
.esca-admin-wrap table.widefat thead th{color:var(--esca-text-secondary);font-size:var(--esca-font-small);font-weight:650;background:var(--esca-surface-subtle)}
.esca-admin-wrap table.widefat td{color:var(--esca-text);border-color:var(--esca-border)}

/* Notices */
.esca-notice-success{background:var(--esca-success-soft)!important}
.esca-notice-error{background:var(--esca-danger-soft)!important}

@media (prefers-reduced-motion:reduce){
  .esca-admin-wrap *, .esca-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* IDEAS Inbox Visual V1 · semantic extensions */
:root{
  --esca-primary-strong:#E6BE00;
  --esca-primary-soft:#FFF7CC;
  --esca-accent-soft:#FFF3B0;
  --esca-surface-muted:#F8FAFC;
  --esca-surface-elevated:#FFFFFF;
  --esca-overlay:rgba(20,40,61,.42);
  --esca-sidebar-active:var(--esca-primary);
  --esca-sidebar-accent:var(--esca-accent);
  --esca-message-inbound:#FFFFFF;
  --esca-message-outbound:var(--esca-primary);
  --esca-message-outbound-text:#171717;
  --esca-message-auto:#7A6500;
  --esca-scrollbar:#CBD7E3;
  --esca-chart-1:var(--esca-primary);
  --esca-chart-2:var(--esca-accent);
  --esca-chart-3:var(--esca-success);
  --esca-chart-4:var(--esca-warning);
  --esca-chart-5:#8B5CF6;
}
html[data-esca-theme="dark"]{
  --esca-background:#0B1625;
  --esca-surface:#111F31;
  --esca-surface-muted:#0E1B2B;
  --esca-surface-subtle:#13243A;
  --esca-surface-elevated:#16283D;
  --esca-text:#EAF2FA;
  --esca-text-secondary:#9FB0C3;
  --esca-border:#243A52;
  --esca-primary:#FFD400;
  --esca-primary-strong:#E6BE00;
  --esca-primary-soft:#3A3300;
  --esca-accent:#FFC800;
  --esca-accent-soft:#3A3000;
  --esca-success:#31C98A;
  --esca-warning:#F2B94B;
  --esca-danger:#F26C6C;
  --esca-success-soft:#12362A;
  --esca-warning-soft:#3A2D13;
  --esca-warning-text:#F2C86D;
  --esca-danger-soft:#3C2025;
  --esca-sidebar-background:#171717;
  --esca-sidebar-background-deep:#111111;
  --esca-sidebar-background-end:#242424;
  --esca-message-inbound:#18293E;
  --esca-message-outbound:#FFD400;
  --esca-scrollbar:#36516B;
  --esca-overlay:rgba(0,0,0,.58);
  --esca-shadow-card:0 2px 10px rgba(0,0,0,.16);
  --esca-shadow-raised:0 10px 28px rgba(0,0,0,.28);
}
html[data-esca-density="compact"]{
  --esca-space-3:10px;
  --esca-space-4:13px;
  --esca-space-6:19px;
  --esca-space-8:26px;
}

/* IDEAS v1.0.4 accessibility/contrast safeguards */
.esca-admin-wrap .button.button-primary,.esca-admin-wrap .button-primary,.esca-btn,.esca-app button.esca-btn{color:#171717!important}
.esca-admin-wrap .button:not(.button-primary){color:#3D3300!important;border-color:#CFC9B5!important}
.esca-admin-wrap .button:not(.button-primary):hover{border-color:#FFD400!important;background:#FFF8D6!important;color:#171717!important}
.esca-app a{ text-underline-offset:2px }

/* IDEAS v1.0.5: action colors are decoupled from brand colors for guaranteed contrast. */
.esca-btn-primary,.button-primary,.esca-primary-action{background:var(--esca-button-primary-background)!important;color:var(--esca-button-primary-text)!important;border-color:var(--esca-button-primary-background)!important}
.esca-btn-secondary{background:var(--esca-button-secondary-background)!important;color:var(--esca-button-secondary-text)!important;border-color:var(--esca-button-secondary-border)!important}
