/*
 * PajakOnline global primary color override.
 * Loaded after the core and module styles so all modules inherit the green brand.
 */
:root {
  --pajakonline-primary: #16a34a;
  --pajakonline-primary-hover: #15803d;
  --pajakonline-primary-dark: #166534;
  --pajakonline-primary-soft: #dcfce7;
  --pajakonline-primary-border: #86efac;
  --pajakonline-primary-ring: rgba(22, 163, 74, 0.22);
}

.text-primary,
.tw-text-primary-500,
.tw-text-primary-600,
.tw-text-primary-700,
.tw-text-primary-800,
.text-info,
.menu-item-active,
.customers .navbar-default .navbar-nav > .active > a,
.customers .navbar-default .navbar-nav > li > a:hover {
  color: var(--pajakonline-primary) !important;
}

.btn-primary,
.btn-info,
.bg-primary,
.label-primary,
.badge-primary,
.progress-bar,
.progress-bar-info,
.panel-primary > .panel-heading,
.list-group-item.active,
.list-group-item.active:focus,
.list-group-item.active:hover,
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus,
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus,
.open > .dropdown-toggle.btn-primary,
.open > .dropdown-toggle.btn-info,
.tw-bg-primary-500,
.tw-bg-primary-600,
.tw-bg-primary-700,
.bg-info {
  background-color: var(--pajakonline-primary) !important;
  background-image: none !important;
  border-color: var(--pajakonline-primary) !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-primary:hover,
.open > .dropdown-toggle.btn-primary:focus,
.open > .dropdown-toggle.btn-info:hover,
.open > .dropdown-toggle.btn-info:focus,
.tw-bg-primary-500:hover,
.tw-bg-primary-600:hover,
.tw-bg-primary-700:hover {
  background-color: var(--pajakonline-primary-hover) !important;
  background-image: none !important;
  border-color: var(--pajakonline-primary-hover) !important;
  color: #fff !important;
}

.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info {
  background-color: var(--pajakonline-primary) !important;
  border-color: var(--pajakonline-primary) !important;
}

.btn-outline-primary,
.tw-border-primary-200,
.tw-border-primary-300,
.tw-border-primary-500,
.border-primary,
.panel-primary,
.radio-primary input[type="radio"]:checked + label::before,
.checkbox-primary input[type="checkbox"]:checked + label::before {
  border-color: var(--pajakonline-primary) !important;
}

.btn-outline-primary,
.tw-bg-primary-50,
.tw-bg-primary-100,
.bg-primary-light,
.alert-info,
.select2-container--default .select2-results__option--highlighted[aria-selected],
.bootstrap-select .dropdown-menu > li.selected > a {
  background-color: var(--pajakonline-primary-soft) !important;
  color: var(--pajakonline-primary-dark) !important;
}

.form-control:focus,
.bootstrap-select .btn:focus,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-search--dropdown .select2-search__field:focus,
input:focus,
textarea:focus {
  border-color: var(--pajakonline-primary) !important;
  box-shadow: 0 0 0 3px var(--pajakonline-primary-ring) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus,
.nav-tabs > li > a:hover {
  border-bottom-color: var(--pajakonline-primary) !important;
  color: var(--pajakonline-primary) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.dt-button-collection .dt-button.active {
  background: var(--pajakonline-primary) !important;
  border-color: var(--pajakonline-primary) !important;
  color: #fff !important;
}

.daterangepicker td.active,
.daterangepicker td.active:hover,
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover {
  background-color: var(--pajakonline-primary) !important;
  background-image: none !important;
}

/* Keep admin sidebar readable: text stays neutral, icons carry the brand. */
.admin #side-menu li > a,
.admin #side-menu li > a:hover,
.admin #side-menu li.active > a,
.admin #side-menu li.active > a:hover {
  color: #6b7280 !important;
}

.admin #side-menu li > a i,
.admin #side-menu li > a .menu-icon,
.admin #side-menu li > a svg,
.admin #side-menu li.active > a i,
.admin #side-menu li.active > a .menu-icon,
.admin #side-menu li.active > a svg {
  color: var(--pajakonline-primary) !important;
  fill: var(--pajakonline-primary) !important;
}

/* Client login button keeps the familiar blue call-to-action with white text. */
body.customers_login .login-form .btn-primary,
body.customers_login .login-form .btn-primary:hover,
body.customers_login .login-form .btn-primary:focus,
body.customers_login .login-form .btn-primary:active {
  background-color: #0d6efd !important;
  background-image: none !important;
  border-color: #0d6efd !important;
  color: #fff !important;
}

.pajakonline-news-panel {
  margin-top: 28px;
}

.pajakonline-news-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.pajakonline-news-heading h3 {
  margin: 0;
}

.pajakonline-news-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.pajakonline-news-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  color: #111827 !important;
  text-decoration: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.pajakonline-news-card:hover,
.pajakonline-news-card:focus {
  border-color: var(--pajakonline-primary-border);
  box-shadow: 0 8px 22px rgba(22, 163, 74, 0.12);
  color: #111827 !important;
  transform: translateY(-1px);
}

.pajakonline-news-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: var(--pajakonline-primary-soft);
}

.pajakonline-news-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
}

.pajakonline-news-title {
  margin: 0;
  color: #111827;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}

.pajakonline-news-date {
  margin-top: auto;
  color: #64748b;
  font-size: 12px;
}

@media (max-width: 991px) {
  .pajakonline-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .pajakonline-news-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .pajakonline-news-grid {
    grid-template-columns: 1fr;
  }
}
