/* =====================================================================
   SOIL CRM RED + WHITE PRESENTATION THEME
   Presentation-only override. No layout, route, form or JS behaviour.
   Loaded after page/mobile styles so existing UI keeps the same structure.
   ===================================================================== */
:root{
  --rw-red:#b4232f;
  --rw-red-dark:#8f1722;
  --rw-red-deep:#6f111a;
  --rw-red-mid:#c83a46;
  --rw-red-light:#d95d67;
  --rw-red-soft:#f9e8ea;
  --rw-red-soft-2:#fff3f4;
  --rw-red-faint:#fff8f8;
  --rw-white:#ffffff;
  --rw-page:#fbf8f8;
  --rw-border:#edd7da;
  --rw-border-strong:#ddb8bd;
  --rw-text:#3b2023;
  --rw-muted:#795d61;
  --rw-faint:#9b7d81;
  --rw-shadow:0 8px 24px rgba(111,17,26,.08);
}

/* Base */
html,body,body.app,.app,.app-body,.app-content,#content,#view,[ui-view]{
  background:var(--rw-page)!important;
  color:var(--rw-text)!important;
}
body::before{display:none!important;background:none!important}
body{color:var(--rw-text)!important}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.page-title{
  color:var(--rw-text)!important;
}
p,small,label,.text-muted,.help-block,.form-text,.control-label,.form-control-label{
  color:var(--rw-muted)!important;
}
a:not(.btn):not(.nav-link):not(.dropdown-item){color:var(--rw-red)!important}
a:not(.btn):hover{color:var(--rw-red-dark)!important}
hr,.b-a,.b-b,.b-t,.b-l,.b-r{border-color:var(--rw-border)!important}
*::-webkit-scrollbar-thumb{background:var(--rw-border-strong)!important;border-color:var(--rw-page)!important}
*::-webkit-scrollbar-thumb:hover{background:var(--rw-red-light)!important}

/* Sidebar: the strongest red area, balanced by white content surfaces */
#aside,.app-aside,.app-aside .navside,.navside,.navside.dark,.navside.dk{
  background:linear-gradient(180deg,var(--rw-red-dark) 0%,var(--rw-red) 58%,var(--rw-red-deep) 100%)!important;
  border-color:rgba(255,255,255,.16)!important;
}
#aside .navbar-brand,.navside .navbar{background:transparent!important}
.navside .nav-header,.navside .nav-header small,#aside .nav-header,#aside .nav-header small{
  color:rgba(255,255,255,.72)!important;
}
.navside .nav > li > a,.navside .nav li a,#aside .nav li a,#aside .nav-text,#aside .nav-caret i{
  color:rgba(255,255,255,.90)!important;
}
.navside .nav > li > a:hover,.navside .nav li a:hover,#aside .nav li a:hover{
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
}
.navside .nav li.active > a,.navside .nav > li.active > a,.nav-active-primary .nav li.active > a,#aside .nav li.active > a{
  background:#fff!important;
  color:var(--rw-red-dark)!important;
  box-shadow:inset 4px 0 0 var(--rw-red-deep)!important;
}
.navside .nav li.active > a i,.navside .nav li.active > a .nav-icon i,#aside .nav li.active > a i{
  color:var(--rw-red)!important;
}
.navside .nav ul,#aside .nav-sub{background:transparent!important}
.navside .nav ul li a,#aside .nav-sub a{color:rgba(255,255,255,.78)!important}
.navside .nav ul li a:hover,#aside .nav-sub a:hover{color:#fff!important;background:rgba(255,255,255,.12)!important}

/* Desktop header */
.app-header,.app-header.white,.navbar.app-header,.top-header,.navbar-md{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-border)!important;
  box-shadow:0 2px 12px rgba(111,17,26,.06)!important;
}
.app-header .navbar-item,.app-header #pageTitle,.app-header .nav-link,
.app-header .material-icons,.app-header .dropdown-toggle{
  color:var(--rw-red-dark)!important;
}
.app-header .nav-link:hover,.app-header .dropdown-toggle:hover{color:var(--rw-red)!important}
.app-header .avatar{border-color:var(--rw-border-strong)!important;background:#fff!important}
.app-header .navbar-form .form-control,.app-header .input-group .form-control{
  background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
}
.app-header .navbar-form .form-control::placeholder{color:var(--rw-faint)!important}
.app-header .input-group-btn .btn,.app-header .btn.white{background:#fff!important;color:var(--rw-red)!important;border-color:var(--rw-border-strong)!important}

/* Common surfaces */
.white,.bg-white,.light,.bg-light,.grey,.bg-grey,
.box,.box-table,.card,.panel,.contacts-topbar,.filter-panel,.filter-panel-header,
.filter-actions,.active-filter-chips,.columns-list,.columns-list li,.bulk-edit-info,
.table-responsive,.dropdown-menu,.dropdown-item,.list-group-item,.popover,
.select2-dropdown,.select2-results,.select2-results__options,
.modal-content,.modal-body,.modal-footer,
.summary-table,.call-card,.call-stat,.help-card,.help-quick,.tutorial-steps,
.bulk-assign-panel,.assign-search-panel,.analytics-shell,.chart-box,
.mob-contact-card,.mob-search,.mob-quick-actions,.mob-as-card,.mob-as-search,
.mob-as-bulk-panel,.mob-as-history,.mob-us-card,.mob-us-hierarchy,.mob-us-bulk-bar,
.crm-form-card,.crm-dashboard-mini-card,.mobile-lead-workflow-card,.mobile-note-item,
.mobile-call-row,.mobile-project-summary,.mobile-project-card,.mobile-info-card,
.mobile-detail-section,.mobile-section-card,.mobile-task-row,.mobile-activity-log{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-border)!important;
  box-shadow:var(--rw-shadow)!important;
}

/* Custom page/card naming used throughout CRM views */
#view [class$="-page"],#view [class*="-page "],
#view [class$="-screen"],#view [class*="-screen "]{
  background:var(--rw-page)!important;
  color:var(--rw-text)!important;
}
#view [class$="-card"],#view [class*="-card "],
#view [class$="-panel"],#view [class*="-panel "],
#view [class$="-dialog"],#view [class*="-dialog "]{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-border)!important;
}
#view [class$="-card"] h1,#view [class$="-card"] h2,#view [class$="-card"] h3,#view [class$="-card"] h4,#view [class$="-card"] h5,
#view [class*="-card "] h1,#view [class*="-card "] h2,#view [class*="-card "] h3,#view [class*="-card "] h4,#view [class*="-card "] h5{
  color:var(--rw-text)!important;
}

/* Section headers */
.box-header,.card-header,.panel-heading,.modal-header,.filter-panel-header,
.call-log-header,.mob-header,.mob-as-header,.mob-us-header,.mob-ls-header,.mob-cal-header,
.mobile-header,.mobile-topbar,.mobile-contact-header,.booking-topbar,
#view [class$="-topbar"],#view [class*="-topbar "]{
  background:var(--rw-red)!important;
  color:#fff!important;
  border-color:var(--rw-red-dark)!important;
}
.box-header h1,.box-header h2,.box-header h3,.box-header h4,.box-header h5,
.card-header h1,.card-header h2,.card-header h3,.card-header h4,.card-header h5,
.panel-heading h1,.panel-heading h2,.panel-heading h3,.panel-heading h4,.panel-heading h5,
.modal-header h1,.modal-header h2,.modal-header h3,.modal-header h4,.modal-header h5,
.filter-panel-header h4,.call-log-header h4,
.mob-header *,.mob-as-header *,.mob-us-header *,.mob-ls-header *,.mob-cal-header *,
.mobile-header *,.mobile-topbar *,.mobile-contact-header *,
#view [class$="-topbar"] *,#view [class*="-topbar "] *{
  color:#fff!important;
}
.card-footer,.box-footer,.panel-footer,.modal-footer,.filter-actions{
  background:var(--rw-red-faint)!important;
  border-color:var(--rw-border)!important;
}

/* Tables */
.table,table,.summary-table,#contactsTable,.history-table{
  background:#fff!important;color:var(--rw-text)!important;
}
.table thead th,table thead th,.summary-table thead th,#contactsTable thead th,.history-table th{
  background:var(--rw-red)!important;
  color:#fff!important;
  border-color:var(--rw-red-dark)!important;
}
.table tbody td,table tbody td,.summary-table td,#contactsTable tbody td,.history-table td{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-border)!important;
}
.table tbody tr:nth-child(even),table tbody tr:nth-child(even){background:var(--rw-red-faint)!important}
.table tbody tr:hover,table tbody tr:hover,#contactsTable tbody tr:hover{
  background:var(--rw-red-soft-2)!important;
}

/* Forms */
.form-control,.custom-select,select,textarea,.md-input,
input[type=text],input[type=email],input[type=password],input[type=number],
input[type=search],input[type=tel],input[type=date],input[type=url],
.mob-as-search input,.mob-as-form .form-control,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-border-strong)!important;
}
.form-control::placeholder,input::placeholder,textarea::placeholder{color:var(--rw-faint)!important}
.form-control:focus,select:focus,textarea:focus,input:focus,.md-input:focus{
  background:#fff!important;
  color:var(--rw-text)!important;
  border-color:var(--rw-red)!important;
  box-shadow:0 0 0 3px rgba(180,35,47,.10)!important;
}
label,.form-control-label,.control-label,.md-form-group label{color:var(--rw-muted)!important}
.input-group-addon,.input-group-text{background:var(--rw-red-soft-2)!important;border-color:var(--rw-border)!important;color:var(--rw-red-dark)!important}
input[type=checkbox],input[type=radio]{accent-color:var(--rw-red)!important}
option,optgroup{background:#fff!important;color:var(--rw-text)!important}
.select2-container--default .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--rw-text)!important}
.select2-container--default .select2-results__option{background:#fff!important;color:var(--rw-text)!important}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-results__option--highlighted{background:var(--rw-red-soft)!important;color:var(--rw-red-dark)!important}
.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{
  background:var(--rw-red-faint)!important;color:var(--rw-muted)!important;
}

/* Buttons: same button sizing/layout, only color treatment changes */
.btn,.btn.btn-default,.btn.btn-primary,.btn.btn-info,.btn.btn-success,.btn.btn-warning,
.btn.primary,.btn.info,.btn.success,.btn.warning,.btn.danger,
button.btn,input[type=submit].btn,.header-help-link,.help-watch,.crm-db-btn,.crm-db-btn.primary,
.mob-as-search button,.mob-as-form .btn-assign,.mob-us-action-btn,.project-btn.primary,
.mobile-primary-action,.booking-bottom-submit,.crm-primary-btn{
  background:var(--rw-red)!important;
  border-color:var(--rw-red)!important;
  color:#fff!important;
}
.btn:hover,.btn:focus,.header-help-link:hover,.crm-db-btn:hover,.project-btn.primary:hover{
  background:var(--rw-red-dark)!important;
  border-color:var(--rw-red-dark)!important;
  color:#fff!important;
  box-shadow:0 5px 16px rgba(111,17,26,.14)!important;
}
.btn.white,.btn-default,.btn.light,.btn-light,.project-btn.secondary,.dist-cancel,
.mobile-secondary-action,.crm-project-close{
  background:#fff!important;
  color:var(--rw-red)!important;
  border-color:var(--rw-border-strong)!important;
}
.btn.white:hover,.btn-default:hover,.btn.light:hover,.btn-light:hover,
.project-btn.secondary:hover,.mobile-secondary-action:hover{
  background:var(--rw-red-soft-2)!important;
  color:var(--rw-red-dark)!important;
}
.btn-danger,.btn.danger,.mob-us-delete{background:var(--rw-red-deep)!important;border-color:var(--rw-red-deep)!important;color:#fff!important}
.btn-success,.btn.success,.mob-us-edit,.btn-info,.btn.info,.btn-warning,.btn.warning{
  background:var(--rw-red-mid)!important;border-color:var(--rw-red-mid)!important;color:#fff!important;
}
.btn i,.btn span,.btn small,.header-help-link i,.header-help-link small,.crm-db-btn i,.crm-db-btn span{color:inherit!important}

/* Tabs, pagination, chips, statuses */
.nav-tabs .nav-link,.listing-tab-btn,.pagination a,.pagination span,.page-link,
.crm-tab-row a,.mob-us-pagination a,.mob-us-pagination span,.mob-pagination a,.mob-pagination span,
.mob-as-pagination a,.mob-as-pagination span{
  background:#fff!important;
  color:var(--rw-red-dark)!important;
  border-color:var(--rw-border)!important;
}
.nav-tabs .nav-link.active,.listing-tab-btn.active,.pagination .active a,
.pagination .active span,.page-item.active .page-link,.crm-tab-row a.active,
.mob-us-pagination .active-page,.mob-pagination .active-page{
  background:var(--rw-red)!important;
  color:#fff!important;
  border-color:var(--rw-red)!important;
}
.badge,.label,.status-badge,.source-badge,.mob-as-badge,.crm-status-chip,
.history-status,.mobile-approval-state,.mobile-project-status,
#view [class$="-badge"],#view [class*="-badge "],
#view [class$="-chip"],#view [class*="-chip "]{
  background:var(--rw-red-soft)!important;
  color:var(--rw-red-dark)!important;
  border-color:var(--rw-border-strong)!important;
}
.status-badge.answer,.status-badge.answered,.status-badge.connected,.status-badge.noanswer,
.status-badge.missed,.status-badge.busy,.mob-us-status-active,.mob-us-status-inactive,
.history-status.approved,.history-status.rejected{
  background:var(--rw-red-soft)!important;color:var(--rw-red-dark)!important;border-color:var(--rw-border-strong)!important;
}

/* Alerts and information blocks stay readable without introducing green/blue/yellow */
.alert,.alert-danger,.alert-success,.alert-warning,.alert-info,
.schema-note,.dist-help,.approval-help,.crm-project-hint,.crm-approval-evidence-note,
.crm-transfer-context-banner,.rp-help,.rp-help-note,.mobile-info-message{
  background:var(--rw-red-soft-2)!important;
  color:var(--rw-red-dark)!important;
  border-color:var(--rw-border-strong)!important;
}
.alert *,.schema-note *,.dist-help *,.approval-help *,.crm-project-hint *,
.crm-approval-evidence-note *,.crm-transfer-context-banner *,.rp-help *,.rp-help-note *{
  color:var(--rw-red-dark)!important;
}

/* Modals / overlays */
.modal-content,#columnsModal .modal-content,#bulkEditModal .modal-content,
#addContactModal .modal-content,#importModal .modal-content,
.crm-project-outcome-dialog,.crm-dist-dialog{
  background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
}
.modal-body,.crm-project-outcome-body,.crm-project-outcome-footer,.crm-project-status-block,
.crm-dist-body,.crm-dist-head{background:#fff!important;color:var(--rw-text)!important}
.modal-header,.crm-dist-head{border-color:var(--rw-border)!important}
.modal-header .close,.crm-dist-close{color:var(--rw-red-dark)!important}
.crm-dist-overlay,.crm-form-overlay,.crm-project-outcome-overlay{background:rgba(67,15,20,.42)!important}

/* Dropdowns */
.dropdown-menu,.dropdown-item,.list-group-item,.popover{
  background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
}
.dropdown-item,.dropdown-menu a,.list-group-item a{color:var(--rw-text)!important}
.dropdown-item:hover,.dropdown-item:focus,.dropdown-menu a:hover{
  background:var(--rw-red-soft-2)!important;color:var(--rw-red-dark)!important;
}

/* Contact details / project workflow presentation */
.contact-details-page,.mobile-contact-details{background:var(--rw-page)!important;color:var(--rw-text)!important}
.contact-details-page .card,.contact-details-page .card-body,
.mobile-contact-identity,.mobile-project-journeys,.mobile-project-summary,.mobile-info-card,
.mobile-detail-section,.mobile-lead-workflow-card,.mobile-task-box strong,
.mobile-activity-log,.crm-project-outcome-header,.crm-project-outcome-body,
.crm-project-outcome-footer,.crm-project-status-block,.crm-project-outcome-overlay .crm-choice-chip span,
.crm-project-outcome-overlay .form-control{
  background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
}
.contact-details-page .details-col p,.approval-notes,.approval-evidence,.evidence-file,
.approval-card,.history-table,.history-table tr,.project-card{
  background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
}
.contact-details-page .details-col p b,.mobile-project-summary h3,.mobile-section-heading h3,
.mobile-edit-contact,.mobile-section-heading a,.mobile-section-heading span,
.crm-transfer-context-banner strong,.project-back,.approval-main a{
  color:var(--rw-red)!important;
}
.mobile-project-card.active,.crm-project-outcome-overlay .crm-choice-chip input:checked+span{
  background:var(--rw-red-soft-2)!important;color:var(--rw-red-dark)!important;border-color:var(--rw-red)!important;
}
.mobile-add-circle{background:#fff!important;color:var(--rw-red)!important;border-color:var(--rw-red)!important}
.mobile-contact-bottom-bar{background:#fff!important;border-color:var(--rw-border)!important}

/* Mobile CRM app */
@media(max-width:991px){
  body.crm-user-app-mode,body.crm-user-app-mode #content.app-content,
  body.crm-user-app-mode #view.app-body,body.crm-user-app-mode #app.app,
  body.crm-user-app-mode .mob-db-body,.mobile-view,.rp-page{
    background:var(--rw-page)!important;color:var(--rw-text)!important;
  }
  body.crm-user-app-mode .mob-db-topbar,.mob-header,.mob-as-header,.mob-us-header,
  .mob-ls-header,.mob-cal-header,.mobile-contact-header,.booking-topbar{
    background:var(--rw-red)!important;color:#fff!important;
  }
  body.crm-user-app-mode .mob-db-profile,body.crm-user-app-mode .mob-db-stat-card,
  body.crm-user-app-mode .mob-db-menu-item,body.crm-user-app-mode .mob-db-search,
  .mob-contact-card,.mob-as-card,.mob-us-card,.crm-lead-card,.readpro-person-card,
  .readpro-task-card,.readpro-task-history,.booking-context-card,.booking-form-card,
  .rp-search-panel,.rp-outcome-box{
    background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important;
  }
  body.crm-user-app-mode .mob-db-search input{background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-border)!important}
  body.crm-user-app-mode .mob-db-stat-num,body.crm-user-app-mode .mob-db-menu-icon,
  body.crm-user-app-mode .mob-db-menu-arrow,body.crm-user-app-mode .mob-db-menu-arrow-svg,
  body.crm-user-app-mode .crm-lead-card .primary,.mob-contact-name,.mob-as-card-name,.mob-us-name{
    color:var(--rw-red-dark)!important;
  }
  body.crm-user-app-mode .mob-db-stat-label,body.crm-user-app-mode .mob-db-profile-email,
  body.crm-user-app-mode .mob-db-profile-meta,body.crm-user-app-mode .crm-lead-card .secondary,
  body.crm-user-app-mode .crm-lead-card .tertiary,.mob-contact-meta,.mob-as-card-phone,.mob-us-email{
    color:var(--rw-muted)!important;
  }
  body.crm-user-app-mode .crm-mobile-bottom-nav,.crm-mobile-bottom-nav,.mobile-bottom-nav,.bottom-nav,.mobile-nav{
    background:#fff!important;border-color:var(--rw-border)!important;box-shadow:0 -4px 18px rgba(111,17,26,.08)!important;
  }
  body.crm-user-app-mode .crm-mobile-bottom-nav a,.crm-mobile-bottom-nav a{
    color:var(--rw-muted)!important;
  }
  body.crm-user-app-mode .crm-mobile-bottom-nav a.active,.crm-mobile-bottom-nav a.active,
  body.crm-user-app-mode .crm-mobile-bottom-nav a.active i,.crm-mobile-bottom-nav a.active i{
    color:var(--rw-red)!important;
  }
  .rp-list-date,.mob-date-group{background:var(--rw-red-soft)!important;color:var(--rw-red-dark)!important}
}

/* Auth screens */
body.auth_app_bg,.auth_app{
  background:linear-gradient(145deg,#fff 0%,var(--rw-red-soft-2) 56%,var(--rw-red-soft) 100%)!important;
}
.auth_app .box-color,.auth_app .box,.auth_app .card{
  background:#fff!important;color:var(--rw-text)!important;border:1px solid var(--rw-border)!important;box-shadow:0 20px 55px rgba(111,17,26,.12)!important;
}
.auth_app .md-input{background:#fff!important;color:var(--rw-text)!important;border-bottom-color:var(--rw-border-strong)!important}
.auth_app .md-check input[type=checkbox]:checked+i:before{background:var(--rw-red)!important;border-color:var(--rw-red)!important}

/* Live notification */
.crm-live-notification{background:#fff!important;color:var(--rw-text)!important;border-color:var(--rw-red)!important;box-shadow:0 16px 42px rgba(111,17,26,.18)!important}
.crm-live-notification-icon{background:var(--rw-red)!important;color:#fff!important}
.crm-live-notification-copy strong{color:var(--rw-red-dark)!important}
.crm-live-notification-copy span,.crm-live-notification-close{color:var(--rw-text)!important}

/* Charts: red-family shades only, keeping multi-series distinction */
.apexcharts-text,.apexcharts-legend-text{fill:var(--rw-muted)!important;color:var(--rw-muted)!important}
.apexcharts-gridline{stroke:var(--rw-border)!important}
.apexcharts-series:nth-of-type(4n+1) path,.apexcharts-series:nth-of-type(4n+1) rect{stroke:var(--rw-red)!important;fill:var(--rw-red)!important}
.apexcharts-series:nth-of-type(4n+2) path,.apexcharts-series:nth-of-type(4n+2) rect{stroke:var(--rw-red-dark)!important;fill:var(--rw-red-dark)!important}
.apexcharts-series:nth-of-type(4n+3) path,.apexcharts-series:nth-of-type(4n+3) rect{stroke:var(--rw-red-light)!important;fill:var(--rw-red-light)!important}
.apexcharts-series:nth-of-type(4n+4) path,.apexcharts-series:nth-of-type(4n+4) rect{stroke:var(--rw-red-deep)!important;fill:var(--rw-red-deep)!important}

/* Keep text readable where old inline theme colors used strong blue/teal/purple. */
.text-primary,.text-info,.text-success,.text-warning,.text-danger{color:var(--rw-red)!important}
.bg-primary,.bg-info,.bg-success,.bg-warning,.bg-danger,.primary,.info,.success,.warning,.danger{
  border-color:var(--rw-red)!important;
}
