@charset "UTF-8";
/**
 * Stisla - Modernized Version
 *
 * Based on Stisla v2.2.0
 * Refreshed with contemporary colors, softer shadows, rounded corners,
 * and smooth transitions while preserving all original class names.
 *
 * Theme: Dark Maroon & Blue Gradient
 */
:root {
  /* Modern color palette – Dark Maroon & Blue */
  --primary: #8b0000;           /* Dark maroon */
  --secondary: #003265;         /* Deep blue */
  --success: #10b981;           /* Emerald (unchanged) */
  --info: #3b82f6;              /* Blue (unchanged) */
  --warning: #f59e0b;           /* Amber (unchanged) */
  --danger: #ef4444;            /* Red (unchanged) */
  --light: #f8fafc;             /* Light gray */
  --dark: #1e293b;              /* Dark slate */
  --white: #ffffff;
  --black: #0f172a;
  --gray: #94a3b8;
  --gray-dark: #334155;

  /* Gradient for primary elements */
  --primary-gradient: linear-gradient(135deg, #8b0000, #003265);

  /* Spacing & radii */
  --border-radius-sm: 0.375rem;
  --border-radius: 0.5rem;
  --border-radius-lg: 0.75rem;
  --border-radius-xl: 1rem;
  --box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.02);
  --box-shadow-hover: 0 20px 30px -10px rgba(0, 0, 0, 0.1);
  --transition: all 0.2s ease;
}

/* 3. Bootstrap Override */
/* 3.1 Misc */
.btn:focus,
.btn:active,
.btn:active:focus,
.custom-select:focus,
.form-control:focus {
  box-shadow: none !important;
  outline: none;
}

a {
  color: var(--primary);
  font-weight: 500;
  transition: var(--transition);
}
a:not(.btn-social-icon):not(.btn-social):not(.page-link) .ion,
a:not(.btn-social-icon):not(.btn-social):not(.page-link) .fas,
a:not(.btn-social-icon):not(.btn-social):not(.page-link) .far,
a:not(.btn-social-icon):not(.btn-social):not(.page-link) .fal,
a:not(.btn-social-icon):not(.btn-social):not(.page-link) .fab {
  margin-left: 4px;
}

/* Background utilities with gradient for primary */
.bg-primary {
  background: var(--primary-gradient) !important;
  background-color: var(--primary) !important; /* fallback */
}
.bg-secondary { background-color: var(--secondary) !important; }
.bg-success { background-color: var(--success) !important; }
.bg-info { background-color: var(--info) !important; }
.bg-warning { background-color: var(--warning) !important; }
.bg-danger { background-color: var(--danger) !important; }
.bg-light { background-color: var(--light) !important; }
.bg-dark { background-color: var(--dark) !important; }

.text-primary, .text-primary-all *, .text-primary-all *:before, .text-primary-all *:after { color: var(--primary) !important; }
.text-secondary, .text-secondary-all *, .text-secondary-all *:before, .text-secondary-all *:after { color: var(--secondary) !important; }
.text-success, .text-success-all *, .text-success-all *:before, .text-success-all *:after { color: var(--success) !important; }
.text-info, .text-info-all *, .text-info-all *:before, .text-info-all *:after { color: var(--info) !important; }
.text-warning, .text-warning-all *, .text-warning-all *:before, .text-warning-all *:after { color: var(--warning) !important; }
.text-danger, .text-danger-all *, .text-danger-all *:before, .text-danger-all *:after { color: var(--danger) !important; }
.text-light, .text-light-all *, .text-light-all *:before, .text-light-all *:after { color: var(--light) !important; }
.text-white, .text-white-all *, .text-white-all *:before, .text-white-all *:after { color: var(--white) !important; }
.text-dark, .text-dark-all *, .text-dark-all *:before, .text-dark-all *:after { color: var(--dark) !important; }

.font-weight-normal { font-weight: 500 !important; }
.lead { line-height: 1.7; }
@media (max-width: 575.98px) {
  .lead { font-size: 1.1rem; line-height: 1.6; }
}

h1 {
    font-weight: 700;
    color: var(--dark);
}

h2 {
    font-weight: 700;
    color: var(--dark);
}

h3 {
    font-weight: 700;
    color: var(--dark);
}

h4 {
    font-weight: 700;
    color: var(--white);
}

h5 {
    font-weight: 700;
    color: var(--white);
}

h6 {
    font-weight: 700;
    color: var(--dark);
}
p, ul:not(.list-unstyled), ol { line-height: 1.7; }
.shadow { box-shadow: var(--box-shadow) !important; }
.text-muted { color: var(--gray) !important; }

/* 3.2 Form */
.form-control,
.input-group-text,
.custom-select,
.custom-file-label {
  background-color: var(--white);
  border-color: #e2e8f0;
  border-radius: var(--border-radius-sm);
  transition: var(--transition);
}
.form-control:focus,
.input-group-text:focus,
.custom-select:focus,
.custom-file-label:focus {
  background-color: var(--white);
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1) !important;
}
.input-group-text,
select.form-control:not([size]):not([multiple]),
.form-control:not(.form-control-sm):not(.form-control-lg) {
  font-size: 0.95rem;
  padding: 0.6rem 1rem;
  height: auto;
}
textarea.form-control { height: auto !important; min-height: 80px; }
.custom-control { line-height: 1.6; }
.custom-file,
.custom-file-label,
.custom-select,
.custom-file-label:after,
.form-control[type="color"],
select.form-control:not([size]):not([multiple]) {
  height: calc(2.5rem + 2px);
}
.form-control.creditcard {
  background-position: 98%;
  background-repeat: no-repeat;
  background-size: 40px;
  padding-right: 60px;
}
.form-group {
  margin-bottom: 1.5rem;
}
.form-group .control-label,
.form-group > label {
  font-weight: 600;
  color: var(--dark);
  font-size: 0.85rem;
  letter-spacing: 0.3px;
  margin-bottom: 0.35rem;
}
.form-group.floating-addon {
  position: relative;
}
.form-group.floating-addon .input-group-prepend {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 5;
}
.form-group.floating-addon:not(.floating-addon-not-append) .input-group-append {
  position: absolute;
  top: 0;
  left: initial;
  right: 0;
  z-index: 5;
}
.form-group.floating-addon .input-group-prepend .input-group-text,
.form-group.floating-addon .input-group-append .input-group-text {
  border-color: transparent;
  background-color: transparent;
  font-size: 1.2rem;
  color: var(--gray);
}
.form-group.floating-addon .form-control {
  border-radius: var(--border-radius);
  padding-left: 45px;
}
.form-group.floating-addon .form-control + .form-control {
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  padding-left: 1rem;
}
.input-group-append [class*="btn-outline-"] {
  background-color: var(--white);
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::before,
.custom-control-input:checked ~ .custom-control-label::before {
  background: var(--primary-gradient) !important;
  background-color: var(--primary) !important;
}
.custom-file-label {
  line-height: 2.2;
  border-radius: var(--border-radius-sm);
}
.custom-file-label:after {
  height: calc(2.5rem + 2px);
  line-height: 2.2;
  border-color: transparent;
  border-radius: 0 var(--border-radius-sm) var(--border-radius-sm) 0;
}
.custom-file-input:focus + .custom-file-label {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}
.selectgroup { display: inline-flex; }
.selectgroup-item {
  flex-grow: 1;
  position: relative;
}
.selectgroup-item + .selectgroup-item { margin-left: -1px; }
.selectgroup-item:not(:first-child) .selectgroup-button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.selectgroup-item:not(:last-child) .selectgroup-button {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.selectgroup-input {
  opacity: 0;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
}
.selectgroup-button {
  background-color: var(--white);
  border: 1px solid #e2e8f0;
  display: block;
  text-align: center;
  padding: 0 1.2rem;
  height: 38px;
  position: relative;
  cursor: pointer;
  border-radius: var(--border-radius-sm);
  user-select: none;
  font-size: 0.9rem;
  min-width: 2.375rem;
  line-height: 36px;
  transition: var(--transition);
}
.selectgroup-button-icon {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.selectgroup-button-icon i { font-size: 1rem; }
.selectgroup-input:focus + .selectgroup-button,
.selectgroup-input:checked + .selectgroup-button {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
  border-color: var(--primary);
  z-index: 1;
}
.selectgroup-pills {
  display: block;
  flex-wrap: wrap;
  align-items: flex-start;
}
.selectgroup-pills .selectgroup-item {
  margin-right: 0.5rem;
  flex-grow: 0;
}
.selectgroup-pills .selectgroup-button {
  border-radius: 50px !important;
}
.custom-switch {
  user-select: none;
  cursor: default;
  display: inline-flex;
  align-items: center;
  margin: 0;
}
.custom-switch-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.custom-switches-stacked {
  display: flex;
  flex-direction: column;
}
.custom-switches-stacked .custom-switch { margin-bottom: 0.5rem; }
.custom-switch-indicator {
  display: inline-block;
  height: 1.5rem;
  width: 2.75rem;
  background: #e2e8f0;
  border-radius: 50px;
  position: relative;
  vertical-align: bottom;
  border: 1px solid #cbd5e1;
  transition: 0.2s;
}
.custom-switch-indicator:before {
  content: '';
  position: absolute;
  height: calc(1.5rem - 4px);
  width: calc(1.5rem - 4px);
  top: 1px;
  left: 1px;
  background: var(--white);
  border-radius: 50%;
  transition: 0.2s;
}
.custom-switch-input:checked ~ .custom-switch-indicator {
  background: var(--primary-gradient);
  background-color: var(--primary);
  border-color: var(--primary);
}
.custom-switch-input:checked ~ .custom-switch-indicator:before {
  left: calc(1.5rem - 2px);
}
.custom-switch-input:focus ~ .custom-switch-indicator {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}
.custom-switch-description {
  margin-left: 0.5rem;
  color: var(--gray-dark);
}
.custom-switch-input:checked ~ .custom-switch-description {
  color: var(--dark);
}
.imagecheck {
  margin: 0;
  position: relative;
  cursor: pointer;
}
.imagecheck-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.imagecheck-figure {
  background-color: var(--white);
  border: 1px solid #e2e8f0;
  border-radius: var(--border-radius);
  margin: 0;
  position: relative;
  transition: var(--transition);
}
.imagecheck-input:focus ~ .imagecheck-figure {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}
.imagecheck-input:checked ~ .imagecheck-figure {
  border-color: var(--primary);
}
.imagecheck-figure:before {
  content: '';
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  pointer-events: none;
  user-select: none;
  background: var(--primary) url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") no-repeat center center/50% 50%;
  color: var(--white);
  z-index: 1;
  border-radius: var(--border-radius-sm);
  opacity: 0;
  transition: 0.2s;
}
.imagecheck-input:checked ~ .imagecheck-figure:before { opacity: 1; }
.imagecheck-image {
  max-width: 100%;
  opacity: 0.8;
  transition: 0.2s;
}
.imagecheck-image:first-child { border-top-left-radius: calc(var(--border-radius) - 1px); border-top-right-radius: calc(var(--border-radius) - 1px); }
.imagecheck-image:last-child { border-bottom-left-radius: calc(var(--border-radius) - 1px); border-bottom-right-radius: calc(var(--border-radius) - 1px); }
.imagecheck:hover .imagecheck-image { opacity: 1; }
.imagecheck-input:focus ~ .imagecheck-figure .imagecheck-image,
.imagecheck-input:checked ~ .imagecheck-figure .imagecheck-image { opacity: 1; }
.imagecheck-caption {
  text-align: center;
  padding: 0.375rem 0.25rem;
  color: var(--gray);
  font-size: 0.875rem;
}
.imagecheck:hover .imagecheck-caption { color: var(--dark); }
.imagecheck-input:focus ~ .imagecheck-figure .imagecheck-caption,
.imagecheck-input:checked ~ .imagecheck-figure .imagecheck-caption { color: var(--dark); }
.colorinput {
  margin: 0;
  position: relative;
  cursor: pointer;
}
.colorinput-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.colorinput-color {
  background-color: var(--white);
  border: 1px solid #e2e8f0;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  border-radius: var(--border-radius);
  color: var(--white);
  box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  transition: var(--transition);
}
.colorinput-color:before {
  content: '';
  opacity: 0;
  position: absolute;
  top: 0.35rem;
  left: 0.35rem;
  height: 1.3rem;
  width: 1.3rem;
  transition: 0.2s;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") no-repeat center center/50% 50%;
}
.colorinput-input:checked ~ .colorinput-color:before { opacity: 1; }
.colorinput-input:focus ~ .colorinput-color {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}

/* 3.3 List */
.list-unstyled-border li {
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.list-unstyled-border li .custom-checkbox { margin-right: 1rem; }
.list-unstyled-border li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.list-unstyled-noborder li:last-child { border-bottom: none; }
.list-group-item.active {
  background: var(--primary-gradient);
  background-color: var(--primary);
  border-color: var(--primary);
}
.list-group-item.disabled { color: var(--gray); }
.list-group-item-primary {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
}
.list-group-item-secondary { background-color: var(--secondary); color: var(--white); }
.list-group-item-success { background-color: var(--success); color: var(--white); }
.list-group-item-danger { background-color: var(--danger); color: var(--white); }
.list-group-item-warning { background-color: var(--warning); color: var(--white); }
.list-group-item-info { background-color: var(--info); color: var(--white); }
.list-group-item-light { background-color: var(--light); color: var(--dark); }
.list-group-item-dark { background-color: var(--dark); color: var(--white); }

/* 3.4 Alert */
.alert {
  color: var(--white);
  border: none;
  padding: 1rem 1.25rem;
  border-radius: var(--border-radius);
}
.alert .alert-title {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0.35rem;
}
.alert code {
  background-color: rgba(255,255,255,0.2);
  border-radius: var(--border-radius-sm);
  padding: 2px 6px;
  color: inherit;
}
.alert p { margin-bottom: 0; }
.alert.alert-has-icon { display: flex; }
.alert.alert-has-icon .alert-icon {
  margin-top: 2px;
  width: 2rem;
}
.alert.alert-has-icon .alert-icon .ion,
.alert.alert-has-icon .alert-icon .fas,
.alert.alert-has-icon .alert-icon .far,
.alert.alert-has-icon .alert-icon .fab,
.alert.alert-has-icon .alert-icon .fal {
  font-size: 1.3rem;
}
.alert.alert-has-icon .alert-body { flex: 1; }
.alert:not(.alert-light) a { color: var(--white); text-decoration: underline; }
.alert.alert-primary {
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.alert.alert-secondary { background-color: var(--secondary); }
.alert.alert-success { background-color: var(--success); }
.alert.alert-info { background-color: var(--info); }
.alert.alert-warning { background-color: var(--warning); }
.alert.alert-danger { background-color: var(--danger); }
.alert.alert-light {
  background-color: var(--light);
  color: var(--dark);
  border: 1px solid #e2e8f0;
}
.alert.alert-dark { background-color: var(--dark); }

/* 3.5 Card */
.card {
  box-shadow: var(--box-shadow);
  background-color: var(--white);
  border-radius: var(--border-radius);
  border: none;
  position: relative;
  margin-bottom: 1.8rem;
  transition: var(--transition);
}
.card:hover { box-shadow: var(--box-shadow-hover); }
.card .card-header, .card .card-body, .card .card-footer {
  background-color: transparent;
  padding: 1.5rem 1.8rem;
}
.card .navbar { position: static; }
.card .card-body { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.card .card-body .section-title {
  margin: 1.5rem 0 0.75rem;
  font-size: 1.1rem;
}
.card .card-body .section-title:before { margin-top: 6px; }
.card .card-body .section-title + .section-lead { margin-top: -0.25rem; }
.card .card-body p { font-weight: 400; }
.card .card-header {
  border-bottom: 1px solid #f1f5f9;
  line-height: 1.5;
  align-self: center;
  width: 100%;
  min-height: auto;
  padding: 1.2rem 1.8rem;
  display: flex;
  align-items: center;
}
.card .card-header .btn {
  margin-top: 0;
  padding: 0.3rem 1.2rem;
  border-radius: 50px !important;
}
.card .card-header .btn:hover { box-shadow: none; }
.card .card-header .form-control {
  height: 38px;
  font-size: 0.9rem;
  border-radius: 50px;
}
.card .card-header h4 {
  font-size: 1.2rem;
  line-height: 1.5;
  padding-right: 1rem;
  margin-bottom: 0;
  color: #ffffff;
}
.card .card-header h4 + .card-header-action,
.card .card-header h4 + .card-header-form {
  margin-left: auto;
}
.card .card-header h4 + .card-header-action .btn,
.card .card-header h4 + .card-header-form .btn {
  font-size: 0.85rem;
  border-radius: 50px !important;
  padding-left: 1.2rem !important;
  padding-right: 1.2rem !important;
}
.card .card-header h4 + .card-header-action .btn.active,
.card .card-header h4 + .card-header-form .btn.active {
  box-shadow: 0 4px 10px rgba(139, 0, 0, 0.3);
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
}
.card .card-header h4 + .card-header-action .dropdown,
.card .card-header h4 + .card-header-form .dropdown { display: inline; }
.card .card-header h4 + .card-header-action .btn-group .btn,
.card .card-header h4 + .card-header-form .btn-group .btn { border-radius: 0 !important; }
.card .card-header h4 + .card-header-action .btn-group .btn:first-child,
.card .card-header h4 + .card-header-form .btn-group .btn:first-child {
  border-radius: 50px 0 0 50px !important;
}
.card .card-header h4 + .card-header-action .btn-group .btn:last-child,
.card .card-header h4 + .card-header-form .btn-group .btn:last-child {
  border-radius: 0 50px 50px 0 !important;
}
.card .card-header h4 + .card-header-action .input-group .form-control,
.card .card-header h4 + .card-header-form .input-group .form-control {
  border-radius: 50px 0 0 50px !important;
}
.card .card-header h4 + .card-header-action .input-group .form-control + .input-group-btn .btn,
.card .card-header h4 + .card-header-form .input-group .form-control + .input-group-btn .btn {
  border-radius: 0 50px 50px 0 !important;
}
.card .card-header h4 + .card-header-action .input-group .input-group-btn + .form-control,
.card .card-header h4 + .card-header-form .input-group .input-group-btn + .form-control {
  border-radius: 0 50px 50px 0 !important;
}
.card .card-header h4 + .card-header-action .input-group .input-group-btn .btn,
.card .card-header h4 + .card-header-form .input-group .input-group-btn .btn {
  margin-top: 0;
  border-radius: 50px 0 0 50px !important;
}
.card .card-footer {
  background-color: transparent;
  border-top: 1px solid #f1f5f9;
}
.card.card-mt { margin-top: 1.8rem; }
.card.card-progress:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.6);
  z-index: 99;
}
.card.card-progress .card-progress-dismiss {
  position: absolute;
  top: 66%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
  color: var(--white) !important;
  padding: 0.5rem 1.2rem;
  border-radius: 50px;
}
.card.card-progress.remove-spinner .card-progress-dismiss {
  top: 50%;
  transform: translate(-50%, -50%);
}
.card.card-progress:not(.remove-spinner):after {
  background-image: url("../img/spinner.svg");
  background-size: 80px;
  background-repeat: no-repeat;
  background-position: center;
}
.card.card-primary { border-top: 3px solid var(--primary); }
.card.card-secondary { border-top: 3px solid var(--secondary); }
.card.card-success { border-top: 3px solid var(--success); }
.card.card-danger { border-top: 3px solid var(--danger); }
.card.card-warning { border-top: 3px solid var(--warning); }
.card.card-info { border-top: 3px solid var(--info); }
.card.card-dark { border-top: 3px solid var(--dark); }
.card.card-hero .card-header {
  padding: 2.5rem;
  background: var(--primary-gradient);
  color: var(--white);
  overflow: hidden;
  height: auto;
  min-height: auto;
  display: block;
  border-bottom: none;
}
.card.card-hero .card-header h4 {
  font-size: 2.5rem;
  line-height: 1.2;
  color: var(--white);
}
.card.card-hero .card-header .card-description {
  margin-top: 0.5rem;
  font-size: 1.1rem;
  opacity: 0.9;
}
.card.card-hero .card-header .card-icon {
  float: right;
  color: rgba(255,255,255,0.2);
  margin: -3rem;
}
.card.card-hero .card-header .card-icon .ion,
.card.card-hero .card-header .card-icon .fas,
.card.card-hero .card-header .card-icon .far,
.card.card-hero .card-header .card-icon .fab,
.card.card-hero .card-header .card-icon .fal {
  font-size: 8rem;
}
.card.card-statistic-1 .card-header,
.card.card-statistic-2 .card-header {
  border-color: transparent;
  padding-bottom: 0;
  height: auto;
  min-height: auto;
  display: block;
}
.card.card-statistic-1 .card-header h4,
.card.card-statistic-2 .card-header h4 {
  line-height: 1.4;
  color: var(--gray);
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.card.card-statistic-1 .card-body,
.card.card-statistic-2 .card-body {
  padding-top: 0.5rem;
  font-size: 2rem;
  font-weight: 700;
  color: var(--dark);
}
.card.card-statistic-1,
.card.card-statistic-2 {
  display: inline-block;
  width: 100%;
}
.card.card-statistic-1 .card-icon,
.card.card-statistic-2 .card-icon {
  width: 4rem;
  height: 4rem;
  margin: 1rem;
  border-radius: var(--border-radius);
  line-height: 4rem;
  text-align: center;
  float: left;
  margin-right: 1.2rem;
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.card.card-statistic-1 .card-icon .ion,
.card.card-statistic-1 .card-icon .fas,
.card.card-statistic-1 .card-icon .far,
.card.card-statistic-1 .card-icon .fab,
.card.card-statistic-1 .card-icon .fal,
.card.card-statistic-2 .card-icon .ion,
.card.card-statistic-2 .card-icon .fas,
.card.card-statistic-2 .card-icon .far,
.card.card-statistic-2 .card-icon .fab,
.card.card-statistic-2 .card-icon .fal {
  font-size: 1.6rem;
  color: var(--white);
}
.card.card-statistic-1 .card-icon { line-height: 4rem; }
.card.card-statistic-2 .card-icon {
  width: 3.5rem;
  height: 3.5rem;
  line-height: 3.5rem;
  font-size: 1.4rem;
  margin: 1.5rem;
}
.card.card-statistic-1 .card-header,
.card.card-statistic-2 .card-header {
  padding-bottom: 0;
  padding-top: 1.5rem;
}
.card.card-statistic-2 .card-body { padding-top: 1rem; }
.card.card-statistic-2 .card-header + .card-body,
.card.card-statistic-2 .card-body + .card-header { padding-top: 0; }
.card .card-stats {
  width: 100%;
  display: inline-block;
  margin-top: 1rem;
}
.card .card-stats .card-stats-title {
  padding: 1rem 1.5rem;
  background-color: #f8fafc;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.card .card-stats .card-stats-items {
  display: flex;
  height: auto;
  align-items: center;
}
.card .card-stats .card-stats-item {
  width: calc(100% / 3);
  text-align: center;
  padding: 1rem 0.5rem;
}
.card .card-stats .card-stats-item .card-stats-item-label {
  font-size: 0.8rem;
  letter-spacing: 0.3px;
  color: var(--gray);
  text-transform: uppercase;
}
.card .card-stats .card-stats-item .card-stats-item-count {
  line-height: 1.3;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--dark);
}
.card.card-large-icons {
  display: flex;
  flex-direction: row;
}
.card.card-large-icons .card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 140px;
  border-radius: var(--border-radius) 0 0 var(--border-radius);
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.card.card-large-icons .card-icon .ion,
.card.card-large-icons .card-icon .fas,
.card.card-large-icons .card-icon .far,
.card.card-large-icons .card-icon .fab,
.card.card-large-icons .card-icon .fal {
  font-size: 3rem;
  color: var(--white);
}
.card.card-large-icons .card-body {
  padding: 1.8rem;
}
.card.card-large-icons .card-body h4 {
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
  color: var(--dark);
}
.card.card-large-icons .card-body p {
  opacity: 0.8;
  font-weight: 400;
}
.card.card-large-icons .card-body a.card-cta {
  text-decoration: none;
  font-weight: 600;
  color: var(--primary);
}
.card.card-large-icons .card-body a.card-cta i { margin-left: 0.3rem; }
.card.bg-primary, .card.bg-danger, .card.bg-success, .card.bg-info, .card.bg-dark, .card.bg-warning {
  color: var(--white);
}
.card.bg-primary .card-header, .card.bg-danger .card-header, .card.bg-success .card-header, .card.bg-info .card-header, .card.bg-dark .card-header, .card.bg-warning .card-header {
  color: var(--white);
  border-bottom-color: rgba(255,255,255,0.2);
}

@media (max-width: 575.98px) {
  .card.card-large-icons { display: inline-block; }
  .card.card-large-icons .card-icon {
    width: 100%;
    height: 150px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
  }
}
@media (max-width: 767.98px) {
  .card .card-header {
    height: auto;
    flex-wrap: wrap;
  }
  .card .card-header h4 + .card-header-action,
  .card .card-header h4 + .card-header-form {
    flex-grow: 0;
    width: 100%;
    margin-top: 0.75rem;
  }
}
/* 3.6 Table – Modern & Stylish */
:root {
  --table-header-bg: #f0f5fb;        /* updated header background */
  --table-border-color: #edf2f7;
  --table-hover-bg: #f1f5f9;
  --table-stripe-bg: #fafcff;
  --table-link-color: #4a5568;
  --table-shadow: 0 4px 12px rgba(0, 0, 0, 0.03), 0 1px 2px rgba(0, 0, 0, 0.05);
}

.table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background-color: white;
  border-radius: 0.75rem;
  overflow: hidden;
  box-shadow: var(--table-shadow);
  margin-bottom: 1rem;
}

/* Reset border‑top rule – now handled by separate border model */
.table td,
.table:not(.table-bordered) th {
  border-top: none;
}

/* Default cell padding (matches original logic) */
.table:not(.table-sm):not(.table-md):not(.dataTable) td,
.table:not(.table-sm):not(.table-md):not(.dataTable) th {
  padding: 1rem 1.5rem;
  height: auto;
  vertical-align: middle;
}

/* Header styling – modern, subtle bottom border and background */
.table:not(.table-sm) thead th {
  border-bottom: 1px solid var(--table-border-color);
  background-color: var(--table-header-bg);
  color: #1e293b;
  font-weight: 600;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/* Medium table padding */
.table.table-md th,
.table.table-md td {
  padding: 0.75rem 1rem;
}

/* Bordered table – consistent border color and cell borders */
.table.table-bordered {
  border: 1px solid var(--table-border-color);
  border-radius: 0.75rem;
}
.table.table-bordered td,
.table.table-bordered th {
  border: 1px solid var(--table-border-color);
}
/* Remove duplicate borders between cells */
.table.table-bordered td:not(:last-child),
.table.table-bordered th:not(:last-child) {
  border-right: none;
}
.table.table-bordered tbody tr:last-child td {
  border-bottom: none;
}

/* Table links – modern transition and positioning */
.table-links {
  color: #1e293b;
  font-size: 0.8rem;
  margin-top: 0.25rem;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  display: inline-block;
}
.table-links a {
  color: var(--table-link-color);
  text-decoration: none;
  font-weight: 500;
  border-bottom: 1px dotted transparent;
  transition: border-color 0.15s;
}
.table-links a:hover {
  border-bottom-color: currentColor;
}

/* Reveal links on row hover */
table tr:hover .table-links {
  opacity: 1;
}

/* Striped rows – modern stripe color */
.table-striped tbody tr:nth-of-type(odd) {
  background-color: var(--table-stripe-bg);
}

/* Row hover effect – subtle highlight */
.table tbody tr:hover {
  background-color: var(--table-hover-bg);
  transition: background-color 0.15s ease;
}

/* Responsive table – ensure horizontal scroll on small screens */
@media (max-width: 575.98px) {
  .table-responsive table {
    min-width: 800px;
  }
}

/* Optional: adjust first and last cell borders for rounded corners */
.table tr:first-child th:first-child {
  border-top-left-radius: 0.75rem;
}
.table tr:first-child th:last-child {
  border-top-right-radius: 0.75rem;
}
.table tr:last-child td:first-child {
  border-bottom-left-radius: 0.75rem;
}
.table tr:last-child td:last-child {
  border-bottom-right-radius: 0.75rem;
}

/* 3.7 Tooltip */
.tooltip { font-size: 0.85rem; }
.tooltip-inner {
  padding: 0.4rem 0.8rem;
  border-radius: var(--border-radius-sm);
}

/* 3.8 Modal */
.modal-header, .modal-body, .modal-footer { padding: 1.5rem; }
.modal-body { padding-top: 1rem; }
.modal-footer { padding-top: 1rem; padding-bottom: 1rem; }
.modal-header {
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 1rem;
}
.modal-header h5 { font-size: 1.3rem; font-weight: 600; }
.modal-footer {
  border-top: 1px solid #f1f5f9;
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.modal-content {
  max-width: 100%;
  border: none;
  border-radius: var(--border-radius);
  box-shadow: 0 20px 30px -10px rgba(0,0,0,0.2);
}
.modal.show .modal-content { box-shadow: 0 30px 40px -15px rgba(0,0,0,0.25); }
.modal-progress .modal-content { position: relative; }
.modal-progress .modal-content:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.6);
  z-index: 999;
  background-image: url("../img/spinner.svg");
  background-size: 80px;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: var(--border-radius);
}
.modal-part { display: none; }

/* 3.9 Nav */
.nav-tabs .nav-item .nav-link {
  color: var(--gray-dark);
  border: none;
  border-bottom: 2px solid transparent;
  font-weight: 600;
  padding: 0.75rem 1.2rem;
}
.nav-tabs .nav-item .nav-link.active {
  color: var(--primary);
  border-bottom-color: var(--primary);
  background: none;
}
.tab-content > .tab-pane {
  padding: 1.5rem 0;
  line-height: 1.7;
}
.tab-bordered .tab-pane {
  padding: 1.5rem;
  border: 1px solid #e2e8f0;
  border-radius: var(--border-radius);
  margin-top: -1px;
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: var(--white);
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.nav-pills .nav-item .nav-link {
  color: var(--gray-dark);
  padding-left: 1.2rem !important;
  padding-right: 1.2rem !important;
  border-radius: 50px;
  transition: var(--transition);
}
.nav-pills .nav-item .nav-link:hover {
  background-color: #f1f5f9;
  color: var(--dark);
}
.nav-pills .nav-item .nav-link.active {
  box-shadow: 0 4px 10px rgba(139, 0, 0, 0.3);
  color: var(--white);
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.nav-pills .nav-item .nav-link .badge {
  padding: 0.25rem 0.5rem;
  margin-left: 0.5rem;
}
.nav .nav-item .nav-link .ion,
.nav .nav-item .nav-link .fas,
.nav .nav-item .nav-link .far,
.nav .nav-item .nav-link .fab,
.nav .nav-item .nav-link .fal {
  margin-right: 0.4rem;
  font-size: 0.9rem;
}

/* 3.10 Pagination */
.page-item .page-link {
  color: var(--primary);
  border-radius: var(--border-radius);
  margin: 0 0.2rem;
  border: 1px solid #e2e8f0;
  transition: var(--transition);
}
.page-item.active .page-link {
  background: var(--primary-gradient);
  background-color: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}
.page-item.disabled .page-link {
  border-color: #f1f5f9;
  background-color: #f8fafc;
  color: var(--gray);
  opacity: 0.6;
}
.page-link {
  border-color: #e2e8f0;
  background-color: var(--white);
  font-weight: 500;
}
.page-link:hover {
  background-color: var(--primary);
  color: var(--white);
  border-color: var(--primary);
}
.page-link:focus { box-shadow: none; }

/* 3.11 Badge */
.badges .badge { margin: 0 0.5rem 0.5rem 0; }
.badge {
  vertical-align: middle;
  padding: 0.4rem 0.8rem;
  font-weight: 600;
  letter-spacing: 0.2px;
  border-radius: 50px;
  font-size: 0.8rem;
}
.badge.badge-warning { color: var(--white); }
.badge.badge-primary {
  background: var(--primary-gradient);
  background-color: var(--primary);
}
.badge.badge-secondary { background-color: var(--secondary); }
.badge.badge-success { background-color: var(--success); }
.badge.badge-info { background-color: var(--info); }
.badge.badge-danger { background-color: var(--danger); }
.badge.badge-light {
  background-color: var(--light);
  color: var(--dark);
  border: 1px solid #e2e8f0;
}
.badge.badge-white {
  background-color: var(--white);
  color: var(--dark);
  border: 1px solid #e2e8f0;
}
.badge.badge-dark { background-color: var(--dark); }
h1 .badge { font-size: 1.3rem; padding: 0.6rem 1rem; }
h2 .badge { font-size: 1.2rem; padding: 0.5rem 0.9rem; }
h3 .badge { font-size: 1rem; padding: 0.4rem 0.8rem; }
h4 .badge { font-size: 0.9rem; padding: 0.35rem 0.7rem; }
h5 .badge { font-size: 0.8rem; padding: 0.3rem 0.6rem; }
h6 .badge { font-size: 0.7rem; padding: 0.2rem 0.5rem; }
.btn .badge {
  margin-left: 0.4rem;
  padding: 0.2rem 0.5rem;
}
.btn .badge.badge-transparent {
  background-color: rgba(255,255,255,0.2);
  color: var(--white);
}

/* 3.12 Button */
.buttons .btn { margin: 0 0.5rem 0.5rem 0; }
.btn:focus { box-shadow: none !important; outline: none; }
.btn:active { box-shadow: none !important; }
.btn:active:focus { box-shadow: none !important; }
.btn.btn-icon-split i, .dropdown-item.has-icon i {
  text-align: center;
  width: 1rem;
  font-size: 1rem;
  float: left;
  margin-right: 0.6rem;
}
.btn {
  font-weight: 600;
  font-size: 0.85rem;
  line-height: 1.6;
  padding: 0.5rem 1.2rem;
  letter-spacing: 0.3px;
  border-radius: 50px;
  transition: var(--transition);
}
.btn.btn-icon-split { position: relative; }
.btn.btn-icon-split i {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 2.8rem;
  border-radius: 50px 0 0 50px;
  line-height: 2.4rem;
  background-color: rgba(0,0,0,0.05);
}
.btn.btn-icon-split div { margin-left: 2.8rem; }
.btn.btn-icon-noflo-splitat {
  display: table;
  text-align: right;
}
.btn.btn-icon-noflo-splitat i {
  float: none;
  margin: 0;
  display: table-cell;
  vertical-align: middle;
  width: 30%;
}
.btn.btn-icon-noflo-splitat div {
  display: table-cell;
  vertical-align: middle;
  width: 70%;
  text-align: left;
  padding-left: 0.6rem;
}
.btn:not(.btn-social):not(.btn-social-icon):active,
.btn:not(.btn-social):not(.btn-social-icon):focus,
.btn:not(.btn-social):not(.btn-social-icon):hover {
  border-color: transparent !important;
  background-color: #f1f5f9;
}
.btn > i { margin-left: 0 !important; }
.btn.btn-lg {
  padding: 0.7rem 2rem;
  font-size: 0.9rem;
}
.btn.btn-lg.btn-icon-split i { line-height: 2.7rem; }
.btn.btn-lg.btn-icon-split div { margin-left: 2.2rem; }
.btn.btn-sm {
  padding: 0.25rem 0.8rem;
  font-size: 0.75rem;
}
.btn.btn-icon .ion, .btn.btn-icon .fas, .btn.btn-icon .far, .btn.btn-icon .fab, .btn.btn-icon .fal {
  margin-left: 0 !important;
  font-size: 0.9rem;
}
.btn.btn-icon.icon-left .ion, .btn.btn-icon.icon-left .fas, .btn.btn-icon.icon-left .far, .btn.btn-icon.icon-left .fab, .btn.btn-icon.icon-left .fal {
  margin-right: 0.3rem;
}
.btn.btn-icon.icon-right .ion, .btn.btn-icon.icon-right .fas, .btn.btn-icon.icon-right .far, .btn.btn-icon.icon-right .fab, .btn.btn-icon.icon-right .fal {
  margin-left: 0.3rem !important;
}
.btn-action {
  color: var(--white) !important;
  line-height: 1.5;
  font-size: 0.85rem;
  min-width: 2.5rem;
  min-height: 2.5rem;
  padding: 0;
}
.btn-secondary, .btn-secondary.disabled {
  background-color: var(--secondary);
  border-color: var(--secondary);
  color: var(--white);
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active,
.btn-secondary.disabled:hover, .btn-secondary.disabled:focus, .btn-secondary.disabled:active {
  background-color: #002856 !important;
  border-color: #002856 !important;
  color: var(--white) !important;
}
.btn-outline-secondary {
  border-color: var(--secondary);
  color: var(--secondary);
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-secondary:active {
  background-color: var(--secondary) !important;
  color: var(--white) !important;
}
.btn-success, .btn-success.disabled {
  background-color: var(--success);
  border-color: var(--success);
  color: var(--white);
}
.btn-success:hover, .btn-success:focus, .btn-success:active,
.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled:active {
  background-color: #0d9488 !important;
  border-color: #0d9488 !important;
  color: var(--white) !important;
}
.btn-outline-success {
  border-color: var(--success);
  color: var(--success);
}
.btn-outline-success:hover, .btn-outline-success:focus, .btn-outline-success:active {
  background-color: var(--success) !important;
  color: var(--white) !important;
}
.btn-danger, .btn-danger.disabled {
  background-color: var(--danger);
  border-color: var(--danger);
  color: var(--white);
}
.btn-danger:hover, .btn-danger:focus, .btn-danger:active,
.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled:active {
  background-color: #dc2626 !important;
  border-color: #dc2626 !important;
  color: var(--white) !important;
}
.btn-outline-danger {
  border-color: var(--danger);
  color: var(--danger);
}
.btn-outline-danger:hover, .btn-outline-danger:focus, .btn-outline-danger:active {
  background-color: var(--danger) !important;
  color: var(--white) !important;
}
.btn-dark, .btn-dark.disabled {
  background-color: var(--dark);
  border-color: var(--dark);
  color: var(--white);
}
.btn-dark:hover, .btn-dark:focus, .btn-dark:active,
.btn-dark.disabled:hover, .btn-dark.disabled:focus, .btn-dark.disabled:active {
  background-color: #0f172a !important;
  border-color: #0f172a !important;
  color: var(--white) !important;
}
.btn-outline-dark {
  border-color: var(--dark);
  color: var(--dark);
}
.btn-outline-dark:hover, .btn-outline-dark:focus, .btn-outline-dark:active {
  background-color: var(--dark) !important;
  color: var(--white) !important;
}
.btn-light, .btn-light.disabled {
  background-color: var(--light);
  border-color: var(--light);
  color: var(--dark);
}
.btn-light:hover, .btn-light:focus, .btn-light:active,
.btn-light.disabled:hover, .btn-light.disabled:focus, .btn-light.disabled:active {
  background-color: #e2e8f0 !important;
  border-color: #e2e8f0 !important;
  color: var(--dark) !important;
}
.btn-outline-light {
  border-color: var(--light);
  color: var(--dark);
}
.btn-outline-light:hover, .btn-outline-light:focus, .btn-outline-light:active {
  background-color: var(--light) !important;
  color: var(--dark) !important;
}
.btn-warning, .btn-warning.disabled {
  background-color: var(--warning);
  border-color: var(--warning);
  color: var(--white);
}
.btn-warning:hover, .btn-warning:focus, .btn-warning:active,
.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled:active {
  background-color: #d97706 !important;
  border-color: #d97706 !important;
  color: var(--white) !important;
}
.btn-outline-warning {
  border-color: var(--warning);
  color: var(--warning);
}
.btn-outline-warning:hover, .btn-outline-warning:focus, .btn-outline-warning:active {
  background-color: var(--warning) !important;
  color: var(--white) !important;
}
.btn-info, .btn-info.disabled {
  background-color: var(--info);
  border-color: var(--info);
  color: var(--white);
}
.btn-info:hover, .btn-info:focus, .btn-info:active,
.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled:active {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
  color: var(--white) !important;
}
.btn-outline-info {
  border-color: var(--info);
  color: var(--info);
}
.btn-outline-info:hover, .btn-outline-info:focus, .btn-outline-info:active {
  background-color: var(--info) !important;
  color: var(--white) !important;
}
.btn-primary, .btn-primary.disabled {
  background: var(--primary-gradient);
  background-color: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled:active {
  background: linear-gradient(135deg, #7a0000, #002856) !important;
  background-color: #7a0000 !important;
  border-color: #7a0000 !important;
}
.btn-outline-primary {
  border-color: var(--primary);
  color: var(--primary);
}
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
  background-color: var(--primary) !important;
  color: var(--white) !important;
}
.btn-outline-white, .btn-outline-white.disabled {
  border-color: var(--white);
  color: var(--white);
}
.btn-outline-white:hover, .btn-outline-white:focus, .btn-outline-white:active,
.btn-outline-white.disabled:hover, .btn-outline-white.disabled:focus, .btn-outline-white.disabled:active {
  background-color: var(--white);
  color: var(--primary);
}
.btn-round {
  border-radius: 50px;
  padding-left: 2rem;
  padding-right: 2rem;
}
.btn-social-icon, .btn-social {
  border: none;
  border-radius: 50px;
}
.btn-social-icon {
  color: var(--white) !important;
  padding-left: 1rem;
  padding-right: 1rem;
}
.btn-social-icon > :first-child { font-size: 1rem; }
.btn-social {
  padding: 0.6rem 1rem 0.6rem 3rem;
  color: var(--white) !important;
  font-weight: 500;
  position: relative;
}
.btn-social > :first-child {
  position: absolute;
  left: 0;
  top: 0;
  width: 2.5rem;
  line-height: 2.5rem;
  border-right: 1px solid rgba(0,0,0,0.1);
}
.btn-reddit { color: #000 !important; }
.btn-group .btn.active {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
}
.btn-progress {
  position: relative;
  background-image: url("../img/spinner-white.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem;
  color: transparent !important;
  pointer-events: none;
}

/* 3.13 Media */
.media .media-right {
  float: right;
  color: var(--primary);
  font-weight: 600;
  font-size: 1rem;
}
.media .media-icon {
  font-size: 1.5rem;
  margin-right: 1rem;
  line-height: 1;
  color: var(--gray);
}
.media .media-title {
  margin-top: 0;
  margin-bottom: 0.25rem;
  font-weight: 600;
  font-size: 1rem;
  color: var(--dark);
}
.media .media-title a { font-weight: inherit; color: var(--dark); }
.media .media-description {
  line-height: 1.6;
  color: var(--gray-dark);
}
.media .media-links { margin-top: 0.5rem; }
.media .media-links a {
  font-size: 0.8rem;
  color: var(--gray);
  margin-right: 0.8rem;
}
.media .media-progressbar { flex: 1; }
.media .media-progressbar .progress-text {
  font-size: 0.8rem;
  font-weight: 600;
  margin-bottom: 0.2rem;
  color: var(--dark);
}
.media .media-cta { margin-left: 2rem; }
.media .media-cta .btn {
  padding: 0.25rem 1rem;
  border-radius: 50px;
  font-size: 0.8rem;
}
.media .media-items { display: flex; }
.media .media-items .media-item {
  flex: 1;
  text-align: center;
  padding: 0 0.5rem;
}
.media .media-items .media-item .media-label {
  font-weight: 600;
  font-size: 0.75rem;
  color: var(--gray);
  letter-spacing: 0.3px;
  text-transform: uppercase;
}
.media .media-items .media-item .media-value {
  font-weight: 700;
  font-size: 1.2rem;
  color: var(--dark);
}

/* 3.14 Breadcrumb */
.breadcrumb {
  background-color: #f8fafc;
  padding: 0.75rem 1rem;
  border-radius: var(--border-radius);
}
.breadcrumb .breadcrumb-item {
  line-height: 1.5;
  font-size: 0.9rem;
}
.breadcrumb .breadcrumb-item i { margin-right: 0.4rem; }
.breadcrumb-item.active { color: var(--gray); }

/* 3.15 Accordion */
.accordion {
  display: inline-block;
  width: 100%;
  margin-bottom: 0.5rem;
}
.accordion .accordion-header, .accordion .accordion-body {
  padding: 1rem 1.25rem;
}
.accordion .accordion-header {
  background-color: #f8fafc;
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--transition);
}
.accordion .accordion-header h4 {
  line-height: 1.5;
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--dark);
}
.accordion .accordion-header:hover {
  background-color: #f1f5f9;
}
.accordion .accordion-header[aria-expanded="true"] {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
}
.accordion .accordion-header[aria-expanded="true"] h4 { color: var(--white); }
.accordion .accordion-body {
  line-height: 1.7;
  border: 1px solid #e2e8f0;
  border-top: none;
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}

/* 3.16 Popover */
.popover {
  box-shadow: 0 15px 30px -10px rgba(0,0,0,0.15);
  border-color: transparent;
  border-radius: var(--border-radius);
}
.popover .manual-arrow {
  position: absolute;
  bottom: -15px;
  font-size: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  color: var(--white);
}
.bs-popover-auto[x-placement^=left] .arrow::before,
.bs-popover-left .arrow::before { border-left-color: #e2e8f0; }
.bs-popover-auto[x-placement^=bottom] .arrow::before,
.bs-popover-bottom .arrow::before { border-bottom-color: #e2e8f0; }
.bs-popover-auto[x-placement^=top] .arrow::before,
.bs-popover-top .arrow::before { border-top-color: #e2e8f0; }
.bs-popover-auto[x-placement^=right] .arrow::before,
.bs-popover-right .arrow::before { border-right-color: #e2e8f0; }
.popover .popover-header {
  background-color: transparent;
  border: none;
  padding-bottom: 0;
  padding-top: 1rem;
  font-weight: 600;
  color: var(--dark);
}
.popover .popover-body {
  padding: 1rem 1.25rem;
  line-height: 1.7;
  color: var(--gray-dark);
}

/* 3.17 Grid */
.sm-gutters {
  margin-left: -5px;
  margin-right: -5px;
}
.sm-gutters > .col,
.sm-gutters > [class*=col-] {
  padding-left: 5px;
  padding-right: 5px;
}

/* 3.18 Navbar */
.navbar {
  height: 70px;
  left: 250px;
  right: 5px;
  position: absolute;
  z-index: 890;
  background-color: transparent;
}
.navbar.active {
  background: var(--primary-gradient);
  background-color: var(--primary);
  box-shadow: 0 4px 15px rgba(139, 0, 0, 0.2);
}
.navbar-bg {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  background: linear-gradient(135deg, #8b0000, #003265);
  z-index: -1;
}
.navbar { align-items: center; }
.navbar .navbar-brand {
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  font-size: 1.3rem;
}
.navbar .form-inline .form-control {
  background-color: var(--white);
  border-color: transparent;
  padding-left: 1.2rem;
  padding-right: 0;
  margin-right: -5px;
  min-height: 46px;
  font-weight: 500;
  border-radius: 50px 0 0 50px;
  transition: all 0.3s;
  box-shadow: none;
}
.navbar .form-inline .form-control:focus,
.navbar .form-inline .form-control:focus + .btn {
  position: relative;
  z-index: 9001;
}
.navbar .form-inline .form-control:focus + .btn + .search-backdrop {
  opacity: 0.7;
  visibility: visible;
}
.navbar .form-inline .form-control:focus + .btn + .search-backdrop + .search-result {
  opacity: 1;
  visibility: visible;
  top: 70px;
}
.navbar .form-inline .btn {
  border-radius: 0 50px 50px 0;
  background-color: var(--white);
  padding: 0.5rem 1.2rem;
  border-color: transparent;
  color: var(--gray);
}
.navbar .form-inline .search-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9000;
  background-color: var(--black);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.navbar .form-inline .search-result {
  position: absolute;
  z-index: 9002;
  top: 100px;
  background-color: var(--white);
  border-radius: var(--border-radius);
  width: 450px;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  box-shadow: var(--box-shadow-hover);
}
.navbar .form-inline .search-result:before {
  position: absolute;
  top: -20px;
  left: 2rem;
  content: '';
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid var(--white);
}
.navbar .form-inline .search-result .search-header {
  padding: 1rem 1.2rem 0.2rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  font-size: 0.7rem;
  color: var(--gray);
}
.navbar .form-inline .search-result .search-item { display: flex; }
.navbar .form-inline .search-result .search-item a {
  display: block;
  padding: 0.8rem 1.2rem;
  text-decoration: none;
  color: var(--dark);
  font-weight: 500;
  display: flex;
  align-items: center;
  width: 100%;
}
.navbar .form-inline .search-result .search-item a:hover {
  background-color: #f8fafc;
}
.navbar .form-inline .search-result .search-item a i { margin-left: 0 !important; }
.navbar .form-inline .search-result .search-item .search-icon {
  width: 2.2rem;
  height: 2.2rem;
  line-height: 2.2rem;
  text-align: center;
  border-radius: 50%;
  background-color: #f1f5f9;
  margin-right: 0.8rem;
}
.navbar .active .nav-link {
  color: var(--white);
  font-weight: 700;
}
.navbar .navbar-text { color: var(--white); }
.navbar .nav-link {
  color: rgba(255,255,255,0.8);
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  height: 100%;
  transition: var(--transition);
}
.navbar .nav-link.nav-link-lg div { margin-top: 0; }
.navbar .nav-link.nav-link-lg i {
  margin-left: 0 !important;
  font-size: 1.3rem;
  line-height: 70px;
}
.navbar .nav-link.nav-link-user {
  color: var(--white);
  padding-top: 0;
  padding-bottom: 0;
  font-weight: 600;
  display: flex;
  align-items: center;
}
.navbar .nav-link.nav-link-user img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin-left: 0.5rem;
}
.navbar .nav-link.nav-link-img {
  padding-top: 0;
  padding-bottom: 0;
  border-radius: 50%;
  overflow: hidden;
}
.navbar .nav-link.nav-link-img .flag-icon {
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  border-radius: 50%;
  line-height: 1;
  height: 24px;
  width: 24px;
  background-size: cover;
}
.remove-caret:after { display: none; }
.navbar .nav-link:hover { color: var(--white); }
.navbar .nav-link.disabled {
  color: rgba(255,255,255,0.5);
  opacity: 0.6;
}
.nav-collapse { display: flex; }

@media (max-width: 575.98px) {
  body.search-show .navbar .form-inline .search-element { display: block; }
  .navbar .form-inline .search-element {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    z-index: 892;
    display: none;
  }
  .navbar .form-inline .search-element .form-control {
    float: left;
    border-radius: 50px 0 0 50px;
    width: calc(100% - 50px) !important;
  }
  .navbar .form-inline .search-element .btn {
    margin-top: 0;
    border-radius: 0 50px 50px 0;
  }
  .navbar .form-inline .search-result { width: 100%; }
  .navbar .form-inline .search-backdrop { display: none; }
  .navbar .nav-link.nav-link-lg div { display: none; }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .navbar .form-inline .search-element { display: block; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .collapse { position: relative; }
  .collapse .navbar-nav { position: absolute; }
}
@media (max-width: 1024px) {
  .nav-collapse {
    position: relative;
  }
  .nav-collapse .navbar-nav {
    box-shadow: var(--box-shadow);
    position: absolute;
    top: 50px;
    left: 0;
    width: 200px;
    display: none;
    background: var(--white);
    border-radius: var(--border-radius);
    padding: 0.5rem 0;
  }
  .nav-collapse .navbar-nav.show { display: block; }
  .nav-collapse .navbar-nav .nav-item:first-child { border-radius: var(--border-radius) var(--border-radius) 0 0; }
  .nav-collapse .navbar-nav .nav-item:last-child { border-radius: 0 0 var(--border-radius) var(--border-radius); }
  .nav-collapse .navbar-nav .nav-item .nav-link {
    background-color: transparent;
    color: var(--gray-dark);
    padding: 0.7rem 1.2rem !important;
    height: auto;
    line-height: 1.5;
  }
  .nav-collapse .navbar-nav .nav-item .nav-link:hover {
    background-color: #f8fafc;
    color: var(--primary);
  }
  .nav-collapse .navbar-nav .nav-item:focus > a,
  .nav-collapse .navbar-nav .nav-item.active > a {
    background-color: var(--primary);
    color: var(--white);
  }
  .navbar {
    left: 5px;
    right: 0;
  }
  .navbar .dropdown-menu { position: absolute; }
  .navbar .navbar-nav { flex-direction: row; }
  .navbar-expand-lg .navbar-nav .dropdown-menu-right {
    right: 0;
    left: auto;
  }
}

/* 3.19 Dropdown */
.dropdown-item.has-icon i {
  margin-top: -1px;
  font-size: 0.9rem;
}
.dropdown-menu {
  box-shadow: var(--box-shadow-hover);
  border: none;
  width: 220px;
  border-radius: var(--border-radius);
  padding: 0.5rem 0;
}
.dropdown-menu.show { display: block !important; }
.dropdown-menu a { font-size: 0.9rem; }
.dropdown-menu .dropdown-title {
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.5px;
  font-weight: 700;
  color: var(--dark) !important;
  padding: 0.7rem 1.2rem;
  line-height: 1.5;
}
.dropdown-menu.dropdown-menu-sm a {
  font-size: 0.85rem;
  letter-spacing: normal;
  padding: 0.5rem 1.2rem;
  color: var(--gray-dark);
}
a.dropdown-item {
  padding: 0.6rem 1.2rem;
  font-weight: 500;
  line-height: 1.4;
}
a.dropdown-item:focus, a.dropdown-item:active, a.dropdown-item.active {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white) !important;
}
.dropdown-divider { border-top-color: #f1f5f9; }
.dropdown-list {
  width: 350px;
  padding: 0;
}
.dropdown-list .dropdown-item {
  display: inline-block;
  width: 100%;
  padding: 1rem 1.2rem;
  font-size: 0.85rem;
  border-bottom: 1px solid #f1f5f9;
}
.dropdown-list .dropdown-item.dropdown-item-header:hover { background-color: transparent; }
.dropdown-list .dropdown-item .time {
  margin-top: 0.5rem;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.65rem;
  letter-spacing: 0.3px;
  color: var(--gray);
}
.dropdown-list .dropdown-item .dropdown-item-avatar {
  float: left;
  width: 40px;
  text-align: right;
  position: relative;
}
.dropdown-list .dropdown-item .dropdown-item-avatar img {
  width: 100%;
  border-radius: 50%;
}
.dropdown-list .dropdown-item .dropdown-item-avatar .is-online {
  position: absolute;
  bottom: 0;
  right: 0;
}
.dropdown-list .dropdown-item .dropdown-item-desc {
  line-height: 1.6;
  white-space: normal;
  color: var(--dark);
  margin-left: 55px;
}
.dropdown-list .dropdown-item .dropdown-item-desc b {
  font-weight: 600;
  color: var(--dark);
}
.dropdown-list .dropdown-item .dropdown-item-desc p { margin-bottom: 0; }
.dropdown-list .dropdown-item:focus {
  background-color: var(--primary);
}
.dropdown-list .dropdown-item:focus .dropdown-item-desc {
  color: var(--white) !important;
}
.dropdown-list .dropdown-item:focus .dropdown-item-desc b { color: var(--white) !important; }
.dropdown-list .dropdown-item.dropdown-item-unread:active .dropdown-item-desc {
  color: var(--gray-dark);
}
.dropdown-list .dropdown-item.dropdown-item-unread:active .dropdown-item-desc b { color: var(--gray-dark); }
.dropdown-list .dropdown-item:active .dropdown-item-desc {
  color: var(--white);
}
.dropdown-list .dropdown-item:active .dropdown-item-desc b { color: var(--white); }
.dropdown-list .dropdown-item.dropdown-item-unread {
  background-color: #f8fafc;
  border-bottom-color: #e2e8f0;
}
.dropdown-list .dropdown-item.dropdown-item-unread:focus .dropdown-item-desc {
  color: var(--gray-dark) !important;
}
.dropdown-list .dropdown-item.dropdown-item-unread:focus .dropdown-item-desc b { color: var(--gray-dark) !important; }
.dropdown-list .dropdown-footer,
.dropdown-list .dropdown-header {
  letter-spacing: 0.3px;
  font-weight: 600;
  padding: 1rem;
  background-color: #f8fafc;
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.dropdown-list .dropdown-footer a,
.dropdown-list .dropdown-header a {
  font-weight: 600;
  color: var(--primary);
}
.dropdown-list .dropdown-list-content {
  height: 350px;
  overflow: hidden;
}
.dropdown-list .dropdown-list-content:not(.is-end):after {
  content: '';
  position: absolute;
  bottom: 50px;
  left: 0;
  width: 100%;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.8));
  height: 60px;
}
.dropdown-list .dropdown-list-icons .dropdown-item {
  display: flex;
}
.dropdown-list .dropdown-list-icons .dropdown-item .dropdown-item-icon {
  flex-shrink: 0;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  line-height: 42px;
  text-align: center;
  background-color: #f1f5f9;
  color: var(--gray-dark);
}
.dropdown-list .dropdown-list-icons .dropdown-item .dropdown-item-icon i { margin: 0; }
.dropdown-list .dropdown-list-icons .dropdown-item .dropdown-item-desc {
  margin-left: 1rem;
  line-height: 1.5;
}
.dropdown-list .dropdown-list-icons .dropdown-item .dropdown-item-desc .time {
  margin-top: 0.2rem;
  font-size: 0.7rem;
}
.dropdown-flag .dropdown-item {
  font-weight: 500;
}
.dropdown-flag .dropdown-item .flag-icon {
  width: 20px;
  height: 15px;
  margin-right: 0.7rem;
  margin-top: -3px;
  border-radius: 2px;
}
.dropdown-flag .dropdown-item.active {
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
}
@media (max-width: 575.98px) {
  .dropdown-list-toggle { position: static; }
  .dropdown-list-toggle .dropdown-list {
    left: 10px !important;
    width: calc(100% - 20px);
  }
}

/* 3.20 Tab */
.tab-content.no-padding > .tab-pane { padding: 0; }
.tab-content > .tab-pane { line-height: 1.7; }

/* 3.21 Progress Bar */
.progress-bar {
  background: var(--primary-gradient);
  background-color: var(--primary);
}

/* 3.22 Jumbotron */
.jumbotron {
  background-color: #f1f5f9;
  border-radius: var(--border-radius);
  padding: 2rem;
}

/* 3.23 Carousel */
.carousel .carousel-caption p {
  font-size: 0.95rem;
  line-height: 1.6;
}

/* 4. Theme Style */
/* 4.1 Misc */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/nunito-v9-latin-regular.eot");
  src: local("Nunito Regular"), local("Nunito-Regular"),
       url("../fonts/nunito-v9-latin-regular.eot?#iefix") format("embedded-opentype"),
       url("../fonts/nunito-v9-latin-regular.woff2") format("woff2"),
       url("../fonts/nunito-v9-latin-regular.woff") format("woff"),
       url("../fonts/nunito-v9-latin-regular.ttf") format("truetype"),
       url("../fonts/nunito-v9-latin-regular.svg#Nunito") format("svg");
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/nunito-v9-latin-600.eot");
  src: local("Nunito SemiBold"), local("Nunito-SemiBold"),
       url("../fonts/nunito-v9-latin-600.eot?#iefix") format("embedded-opentype"),
       url("../fonts/nunito-v9-latin-600.woff2") format("woff2"),
       url("../fonts/nunito-v9-latin-600.woff") format("woff"),
       url("../fonts/nunito-v9-latin-600.ttf") format("truetype"),
       url("../fonts/nunito-v9-latin-600.svg#Nunito") format("svg");
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/nunito-v9-latin-700.eot");
  src: local("Nunito Bold"), local("Nunito-Bold"),
       url("../fonts/nunito-v9-latin-700.eot?#iefix") format("embedded-opentype"),
       url("../fonts/nunito-v9-latin-700.woff2") format("woff2"),
       url("../fonts/nunito-v9-latin-700.woff") format("woff"),
       url("../fonts/nunito-v9-latin-700.ttf") format("truetype"),
       url("../fonts/nunito-v9-latin-700.svg#Nunito") format("svg");
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/nunito-v9-latin-800.eot");
  src: local("Nunito ExtraBold"), local("Nunito-ExtraBold"),
       url("../fonts/nunito-v9-latin-800.eot?#iefix") format("embedded-opentype"),
       url("../fonts/nunito-v9-latin-800.woff2") format("woff2"),
       url("../fonts/nunito-v9-latin-800.woff") format("woff"),
       url("../fonts/nunito-v9-latin-800.ttf") format("truetype"),
       url("../fonts/nunito-v9-latin-800.svg#Nunito") format("svg");
}
body {
  background-color: #f8fafc;
  font-size: 0.95rem;
  font-weight: 400;
  font-family: 'Nunito', 'Segoe UI', arial, sans-serif;
  color: var(--gray-dark);
  line-height: 1.6;
}
a.bb {
  text-decoration: none;
  border-bottom: 2px solid var(--primary);
  padding-bottom: 1px;
}
.form-divider {
  display: inline-block;
  width: 100%;
  margin: 0.75rem 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--dark);
}
.ui-sortable-handle, .sort-handler { cursor: move; }
.text-job {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
  color: var(--gray);
}
.text-time {
  font-size: 0.8rem;
  color: var(--gray);
  font-weight: 500;
  margin-bottom: 0.5rem;
}
.bullet, .slash {
  display: inline;
  margin: 0 0.2rem;
}
.bullet:after { content: '\2022'; }
.slash:after { content: '/'; }
.login-brand {
  margin: 2rem 0;
  margin-bottom: 3rem;
  font-size: 1.5rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--dark);
  text-align: center;
  font-weight: 700;
}
.font-weight-600 { font-weight: 600 !important; }
.budget-price {
  display: inline-block;
  width: 100%;
  display: flex;
  align-items: center;
  margin-bottom: 0.2rem;
}
.budget-price .budget-price-square {
  width: 12px;
  height: 4px;
  background-color: #e2e8f0;
}
.budget-price .budget-price-label {
  font-size: 0.75rem;
  font-weight: 600;
  margin-left: 0.3rem;
  color: var(--gray-dark);
}
.gradient-bottom { position: relative; }
.gradient-bottom:after {
  content: '';
  position: absolute;
  bottom: 2.5rem;
  left: 0;
  width: 100%;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.9));
  height: 60px;
}
.text-small {
  font-size: 0.8rem;
  line-height: 1.5;
}
.text-title {
  font-size: 0.95rem;
  color: var(--dark);
  font-weight: 600;
}
.img-shadow { box-shadow: var(--box-shadow); }
.colors {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px;
}
.colors .color {
  border-radius: var(--border-radius);
  width: calc((100% / 4) - 10px);
  padding: 1rem;
  height: 4rem;
  line-height: 2rem;
  text-align: center;
  margin: 5px;
  color: var(--white);
  font-weight: 600;
}
blockquote {
  padding: 1.5rem;
  padding-left: 2.5rem;
  font-style: italic;
  background-color: #f1f5f9;
  border-radius: var(--border-radius);
  position: relative;
  font-family: 'Georgia', serif;
  font-size: 1rem;
  letter-spacing: 0.2px;
  border-left: 4px solid var(--primary);
}
blockquote:before {
  content: '"';
  font-size: 3rem;
  position: absolute;
  top: 0.5rem;
  left: 0.8rem;
  opacity: 0.2;
  color: var(--gray);
}
blockquote .blockquote-footer {
  margin-top: 0.5rem;
  color: var(--gray);
}
.bg-whitesmoke { background-color: #f1f5f9 !important; }
.ion { font-size: 1rem; }
.fas, .far, .fab, .fal { font-size: 1rem; }
#visitorMap { height: 210px; }
.sidebar-gone-show { display: none !important; }
pre {
  border-radius: var(--border-radius);
  background: #1e293b;
  color: #e2e8f0;
  padding: 1rem;
}
.circle-step {
  display: flex;
  margin-bottom: 0.75rem;
}
.circle-step .circle-content {
  margin-top: 0.2rem;
  margin-left: 0.8rem;
}
.circle-step .circle {
  border-width: 2px;
  border-style: solid;
  border-radius: 50%;
  display: inline-block;
  width: 36px;
  height: 36px;
  line-height: 32px;
  font-size: 0.9rem;
  text-align: center;
  font-weight: 600;
}
.circle-step .circle.circle-primary {
  border-color: var(--primary);
  color: var(--primary);
}
.pe-none { pointer-events: none; }
.contact-map {
  width: 100%;
  height: 100%;
  min-height: 400px;
}
#visitorMap2, #visitorMap3 { height: 350px; }
.shadow-primary { box-shadow: 0 4px 15px rgba(139, 0, 0, 0.2); }
.shadow-secondary { box-shadow: 0 4px 15px rgba(0, 50, 101, 0.2); }
.shadow-success { box-shadow: 0 4px 15px rgba(16, 185, 129, 0.2); }
.shadow-warning { box-shadow: 0 4px 15px rgba(245, 158, 11, 0.2); }
.shadow-danger { box-shadow: 0 4px 15px rgba(239, 68, 68, 0.2); }
.shadow-info { box-shadow: 0 4px 15px rgba(59, 130, 246, 0.2); }
.shadow-light { box-shadow: 0 4px 15px rgba(241, 245, 249, 0.4); }
.shadow-dark { box-shadow: 0 4px 15px rgba(30, 41, 59, 0.3); }
.is-online {
  width: 10px;
  height: 10px;
  background-color: var(--success);
  border-radius: 50%;
  display: inline-block;
}
.gutters-xs {
  margin-right: -0.25rem;
  margin-left: -0.25rem;
}
.gutters-xs > .col,
.gutters-xs > [class*="col-"] {
  padding-right: 0.25rem;
  padding-left: 0.25rem;
}
.beep { position: relative; }
.beep:after {
  content: '';
  position: absolute;
  top: 2px;
  right: 6px;
  width: 8px;
  height: 8px;
  background-color: var(--warning);
  border-radius: 50%;
  animation: pulsate 1.5s infinite;
}
.beep.beep-sidebar:after {
  position: static;
  margin-left: 0.5rem;
}
@media (max-width: 575.98px) {
  .fc-overflow {
    width: 100%;
    overflow: auto;
  }
  .fc-overflow #myEvent { width: 800px; }
  .ionicons li { width: calc(100% / 4); }
  .icon-wrap { width: 100%; }
}

/* 4.2 Section */
.section {
  position: relative;
  z-index: 1;
}
.section > *:first-child { margin-top: -5px; }
.section .section-header {
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
  background-color: var(--white);
  border-radius: var(--border-radius);
  border: none;
  position: relative;
  margin-bottom: 2rem;
  padding: 1.2rem 1.8rem;
  display: flex;
  align-items: center;
}
.section .section-header h1 {
  margin-bottom: 0;
  font-weight: 700;
  display: inline-block;
  font-size: 1.6rem;
  color: var(--dark);
}
.section .section-header .section-header-back {
  margin-right: 1rem;
}
.section .section-header .section-header-back .btn:hover {
  background-color: var(--primary);
  color: var(--white);
}
.section .section-header .section-header-button { margin-left: 1.5rem; }
.section .section-header .section-header-breadcrumb {
  margin-left: auto;
  display: flex;
  align-items: center;
}
.section .section-header .section-header-breadcrumb .breadcrumb-item {
  font-size: 0.85rem;
}
.section .section-header .btn { font-size: 0.85rem; }
.section .section-title {
  font-size: 1.3rem;
  color: var(--dark);
  font-weight: 600;
  position: relative;
  margin: 2rem 0 1.5rem 0;
}
.section .section-title:before {
  content: '';
  border-radius: 50px;
  height: 8px;
  width: 30px;
  background-color: var(--primary);
  display: inline-block;
  float: left;
  margin-top: 0.5rem;
  margin-right: 1rem;
}
.section .section-title + .section-lead { margin-top: -1.2rem; }
.section .section-lead { margin-left: 3rem; color: var(--gray); }
.main-wrapper-1 .section .section-header {
  margin-left: -30px;
  margin-right: -30px;
  margin-top: -10px;
  border-radius: 0;
  border-top: 1px solid #f1f5f9;
  padding-left: 35px;
  padding-right: 35px;
}
@media (max-width: 575.98px) {
  .section .section-title { font-size: 1.1rem; }
  .section .section-header {
    flex-wrap: wrap;
    margin-bottom: 1.5rem !important;
  }
  .section .section-header h1 { font-size: 1.4rem; }
  .section .section-header .float-right {
    display: inline-block;
    width: 100%;
    margin-top: 1rem;
  }
  .section .section-header .section-header-breadcrumb {
    flex-basis: 100%;
    margin-top: 0.5rem;
  }
}

/* 4.3 Page */
.page-error {
  height: 100%;
  width: 100%;
  padding-top: 4rem;
  text-align: center;
  display: table;
}
.page-error .page-inner {
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}
.page-error h1 {
  font-size: 8rem;
  font-weight: 800;
  color: var(--primary);
  line-height: 1;
}
.page-error .page-description {
  font-size: 1.3rem;
  font-weight: 400;
  color: var(--dark);
}
.page-error .page-search {
  margin: 2rem auto;
  max-width: 100%;
  width: 350px;
}
.page-error .page-search .form-control {
  border-radius: 50px;
}
.page-error .page-search .btn {
  border-radius: 50px;
  margin-left: 0.5rem;
}
@media (max-width: 575.98px) {
  .page-error .page-search { width: 100%; }
}

/* 4.4 Layout */
.main-sidebar {
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  position: fixed;
  top: 0;
  height: 100%;
  width: 250px;
  background: linear-gradient(180deg, #1a0000 0%, #001a33 100%);
  z-index: 880;
  left: 0;
}
.main-sidebar,
.navbar,
.main-content,
.main-footer {
  transition: all 0.3s;
}
body.sidebar-gone .main-sidebar { left: -250px; }
body.sidebar-mini .hide-sidebar-mini { display: none !important; }
body.sidebar-mini .main-sidebar {
  width: 65px;
  overflow: initial !important;
  position: absolute;
  box-shadow: none;
}
body.sidebar-mini .main-sidebar:after {
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  content: '';
  position: fixed;
  background-color: #1e293b;
  width: 65px;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0;
  animation: mini-sidebar 1s forwards;
}
@keyframes mini-sidebar {
  from { opacity: 0; }
  to { opacity: 1; }
}
body.sidebar-mini .main-sidebar .sidebar-brand { display: none; }
body.sidebar-mini .main-sidebar .sidebar-brand-sm {
  display: block;
  text-align: center;
  line-height: 60px;
  color: var(--white);
  font-weight: 700;
  font-size: 1.3rem;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li {
  padding: 0.5rem;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li.menu-header {
  padding: 0;
  font-size: 0;
  height: 1px;
  background: rgba(255,255,255,0.1);
  margin: 0.5rem 0;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li > a {
  border-radius: var(--border-radius);
  height: 45px;
  padding: 0;
  justify-content: center;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .ion,
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .fas,
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .far,
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .fab,
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .fal {
  margin: 0;
  font-size: 1.3rem;
  color: rgba(255,255,255,0.6);
}
body.sidebar-mini .main-sidebar .sidebar-menu > li > a span { display: none; }
body.sidebar-mini .main-sidebar .sidebar-menu > li > a .badge {
  padding: 0.2rem 0.4rem;
  position: absolute;
  top: 2px;
  right: 2px;
  font-size: 0.6rem;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li > a.has-dropdown:after { content: none; }
body.sidebar-mini .main-sidebar .sidebar-menu > li.active > a {
  box-shadow: 0 4px 10px rgba(139, 0, 0, 0.4);
  background: var(--primary-gradient);
  background-color: var(--primary);
}
body.sidebar-mini .main-sidebar .sidebar-menu > li.active > a i { color: var(--white) !important; }
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu {
  position: absolute;
  background-color: var(--white);
  left: 65px;
  top: 0;
  width: 200px;
  display: none;
  box-shadow: var(--box-shadow-hover);
  border-radius: var(--border-radius);
  padding: 0.5rem 0;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu li > a:focus,
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu li.active > a,
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu li.active > a:hover {
  color: var(--white);
  background-color: var(--primary) !important;
}
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu li a {
  height: auto;
  padding: 0.6rem 1.2rem;
  background-color: transparent;
  color: var(--gray-dark);
}
body.sidebar-mini .main-sidebar .sidebar-menu > li ul.dropdown-menu li a.has-dropdown:after {
  content: "";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  font-size: 0.7rem;
}
body.sidebar-mini .main-sidebar .sidebar-menu li:hover > ul.dropdown-menu {
  display: block !important;
}
body.sidebar-mini .main-sidebar .sidebar-menu li:hover > ul.dropdown-menu li:hover > a {
  background-color: #f8fafc;
}
body.sidebar-mini .main-sidebar .sidebar-menu li:hover > ul.dropdown-menu li .dropdown-menu {
  left: 200px;
  padding: 0;
}
body.sidebar-mini .navbar { left: 65px; }
body.sidebar-mini .main-content,
body.sidebar-mini .main-footer { padding-left: 90px; }

body.layout-2 .navbar-bg {
  z-index: 889;
  height: 70px;
}
body.layout-2 .navbar {
  left: 0;
  z-index: 890;
}
body.layout-2 .main-wrapper {
  display: flex;
  flex-wrap: wrap;
  padding: 0 3rem;
}
body.layout-2 .main-sidebar,
body.layout-2 .main-content,
body.layout-2 .main-footer {
  flex-shrink: 0;
  flex-grow: 0;
}
body.layout-2 .main-sidebar {
  background-color: transparent;
  box-shadow: none;
  position: static;
  margin-top: 6rem;
  width: 200px;
}
body.layout-2 .main-sidebar .sidebar-menu li.menu-header { padding: 0; }
body.layout-2 .main-sidebar .sidebar-menu li a {
  padding: 0.7rem 1rem;
  color: var(--dark);
}
body.layout-2 .main-sidebar .sidebar-menu li a i {
  width: 1.5rem;
  color: var(--gray);
}
body.layout-2 .main-sidebar .sidebar-menu li a.has-dropdown:after { right: 0.5rem; }
body.layout-2 .main-sidebar .sidebar-menu li a:hover {
  color: var(--primary);
  background-color: transparent;
}
body.layout-2 .main-sidebar .sidebar-menu li ul.dropdown-menu li a { padding-left: 2.5rem; }
body.layout-2 .main-content {
  padding-top: 6rem;
  padding-left: 2rem;
  padding-right: 0;
  width: calc(100% - 200px);
}
body.layout-2 .main-footer {
  margin-left: 200px;
  width: calc(100% - 200px);
  padding-left: 2rem;
  padding-right: 0;
}

body.layout-3 .navbar {
  left: 0;
  right: 0;
}
body.layout-3 .navbar.navbar-secondary {
  box-shadow: 0 4px 10px rgba(0,0,0,0.03);
  background-color: var(--white);
  top: 70px;
  padding: 0;
  z-index: 889;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item.active > .nav-link {
  color: var(--primary);
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item.active > .nav-link:before {
  left: 1.5rem;
  right: 1.5rem;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item:first-child .nav-link { margin-left: 0; }
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item:last-child .nav-link { margin-right: 0; }
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link {
  color: var(--gray-dark);
  font-size: 0.9rem;
  letter-spacing: 0.2px;
  height: 70px;
  padding: 0;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 1rem;
  margin-right: 1rem;
  position: relative;
  display: flex;
  align-items: center;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link.has-dropdown {
  margin-right: 2rem;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link.has-dropdown:after {
  content: "";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: -1.2rem;
  transform: translateY(-50%);
  font-size: 0.7rem;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background-color: var(--primary);
  transition: 0.2s;
  transform: scaleX(0);
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link:hover:before { transform: scaleX(1); }
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link span { line-height: 70px; }
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link i {
  width: 2rem;
  font-size: 1rem;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item > .nav-link:hover {
  color: var(--dark) !important;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu { padding: 0; }
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item .nav-link {
  color: var(--gray-dark);
  font-weight: 500;
  letter-spacing: 0.2px;
  padding: 0.5rem 1.2rem !important;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item .nav-link.has-dropdown:after {
  content: "";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  font-size: 0.7rem;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item:hover > .nav-link {
  background-color: #f8fafc;
  color: var(--dark);
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item:hover > .dropdown-menu {
  display: block !important;
  top: -5px;
  left: 100%;
}
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item.active > .nav-link,
body.layout-3 .navbar.navbar-secondary .navbar-nav > .nav-item .dropdown-menu .nav-item .nav-link:focus {
  background-color: var(--primary);
  color: var(--white);
}
body.layout-3 .main-content {
  padding-left: 0;
  padding-right: 0;
  padding-top: 150px;
}
body.layout-3 .main-footer {
  padding-left: 0;
  padding-right: 0;
}

.main-sidebar .sidebar-brand {
  display: inline-block;
  width: 100%;
  text-align: center;
  height: 70px;
  line-height: 70px;
  background: rgba(0,0,0,0.1);
}
.main-sidebar .sidebar-brand.sidebar-brand-sm { display: none; }
.main-sidebar .sidebar-brand a {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  color: var(--white);
  font-size: 1.2rem;
}
.main-sidebar .sidebar-user {
  display: inline-block;
  width: 100%;
  padding: 1rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.main-sidebar .sidebar-user .sidebar-user-picture {
  float: left;
  margin-right: 0.8rem;
}
.main-sidebar .sidebar-user .sidebar-user-picture img {
  width: 48px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.2);
}
.main-sidebar .sidebar-user .sidebar-user-details {
  overflow: hidden;
}
.main-sidebar .sidebar-user .sidebar-user-details .user-name {
  font-weight: 600;
  color: var(--white);
  margin-top: 0.2rem;
}
.main-sidebar .sidebar-user .sidebar-user-details .user-role {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.6);
}
.main-sidebar .sidebar-menu {
  padding: 0.5rem 0;
  margin: 0;
}
.main-sidebar .sidebar-menu li {
  display: block;
}
.main-sidebar .sidebar-menu li.menu-header {
  padding: 0.75rem 1.5rem;
  color: rgba(255,255,255,0.4);
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
}
.main-sidebar .sidebar-menu li.menu-header:not(:first-child) { margin-top: 1rem; }
.main-sidebar .sidebar-menu li a {
  position: relative;
  display: flex;
  align-items: center;
  height: auto;
  padding: 0.7rem 1.5rem;
  width: 100%;
  letter-spacing: 0.2px;
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  transition: var(--transition);
  font-weight: 500;
}
.main-sidebar .sidebar-menu li a .badge {
  float: right;
  padding: 0.2rem 0.6rem;
  margin-left: auto;
  background: var(--primary-gradient);
  background-color: var(--primary);
  color: var(--white);
  border-radius: 50px;
}
.main-sidebar .sidebar-menu li a i {
  width: 2rem;
  margin-right: 0.8rem;
  text-align: center;
  font-size: 1.1rem;
  color: rgba(255,255,255,0.5);
}
.main-sidebar .sidebar-menu li a span { margin-top: 0; }
.main-sidebar .sidebar-menu li a:hover {
  background-color: rgba(255,255,255,0.05);
  color: var(--white);
}
.main-sidebar .sidebar-menu li a:hover i { color: var(--white); }
.main-sidebar .sidebar-menu li.active > a {
  color: var(--white);
  font-weight: 600;
  background-color: rgba(139, 0, 0, 0.2);
  border-left: 3px solid var(--primary);
}
.main-sidebar .sidebar-menu li.active > a i { color: var(--white); }
.main-sidebar .sidebar-menu li.active ul.dropdown-menu {
  background-color: rgba(0,0,0,0.2);
}
.main-sidebar .sidebar-menu li a.has-dropdown:after {
  content: "";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1.2rem;
  transform: translateY(-50%);
  font-size: 0.7rem;
  color: rgba(255,255,255,0.5);
}
.main-sidebar .sidebar-menu li.active > ul.dropdown-menu { display: block; }
.main-sidebar .sidebar-menu li.active > ul.dropdown-menu li a:hover {
  background-color: rgba(255,255,255,0.05);
}
.main-sidebar .sidebar-menu li ul.dropdown-menu {
  padding: 0;
  margin: 0;
  display: none;
  position: static;
  float: none;
  width: 100%;
  box-shadow: none;
  background-color: rgba(0,0,0,0.1);
}
.main-sidebar .sidebar-menu li ul.dropdown-menu li a {
  color: rgba(255,255,255,0.7);
  height: auto;
  padding-left: 3.5rem;
  font-weight: 400;
}
.main-sidebar .sidebar-menu li ul.dropdown-menu li a:hover {
  color: var(--white);
  background-color: transparent;
}
.main-sidebar .sidebar-menu li ul.dropdown-menu li.active > a {
  color: var(--white);
  font-weight: 600;
  background-color: rgba(139, 0, 0, 0.3);
}
.main-sidebar .sidebar-menu li ul.dropdown-menu li a i {
  margin-top: 0;
  width: auto;
}
.main-sidebar .sidebar-menu li ul.dropdown-menu li ul.dropdown-menu {
  padding-left: 1rem;
}

.main-content {
  padding-left: 280px;
  padding-right: 2rem;
  padding-top: 90px;
  width: 100%;
  position: relative;
}
.main-footer {
  padding: 1.5rem 2rem 1.5rem 280px;
  margin-top: 2rem;
  color: var(--gray);
  border-top: 1px solid #e2e8f0;
  display: inline-block;
  width: 100%;
}
.main-footer .footer-left { float: left; }
.main-footer .footer-right { float: right; }
.simple-footer {
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: var(--gray);
}
body:not(.sidebar-mini) .sidebar-style-1 .sidebar-menu li.active a {
  background-color: rgba(139, 0, 0, 0.2);
  color: var(--white);
}
body:not(.sidebar-mini) .sidebar-style-1 .sidebar-menu li.active ul.dropdown-menu li a {
  color: rgba(255,255,255,0.7);
}
body:not(.sidebar-mini) .sidebar-style-1 .sidebar-menu li.active ul.dropdown-menu li a:hover {
  background-color: rgba(139, 0, 0, 0.2);
  color: var(--white);
}
body:not(.sidebar-mini) .sidebar-style-1 .sidebar-menu li.active ul.dropdown-menu li.active a {
  color: var(--white);
  background-color: rgba(139, 0, 0, 0.3);
}
body:not(.sidebar-mini) .sidebar-style-2 .sidebar-menu > li.active > a {
  padding-left: 1.5rem;
  background-color: transparent;
  position: relative;
}
body:not(.sidebar-mini) .sidebar-style-2 .sidebar-menu > li.active > a:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 60%;
  width: 4px;
  background-color: var(--primary);
  border-radius: 0 4px 4px 0;
}
body:not(.sidebar-mini) .sidebar-style-2 .sidebar-menu li.active ul.dropdown-menu li a {
  padding-left: 3.5rem;
  background-color: rgba(0,0,0,0.1);
}

@media (max-width: 1024px) {
  .sidebar-gone-hide { display: none !important; }
  .sidebar-gone-show { display: block !important; }
  .main-sidebar {
    position: fixed !important;
    margin-top: 0 !important;
    z-index: 891;
  }
  body.layout-2 .main-wrapper,
  body.layout-3 .main-wrapper {
    width: 100%;
    padding: 0;
    display: block;
  }
  .main-content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width: 100% !important;
  }
  .main-footer { padding-left: 1.5rem; }
  body.search-show { overflow: hidden; }
  body.search-show .navbar { z-index: 892; }
  body.sidebar-show { overflow: hidden; }
  body.search-show:before,
  body.sidebar-show:before {
    content: '';
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: var(--black);
    opacity: 0;
    z-index: 891;
    animation: fadeinbackdrop 0.3s forwards;
  }
  @keyframes fadeinbackdrop {
    to { opacity: 0.6; }
  }
}

/* 4.5 Animation */
.pulsate {
  animation: pulsate 1.5s infinite;
}
@-webkit-keyframes pulsate {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.2); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes pulsate {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.2); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}

/*# sourceMappingURL=style.css.map */