/* ═══════════════════════════════════════════════════════════
   SanBernarda CRM chrome — densidade Huly, paleta da marca
   Raio / sombra / hairline / tabs / pills. Sem mudar o shell.
   Login (cc-login-page) não usa este arquivo.
   ═══════════════════════════════════════════════════════════ */

/* ── Header ── */
[data-theme] #header {
  box-shadow: none !important;
  border-bottom: 1px solid var(--cc-hairline);
}

[data-theme] #header .logo.logo-text {
  font-weight: 600;
  letter-spacing: -0.02em;
}

[data-theme] #search_input {
  background-color: var(--cc-bg-input) !important;
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-ctrl) !important;
  box-shadow: none !important;
}

[data-theme] #search_input:focus {
  border-color: var(--cc-accent) !important;
  box-shadow: 0 0 0 3px var(--cc-focus) !important;
}

[data-theme] #top_search_button i {
  color: var(--cc-meta) !important;
}

[data-theme] .admin button.hide-menu:hover {
  color: var(--cc-accent) !important;
}

[data-theme] #header .cc-theme-toggle {
  border-color: var(--cc-hairline);
}

/* ── Sidebar ── */
[data-theme] .sidebar {
  border-right: 1px solid var(--cc-hairline) !important;
}

[data-theme] .sidebar ul.nav li a i.menu-icon {
  color: var(--cc-meta) !important;
}

[data-theme] .sidebar > ul.nav > li:hover a:first-child,
[data-theme] .sidebar > ul.nav > li.active a:first-child,
[data-theme] .admin #side-menu li.active > a,
[data-theme] .admin #setup-menu li.active > a,
[data-theme] #side-menu.nav > li > a:hover,
[data-theme] #side-menu.nav > li > a:focus,
[data-theme] #setup-menu > li > a:hover,
[data-theme] #setup-menu > li > a:focus {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-ctrl) !important;
  box-shadow: none !important;
}

[data-theme] .sidebar ul.nav li.active > a .menu-icon,
[data-theme] .sidebar ul.nav > li > a:hover .menu-icon,
[data-theme] .sidebar ul.nav > li > a:focus .menu-icon,
[data-theme] .admin #side-menu li.active a i.menu-icon,
[data-theme] .admin #side-menu li:hover a:first-child i.menu-icon {
  color: var(--cc-sidebar-active-text) !important;
}

[data-theme] .sidebar-user-profile > a {
  border-radius: var(--cc-r-ctrl) !important;
  border: 1px solid var(--cc-hairline) !important;
  box-shadow: none !important;
}

[data-theme] #setup-menu > li:first-child {
  border-bottom: 1px solid var(--cc-hairline);
}

/* ── Cards / panels ── */
[data-theme] .panel_s,
[data-theme] .panel,
[data-theme] .panel-default,
[data-theme] .well,
[data-theme] .widget,
[data-theme] .screen-options-area {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-1);
}

[data-theme] .panel-heading,
[data-theme] .panel_s .panel-heading,
[data-theme] .panel-default > .panel-heading {
  border-bottom: 1px solid var(--cc-hairline) !important;
  font-weight: 600;
  background-color: transparent !important;
}

[data-theme] .panel-footer {
  border-top: 1px solid var(--cc-hairline) !important;
  background-color: transparent !important;
}

[data-theme] h4,
[data-theme] h5,
[data-theme] .tw-font-semibold {
  font-weight: 600;
}

/* ── Tables ── */
[data-theme] .table > thead > tr > th,
[data-theme] table.dataTable thead tr > th,
[data-theme] .table.dataTable > thead:first-child > tr:first-child > th {
  font-weight: 500;
  border-bottom: 1px solid var(--cc-hairline) !important;
  border-top: 0 !important;
}

[data-theme] .table > tbody > tr > td,
[data-theme] .table > tfoot > tr > td {
  border-top-color: var(--cc-hairline) !important;
}

[data-theme] .table-striped > tbody > tr:nth-of-type(odd) > td,
[data-theme] table.dataTable.stripe tbody tr.odd > td,
[data-theme] table.dataTable.display tbody tr.odd > td {
  background-color: transparent !important;
}

[data-theme] .dataTables_empty,
[data-theme] table.dataTable td.dataTables_empty {
  color: var(--text-muted) !important;
  background-color: transparent !important;
  font-weight: 400;
}

[data-theme] .dataTables_wrapper .dt-buttons .btn,
[data-theme] .dt-buttons .btn-default {
  border-radius: var(--cc-r-ctrl) !important;
}

/* ── Controls ── */
[data-theme] .btn {
  border-radius: var(--cc-r-ctrl) !important;
  font-weight: 500;
}

[data-theme] .btn-default {
  background-color: transparent !important;
  border-color: var(--cc-hairline) !important;
  color: var(--text-primary) !important;
  box-shadow: none !important;
}

[data-theme] .btn-default:hover,
[data-theme] .btn-default:active,
[data-theme] .btn-default.active {
  background-color: var(--cc-sidebar-hover) !important;
  border-color: var(--cc-hairline) !important;
}

[data-theme] .form-control,
[data-theme] input[type="text"],
[data-theme] input[type="password"],
[data-theme] input[type="email"],
[data-theme] input[type="number"],
[data-theme] input[type="search"],
[data-theme] select,
[data-theme] textarea,
[data-theme] .bootstrap-select .dropdown-toggle {
  border-radius: var(--cc-r-ctrl) !important;
  border-color: var(--cc-hairline) !important;
  box-shadow: none !important;
}

[data-theme] .input-group-addon {
  border-color: var(--cc-hairline) !important;
  border-radius: var(--cc-r-ctrl);
}

/* ── Tabs (underline, not boxed) ── */
[data-theme] .nav-tabs {
  border-bottom: 1px solid var(--cc-hairline) !important;
}

[data-theme] .nav-tabs > li > a {
  background-color: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  color: var(--text-muted) !important;
  font-weight: 500;
}

[data-theme] .nav-tabs > li > a:hover,
[data-theme] .nav-tabs > li > a:focus {
  background-color: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid var(--cc-hairline) !important;
  color: var(--text-primary) !important;
}

[data-theme] .nav-tabs > li.active > a,
[data-theme] .nav-tabs > li.active > a:hover,
[data-theme] .nav-tabs > li.active > a:focus {
  background-color: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid var(--cc-accent) !important;
  color: var(--cc-accent) !important;
}

[data-theme] .horizontal-tabs .nav-tabs-horizontal,
[data-theme] .preview-tabs-top {
  background-color: transparent !important;
  border-color: var(--cc-hairline);
}

/* ── Pills ── */
[data-theme] .label,
[data-theme] .badge,
[data-theme] .label-tag {
  border-radius: var(--cc-r-pill) !important;
  font-weight: 500;
  border: 0;
}

[data-theme] .pagination > li > a,
[data-theme] .pagination > li > span,
[data-theme] .dataTables_paginate .paginate_button {
  border-radius: var(--cc-r-ctrl) !important;
  border-color: var(--cc-hairline) !important;
}

/* ── Overlays ── */
[data-theme] .dropdown-menu,
[data-theme] .bootstrap-select .dropdown-menu,
[data-theme] .popover,
[data-theme] #search_results,
[data-theme] #search-history {
  background-color: var(--cc-overlay) !important;
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-2);
  backdrop-filter: blur(var(--cc-overlay-blur));
  -webkit-backdrop-filter: blur(var(--cc-overlay-blur));
}

[data-theme] .modal-content {
  background-color: var(--cc-overlay) !important;
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-2);
  backdrop-filter: blur(var(--cc-overlay-blur));
  -webkit-backdrop-filter: blur(var(--cc-overlay-blur));
}

[data-theme] .modal-header,
[data-theme] .modal-footer {
  background-color: transparent !important;
  border-color: var(--cc-hairline) !important;
}

[data-theme] .modal-header .modal-title {
  font-weight: 600;
}

[data-theme] .modal-backdrop {
  opacity: 0.55;
}

@media (prefers-reduced-motion: reduce) {
  [data-theme] .dropdown-menu,
  [data-theme] .modal-content,
  [data-theme] .popover,
  [data-theme] #search_results {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background-color: var(--cc-modal-bg) !important;
  }
}

/* ── Kanban ── */
[data-theme] .kan-ban-col-wrapper .panel_s {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: none;
  overflow: hidden;
}

[data-theme] .kan-ban-content {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none;
  padding: var(--cc-space) !important;
}

[data-theme] #kan-ban .lead-body,
[data-theme] .kan-ban-body .panel_s {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: none;
}

[data-theme] .kan-ban-col .panel-heading {
  border-bottom: 1px solid var(--cc-hairline) !important;
  font-weight: 600;
  padding: 10px 12px !important;
}

[data-theme] #kan-ban .panel-body {
  padding: 10px 12px !important;
  margin: 0 0 var(--cc-space) 0 !important;
  border-radius: var(--cc-r-card) !important;
}

[data-theme] .kan-ban-expand-top {
  border-radius: 0 var(--cc-r-card) 0 var(--cc-r-card);
  padding: 3px 8px;
}

[data-theme] .kanban-empty {
  padding: var(--cc-space-3) var(--cc-space-2) !important;
}

/* ── Empty / muted chrome ── */
[data-theme] .text-muted,
[data-theme] .no-margin.text-muted,
[data-theme] .empty-state,
[data-theme] .kanban-empty h4 {
  color: var(--text-muted) !important;
}

[data-theme] .breadcrumb {
  background: transparent;
}

[data-theme] .fc .fc-button-primary {
  border-radius: var(--cc-r-ctrl) !important;
  border-color: var(--cc-hairline) !important;
}

[data-theme] .fc-theme-standard td,
[data-theme] .fc-theme-standard th,
[data-theme] .fc .fc-scrollgrid {
  border-color: var(--cc-hairline) !important;
}

/* ── Portal ── */
[data-theme] .customers .navbar-default {
  border-bottom: 1px solid var(--cc-hairline) !important;
  box-shadow: none;
}

[data-theme] .customers .panel,
[data-theme] .customers .panel_s {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-1);
}

[data-theme] .kb-search-jumbotron {
  border-bottom: 1px solid var(--cc-hairline);
}

[data-theme] .kb-search-input {
  border-radius: var(--cc-r-ctrl) 0 0 var(--cc-r-ctrl) !important;
}

[data-theme] .kb-search-button {
  border-radius: 0 var(--cc-r-ctrl) var(--cc-r-ctrl) 0 !important;
}

[data-theme] .navbar-default .navbar-nav > li.customers-nav-item-login > a {
  border-radius: var(--cc-r-ctrl) !important;
}

[data-theme] .customers footer {
  border-top: 1px solid var(--cc-hairline) !important;
}

/* ── Dashboard stats ── */
[data-theme] .top_stats_wrapper {
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card);
  box-shadow: none;
  padding: 14px 16px;
}

[data-theme] .top_stats_wrapper .tw-font-semibold {
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
  color: var(--text-primary) !important;
}

[data-theme] .top_stats_wrapper svg {
  color: var(--cc-meta) !important;
}

[data-theme] .progress,
[data-theme] .progress-bar-mini {
  height: 4px;
  border-radius: var(--cc-r-pill);
  background-color: var(--cc-progress-track) !important;
  box-shadow: none;
  overflow: hidden;
}

[data-theme] .progress-bar {
  border-radius: var(--cc-r-pill);
}

[data-theme] .widget-dragger {
  opacity: 0.35;
}

[data-theme] #dashboard-options {
  border-top: 1px solid var(--cc-hairline);
  padding-top: 12px;
}

[data-theme] .screen-options-area {
  box-shadow: none !important;
}

/* ── Todos / newsfeed ── */
[data-theme] .todo-panel .todo-title {
  color: var(--cc-meta) !important;
  font-weight: 600;
  font-size: 13px;
}

[data-theme] .todo-panel hr {
  border-color: var(--cc-hairline);
}

[data-theme] .todo-panel .todo li {
  border-bottom: 1px solid var(--cc-hairline);
}

[data-theme] .no-todos,
[data-theme] .todo-panel .no-todos {
  color: var(--text-muted) !important;
}

[data-theme] #new-post-form textarea,
[data-theme] .newsfeed textarea {
  border-radius: var(--cc-r-ctrl) !important;
  min-height: 88px;
}

[data-theme] .close_newsfeed {
  border: 1px solid var(--cc-hairline) !important;
  background-color: var(--cc-overlay) !important;
  color: var(--text-primary) !important;
}

[data-theme] .dropzone,
[data-theme] .dropzoneDragArea,
[data-theme] .dz-default.dz-message {
  border: 1px dashed var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  background-color: transparent !important;
  color: var(--text-muted);
}

[data-theme] .dropzone.dz-drag-hover,
[data-theme] .dropzoneDragArea.dz-drag-hover {
  border-color: var(--cc-accent) !important;
  background-color: var(--cc-table-hover) !important;
}

/* ── Calendar toolbar (quiet, not filled blaze) ── */
[data-theme] .fc .fc-button-primary {
  background-color: transparent !important;
  color: var(--text-muted) !important;
  box-shadow: none !important;
}

[data-theme] .fc .fc-button-primary:not(:disabled).fc-button-active,
[data-theme] .fc .fc-button-primary:hover {
  background-color: var(--cc-sidebar-hover) !important;
  border-color: var(--cc-hairline) !important;
  color: var(--cc-accent) !important;
}

[data-theme] .fc .fc-toolbar-title {
  font-weight: 600;
  letter-spacing: -0.02em;
}

/* ── bootstrap-select (Perfex não usa Select2) ── */
[data-theme] .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
  color: var(--cc-input-text);
}

[data-theme] .bootstrap-select .dropdown-toggle .caret,
[data-theme] .bootstrap-select .bs-caret {
  color: var(--cc-meta);
}

[data-theme] .bootstrap-select .dropdown-menu .inner {
  background-color: transparent;
}

[data-theme] .bootstrap-select .bs-searchbox .form-control,
[data-theme] .bootstrap-select .bs-actionsbox {
  border-radius: var(--cc-r-ctrl) !important;
}

[data-theme] .bootstrap-select .dropdown-menu li a span.text {
  color: inherit;
}

/* ── Datepicker ── */
[data-theme] .datepicker table tr td,
[data-theme] .datepicker table tr th,
[data-theme] .xdsoft_datetimepicker .xdsoft_calendar td,
[data-theme] .xdsoft_datetimepicker .xdsoft_calendar th,
[data-theme] .ui-datepicker td,
[data-theme] .ui-datepicker th {
  color: var(--text-primary);
  border-radius: var(--cc-r-ctrl);
}

[data-theme] .datepicker table tr td.day:hover,
[data-theme] .datepicker table tr td.focused,
[data-theme] .xdsoft_datetimepicker .xdsoft_calendar td:hover,
[data-theme] .ui-datepicker td a:hover {
  background-color: var(--cc-sidebar-hover) !important;
  color: var(--text-primary) !important;
}

[data-theme] .datepicker table tr td.active,
[data-theme] .datepicker table tr td.active:hover,
[data-theme] .datepicker table tr td.today,
[data-theme] .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
[data-theme] .ui-datepicker td .ui-state-active {
  background-color: var(--cc-accent) !important;
  color: #fff !important;
  border-radius: var(--cc-r-ctrl);
  text-shadow: none;
}

[data-theme] .datepicker table tr td.old,
[data-theme] .datepicker table tr td.new {
  color: var(--text-muted) !important;
}

[data-theme] .datepicker-dropdown:before,
[data-theme] .datepicker-dropdown:after {
  border-bottom-color: var(--cc-hairline);
}

/* ── Float alert (toast do Perfex) ── */
[data-theme] .float-alert {
  background-color: var(--cc-toast-bg) !important;
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-2);
  backdrop-filter: blur(var(--cc-overlay-blur));
  -webkit-backdrop-filter: blur(var(--cc-overlay-blur));
  color: var(--text-primary) !important;
}

[data-theme] .float-alert.alert-success {
  border-left: 3px solid var(--cc-success) !important;
}

[data-theme] .float-alert.alert-danger,
[data-theme] .float-alert.alert-warning,
[data-theme] .float-alert.alert-info {
  border-left-width: 3px !important;
}

[data-theme] #toast-container > div,
[data-theme] .toast {
  background-color: var(--cc-toast-bg) !important;
  border: 1px solid var(--cc-hairline) !important;
  border-radius: var(--cc-r-card) !important;
  box-shadow: var(--cc-elev-2);
  opacity: 1;
}

/* ── Notifications / timers ── */
[data-theme] .dropdown-menu.notifications,
[data-theme] .started-timers-top,
[data-theme] #search_results {
  padding-top: 6px;
}

[data-theme] .notifications .notification-box {
  border-radius: var(--cc-r-ctrl);
}

[data-theme] .notifications .unread-notification .notification-box {
  background-color: var(--cc-table-hover);
}

[data-theme] .notifications .tw-bg-neutral-50,
[data-theme] .dropdown-menu.notifications .tw-bg-neutral-50 {
  background-color: transparent !important;
  border-top: 1px solid var(--cc-hairline);
}

[data-theme] .icon-notifications,
[data-theme] .icon-started-timers {
  border-radius: var(--cc-r-pill) !important;
}

@media (prefers-reduced-motion: reduce) {
  [data-theme] .float-alert,
  [data-theme] #toast-container > div {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

/* ── Rhythm 8px (CRM only; login não carrega este arquivo) ── */
[data-theme] .form-group {
  margin-bottom: var(--cc-space-2);
}

[data-theme] .form-group > label,
[data-theme] .control-label {
  margin-bottom: 6px;
  display: block;
  font-weight: 500;
  font-size: 12px;
  line-height: 1.3;
  color: var(--text-muted) !important;
}

[data-theme] .checkbox label,
[data-theme] .radio label {
  font-size: 13px;
  font-weight: 400;
  color: var(--text-primary) !important;
  margin-bottom: 0;
}

[data-theme] .checkbox,
[data-theme] .radio {
  margin-top: 0;
  margin-bottom: var(--cc-space);
  min-height: 22px;
}

[data-theme] .help-block {
  margin-top: 4px;
  margin-bottom: 0;
  font-size: 12px;
  line-height: 1.4;
}

[data-theme] .form-group > .text-danger,
[data-theme] .form-group p.text-danger {
  display: block;
  margin-top: 4px;
  margin-bottom: 0;
  font-size: 12px;
}

[data-theme] .btn:not(.btn-link):not(.btn-xs) {
  min-height: var(--cc-ctrl-h);
  padding: 7px 14px;
  line-height: 1.25;
}

[data-theme] .btn-sm,
[data-theme] .btn-group-sm > .btn {
  min-height: var(--cc-ctrl-h-sm);
  padding: 4px 10px;
}

[data-theme] .btn-xs {
  min-height: 24px;
  padding: 2px 8px;
}

[data-theme] .btn-group .btn {
  margin-left: 0;
}

[data-theme] .btn-group-justified .btn {
  min-height: var(--cc-ctrl-h);
}

[data-theme] .form-control:not(textarea):not(select[multiple]) {
  height: var(--cc-ctrl-h);
  padding: 6px 12px;
}

[data-theme] textarea.form-control,
[data-theme] select[multiple].form-control {
  height: auto;
  min-height: 72px;
  padding: 8px 12px;
}

[data-theme] .bootstrap-select .dropdown-toggle {
  height: var(--cc-ctrl-h) !important;
  padding: 6px 12px !important;
  display: flex !important;
  align-items: center;
  width: 100%;
}

[data-theme] .bootstrap-select .dropdown-toggle .filter-option {
  height: auto !important;
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  width: auto !important;
  float: none !important;
}

[data-theme] .bootstrap-select .dropdown-toggle .bs-caret,
[data-theme] .bootstrap-select .dropdown-toggle .caret {
  flex: 0 0 auto;
  float: none !important;
  margin-left: 8px;
}

[data-theme] .input-group {
  display: flex;
  align-items: stretch;
  width: 100%;
}

[data-theme] .input-group > .form-control {
  flex: 1 1 auto;
  float: none !important;
  width: 1%;
  min-width: 0;
  height: var(--cc-ctrl-h);
}

[data-theme] .input-group-addon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: var(--cc-ctrl-h);
  height: var(--cc-ctrl-h);
  padding: 0 10px;
  line-height: 1;
}

[data-theme] .input-group-btn {
  display: flex;
  flex: 0 0 auto;
  align-items: stretch;
}

[data-theme] .input-group-btn .btn {
  min-height: var(--cc-ctrl-h);
  height: var(--cc-ctrl-h);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

[data-theme] .input-group-btn > a.btn,
[data-theme] .input-group-btn > .btn[data-toggle="modal"] {
  min-width: var(--cc-ctrl-h);
  width: var(--cc-ctrl-h);
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 768px) {
  [data-theme] .form-horizontal .control-label {
    padding-top: 8px;
    margin-bottom: 0;
  }
}

[data-theme] .panel-body {
  padding: var(--cc-space-2);
}

[data-theme] .panel-body.no-padding,
[data-theme] .panel-body.panel-full-width-tabs {
  padding: 0;
}

[data-theme] .panel-heading,
[data-theme] .panel_s > .panel-heading {
  padding: 12px var(--cc-space-2);
}

[data-theme] .panel-footer {
  padding: 12px var(--cc-space-2);
}

[data-theme] .modal-header {
  padding: var(--cc-space-2) var(--cc-space-3);
}

[data-theme] .modal-footer {
  padding: 12px var(--cc-space-3);
}

[data-theme] .modal-body {
  padding: var(--cc-space-2) var(--cc-space-3);
}

[data-theme] .task-modal-single .modal-body {
  padding: 0 !important;
}

[data-theme] .task-single-col-left {
  padding: var(--cc-space-3) !important;
}

[data-theme] .task-single-col-right {
  padding: var(--cc-space-2) var(--cc-space-3) !important;
}

[data-theme] .task-info {
  padding: var(--cc-space) 0;
  margin: 0;
}

[data-theme] .task-info h5 {
  gap: var(--cc-space);
  margin: 0;
}

[data-theme] .task-info-heading {
  margin: 0 0 var(--cc-space);
}

[data-theme] .task-info-separator {
  margin: var(--cc-space-2) 0;
}

[data-theme] .task-info-icon {
  margin-right: var(--cc-space);
}

[data-theme] .nav-tabs > li > a,
[data-theme] .panel-full-width-tabs .nav li a {
  padding: 12px 18px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

[data-theme] .nav-tabs > li > a .menu-icon,
[data-theme] .nav-tabs > li > a i {
  margin-right: 0;
}

[data-theme] .dropdown-menu > li > a,
[data-theme] .dropdown-menu > li > a i {
  line-height: 1.4;
}

[data-theme] .dropdown-menu > li > a {
  padding: 8px 14px;
}

[data-theme] .dropdown-menu > li > a i {
  margin-right: var(--cc-space);
}

[data-theme] .table > thead > tr > th,
[data-theme] .table > tbody > tr > td,
[data-theme] .table > tfoot > tr > td,
[data-theme] table.dataTable thead th,
[data-theme] table.dataTable tbody td {
  padding: 10px 12px;
  height: auto;
  min-height: var(--cc-row-h);
  vertical-align: middle;
}

[data-theme] .sidebar ul.nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
}

[data-theme] .sidebar ul.nav li .nav-second-level li a {
  padding-top: 8px;
  padding-bottom: 8px;
}

[data-theme] .checklist {
  padding: var(--cc-space) 12px var(--cc-space) var(--cc-space);
  margin-top: var(--cc-space);
}

[data-theme] .horizontal-tabs .nav-tabs-horizontal {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 4px;
}

[data-theme] .horizontal-tabs .nav-tabs-horizontal > li {
  float: none !important;
  margin: 0 !important;
  flex: 0 0 auto;
}

[data-theme] .panel-full-width-tabs {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

[data-theme] .panel-full-width-tabs .nav {
  margin-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

[data-theme] .horizontal-scrollable-tabs {
  position: relative;
  overflow: hidden;
}

[data-theme] .horizontal-scrollable-tabs .scroller {
  position: absolute;
  top: 0;
  z-index: 3;
  height: 100%;
  min-width: 36px;
  margin: 0 !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--cc-hairline) !important;
  float: none !important;
  line-height: 48px;
  text-align: center;
}

[data-theme] .horizontal-scrollable-tabs .arrow-left {
  left: 0;
}

[data-theme] .horizontal-scrollable-tabs .arrow-right {
  right: 0;
}

[data-theme] .horizontal-scrollable-tabs .arrow-left[style*="display: block"] ~ .horizontal-tabs .nav-tabs-horizontal {
  padding-left: 36px;
}

[data-theme] .horizontal-scrollable-tabs .arrow-right[style*="display: block"] ~ .horizontal-tabs .nav-tabs-horizontal {
  padding-right: 36px;
}

[data-theme] .btn-bottom-toolbar {
  padding: 12px var(--cc-space-3);
}

[data-theme] .btn-bottom-toolbar .btn-group {
  display: inline-flex;
  align-items: stretch;
  gap: 6px;
}

[data-theme] .btn-bottom-toolbar .btn-group > .btn {
  margin: 0 !important;
  border-radius: var(--cc-r-ctrl) !important;
}

[data-theme] .btn-bottom-toolbar .btn-group > .dropdown-toggle {
  min-width: var(--cc-ctrl-h);
  padding-left: 10px;
  padding-right: 10px;
}

[data-theme] .alert {
  padding: 12px var(--cc-space-2);
  margin-bottom: var(--cc-space-2);
}

[data-theme] hr {
  margin: var(--cc-space-2) 0;
}

/* ── Documentos / setup / projeto ── */
[data-theme] .preview-tabs-top .nav-tabs {
  margin-bottom: var(--cc-space-2);
}

[data-theme] .preview-tabs-top .btn-group {
  margin-left: var(--cc-space);
}

[data-theme] #invoice-preview .row,
[data-theme] #estimate-preview .row {
  margin-bottom: 0;
}

[data-theme] #invoice-preview hr,
[data-theme] #estimate-preview hr,
[data-theme] .proposal-view hr {
  border-color: var(--cc-hairline);
}

[data-theme] .table.items tfoot tr:last-child td,
[data-theme] #invoice-preview td.total,
[data-theme] #estimate-preview td.total {
  font-weight: 600;
  border-top: 1px solid var(--cc-hairline) !important;
  padding-top: 12px;
}

[data-theme] ._transaction_form .col-md-6.border-right {
  padding-right: var(--cc-space-3);
}

[data-theme] [class^="settings-group-"] a {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  margin: 0 -12px;
  border-radius: var(--cc-r-ctrl);
  border: 1px solid transparent;
}

[data-theme] [class^="settings-group-"] a.tw-text-neutral-800 {
  border-color: var(--cc-hairline);
}

[data-theme] #settings-form .panel-body .form-group:last-child {
  margin-bottom: 0;
}

[data-theme] .nav-tabs-segmented > li > a {
  padding: 10px 14px;
  border-radius: var(--cc-r-ctrl) var(--cc-r-ctrl) 0 0;
}

[data-theme] .project-tabs > li > a i.menu-icon {
  margin-right: var(--cc-space);
  color: var(--cc-meta);
}

[data-theme] .project-overview-open-tasks,
[data-theme] .project-overview-days-left {
  padding: 12px 14px !important;
  border-radius: var(--cc-r-card) !important;
}

[data-theme] .project-overview-table td {
  padding: 8px 0 !important;
}

[data-theme] .dataTables_empty,
[data-theme] table.dataTable td.dataTables_empty,
[data-theme] .no-todos,
[data-theme] .kanban-empty,
[data-theme] .empty-state {
  padding: var(--cc-space-3) var(--cc-space-2) !important;
  text-align: center;
  font-weight: 400;
}

[data-theme] .preview-sticky-header {
  padding: 12px var(--cc-space-3);
}

[data-theme] .customers .action-button {
  min-height: var(--cc-ctrl-h);
}

/* ── Tickets ── */
[data-theme] .tw-sticky.tw-top-0.tw-bg-gradient-to-r {
  padding: 12px var(--cc-space-2) !important;
  height: auto !important;
  min-height: 57px;
}

[data-theme] .ticket-thread {
  padding: var(--cc-space-2) !important;
  border-radius: var(--cc-r-card);
}

[data-theme] .ticket-thread.client-reply {
  border-left: 2px solid var(--cc-accent);
}

[data-theme] .ticket-thread .tc-content {
  margin-top: var(--cc-space);
}

[data-theme] .ticketstaffnotes .tw-rounded-lg {
  border: 1px solid var(--cc-hairline);
  border-radius: var(--cc-r-card) !important;
}

[data-theme] .ticket-reply-tools {
  margin-top: var(--cc-space-2);
}

[data-theme] .ticket-reply-tools .tw-border-t {
  padding: 12px var(--cc-space-2) !important;
}

/* ── Ficha do cliente ── */
[data-theme] .customer-tabs a {
  border-radius: var(--cc-r-ctrl);
  border: 1px solid transparent;
  padding: 8px 12px;
}

[data-theme] .customer-tabs a.tw-bg-neutral-50,
[data-theme] .customer-tabs a.tw-text-primary-600 {
  border-color: var(--cc-hairline);
}

[data-theme] .customer-profile-group-heading {
  font-weight: 600;
}

[data-theme] .customer-profile-tabs > li > a {
  padding: 10px 14px;
}

[data-theme] .customer-profile-attachment {
  padding: var(--cc-space-2);
  border-radius: var(--cc-r-card);
}

[data-theme] .tw-rounded-lg.tw-border.tw-border-solid.tw-shadow-sm {
  box-shadow: none !important;
  border-radius: var(--cc-r-card) !important;
}

/* ── Toolbar de listas (botões desalinhados) ── */
[data-theme] ._buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cc-space);
  margin-bottom: var(--cc-space-2);
}

[data-theme] ._buttons .btn,
[data-theme] ._buttons .btn-group {
  margin-bottom: 0;
  margin-right: 0;
  vertical-align: middle;
}

[data-theme] ._buttons .pull-right,
[data-theme] ._buttons .ltr\:tw-ml-auto {
  float: none;
  margin-left: auto;
}

[data-theme] ._buttons .pull-left {
  float: none;
}

/* ── Calendário (admin + portal) ── */
[data-theme] #calendar_filters .row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0;
}

[data-theme] #calendar_filters .col-md-3 {
  float: none;
  width: auto;
  flex: 1 1 180px;
  padding-bottom: var(--cc-space);
}

[data-theme] #calendar_filters .col-md-3.text-right {
  flex: 0 1 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--cc-space);
  text-align: left;
}

[data-theme] #calendar_filters .checkbox {
  margin-bottom: 6px;
}

[data-theme] #calendar_filters hr {
  margin: var(--cc-space) 0 var(--cc-space-2);
}

[data-theme] .fc .fc-toolbar.fc-header-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cc-space);
  margin-bottom: var(--cc-space-2) !important;
}

[data-theme] .fc .fc-toolbar-chunk {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 4px;
}

[data-theme] .fc .fc-button-primary {
  min-height: var(--cc-ctrl-h-sm);
  height: var(--cc-ctrl-h-sm);
  padding: 0 12px !important;
  line-height: 1;
  font-weight: 500;
  text-transform: capitalize;
}

[data-theme] .fc .fc-button-group {
  display: inline-flex;
  align-items: stretch;
}

[data-theme] .fc .fc-button-group > .fc-button {
  margin: 0 !important;
}

[data-theme] .fc-event,
[data-theme] .fc .fc-event,
[data-theme] .fc .fc-daygrid-event {
  margin: 2px 3px !important;
  padding: 3px 8px !important;
  border-radius: var(--cc-r-ctrl) !important;
  border: 0 !important;
  font-size: 12px;
  line-height: 1.3;
}

[data-theme] #calendar-event-form .clearfix.mtop15 {
  margin-top: 0;
  height: 0;
  overflow: hidden;
}

[data-theme] #calendar-event-form .col-md-6 {
  margin-bottom: var(--cc-space);
}

/* ── Portal logado ── */
[data-theme] body.customers #content {
  padding-top: var(--cc-space-3);
  padding-bottom: var(--cc-space-3);
}

[data-theme] .customers .navbar a.navbar-brand {
  padding: 11px 0;
  height: 56px;
  display: flex;
  align-items: center;
  margin-right: var(--cc-space-2);
}

[data-theme] .customers .navbar a.navbar-brand img {
  height: 32px;
  width: auto;
}

[data-theme] .customers .navbar-default .navbar-nav > li > a {
  padding: 16px 12px;
  line-height: 24px;
}

[data-theme] .customers .navbar-default .navbar-nav > li.customers-nav-item-profile > a {
  padding-top: 12px;
  padding-bottom: 12px;
  display: flex;
  align-items: center;
}

[data-theme] .client-profile-image-small {
  height: 32px;
  width: 32px;
  vertical-align: middle;
}

[data-theme] .client-profile-image-thumb {
  height: 80px;
  width: 80px;
}

[data-theme] .customers .customer-top-submenu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cc-space-2);
  list-style: none;
  padding: 0 0 var(--cc-space-2);
  margin: 0 0 var(--cc-space-2);
  border-bottom: 1px solid var(--cc-hairline);
}

[data-theme] .customers .customer-top-submenu > li {
  float: none;
  margin: 0;
}

[data-theme] .customers h3,
[data-theme] .customers h4.section-heading,
[data-theme] .customers .tickets-summary-heading,
[data-theme] .customers .projects-summary-heading,
[data-theme] .customers .invoices-quick-info-heading {
  margin-top: 0;
  margin-bottom: var(--cc-space-2);
}

[data-theme] .customers dl.tw-grid > a {
  border-radius: var(--cc-r-card) !important;
  border-color: var(--cc-hairline) !important;
  min-height: 72px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

[data-theme] .customers dl.tw-grid > a > div {
  padding: 12px 16px !important;
}

[data-theme] .customers .invoices-stats > [class*="col-md-"] {
  margin-bottom: var(--cc-space-2);
}

[data-theme] .customers .invoices-stats .stats-status,
[data-theme] .customers .invoices-stats .stats-numbers {
  line-height: 1.3;
  min-height: 20px;
}

[data-theme] .customers form.dropzone,
[data-theme] .customers .dropzone {
  min-height: 120px;
  padding: var(--cc-space-3);
  display: flex;
  align-items: center;
  justify-content: center;
}

[data-theme] .customers .dropzone .dz-message {
  margin: 0 !important;
}

[data-theme] .customers .section-heading-tickets + .btn,
[data-theme] .customers .tw-flex.tw-items-center.tw-justify-between {
  align-items: center;
}

[data-theme] .customers .gpicker {
  min-height: var(--cc-ctrl-h);
  border-radius: var(--cc-r-ctrl);
  padding: 7px 14px;
}

/* ── DataTables: mostrar N + pesquisar ── */
[data-theme] .dataTables_wrapper > .row:first-child > [class*="col-"]:first-child,
[data-theme] .dataTables_wrapper > .row:first-of-type > div:first-child {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cc-space);
}

[data-theme] .dataTables_wrapper > .row:first-child > [class*="col-"]:last-child {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

[data-theme] .dataTables_wrapper .dataTables_length,
[data-theme] .dataTables_wrapper .dataTables_filter,
[data-theme] .dataTables_wrapper .dt-buttons,
[data-theme] .dataTables_wrapper .btn-dt-reload {
  display: flex;
  align-items: center;
  float: none !important;
  min-height: var(--cc-ctrl-h);
  margin: 0 0 var(--cc-space) 0 !important;
}

[data-theme] .dataTables_wrapper .dt-buttons {
  gap: var(--cc-space);
}

[data-theme] .dataTables_wrapper .dt-buttons .btn,
[data-theme] .dataTables_wrapper .dt-buttons .btn-group,
[data-theme] .dataTables_wrapper .btn-dt-reload {
  margin: 0 !important;
}

[data-theme] .dataTables_wrapper .dataTables_length label,
[data-theme] .dataTables_wrapper .dataTables_filter label {
  display: inline-flex;
  align-items: center;
  gap: var(--cc-space);
  margin: 0;
  font-weight: 400;
  font-size: 12px;
  color: var(--text-muted);
}

[data-theme] .dataTables_wrapper .dataTables_length select.input-sm,
[data-theme] .dataTables_wrapper .dataTables_filter input.input-sm {
  height: var(--cc-ctrl-h);
  min-height: var(--cc-ctrl-h);
  padding: 6px 10px;
}

[data-theme] .dataTables_wrapper .dataTables_filter .input-group-addon {
  height: var(--cc-ctrl-h);
  line-height: calc(var(--cc-ctrl-h) - 2px);
}

/* ── Relatórios: item ativo ── */
[data-theme] ul.reports a {
  border-radius: var(--cc-r-ctrl) !important;
  box-shadow: none !important;
}

[data-theme] ul.reports a[data-active="true"] {
  border: 1px solid var(--cc-hairline) !important;
  box-shadow: none !important;
}

/* ── Ficha de staff ── */
[data-theme] .staff-profile-image-thumb {
  height: 80px;
  width: 80px;
  border-radius: 50%;
}

[data-theme] form#staff_profile_table .form-group .row {
  display: flex;
  align-items: flex-start;
  gap: var(--cc-space-2);
}

[data-theme] form#staff_profile_table .form-group .col-md-9,
[data-theme] form#staff_profile_table .form-group .col-md-3 {
  float: none;
  width: auto;
}

/* ── Gantt ── */
[data-theme] .gantt-container {
  border: 1px solid var(--cc-hairline);
  border-radius: var(--cc-r-card);
}

[data-theme] .form-group.pull-right:has([name^="gantt_"]) {
  float: none;
  display: inline-flex;
  align-items: center;
  margin: 0 0 var(--cc-space) var(--cc-space);
  vertical-align: middle;
}

[data-theme] svg#gantt {
  display: block;
  width: 100%;
}

[data-theme] .gantt-container .popup-wrapper {
  border-radius: var(--cc-r-ctrl);
}

/* ── Abrir ticket (portal) ── */
[data-theme] .cc-ticket-section {
  margin-bottom: var(--cc-space-3);
  padding-bottom: var(--cc-space-2);
  border-bottom: 1px solid var(--cc-hairline);
}

[data-theme] .cc-ticket-section--last,
[data-theme] .cc-ticket-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

[data-theme] .cc-ticket-section__title {
  margin: 0 0 var(--cc-space-2);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted);
}

/* ── Lembrete do evento ── */
[data-theme] .cc-event-reminder__row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: var(--cc-space);
}

[data-theme] .cc-event-reminder__row .input-group {
  flex: 1 1 140px;
  min-width: 0;
}

[data-theme] .cc-event-reminder__row .bootstrap-select {
  flex: 1 1 140px;
  min-width: 0;
}

[data-theme] .cc-event-reminder__row .input-group-addon {
  height: var(--cc-ctrl-h);
}

/* ── Stats de fatura (portal) ── */
[data-theme] .cc-invoice-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--cc-space-2);
  margin-bottom: var(--cc-space-3);
}

@media (max-width: 991px) {
  [data-theme] .cc-invoice-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  [data-theme] .cc-invoice-stats {
    grid-template-columns: 1fr;
  }
}

[data-theme] .cc-invoice-stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 88px;
  padding: 14px 16px;
  border: 1px solid var(--cc-hairline);
  border-radius: var(--cc-r-card);
  text-decoration: none !important;
}

[data-theme] .cc-invoice-stat .progress {
  margin: 4px 0 0;
  height: 6px;
}

[data-theme] .cc-invoice-stat__label {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
}

[data-theme] .cc-invoice-stat__num {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
}

/* ── Painéis: anular -mx-6 do core (padding do tema é 16px, não 24px) ── */
[data-theme] .panel-table-full .dataTables_wrapper .table-responsive,
[data-theme] .panel_s .hr-panel-heading,
[data-theme] .panel_s .hr-panel-separator,
[data-theme] .panel .hr-panel-heading,
[data-theme] .panel .hr-panel-separator {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

[data-theme] .panel-table-full .dataTables_wrapper {
  overflow-x: auto;
}

[data-theme] .panel-table-full .dataTables_wrapper.app_dt_empty .table-responsive,
[data-theme] .dataTables_wrapper.app_dt_empty table.dataTable {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── Select + botão (+) no mesmo grupo ── */
[data-theme] .input-group-select.input-group,
[data-theme] .input-group.input-group-select {
  display: flex;
  align-items: stretch;
  width: 100%;
}

[data-theme] .input-group-select > .bootstrap-select,
[data-theme] .input-group-select > .btn-group.bootstrap-select,
[data-theme] .input-group > .bootstrap-select {
  flex: 1 1 auto;
  width: auto !important;
  min-width: 0;
  max-width: 100%;
}

[data-theme] .input-group-select > .input-group-btn {
  flex: 0 0 auto;
}

/* ── Datepicker: ícone do calendário ── */
[data-theme] .input-group.date .input-group-addon {
  width: var(--cc-ctrl-h);
  min-width: var(--cc-ctrl-h);
  height: var(--cc-ctrl-h);
  padding: 0;
}

[data-theme] .input-group.date .input-group-addon .calendar-icon,
[data-theme] .input-group.date .input-group-addon i {
  font-size: 14px;
  line-height: 1;
}

/* ── Desconto % / valor fixo ── */
[data-theme] #discount-total .input-group-addon {
  min-width: 52px;
  padding: 0 12px;
}

[data-theme] #discount-total .discount-total-type-selected {
  display: inline-block;
  min-width: 1.2em;
  text-align: center;
}

[data-theme] #discount-total .dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

/* ── Add Item (proposals / estimates / invoices) ── */
[data-theme] .items-wrapper {
  margin-bottom: var(--cc-space-2);
}

[data-theme] .items-select-wrapper {
  flex: 1 1 auto;
  min-width: 180px;
  position: relative;
}

[data-theme] .items-select-wrapper .bootstrap-select {
  width: 100% !important;
  min-width: 180px;
}

[data-theme] .items-select-wrapper .bootstrap-select .dropdown-menu {
  min-width: 280px;
  width: max(100%, 280px);
}

[data-theme] .bs-searchbox {
  padding: 8px;
}

[data-theme] .bs-searchbox .form-control {
  width: 100% !important;
  min-width: 0;
  height: var(--cc-ctrl-h);
  min-height: var(--cc-ctrl-h);
}
