/*
 * Wadi Land SaaS Slate theme v40
 * A cool blue-gray application palette. This file intentionally loads last so
 * route-specific legacy styles cannot restore the former green brand chrome.
 * Semantic warning/error colors remain distinct for accessibility.
 */
:root{
  --slate-canvas:#f1f5f9;
  --slate-surface:#ffffff;
  --slate-surface-soft:#f8fafc;
  --slate-surface-selected:#e8eef6;
  --slate-ink:#172033;
  --slate-copy:#475569;
  --slate-muted:#64748b;
  --slate-line:#d8e1ec;
  --slate-line-strong:#c2cedd;
  --slate-accent:#475569;
  --slate-accent-hover:#334155;
  --slate-accent-active:#1e293b;
  --slate-focus:#64748b;

  --color-primary:var(--slate-accent);
  --color-primary-hover:var(--slate-accent-hover);
  --color-primary-active:var(--slate-accent-active);
  --color-primary-light:var(--slate-surface-selected);
  --color-primary-border:var(--slate-line-strong);
  --color-page:var(--slate-canvas);
  --color-text-primary:var(--slate-ink);
  --color-text-secondary:var(--slate-copy);
  --color-text-muted:var(--slate-muted);
  --color-border:var(--slate-line);
  --color-border-strong:var(--slate-line-strong);
  --color-focus:var(--slate-focus);
  --focus-ring:0 0 0 3px rgb(100 116 139 / 18%);

  /* Legacy aliases used throughout the workspace. */
  --green-25:#f8fafc;
  --green-50:#eef2f7;
  --green-100:#dbe3ed;
  --green-300:#aebdce;
  --green-400:#7f91a7;
  --green-500:#64748b;
  --green-600:#526176;
  --green-700:#475569;
  --green-800:#334155;
  --green-900:#263449;

  --wl29-canvas:var(--slate-canvas);
  --wl29-surface:var(--slate-surface);
  --wl29-surface-soft:var(--slate-surface-soft);
  --wl29-surface-teal:var(--slate-surface-selected);
  --wl29-ink:var(--slate-ink);
  --wl29-copy:var(--slate-copy);
  --wl29-muted:var(--slate-muted);
  --wl29-line:var(--slate-line);
  --wl29-line-strong:var(--slate-line-strong);
  --wl29-teal:var(--slate-accent);
  --wl29-teal-hover:var(--slate-accent-hover);
  --wl29-teal-soft:var(--slate-surface-selected);
  --wl29-navy:#101827;
  --wl29-navy-soft:#e7ecf3;
  --wl29-blue:#536b88;
  --wl29-blue-soft:#e7edf5;
  --wl29-shadow:0 14px 36px rgb(30 41 59 / 8%);
  --wl29-shadow-float:0 24px 64px rgb(15 23 42 / 17%);
  --shadow-xs:0 1px 2px rgb(30 41 59 / 5%);
  --shadow-sm:0 5px 16px rgb(30 41 59 / 8%);
  --shadow-md:0 18px 44px rgb(15 23 42 / 14%);
}

html,body,#appShell.app-shell{background:var(--slate-canvas)!important}
#appShell .main-stage{
  background:
    radial-gradient(circle at 86% 0,rgb(71 85 105 / 7%),transparent 28rem),
    var(--slate-canvas)!important;
  scrollbar-color:#a7b4c5 transparent!important;
}
#appShell .main-stage::-webkit-scrollbar-thumb{background:#a7b4c5!important;border-color:var(--slate-canvas)!important}
::selection{background:#dbe3ed;color:#172033}
html{scrollbar-color:#a7b4c5 #edf2f7}

#appShell .main-stage button,
#appShell .main-stage input,
#appShell .main-stage select,
#appShell .main-stage textarea{caret-color:var(--slate-accent)!important}
#appShell .main-stage button:focus-visible,
#appShell .main-stage a:focus-visible,
#appShell .main-stage input:focus-visible,
#appShell .main-stage select:focus-visible,
#appShell .main-stage textarea:focus-visible,
#appShell .main-stage [tabindex]:focus-visible{outline-color:rgb(100 116 139 / 34%)!important}

#appShell .topbar{
  border-bottom-color:var(--slate-line)!important;
  box-shadow:0 7px 24px rgb(30 41 59 / 5%)!important;
}
#appShell .topbar:after{background:linear-gradient(90deg,var(--slate-accent),rgb(71 85 105 / 0))!important}
#appShell .topbar-search{border-color:var(--slate-line)!important;background:var(--slate-surface-soft)!important}
#appShell .topbar-search:focus-within{border-color:var(--slate-accent)!important;box-shadow:var(--focus-ring)!important}
.topbar-ai-chip{color:var(--slate-accent)!important}

#appShell .topbar-new-contract,.button.primary,.button.button-primary{
  border-color:var(--slate-accent)!important;
  background:var(--slate-accent)!important;
  box-shadow:0 8px 18px rgb(51 65 85 / 18%)!important;
}
#appShell .topbar-new-contract:hover,.button.primary:hover,.button.button-primary:hover{
  border-color:var(--slate-accent-hover)!important;background:var(--slate-accent-hover)!important;
}

/* Common legacy mint surfaces and borders that are not tokenized. */
#appShell .page :is(.module-card-head,.module-table th,.module-table tbody tr:hover),
#appShell .page :is(.ticket-summary-row:hover,.ticket-summary-row.is-open,.ticket-accordion-row>td),
#appShell .page :is(.traveler-directory-item.is-open,.traveler-passport-field,.case-pulse-strip){
  background-color:var(--slate-surface-soft)!important;
}
#appShell .page :is(.module-card,.user-management-card,.payment-panel,.activity-log,.full-workflow-card,.traveler-directory-card),
#appShell .page :is(input,select,textarea){border-color:var(--slate-line)!important}

/* Status colors are deliberately left semantic; only branded green chrome is slate. */
