/* *****************************************************

    ** Custom Stylesheet **

    Enclave Software reskin of the "Control" theme.
    Matches the palette/typography/logo of enclavesoftware.com.br
    (soil/paper/wheat, Bricolage Grotesque + IBM Plex Sans) without
    touching the theme's own .tpl structure - every rule below targets
    the theme/Bootstrap 3 classes it already renders.

***************************************************** */

@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,800&family=IBM+Plex+Sans:wght@400;500;600&display=swap');

:root{
  --soil:#0F1F1A;
  --soil-2:#16302A;
  --paper:#F1EFE6;
  --mute:#9DB0A6;
  --wheat:#E3B34A;
  --line:rgba(241,239,230,.16);
}

/* --- Base --- */
html{background:var(--soil) !important; min-height:100%;}
body, body.off-canvas{
  background:var(--soil) !important;
  color:var(--paper) !important;
  font-family:"IBM Plex Sans", system-ui, sans-serif !important;
  min-height:100vh;
}
h1,h2,h3,h4,h5,h6,
.panel-title, .modal-title{
  font-family:"Bricolage Grotesque", sans-serif !important;
  letter-spacing:-0.02em !important;
  font-weight:700 !important;
}
a{color:var(--wheat);}
a:hover, a:focus{color:var(--paper);}
#container, .main-content-wrapper, #main-content{background:var(--soil) !important;}

/* --- Header / brand --- */
#header, header#header{
  background:rgba(15,31,26,.92) !important;
  border-bottom:1px solid var(--line) !important;
  box-shadow:none !important;
}
#header .brand, div.brand{
  background:var(--soil-2) !important;
  border-bottom:1px solid var(--line) !important;
}
.brand .logo, .logo.logotext{
  color:var(--paper) !important;
  font-family:"Bricolage Grotesque", sans-serif !important;
  font-weight:800 !important;
  font-size:15px !important;
  display:inline-flex !important;
  align-items:center !important;
  white-space:normal !important;
  line-height:1.2 !important;
}
.brand .logo::before, .logo.logotext::before{
  content:"";
  display:inline-block;
  width:28px; height:28px;
  margin-right:10px;
  flex-shrink:0;
  background-repeat:no-repeat;
  background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M38 6H6v52h52V26' fill='none' stroke='%23F1EFE6' stroke-width='7'/%3E%3Crect x='24' y='24' width='18' height='18' fill='%23E3B34A'/%3E%3C/svg%3E");
}
.user-nav > ul > li > a{color:var(--mute) !important;}
.user-nav > ul > li > a:hover{color:var(--paper) !important;}

/* --- Buttons: sharp corners, 2px border, wheat primary (matches enclavesoftware.com.br's .btn) --- */
.btn{
  border-radius:0 !important;
  border-width:2px !important;
  font-weight:500 !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
.btn-primary, .btn-success, .btn-info{
  background:var(--wheat) !important;
  border-color:var(--wheat) !important;
  color:var(--soil) !important;
}
.btn-primary:hover, .btn-success:hover, .btn-info:hover,
.btn-primary:focus, .btn-success:focus, .btn-info:focus{
  background:var(--paper) !important;
  border-color:var(--paper) !important;
  color:var(--soil) !important;
}
.btn-default{
  background:transparent !important;
  border-color:var(--paper) !important;
  color:var(--paper) !important;
}
.btn-default:hover{background:var(--paper) !important; color:var(--soil) !important;}
.btn-danger{background:transparent !important; border-color:#e07a6f !important; color:#e07a6f !important;}
.btn-danger:hover{background:#e07a6f !important; color:var(--soil) !important;}

/* --- Panels / cards --- */
.panel, .panel-default, .panel-solid-default{
  background:var(--soil-2) !important;
  border:1px solid var(--line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.panel-heading{
  background:transparent !important;
  border-bottom:1px solid var(--line) !important;
  color:var(--paper) !important;
}
.panel-title, .panel-title a{color:var(--paper) !important;}
.panel-body{color:var(--mute) !important;}
.panel-footer{background:transparent !important; border-top:1px solid var(--line) !important;}

/* --- Sidebar nav --- */
.sidebar-left{background:var(--soil-2) !important;}
.sidebar-header{color:var(--text-faint) !important;}
.sidebar-left a{color:var(--mute) !important;}
.sidebar-left a:focus, .sidebar-left a:hover{color:var(--paper) !important; background-color:transparent !important;}
.sidebar-left .nav > li > a:hover,
.sidebar-left .nav-pills > li.active > a,
.sidebar-left .nav-pills > li.active > a:hover,
.sidebar-left .nav-pills > li.active > a:focus{
  color:var(--paper) !important;
  border-left:solid 4px var(--wheat) !important;
  background-color:var(--soil-2) !important;
}
.sidebar-left .nav .open > a,
.sidebar-left .nav .open > a:hover,
.sidebar-left .nav .open > a:focus,
.sidebar-left .nav > li > a:focus{
  border-left:solid 4px var(--soil-2) !important;
  background-color:var(--soil-2) !important;
}
.sidebar-left .active > a, .sidebar-left .active > a:focus, .sidebar-left .active > a:hover{color:var(--paper) !important;}
.sidebar-left .nav-sub{background:var(--soil) !important;}
.sidebar-left .nav-sub li > a{color:var(--mute) !important; font-size:13px !important;}
.sidebar-left .nav-sub li > a:hover{color:var(--wheat) !important;}
.sidebar-left .badge{background:var(--wheat) !important; color:var(--soil) !important;}

/* --- Forms --- */
.form-control, select.form-control{
  background:var(--soil) !important;
  border:1px solid var(--line) !important;
  border-radius:0 !important;
  color:var(--paper) !important;
  box-shadow:none !important;
}
.form-control:focus{
  border-color:var(--wheat) !important;
  box-shadow:0 0 0 1px var(--wheat) !important;
}
label{color:var(--mute) !important; font-weight:500 !important;}
::placeholder{color:var(--mute) !important; opacity:.7 !important;}

/* --- Tables --- */
.table{color:var(--paper) !important;}
.table > thead > tr > th{
  border-bottom:1px solid var(--line) !important;
  color:var(--mute) !important;
  font-family:"Bricolage Grotesque", sans-serif !important;
  font-weight:700 !important;
}
.table > tbody > tr > td{border-top:1px solid var(--line) !important;}
.table-striped > tbody > tr:nth-of-type(odd){background:var(--soil-2) !important;}
.table-hover > tbody > tr:hover{background:#1c3a32 !important;}

/* --- Labels / badges --- */
.label, .badge{border-radius:0 !important;}
.label-success, .label-primary{background:var(--wheat) !important; color:var(--soil) !important;}
.label-default{background:var(--line) !important; color:var(--paper) !important;}
.label-danger{background:transparent !important; color:#e07a6f !important; border:1px solid #e07a6f;}

/* --- Alerts --- */
.alert{border-radius:0 !important; border-width:1px !important; background:var(--soil-2) !important;}
.alert-success{border-color:var(--wheat) !important; color:var(--wheat) !important;}
.alert-danger{border-color:#e07a6f !important; color:#e07a6f !important;}
.alert-info, .alert-warning{border-color:var(--mute) !important; color:var(--mute) !important;}

/* --- Modals --- */
.modal-content{background:var(--soil-2) !important; border:1px solid var(--line) !important; border-radius:0 !important;}
.modal-header{border-bottom:1px solid var(--line) !important;}
.modal-footer{border-top:1px solid var(--line) !important;}

/* --- Footer --- */
#footer, #footer.panel{background:var(--soil) !important; border-top:1px solid var(--line) !important;}
.panel-solid-default > .panel-heading,
.panel-solid-default > .panel-body,
.panel-solid-default > .panel-footer{
  background:var(--soil) !important;
  color:var(--mute) !important;
  border:none !important;
}
.footer-text{color:var(--mute) !important;}
#footer a, #footer a:hover{color:var(--paper) !important;}
.lang-ft a{color:var(--mute) !important;}
.lang-ft a:hover{color:var(--wheat) !important;}

/* --- Misc --- */
.dropdown-menu{background:var(--soil-2) !important; border:1px solid var(--line) !important; border-radius:0 !important;}
.dropdown-menu > li > a{color:var(--mute) !important;}
.dropdown-menu > li > a:hover{background:var(--wheat) !important; color:var(--soil) !important;}
.pagination > li > a, .pagination > li > span{
  background:var(--soil-2) !important; border-color:var(--line) !important; color:var(--mute) !important; border-radius:0 !important;
}
.pagination > .active > a{background:var(--wheat) !important; border-color:var(--wheat) !important; color:var(--soil) !important;}
::selection{background:var(--wheat); color:var(--soil);}

/* --- Store / cart: plain Bootstrap stock blue (#337ab7), untouched by
   the rules above since this screen uses .list-group-item / .panel-primary
   directly, not the sidebar-left nav or generic .panel markup. --- */
.list-group-item{
  background:transparent !important;
  border-color:var(--line) !important;
  color:var(--mute) !important;
}
a.list-group-item, button.list-group-item{color:var(--mute) !important;}
a.list-group-item:hover, button.list-group-item:hover{
  background:var(--soil) !important;
  color:var(--paper) !important;
}
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus{
  background:var(--wheat) !important;
  border-color:var(--wheat) !important;
  color:var(--soil) !important;
}
.panel-primary{border-color:var(--wheat) !important;}
.panel-primary > .panel-heading{
  background:var(--wheat) !important;
  border-color:var(--wheat) !important;
  color:var(--soil) !important;
}
.panel-primary > .panel-heading .badge{background:var(--soil) !important; color:var(--wheat) !important;}
.progress{background:var(--soil) !important; border-radius:0 !important; box-shadow:none !important;}
.progress-bar{background-color:var(--wheat) !important; color:var(--soil) !important; box-shadow:none !important;}
.blue, .product-price{color:var(--wheat) !important;}

/* ion.rangeSlider (templates/orderforms/control_alternative_slider) -
   real class names confirmed from its own skinHTML5.css, not guessed. */
.irs-line, .irs-line-left, .irs-line-mid, .irs-line-right, .irs-line-left.last{
  background:var(--soil) !important;
  border-color:var(--line) !important;
}
.irs-bar, .irs-bar-edge{
  background:var(--wheat) !important;
  border-color:var(--wheat) !important;
}
.irs-shadow{background:#000 !important; opacity:.25 !important;}
.irs-slider{
  background:var(--paper) !important;
  border:2px solid var(--wheat) !important;
  box-shadow:none !important;
}
.irs-slider.state_hover, .irs-slider:hover{background:var(--wheat) !important;}
.irs-min, .irs-max{background:rgba(241,239,230,.1) !important; color:var(--mute) !important;}
.irs-from, .irs-to, .irs-single{
  background:var(--wheat) !important;
  color:var(--soil) !important;
}
.irs-from:after, .irs-to:after, .irs-single:after{border-top-color:var(--wheat) !important;}
.irs-grid-pol{background:var(--mute) !important;}
.irs-grid-text{background:transparent !important; color:var(--mute) !important;}
/* control_alternative_slider/css/style.css (this order form's own theme)
   repaints the handle, bars and floating label teal/white with higher
   specificity (.slider .product-selector .irs-*) - match it exactly. */
.slider .product-selector .irs-from,
.slider .product-selector .irs-to,
.slider .product-selector .irs-single{
  background-color:var(--wheat) !important;
  color:var(--soil) !important;
}
.slider .product-selector .irs-bar,
.slider .product-selector .irs-bar:after,
.slider .product-selector .irs-bar-edge{
  background:var(--wheat) !important;
}
.slider .product-selector .irs-line,
.slider .product-selector .irs-line .irs-line-left,
.slider .product-selector .irs-line .irs-line-mid,
.slider .product-selector .irs-line .irs-line-right{
  background:var(--soil) !important;
  box-shadow:inset 0 2px 2px 0 rgba(0,0,0,.35) !important;
}
.slider .product-selector .irs-slider,
.slider .product-selector .irs-slider:hover{
  background:var(--paper) !important;
  box-shadow:0 0 0 2px var(--wheat), inset 0 -2px 2px 0 rgba(0,0,0,.15) !important;
}
.slider .product-selector .irs-slider:before{background:var(--wheat) !important;}
.slider .product-selector .irs-grid-text{background:transparent !important; color:var(--mute) !important;}
.feature-container .progress.small-progress{background-color:var(--soil) !important;}
.feature-container .progress.small-progress .progress-bar{background-color:var(--wheat) !important;}

#product-selector, .product-selector{background:var(--soil) !important;}
