@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=IBM+Plex+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --ec-paper: #fdfcf9;
  --ec-panel: #faf8f2;
  --ec-card: #ffffff;
  --ec-ink: #1b2340;
  --ec-ink-soft: #2c3358;
  --ec-muted: #747891;
  --ec-line: rgba(27, 35, 64, 0.07);
  --ec-brass: #c8b18a;
  --ec-brass-deep: #9d8461;
  --ec-brass-tint: #fbf6ed;
  --ec-garnet: #b6777d;
  --ec-garnet-deep: #9a5f66;
  --ec-teal: #76a69f;
}

body.admin {
  background:
    linear-gradient(rgba(27, 35, 64, 0.012) 1px, transparent 1px),
    linear-gradient(90deg, rgba(27, 35, 64, 0.012) 1px, transparent 1px),
    var(--ec-paper) !important;
  background-size: 48px 48px;
  color: var(--ec-ink);
  font-family: Manrope, Inter, sans-serif;
}

body.admin #wrapper {
  background: transparent !important;
}

body.admin .content {
  padding: 28px;
}

body.admin #header {
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid var(--ec-line);
  box-shadow: 0 10px 26px rgba(27, 35, 64, 0.055);
  backdrop-filter: blur(14px);
}

body.admin #logo .logo-text,
body.admin #logo .logo {
  color: var(--ec-ink);
  font-family: Fraunces, Georgia, serif;
  font-weight: 600;
  letter-spacing: 0;
}

body.admin #top_search input,
body.admin #search_input {
  background: var(--ec-paper) !important;
  border: 1px solid var(--ec-line) !important;
  border-radius: 8px !important;
  color: var(--ec-ink) !important;
  box-shadow: none !important;
}

body.admin #top_search input:focus,
body.admin #search_input:focus {
  background: var(--ec-card) !important;
  border-color: var(--ec-brass-deep) !important;
  box-shadow: 0 0 0 3px rgba(143, 114, 77, 0.11) !important;
}

body.admin .navbar-nav > li > a {
  color: var(--ec-muted);
  font-weight: 700;
}

body.admin .navbar-nav > li > a:hover,
body.admin .navbar-nav > li > a:focus,
body.admin .navbar-nav .open > a {
  color: var(--ec-ink);
}

body.admin .sidebar {
  background: var(--ec-panel) !important;
  border-right: 1px solid var(--ec-line);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.7);
}

body.admin .sidebar:before {
  content: "EloquentCRM";
  display: flex;
  align-items: center;
  min-height: 56px;
  margin: 0 8px 8px;
  padding: 0 12px;
  border-bottom: 1px solid var(--ec-line);
  color: var(--ec-ink);
  font-family: Fraunces, Georgia, serif;
  font-size: 20px;
  font-weight: 600;
}

body.admin .sidebar ul.nav li a {
  color: var(--ec-ink-soft);
  border-radius: 8px;
  font-weight: 700;
}

body.admin .sidebar ul.nav li a i.menu-icon {
  color: var(--ec-muted);
}

body.admin .sidebar > ul.nav > li:hover a:first-child,
body.admin .sidebar > ul.nav > li.active a:first-child {
  background: rgba(255, 255, 255, 0.96) !important;
  border-color: rgba(157, 132, 97, 0.14);
  box-shadow: 0 6px 16px rgba(27, 35, 64, 0.035);
}

body.admin .sidebar ul.nav li.active > a,
body.admin .sidebar ul.nav > li > a:hover,
body.admin .sidebar ul.nav > li > a:focus,
body.admin .sidebar ul.nav li.active > a .menu-icon,
body.admin .sidebar ul.nav > li > a:hover .menu-icon,
body.admin .sidebar ul.nav > li > a:focus .menu-icon {
  color: var(--ec-brass-deep);
}

body.admin .sidebar ul.nav li .nav-second-level li a {
  color: var(--ec-muted);
  font-weight: 600;
}

body.admin .sidebar ul.nav li .nav-second-level li.active a,
body.admin .sidebar ul.nav > li .nav-second-level > li:not(.active) > a:hover {
  color: var(--ec-ink);
}

body.admin .panel_s,
body.admin .panel,
body.admin .modal-content,
body.admin .lead-info-heading,
body.admin .kan-ban-col,
body.admin .dropdown-menu {
  border: 1px solid var(--ec-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.985) !important;
  box-shadow: 0 8px 22px rgba(27, 35, 64, 0.04);
}

body.admin .panel_s > .panel-body,
body.admin .panel-body {
  border-radius: 8px;
}

body.admin .panel_s > .panel-heading,
body.admin .panel-heading,
body.admin .modal-header {
  border-color: var(--ec-line);
  background: linear-gradient(180deg, rgba(253, 252, 249, 0.98), rgba(255, 255, 255, 0.98)) !important;
  color: var(--ec-ink);
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

body.admin h1,
body.admin h2,
body.admin h3,
body.admin .panel-title {
  color: var(--ec-ink);
  font-family: Fraunces, Georgia, serif;
  letter-spacing: 0;
}

body.admin h4,
body.admin h5,
body.admin .bold,
body.admin .tw-font-semibold,
body.admin label.control-label {
  color: var(--ec-ink-soft);
  font-family: Manrope, Inter, sans-serif;
  font-weight: 800;
}

body.admin .text-muted,
body.admin .tw-text-neutral-500,
body.admin .tw-text-neutral-600 {
  color: var(--ec-muted) !important;
}

body.admin .btn {
  border-radius: 8px;
  font-family: Manrope, Inter, sans-serif;
  font-weight: 800;
  letter-spacing: 0;
}

body.admin .btn-primary {
  border-color: var(--ec-brass-deep);
  background: #9d8461 !important;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(157, 132, 97, 0.14);
}

body.admin .btn-primary:hover,
body.admin .btn-primary:focus {
  border-color: #897254;
  background: #897254 !important;
  color: #ffffff;
}

body.admin .btn-default {
  border-color: var(--ec-line);
  background: var(--ec-card);
  color: var(--ec-ink-soft);
}

body.admin .btn-default:hover,
body.admin .btn-default:focus {
  border-color: rgba(143, 114, 77, 0.22);
  background: var(--ec-brass-tint);
  color: var(--ec-ink);
}

body.admin .btn-success {
  border-color: var(--ec-teal);
  background: var(--ec-teal);
}

body.admin .btn-danger {
  border-color: var(--ec-garnet-deep);
  background: var(--ec-garnet);
}

body.admin .form-control,
body.admin .bootstrap-select > .dropdown-toggle,
body.admin .select2-selection,
body.admin .input-group-addon {
  border-color: var(--ec-line) !important;
  border-radius: 8px !important;
  background-color: #fffefd !important;
  color: var(--ec-ink) !important;
  box-shadow: none !important;
}

body.admin .form-control:focus,
body.admin .bootstrap-select.open > .dropdown-toggle,
body.admin .select2-container--focus .select2-selection {
  border-color: var(--ec-brass-deep) !important;
  background-color: var(--ec-card) !important;
  box-shadow: 0 0 0 3px rgba(143, 114, 77, 0.11) !important;
}

body.admin table.table,
body.admin table.dataTable {
  background: var(--ec-card);
  border-color: var(--ec-line);
}

body.admin table.table > thead > tr > th,
body.admin table.dataTable thead > tr > th {
  border-bottom: 1px solid var(--ec-line) !important;
  background: #fbfaf6 !important;
  color: var(--ec-muted);
  font-family: "IBM Plex Mono", monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.admin table.table > tbody > tr > td,
body.admin table.dataTable tbody > tr > td {
  border-top-color: rgba(27, 35, 64, 0.08);
  color: var(--ec-ink-soft);
}

body.admin table.table > tbody > tr:hover > td,
body.admin table.dataTable tbody > tr:hover > td {
  background: rgba(251, 246, 237, 0.55) !important;
}

body.admin .label,
body.admin .badge {
  border-radius: 8px;
  font-family: "IBM Plex Mono", monospace;
  letter-spacing: 0;
}

body.admin .alert {
  border-radius: 8px;
  border-color: var(--ec-line);
  box-shadow: 0 8px 22px rgba(27, 35, 64, 0.045);
}

body.admin .alert-info {
  background: #f3faf8;
  color: #426b66;
}

body.admin .alert-warning {
  background: var(--ec-brass-tint);
  color: var(--ec-brass-deep);
}

body.admin .alert-danger {
  background: #f7eeee;
  color: var(--ec-garnet-deep);
}

body.admin .nav-tabs {
  border-color: var(--ec-line);
}

body.admin .nav-tabs > li > a {
  border-radius: 8px 8px 0 0;
  color: var(--ec-muted);
  font-weight: 700;
}

body.admin .nav-tabs > li.active > a,
body.admin .nav-tabs > li.active > a:hover,
body.admin .nav-tabs > li.active > a:focus {
  color: var(--ec-brass-deep);
  border-color: var(--ec-line);
  border-bottom-color: var(--ec-card);
  background: var(--ec-card);
}

body.admin .progress {
  border-radius: 8px;
  background: var(--ec-paper);
  box-shadow: inset 0 0 0 1px var(--ec-line);
}

body.admin .progress-bar {
  background: linear-gradient(135deg, var(--ec-brass), var(--ec-brass-deep));
}

body.admin .kan-ban-content {
  background: transparent;
}

body.admin .kan-ban-col-wrapper {
  border-radius: 8px;
}

@media (max-width: 768px) {
  body.admin .content {
    padding: 18px;
  }

  body.admin .sidebar:before {
    display: none;
  }
}
