/* VMA Admin theme overlay — aplica o tema dark VMA por cima do AdminLTE
   para manter coerência visual com o site público. */

:root {
    --vma-red: #e63946;
    --vma-red-dark: #c1121f;
    --vma-bg: #0a0a0a;
    --vma-bg-soft: #121212;
    --vma-surface: #1a1a1a;
    --vma-surface-2: #222222;
    --vma-border: #2a2a2a;
    --vma-text: #e8e8e8;
    --vma-text-muted: #aaaaaa;
    --vma-text-dim: #777777;
}

/* ===== FONT + BASE ===== */
body.skin-red,
body.login-page,
body.skin-red .content-wrapper,
body.skin-red .right-side,
body.skin-red .main-footer {
    background-color: var(--vma-bg) !important;
    color: var(--vma-text);
    font-family: 'Raleway', sans-serif !important;
}
body.skin-red .wrapper { background-color: var(--vma-bg); }

/* Login page (default.ctp + Users/login.ctp) */
body.login-page {
    background-color: var(--vma-bg) !important;
}
body.login-page .login-box-body,
body.login-page .register-box-body {
    background: var(--vma-surface) !important;
    color: var(--vma-text);
    border: 1px solid var(--vma-border);
    border-top: 3px solid var(--vma-red);
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.5);
}
body.login-page .login-logo,
body.login-page .register-logo {
    color: var(--vma-text);
    font-weight: 700;
    letter-spacing: 1px;
}
body.login-page .login-logo a,
body.login-page .register-logo a {
    color: var(--vma-red);
}
body.login-page .login-box-msg,
body.login-page .register-box-msg {
    color: var(--vma-text-muted);
}

a { color: var(--vma-red); }
a:hover, a:focus { color: var(--vma-red-dark); }

/* ===== HEADER (topbar) ===== */
.skin-red .main-header .navbar {
    background-color: #000 !important;
    border-bottom: 1px solid #1a1a1a;
}
.skin-red .main-header .navbar .nav > li > a {
    color: var(--vma-text) !important;
    border-right: none !important;
}
.skin-red .main-header .navbar .nav > li > a:hover,
.skin-red .main-header .navbar .nav > li > a:focus,
.skin-red .main-header .navbar .nav > .active > a,
.skin-red .main-header .navbar .nav > .open > a,
.skin-red .main-header .navbar .nav > .open > a:focus,
.skin-red .main-header .navbar .nav > .open > a:hover {
    background-color: rgba(230, 57, 70, 0.15) !important;
    color: var(--vma-red) !important;
}
.skin-red .main-header .logo {
    background-color: #000 !important;
    color: var(--vma-text) !important;
    border-bottom: 0 solid transparent;
}
.skin-red .main-header .logo:hover {
    background-color: #0a0a0a !important;
}
.skin-red .main-header li.user-header {
    background-color: var(--vma-red) !important;
}
.skin-red .sidebar-toggle {
    color: var(--vma-text) !important;
}

/* Cart/notifications badges keep their bootstrap colors */
.skin-red .navbar .navbar-nav .badge.label-success {
    background-color: var(--vma-red);
}

/* ===== SIDEBAR ===== */
.skin-red .main-sidebar,
.skin-red .left-side {
    background-color: #050505 !important;
    border-right: 1px solid #1a1a1a;
}
.skin-red .user-panel > .info,
.skin-red .user-panel > .info > a {
    color: var(--vma-text) !important;
}
.skin-red .sidebar-menu > li.header {
    background: #000 !important;
    color: var(--vma-text-dim) !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 0.75rem;
}
.skin-red .sidebar-menu > li > a {
    color: #ccc !important;
    border-left: 3px solid transparent;
}
.skin-red .sidebar-menu > li.active > a,
.skin-red .sidebar-menu > li:hover > a,
.skin-red .sidebar-menu > li.menu-open > a {
    color: var(--vma-red) !important;
    background-color: #0d0d0d !important;
    border-left-color: var(--vma-red) !important;
}
.skin-red .sidebar-menu > li > .treeview-menu {
    background: #050505 !important;
    margin: 0;
}
.skin-red .sidebar-menu .treeview-menu > li > a {
    color: #aaa !important;
}
.skin-red .sidebar-menu .treeview-menu > li.active > a,
.skin-red .sidebar-menu .treeview-menu > li > a:hover {
    color: var(--vma-red) !important;
    background-color: #111 !important;
}
.skin-red .sidebar a { color: #ccc; }
.skin-red .sidebar-form {
    border-color: var(--vma-border);
    background-color: var(--vma-surface);
}
.skin-red .sidebar-form input[type="text"],
.skin-red .sidebar-form .btn {
    background-color: var(--vma-surface) !important;
    border: 1px solid var(--vma-border);
    color: var(--vma-text) !important;
}

/* ===== CONTENT HEADER ===== */
.content-header > h1 {
    color: var(--vma-text);
    font-weight: 600;
}
.content-header > h1 > small {
    color: var(--vma-text-muted);
}
.content-header > .breadcrumb {
    background: transparent;
    color: var(--vma-text-muted);
}
.content-header > .breadcrumb a {
    color: var(--vma-red);
}
.content-header > .breadcrumb > li + li::before {
    color: var(--vma-text-dim);
}

/* ===== BOXES (cards) ===== */
.box {
    background-color: var(--vma-surface) !important;
    border-top: 3px solid var(--vma-red) !important;
    border-bottom: 1px solid var(--vma-border);
    border-left: 1px solid var(--vma-border);
    border-right: 1px solid var(--vma-border);
    box-shadow: 0 4px 12px rgba(0,0,0,0.4);
    color: var(--vma-text);
}
.box.box-primary { border-top-color: var(--vma-red) !important; }
.box.box-success { border-top-color: #28a745 !important; }
.box.box-info    { border-top-color: #17a2b8 !important; }
.box.box-warning { border-top-color: #ffc107 !important; }
.box.box-danger  { border-top-color: #dc3545 !important; }

.box-header {
    color: var(--vma-text);
    border-bottom: 1px solid var(--vma-border);
    background: rgba(0,0,0,0.2);
}
.box-header .box-title {
    color: var(--vma-text);
    font-weight: 600;
}
.box-header > .box-tools .btn-box-tool {
    color: var(--vma-text-muted);
}
.box-body {
    background-color: var(--vma-surface);
    color: var(--vma-text);
}
.box-footer {
    background-color: var(--vma-surface-2);
    color: var(--vma-text);
    border-top: 1px solid var(--vma-border);
}

/* Override hardcoded inline backgrounds in templates */
.content-wrapper > .col-md-12[style*="ecf0f5"],
.content-wrapper > div[style*="ecf0f5"] {
    background-color: transparent !important;
}

/* ===== FORMS ===== */
.form-control {
    background-color: #0f0f0f !important;
    border: 1px solid var(--vma-border) !important;
    color: var(--vma-text) !important;
    box-shadow: none !important;
}
.form-control:focus {
    background-color: #0f0f0f !important;
    border-color: var(--vma-red) !important;
    box-shadow: 0 0 0 0.2rem rgba(230,57,70,0.15) !important;
    color: var(--vma-text) !important;
}
.form-control::placeholder { color: var(--vma-text-dim); }

label, .control-label {
    color: var(--vma-text);
    font-weight: 600;
}

.has-feedback .form-control-feedback {
    color: var(--vma-text-dim);
}

select.form-control,
select.form-control option {
    background-color: #0f0f0f !important;
    color: var(--vma-text) !important;
}

textarea.form-control {
    background-color: #0f0f0f !important;
    color: var(--vma-text) !important;
}

.checkbox label, .radio label {
    color: var(--vma-text);
}

.input-group-addon {
    background-color: var(--vma-surface-2);
    border-color: var(--vma-border);
    color: var(--vma-text);
}

/* ===== BUTTONS ===== */
.btn-primary {
    background-color: var(--vma-red) !important;
    border-color: var(--vma-red) !important;
    color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: var(--vma-red-dark) !important;
    border-color: var(--vma-red-dark) !important;
    color: #fff !important;
}

.btn-success { background-color: #2ea043 !important; border-color: #2ea043 !important; color: #fff !important; }
.btn-success:hover { background-color: #28a745 !important; border-color: #28a745 !important; }

.btn-info { background-color: #17a2b8 !important; border-color: #17a2b8 !important; color: #fff !important; }
.btn-warning { background-color: #ffc107 !important; border-color: #ffc107 !important; color: #000 !important; }
.btn-danger { background-color: #dc3545 !important; border-color: #dc3545 !important; color: #fff !important; }

.btn-default {
    background-color: var(--vma-surface-2) !important;
    border-color: var(--vma-border) !important;
    color: var(--vma-text) !important;
}
.btn-default:hover {
    background-color: var(--vma-surface) !important;
    color: var(--vma-text) !important;
}

/* ===== TABLES ===== */
.table {
    color: var(--vma-text) !important;
    background-color: var(--vma-surface);
}
.table > thead > tr > th {
    background-color: var(--vma-bg-soft);
    color: var(--vma-text);
    border-bottom: 2px solid var(--vma-red);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    font-size: 0.85rem;
}
.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td {
    border-color: var(--vma-border) !important;
    color: var(--vma-text);
}
.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(255,255,255,0.02);
}
.table-hover > tbody > tr:hover {
    background-color: rgba(230,57,70,0.07) !important;
}
.table > thead > tr > th a {
    color: var(--vma-text);
}
th.dynatable-head a { color: var(--vma-text) !important; }
th.dynatable-head a:hover { color: var(--vma-red) !important; }

/* ===== LABELS / BADGES ===== */
.label { font-weight: 600; padding: 4px 8px; border-radius: 4px; }
.label-success { background-color: #2ea043 !important; }
.label-info    { background-color: #17a2b8 !important; }
.label-warning { background-color: #ffc107 !important; color: #000 !important; }
.label-danger  { background-color: #dc3545 !important; }
.label-default { background-color: var(--vma-surface-2) !important; color: var(--vma-text) !important; }
.label-primary { background-color: var(--vma-red) !important; }

/* ===== ALERTS ===== */
.alert {
    background-color: var(--vma-surface);
    color: var(--vma-text);
    border-left: 4px solid var(--vma-red);
}
.alert-success { border-left-color: #2ea043; background-color: rgba(46,160,67,0.12); }
.alert-info    { border-left-color: #17a2b8; background-color: rgba(23,162,184,0.12); }
.alert-warning { border-left-color: #ffc107; background-color: rgba(255,193,7,0.12); }
.alert-danger  { border-left-color: #dc3545; background-color: rgba(220,53,69,0.12); }

/* ===== DROPDOWNS ===== */
.dropdown-menu {
    background-color: var(--vma-surface) !important;
    border: 1px solid var(--vma-border) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.6) !important;
}
.dropdown-menu > li > a {
    color: var(--vma-text) !important;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    background-color: var(--vma-surface-2) !important;
    color: var(--vma-red) !important;
}
.dropdown-menu .divider { background-color: var(--vma-border); }
.dropdown-menu > li.header {
    color: var(--vma-text-dim);
    background-color: var(--vma-bg-soft);
}

/* ===== MAIN FOOTER ===== */
.main-footer {
    background: #000 !important;
    color: var(--vma-text-muted);
    border-top: 1px solid var(--vma-border) !important;
}
.main-footer a { color: var(--vma-red); }

/* ===== DYNATABLE / PAGINATION ===== */
.dynatable-record-count { color: var(--vma-text-muted); }
.dynatable-search input.dynatable-input,
.dynatable-per-page-select.form-control,
.dynatable-per-page select {
    background-color: var(--vma-surface) !important;
    border-color: var(--vma-border) !important;
    color: var(--vma-text) !important;
}
.pagination > li > a, .pagination > li > span {
    background-color: var(--vma-surface);
    border-color: var(--vma-border);
    color: var(--vma-text);
}
.pagination > .active > a, .pagination > .active > span {
    background-color: var(--vma-red) !important;
    border-color: var(--vma-red) !important;
}

/* ===== NAV TABS ===== */
.nav-tabs {
    border-bottom-color: var(--vma-border);
}
.nav-tabs > li > a {
    color: var(--vma-text-muted);
    border-color: transparent;
}
.nav-tabs > li > a:hover {
    background-color: var(--vma-surface-2);
    border-color: var(--vma-border) var(--vma-border) var(--vma-border);
    color: var(--vma-red);
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    background-color: var(--vma-surface);
    border-color: var(--vma-border) var(--vma-border) var(--vma-surface);
    color: var(--vma-red);
}

/* ===== MODAL ===== */
.modal-content {
    background-color: var(--vma-surface);
    color: var(--vma-text);
    border: 1px solid var(--vma-border);
}
.modal-header, .modal-footer {
    border-color: var(--vma-border);
}

/* ===== MISC OVERRIDES ===== */
hr { border-top-color: var(--vma-border); }

/* Carousel indicator on light backgrounds inside boxes */
.box .carousel-indicators li {
    background-color: rgba(255,255,255,0.2);
}
.box .carousel-indicators li.active {
    background-color: var(--vma-red);
}

/* Datepicker (jQuery UI / Bootstrap datepicker) on dark theme */
.datepicker-dropdown,
.datepicker {
    background-color: var(--vma-surface) !important;
    color: var(--vma-text) !important;
    border: 1px solid var(--vma-border) !important;
}
.datepicker td, .datepicker th { color: var(--vma-text); }
.datepicker .day:hover, .datepicker .month:hover, .datepicker .year:hover {
    background: var(--vma-surface-2) !important;
}
.datepicker .active.day, .datepicker .active.month, .datepicker .active.year {
    background-color: var(--vma-red) !important;
    color: #fff !important;
}

/* Popover */
.popover {
    background-color: var(--vma-surface);
    color: var(--vma-text);
    border-color: var(--vma-border);
}
.popover-title {
    background-color: var(--vma-bg-soft);
    color: var(--vma-text);
    border-bottom-color: var(--vma-border);
}
