/* ============================================================
   LexCase Lawyer CRM Theme - Perfex custom.css
   Purpose: Professional law-office look for admin + client areas.
   Safe layer: Overrides only visual styles; does not alter database.
   Palette: deep navy, warm ivory, muted gold.
   ============================================================ */
:root {
  --lex-bg: #f5f2ea;
  --lex-surface: #ffffff;
  --lex-sidebar: #101827;
  --lex-sidebar-2: #172033;
  --lex-text: #111827;
  --lex-muted: #64748b;
  --lex-border: #e5decd;
  --lex-gold: #b8924b;
  --lex-gold-dark: #8f6e32;
  --lex-blue: #1f365c;
  --lex-danger: #b42318;
  --lex-success: #1f7a4d;
  --lex-shadow: 0 14px 35px rgba(16, 24, 39, .08);
}

html, body {
  background: var(--lex-bg) !important;
}

body, .content, #wrapper {
  color: var(--lex-text);
}

#wrapper,
.content,
.panel_s,
.panel-body,
.table-responsive,
._buttons,
.tw-bg-neutral-100 {
  background-color: var(--lex-bg) !important;
}

/* Header */
#header {
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(184,146,75,.22) !important;
  box-shadow: 0 8px 24px rgba(15,23,42,.06) !important;
  backdrop-filter: blur(12px);
}

#header .logo-text,
#header #logo a,
#header .navbar-nav > li > a,
#header .navbar-nav > li > a i,
#header .navbar-nav > li > a span,
#header .hide-menu {
  color: var(--lex-blue) !important;
}

#header .logo-text {
  font-weight: 800 !important;
  letter-spacing: .2px;
}

#header .logo-text::before {
  content: "⚖";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-right: 10px;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg, var(--lex-gold), var(--lex-gold-dark));
  box-shadow: 0 8px 18px rgba(184,146,75,.26);
}

#top_search input,
#search_input {
  background: #f8f6f0 !important;
  border: 1px solid rgba(184,146,75,.22) !important;
  color: var(--lex-text) !important;
  border-radius: 12px !important;
}

#top_search input:focus,
#search_input:focus,
.form-control:focus {
  border-color: rgba(184,146,75,.75) !important;
  box-shadow: 0 0 0 3px rgba(184,146,75,.16) !important;
}

/* Sidebar */
.sidebar,
#setup-menu-wrapper {
  background: linear-gradient(180deg, var(--lex-sidebar) 0%, var(--lex-sidebar-2) 100%) !important;
  border-right: 1px solid rgba(184,146,75,.24) !important;
  box-shadow: 12px 0 32px rgba(15,23,42,.12);
}

#setup-menu-wrapper {
  min-height: 100vh !important;
}

.sidebar .sidebar-user-profile > a,
.sidebar .dropdown.sidebar-user-profile > a {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.sidebar .sidebar-user-profile span,
.sidebar .dropdown.sidebar-user-profile span,
.sidebar .sidebar-user-profile a,
.sidebar .dropdown.sidebar-user-profile a {
  color: #fff !important;
}

.sidebar ul.nav li a,
#setup-menu li a,
.sidebar ul.nav li a i.menu-icon,
#setup-menu li a i.menu-icon,
.sidebar .arrow,
#setup-menu .arrow {
  color: #d9e2f2 !important;
}

#setup-menu > li:first-child {
  color: #fff !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}

.sidebar > ul.nav > li,
#setup-menu > li {
  border-left: 3px solid transparent !important;
}

.sidebar > ul.nav > li:hover > a:first-child,
.sidebar > ul.nav > li.active > a:first-child,
#setup-menu > li:hover > a:first-child,
#setup-menu > li.active > a:first-child {
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(184,146,75,.30) !important;
  border-radius: 12px !important;
  color: #fff !important;
  box-shadow: inset 3px 0 0 var(--lex-gold), 0 8px 18px rgba(0,0,0,.12) !important;
}

.sidebar ul.nav li.active > a,
.sidebar ul.nav > li > a:hover,
.sidebar ul.nav > li > a:focus,
.sidebar ul.nav li.active > a .menu-icon,
.sidebar ul.nav > li > a:hover .menu-icon,
.sidebar ul.nav > li > a:focus .menu-icon,
#setup-menu li.active > a,
#setup-menu li > a:hover,
#setup-menu li > a:focus {
  color: #fff !important;
}

.sidebar ul.nav li .nav-second-level li a,
#setup-menu li .nav-second-level li a {
  color: #c9d4e6 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.sidebar ul.nav li .nav-second-level li.active a,
.sidebar ul.nav li .nav-second-level li a:hover,
#setup-menu li .nav-second-level li.active a,
#setup-menu li .nav-second-level li a:hover {
  color: #fff !important;
}

/* Cards, panels, tables */
.panel_s .panel-body,
.panel_s,
.panel-body,
.panel,
.tw-bg-white,
.table-responsive,
.login_admin .authentication-form-wrapper > div:last-child,
body.customers .panel_s {
  background: var(--lex-surface) !important;
  border-color: rgba(184,146,75,.20) !important;
  border-radius: 16px !important;
  box-shadow: var(--lex-shadow) !important;
}

.panel_s .panel-body,
.panel-body {
  padding: 22px !important;
}

.table,
.table > thead > tr > th,
.table > tbody > tr > td,
.dataTable > thead > tr > th,
.dataTable > tbody > tr > td {
  border-color: #ece6d9 !important;
}

.table > thead > tr > th,
.dataTable > thead > tr > th {
  background: #f7f3ea !important;
  color: #1f2937 !important;
  font-weight: 800 !important;
}

.table-hover > tbody > tr:hover,
.dataTable > tbody > tr:hover {
  background-color: #fbf8f1 !important;
}

/* Buttons */
.btn-primary,
.btn-info,
.tw-bg-primary-600,
button[type="submit"].btn-primary {
  background: linear-gradient(135deg, var(--lex-blue), #15243e) !important;
  border-color: var(--lex-blue) !important;
  color: #fff !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 18px rgba(31,54,92,.18) !important;
}

.btn-primary:hover,
.btn-info:hover,
.tw-bg-primary-700,
.tw-bg-primary-600:hover,
button[type="submit"].btn-primary:hover {
  background: linear-gradient(135deg, #15243e, #0f172a) !important;
  border-color: #0f172a !important;
}

.btn-default,
.btn-light,
.table-btn,
.dropdown-toggle.btn-default {
  background: #fff !important;
  border-color: rgba(184,146,75,.30) !important;
  color: var(--lex-blue) !important;
  border-radius: 10px !important;
}

.btn-danger,
.text-danger {
  color: var(--lex-danger) !important;
}

.badge.bg-info,
.label-info,
.label-primary {
  background: var(--lex-gold) !important;
  color: #fff !important;
}

/* Forms */
.form-control,
select.form-control,
textarea.form-control,
.bootstrap-select .btn-default {
  background-color: #fff !important;
  border: 1px solid #ded6c3 !important;
  color: var(--lex-text) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

.control-label,
label,
.tw-font-semibold,
.bold,
strong {
  color: #1f2937;
}

/* Tabs */
.nav-tabs,
.tw-border-neutral-200 {
  border-color: #e8dfcd !important;
}

.nav-tabs > li > a,
.nav-tabs > li > a:hover {
  color: var(--lex-blue) !important;
  border-radius: 10px 10px 0 0 !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #0f172a !important;
  border-color: #e8dfcd #e8dfcd #fff !important;
  border-top: 3px solid var(--lex-gold) !important;
  font-weight: 800 !important;
}

/* Client/admin login screens */
body.login_admin,
body.customers_login,
body.authentication,
body[class*="login"] {
  background:
    radial-gradient(circle at 18% 14%, rgba(184,146,75,.18), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(31,54,92,.14), transparent 28%),
    linear-gradient(135deg, #f8f5ee 0%, #eef1f6 100%) !important;
  min-height: 100vh;
}

.login_admin .authentication-form-wrapper,
.authentication-form-wrapper {
  max-width: 440px !important;
}

.login_admin .company-logo,
.company-logo {
  margin-bottom: 26px !important;
}

.login_admin h1,
.authentication-form-wrapper h1 {
  color: #111827 !important;
  letter-spacing: -.35px;
}

.login_admin .authentication-form-wrapper > div:last-child,
.authentication-form-wrapper > div[class*="tw-bg-white"] {
  border: 1px solid rgba(184,146,75,.25) !important;
  border-radius: 22px !important;
  box-shadow: 0 22px 50px rgba(15,23,42,.13) !important;
}

.login_admin .authentication-form-wrapper::before,
.authentication-form-wrapper::before {
  content: "Hukuk Bürosu CRM";
  display: block;
  text-align: center;
  margin-bottom: 10px;
  color: var(--lex-gold-dark);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 12px;
}

/* Dropzone and file areas */
.dropzone,
#client-attachments-upload,
.project_file_discusssions_area,
.project_file_area {
  border-color: rgba(184,146,75,.35) !important;
  background: #fbf8f1 !important;
  border-radius: 16px !important;
}

.dropzone .dz-message,
.dropzone .dz-message span {
  color: var(--lex-blue) !important;
  font-weight: 700 !important;
}

/* Small polish */
a { color: var(--lex-blue); }
a:hover, a:focus { color: var(--lex-gold-dark); }
.text-muted { color: var(--lex-muted) !important; }
hr { border-color: #e8dfcd !important; }

/* Responsive safety */
@media (max-width: 768px) {
  .sidebar, #setup-menu-wrapper {
    box-shadow: 12px 0 32px rgba(15,23,42,.20);
  }
  .content { padding: 16px !important; }
  .panel_s .panel-body, .panel-body { padding: 16px !important; }
}
