/* SmartControllAll brand variables and overrides */
:root{
  --sc-primary-green: #1B4332; /* Verde Floresta */
  --sc-accent-orange: #FB8500; /* Laranja Vibrante */
  --sc-bg-light: #F8F9FA; /* Fundo Secundário */
  --sc-white: #FFFFFF;
  --sc-text-main: #2D3436; /* Grafite */
  --sc-text-muted: #636E72;

  --sc-radius: 12px;
  /* status / semantic colors */
  --sc-error: #e96154;
  --sc-success: #3ec845;
  --sc-info: #45b0e2;
  --sc-warning: #fbca35;
  --sc-blue: #4667cc;
  --sc-muted-light: #f5f5f5;
  --sc-border: #e8e8e8;
}

/* Override topbar and sidebar colors */
.navbar-default, .topbar{
  background-color: var(--sc-primary-green) !important;
}

.logo { color: var(--sc-accent-orange) !important; }

/* menu links should use main text color for readability */
.nav > li > a { color: var(--sc-text-main) !important; }

.side-menu{
  background: var(--sc-white) !important;
}

/* sidebar menu link colors */
#sidebar-menu > ul > li > a { color: var(--sc-text-main) !important; }
#sidebar-menu ul ul a { color: var(--sc-text-muted) !important; }
#sidebar-menu ul ul a:hover { color: var(--sc-text-main) !important; }
.button-menu-mobile { color: var(--sc-text-main) !important; }

#sidebar-menu > ul > li > a.active{
  background: #f5f7f6 !important;
  border-left: 3px solid var(--sc-accent-orange) !important;
  color: var(--sc-primary-green) !important;
}

/* Buttons mapping: make primary buttons orange */
.btn-primary{
  background-color: var(--sc-accent-orange) !important;
  border-color: var(--sc-accent-orange) !important;
}
.btn-primary:hover{
  background-color: #e67a00 !important;
  border-color: #e67a00 !important;
}

/* Page background */
body{
  background: var(--sc-bg_light, var(--sc-bg-light));
  color: var(--sc-text-main);
}

/* Cards */
.card-box{
  border-radius: var(--sc-radius) !important;
}

/* Utilities */
.text-brand{
  color: var(--sc-primary-green) !important;
}

/* Logo text styling: first word primary, second word secondary */
.logo-text { font-weight: 700; font-size: 18px; display: inline-block; }
    .logo-text .logo-primary {
        color: var(--sc-accent-orange);
    }
    .logo-text .logo-secondary {
        color: var(--sc-text-muted);
        margin-left: 4px;
    }
.login .logo-text {
    font-weight: inherit;
    font-size: inherit;
    display: inline-block;
}
    .login .logo-text .logo-secondary {
        color: var(--sc-primary-green);
        margin-left: 4px;
    }

/* Dashboard layout improvements */
.dashboard-stats { margin-bottom: 18px; }
.dashboard-stats .panel { border-radius: 10px; overflow: hidden; transition: transform .12s ease, box-shadow .12s ease; }
.dashboard-stats .panel .panel-heading { padding: 18px 16px; }
.dashboard-stats .panel .huge { font-size: 28px; font-weight: 800; color: var(--sc-primary-green); }
.dashboard-stats .panel .panel-footer { background: rgba(0,0,0,0.03); padding: 12px 16px; }
.dashboard-stats .panel:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(0,0,0,0.08); }

/* Improve dashboard panels spacing and responsive behaviour */
.panel.panel-default, .panel.panel-primary, .panel.panel-green, .panel.panel-red, .panel.panel-yellow {
  border: 0; box-shadow: 0 1px 6px rgba(0,0,0,0.04);
}
.panel .panel-body { padding: 16px; }
.page-header { color: var(--sc-text-main); font-weight: 700; margin-bottom: 18px; }

@media (max-width: 991px) {
  .dashboard-stats .huge { font-size: 22px; }
  .dashboard-stats .panel { margin-bottom: 12px; }
}

/* RNC page specific form-control and modal styles (moved from RNCS.aspx inline) */
.fileItem {
  background-color: var(--sc-primary-green, #1B4332);
  display: inline-block;
  font-size: 12px;
  margin: 4px 6px;
  padding: 6px 14px;
  border-radius: 6px;
  font-weight: 600;
  color: var(--sc-white, #FFF);
}
.itemAnexo { padding: 6px 0; }
.anexoItem { display: flex; justify-content: space-between; align-items: center; gap:10px; }
.deleteAnexo { color: var(--sc-error, #e96154) !important; }
.deleteAnexo:hover { color: #a5352a !important; }
.modal .modal-content { border-radius: 10px; overflow: hidden; }
.panel .panel-heading { padding: 14px 16px; font-weight: 700; }
.panel .panel-body { padding: 14px 16px; }
.panel .form-group { margin-bottom: 12px; }
.panel .form-group label { font-weight: 600; color: var(--sc-text-main, #2D3436); }
.panel-warning.dark .panel-heading { background-color: var(--sc-warning, #fbca35); color: var(--sc-text-main,#2D3436); }
.panel-info .panel-heading { background-color: var(--sc-accent-orange, #FB8500); color: var(--sc-white); }
td.metodo { margin: 0 !important; padding: 0 !important; }
td.date { font-weight: bold; text-align: center; vertical-align: middle !important; }
td.title { font-weight: 700; height: 40px; text-align: center; vertical-align: middle !important; }
td textarea { resize: vertical; }
.tableAction td, .tableAction th { vertical-align: middle !important; text-align: center; }
.rnc-legend { display: flex; flex-wrap:wrap; gap:12px; justify-content: space-between; margin: 18px 0; }
.rnc-legend .label { flex: 1 1 180px; text-align: center; padding: 10px; border: 1px solid rgba(0,0,0,0.06); margin: 0; box-sizing: border-box; min-width: 150px; border-radius:6px; }
.gridrnc td { vertical-align: middle; }
.table tr th a{ text-decoration: underline; color: var(--sc-text-muted, #666666); }
.pt32 { padding-top: 32px; }
@media (max-width: 767px) {
  .anexoItem { flex-direction: column; align-items: stretch; }
  .rnc-legend { gap:8px; }
  .panel .form-group { margin-bottom: 10px; }
}


/* small adjustments for previous variables used across css */
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:focus,
.navbar-default .navbar-nav > .open > a:hover{
  background-color: rgba(255,255,255,0.06) !important;
}

/* Active sidebar item: light background, orange accent border, strong text */
#sidebar-menu > ul > li > a.active {
  background: var(--sc-bg-light, #F8F9FA) !important;
  border-left: 3px solid var(--sc-accent-orange, #FB8500) !important;
  color: var(--sc-primary-green, #1B4332) !important;
}

/* Menu badges: use accent for visibility */
#sidebar-menu .nav > li > a .badge,
.navbar-default .badge {
  background-color: var(--sc-accent-orange, #FB8500) !important;
  color: var(--sc-white, #FFFFFF) !important;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 12px;
}

/* Submenu items muted color and hover */
#sidebar-menu ul ul a {
  color: var(--sc-text-muted, #636E72) !important;
}
#sidebar-menu ul ul a:hover {
  color: var(--sc-text-main, #2D3436) !important;
}

/* Menu arrow color */
#sidebar-menu ul li .menu-arrow {
  color: var(--sc-text-muted, #636E72) !important;
}

/* Focus state for accessibility */
#sidebar-menu > ul > li > a:focus,
#sidebar-menu > ul > li > a:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(27,67,50,0.04), 0 0 0 3px rgba(251,133,0,0.10);
}

/* Topbar (navbar-default) overrides: ensure contrast and accent on hover */
.navbar-default {
  background-color: var(--sc-primary-green) !important;
}
.navbar-default .nav > li > a {
  color: var(--sc-white) !important;
}
.navbar-default .nav > li > a:hover,
.navbar-default .nav > li > a:focus {
  color: var(--sc-accent-orange) !important;
  background-color: rgba(255,255,255,0.03) !important;
}

/* Sidebar/menu hover overrides: avoid white hover, use readable text color */
#sidebar-menu > ul > li > a:hover,
#sidebar-menu ul ul a:hover,
#sidebar-menu a:focus {
  color: var(--sc-text-main) !important;
  background: transparent !important;
}

/* Ensure mobile menu button remains visible */
.button-menu-mobile,
.button-menu-mobile:hover {
  color: var(--sc-white) !important;
}

/* Consistent panel colors mapped to brand variables */
.panel-primary > .panel-heading,
.panel-primary .portlet-heading.bg-primary {
  background-color: var(--sc-primary-green) !important;
  color: var(--sc-white) !important;
  border-color: transparent !important;
}
.panel-primary .panel-footer {
    background: rgba(27,67,50,0.06);
    color: var(--sc-primary-green);
}

.panel-green > .panel-heading,
.panel-success > .panel-heading,
.panel-green .portlet-heading.bg-success,
.panel-success .portlet-heading.bg-success {
  background-color: var(--sc-success) !important;
  color: var(--sc-white) !important;
  border-color: transparent !important;
}
.panel-green .panel-footer,
.panel-success .panel-footer { background: rgba(62,200,69,0.06); }

.panel-red > .panel-heading,
.panel-danger > .panel-heading,
.panel-red .portlet-heading.bg-danger,
.panel-danger .portlet-heading.bg-danger {
  background-color: var(--sc-error) !important;
  color: var(--sc-white) !important;
  border-color: transparent !important;
}
.panel-red .panel-footer,
.panel-danger .panel-footer { background: rgba(233,97,84,0.06); }

.panel-yellow > .panel-heading,
.panel-warning > .panel-heading,
.panel-yellow .portlet-heading.bg-warning,
.panel-warning .portlet-heading.bg-warning {
  background-color: var(--sc-warning) !important;
  color: var(--sc-text-main) !important;
  border-color: transparent !important;
}
.panel-yellow .panel-footer,
.panel-warning .panel-footer { background: rgba(251,202,53,0.06); }

/* Ensure icons inside headings contrast */
.panel .panel-heading i,
.panel .panel-heading .fa { color: inherit; }

.panel-default > .panel-heading{
    color: var(--sc-text-main)
}