/* ============================================
   燃动动 RANLAND 后台管理系统 - 品牌定制样式 v2
   Brand color: #A80026 (燃动红)
   Accent: #FF6B35 (活力橙)
   ============================================ */

:root {
  --el-color-primary: #A80026;
  --el-color-primary-light-3: #C4334F;
  --el-color-primary-light-5: #D4667A;
  --el-color-primary-light-7: #E499A6;
  --el-color-primary-light-8: #EFB8C2;
  --el-color-primary-light-9: #F7DDE2;
  --el-color-primary-dark-2: #86001E;
  --el-color-primary-rgb: 168, 0, 38;
  --ranland-red: #A80026;
  --ranland-red-dark: #7A001C;
  --ranland-orange: #FF6B35;
  --ranland-dark: #1A1A2E;
}

/* Sidebar brand header */
.sidebar-logo, .logo-container {
  background: linear-gradient(135deg, #A80026 0%, #7A001C 100%) !important;
}

/* Primary buttons */
.el-button--primary {
  --el-button-bg-color: #A80026;
  --el-button-border-color: #A80026;
  --el-button-hover-bg-color: #C4334F;
  --el-button-hover-border-color: #C4334F;
  --el-button-active-bg-color: #86001E;
  --el-button-active-border-color: #86001E;
}

/* Sidebar - override inline styles with !important */
.sidebar,
aside.sidebar {
  background: linear-gradient(180deg, #1A1A2E 0%, #16213E 100%) !important;
}

.sidebar .el-menu {
  background: transparent !important;
  border-right: none !important;
}

.sidebar .el-menu-item,
.sidebar .el-sub-menu__title {
  color: #B8C5D6 !important;
  background: transparent !important;
  height: 48px !important;
  line-height: 48px !important;
  transition: all 0.2s ease !important;
}

.sidebar .el-menu-item:hover,
.sidebar .el-sub-menu__title:hover {
  background: rgba(168, 0, 38, 0.15) !important;
  color: #fff !important;
}

.sidebar .el-menu-item.is-active {
  color: #fff !important;
  background: linear-gradient(90deg, rgba(168, 0, 38, 0.35) 0%, rgba(168, 0, 38, 0.05) 100%) !important;
  border-right: 3px solid #A80026 !important;
  font-weight: 600 !important;
}

.sidebar .el-menu-item.is-active .el-icon {
  color: #FF4757 !important;
}

.sidebar .el-sub-menu.is-active > .el-sub-menu__title {
  color: #fff !important;
}

.sidebar .el-sub-menu .el-menu-item {
  background: rgba(0, 0, 0, 0.15) !important;
  min-width: auto !important;
  height: 44px !important;
  line-height: 44px !important;
  padding-left: 52px !important;
}

.sidebar .el-sub-menu .el-menu-item:hover {
  background: rgba(168, 0, 38, 0.2) !important;
}

.sidebar .el-sub-menu .el-menu-item.is-active {
  background: rgba(168, 0, 38, 0.3) !important;
  border-right: 3px solid #A80026 !important;
}

.sidebar .el-icon {
  color: #8899AA !important;
  transition: color 0.2s ease !important;
}

.sidebar .el-menu-item:hover .el-icon,
.sidebar .el-sub-menu__title:hover .el-icon {
  color: #FF4757 !important;
}

.sidebar .el-sub-menu.is-active > .el-sub-menu__title .el-icon {
  color: #FF4757 !important;
}

/* Logo area */
.sidebar .logo,
aside .logo {
  background: linear-gradient(135deg, #A80026 0%, #7A001C 100%) !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.sidebar .logo img,
aside .logo img {
  max-height: 40px !important;
}

/* Sidebar collapse button */
.sidebar .collapse-btn,
.sidebar .fold-btn {
  background: rgba(255,255,255,0.05) !important;
  color: #8899AA !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
}

/* Menu active item */
.el-menu-item.is-active {
  color: #A80026 !important;
  border-right: 3px solid #A80026;
  font-weight: 600;
}

.el-menu--inline .el-menu-item.is-active {
  background: rgba(168, 0, 38, 0.08) !important;
  border-right: none;
}

/* Menu hover */
.el-menu-item:hover {
  background: rgba(168, 0, 38, 0.04) !important;
  color: #A80026 !important;
}

/* Links */
.el-link.el-link--primary {
  --el-link-text-color: #A80026;
  --el-link-hover-text-color: #C4334F;
}

/* Tabs active */
.el-tabs__item.is-active {
  color: #A80026 !important;
}
.el-tabs__active-bar {
  background-color: #A80026 !important;
}

/* Switch checked */
.el-switch.is-checked .el-switch__core {
  border-color: #A80026 !important;
  background-color: #A80026 !important;
}

/* Radio checked */
.el-radio__input.is-checked .el-radio__inner {
  border-color: #A80026 !important;
  background: #A80026 !important;
}
.el-radio__input.is-checked + .el-radio__label {
  color: #A80026 !important;
}

/* Checkbox checked */
.el-checkbox__input.is-checked .el-checkbox__inner {
  background-color: #A80026 !important;
  border-color: #A80026 !important;
}
.el-checkbox__input.is-checked + .el-checkbox__label {
  color: #A80026 !important;
}

/* Pagination active */
.el-pagination.is-background .el-pager li.is-active {
  background-color: #A80026 !important;
}

/* Tag primary */
.el-tag.el-tag--primary {
  --el-tag-bg-color: rgba(168, 0, 38, 0.1);
  --el-tag-border-color: rgba(168, 0, 38, 0.2);
  --el-tag-text-color: #A80026;
}

/* Input focus */
.el-input__wrapper.is-focus,
.el-textarea__inner:focus {
  box-shadow: 0 0 0 1px #A80026 inset !important;
}

/* Select focus */
.el-select__wrapper.is-focused {
  box-shadow: 0 0 0 1px #A80026 inset !important;
}

/* Date picker active */
.el-date-table td.current:not(.disabled) .el-date-table-cell__text {
  background-color: #A80026 !important;
}

/* Loading spinner */
.el-loading-spinner .circular {
  color: #A80026;
}

/* Breadcrumb separator */
.el-breadcrumb__item:last-child .el-breadcrumb__inner {
  color: #A80026 !important;
}

/* Steps */
.el-step__head.is-process,
.el-step__title.is-process {
  color: #A80026 !important;
}

/* Extra route menu items - add icon support */
.el-menu-item[data-rp] {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.el-menu-item[data-rp]::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  opacity: 0.65;
  transition: opacity 0.2s, transform 0.2s;
}

.el-menu-item[data-rp]:hover::before {
  opacity: 1;
  transform: scale(1.1);
}

.el-menu-item.is-active[data-rp]::before {
  opacity: 1;
}

/* Brand-specific icons for extra routes - Lucide style, 18px */
.el-menu-item[data-rp="ai-video-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 8-6 4 6 4V8Z'/%3E%3Crect width='14' height='12' x='2' y='6' rx='2' ry='2'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="posture-health-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="subscription-plans-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12V7H5a2 2 0 0 1 0-4h14v4'/%3E%3Cpath d='M3 5v14a2 2 0 0 0 2 2h16v-5'/%3E%3Cpath d='M18 12a2 2 0 0 0 0 4h4v-4Z'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="ai-subscription-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='14' x='2' y='5' rx='2'/%3E%3Cline x1='2' x2='22' y1='10' y2='10'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="dynamic-pricing"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 18 12 15 21 9 3 6 12 2 12'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="pricing-manage"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' x2='12' y1='2' y2='22'/%3E%3Cpath d='M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="product-import"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='17 8 12 3 7 8'/%3E%3Cline x1='12' x2='12' y1='3' y2='15'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="payment-config"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='22' height='16' x='1' y='4' rx='2'/%3E%3Cline x1='1' x2='23' y1='10' y2='10'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="pk-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 17.5 3 6V3h3l11.5 11.5'/%3E%3Cpath d='m13 19 6-6'/%3E%3Cpath d='m16 16 4 4'/%3E%3Cpath d='m19 21 2-2'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="training-plans"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="checkin-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='4' rx='2' ry='2'/%3E%3Cline x1='16' x2='16' y1='2' y2='6'/%3E%3Cline x1='8' x2='8' y1='2' y2='6'/%3E%3Cline x1='3' x2='21' y1='10' y2='10'/%3E%3Cpath d='m9 16 2 2 4-4'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="user-import"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cline x1='19' x2='19' y1='8' y2='14'/%3E%3Cline x1='22' x2='16' y1='11' y2='11'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="partner-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="message-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="rank-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9H4.5a2.5 2.5 0 0 1 0-5H6'/%3E%3Cpath d='M18 9h1.5a2.5 2.5 0 0 0 0-5H18'/%3E%3Cpath d='M4 22h16'/%3E%3Cpath d='M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22'/%3E%3Cpath d='M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22'/%3E%3Cpath d='M18 2H6v7a6 6 0 0 0 12 0V2Z'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="dashboard-oper"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='7' height='9' x='3' y='3' rx='1'/%3E%3Crect width='7' height='5' x='14' y='3' rx='1'/%3E%3Crect width='7' height='9' x='14' y='12' rx='1'/%3E%3Crect width='7' height='5' x='3' y='16' rx='1'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="revenue"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' x2='12' y1='2' y2='22'/%3E%3Cpath d='M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="marketing"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 18-5v12L3 14v-3z'/%3E%3Cpath d='M11.6 16.8a3 3 0 1 1-5.8-1.6'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="member-analysis"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M18 17V9'/%3E%3Cpath d='M13 17V5'/%3E%3Cpath d='M8 17v-3'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="motion-capture"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ccircle cx='12' cy='12' r='3' fill='%23A80026'/%3E%3Cline x1='12' x2='12' y1='2' y2='5'/%3E%3Cline x1='12' x2='12' y1='19' y2='22'/%3E%3Cline x1='2' x2='5' y1='12' y2='12'/%3E%3Cline x1='19' x2='22' y1='12' y2='12'/%3E%3C/svg%3E");
}
.el-menu-item[data-rp="hr-admin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23A80026' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='14' x='2' y='7' rx='2' ry='2'/%3E%3Cpath d='M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16'/%3E%3C/svg%3E");
}

/* New parent menu icons */
.el-sub-menu__title span:first-child {
  display: flex;
  align-items: center;
  gap: 8px;
}


/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #f1f1f1;
}
::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #A80026 !important;
}

/* Header active state */
.header .el-button--primary {
  background: #A80026 !important;
  border-color: #A80026 !important;
}

/* Card hover effect */
.el-card {
  transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.el-card:hover {
  box-shadow: 0 4px 16px rgba(168, 0, 38, 0.12) !important;
}

/* Stat cards gradient */
.stat-card, .stats .el-card {
  border-left: 3px solid #A80026;
}

/* Table row hover */
.el-table__row:hover > td {
  background: rgba(168, 0, 38, 0.03) !important;
}

/* Dialog header */
.el-dialog__header {
  border-bottom: 2px solid #A80026;
  padding-bottom: 12px;
}

/* Badge/dot */
.el-badge__content.is-dot {
  background-color: #FF6B35 !important;
}

/* Progress bar */
.el-progress-bar__inner {
  background-color: #A80026 !important;
}

/* Slider */
.el-slider__bar {
  background-color: #A80026 !important;
}
.el-slider__button {
  border-color: #A80026 !important;
}

/* Back link */
.back-link {
  color: #A80026 !important;
  cursor: pointer;
  font-size: 13px;
  transition: color 0.2s;
}
.back-link:hover {
  color: #C4334F !important;
}

/* Page header */
.page-header h2 {
  color: #1A1A2E;
  border-left: 4px solid #A80026;
  padding-left: 12px;
}

/* v-cloak */
[v-cloak] { display: none !important; }

/* Header branding */
.header {
  background: #fff !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
  border-bottom: 2px solid #A80026 !important;
}

/* Dashboard stat cards - brand gradient accents */
.el-card .el-card__header {
  border-bottom: 2px solid #F7DDE2 !important;
  font-weight: 600 !important;
}

/* Primary text */
.text-primary, .el-text--primary {
  color: #A80026 !important;
}

/* Success/warning/danger colors - keep semantic but adjust danger to brand */
.el-button--danger {
  --el-button-bg-color: #A80026;
  --el-button-border-color: #A80026;
  --el-button-hover-bg-color: #C4334F;
  --el-button-hover-border-color: #C4334F;
}

/* Drawer/Dialog close button hover */
.el-drawer__close-btn:hover, .el-dialog__headerbtn:hover .el-dialog__close {
  color: #A80026 !important;
}

/* Cascader/Tree active */
.el-cascader .el-input.is-focus .el-input__wrapper,
.el-tree-node.is-current > .el-tree-node__content {
  color: #A80026 !important;
}

/* Transfer active */
.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label {
  color: inherit;
}

/* Notification/drawer icons */
.el-notification__icon {
  color: #A80026 !important;
}

/* Empty state icon */
.el-empty__description p {
  color: #999 !important;
}

/* Result page icon */
.el-result__icon svg {
  color: #A80026 !important;
}

/* Timeline node */
.el-timeline-item__node--primary {
  background-color: #A80026 !important;
}

/* Backtop */
.el-backtop {
  background-color: #A80026 !important;
}

/* Avatar default */
.el-avatar {
  background-color: #F7DDE2 !important;
  color: #A80026 !important;
  font-weight: 600 !important;
}


/* ============================================
   燃动动品牌图标系统 v3
   统一图标风格 - 圆形品牌色背景
   ============================================ */

/* Section titles - add brand accent bar */
.section-title,
h3.section-title,
h4.section-title {
  position: relative !important;
  padding-left: 12px !important;
  font-weight: 600 !important;
  color: #1A1A2E !important;
}

.section-title::before,
h3.section-title::before,
h4.section-title::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 4px !important;
  height: 18px !important;
  background: linear-gradient(180deg, #A80026, #FF6B35) !important;
  border-radius: 2px !important;
}

/* Stat card icons - brand colored circles */
.stat-icon,
.card-icon,
.icon-wrapper,
.dashboard-icon,
.metric-icon,
.overview-icon,
.count-icon,
.data-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
  background: linear-gradient(135deg, rgba(168,0,38,0.1), rgba(255,107,53,0.1)) !important;
  color: #A80026 !important;
}

/* Achievement/medal icons */
.el-card .gold, .rank-gold { color: #FAAD14 !important; }
.el-card .silver, .rank-silver { color: #8C8C8C !important; }
.el-card .bronze, .rank-bronze { color: #D48806 !important; }

/* Menu icons in extra pages - style Element Plus icons */
.el-icon {
  color: inherit;
}

/* Page header icon */
.page-header h2 .el-icon,
.page-header .el-icon {
  color: #A80026;
  margin-right: 8px;
}

/* Tab styling */
.el-tabs__item.is-active {
  color: #A80026 !important;
  font-weight: 600 !important;
}

.el-tabs__active-bar {
  background-color: #A80026 !important;
}

.el-tabs__item:hover {
  color: #C4334F !important;
}

/* Switch active color */
.el-switch.is-checked .el-switch__core {
  border-color: #A80026 !important;
  background-color: #A80026 !important;
}

/* Radio checked */
.el-radio__input.is-checked .el-radio__inner {
  border-color: #A80026 !important;
  background: #A80026 !important;
}

.el-radio__input.is-checked + .el-radio__label {
  color: #A80026 !important;
}

/* Checkbox checked */
.el-checkbox__input.is-checked .el-checkbox__inner {
  background-color: #A80026 !important;
  border-color: #A80026 !important;
}

.el-checkbox__input.is-checked + .el-checkbox__label {
  color: #A80026 !important;
}

/* Slider bar */
.el-slider__bar {
  background-color: #A80026 !important;
}

.el-slider__button {
  border-color: #A80026 !important;
}

/* Date picker active */
.el-date-table td.current:not(.disabled) span {
  background-color: #A80026 !important;
}

.el-date-table td.today span {
  color: #A80026 !important;
  font-weight: 700 !important;
}

/* Pagination active */
.el-pagination.is-background .el-pager li.is-active {
  background-color: #A80026 !important;
  color: #fff !important;
}

/* Tag primary */
.el-tag--primary {
  --el-tag-bg-color: #F7DDE2 !important;
  --el-tag-border-color: #EFB8C2 !important;
  --el-tag-text-color: #A80026 !important;
}

/* Badge */
.el-badge__content {
  background-color: #A80026 !important;
  border-color: #A80026 !important;
}

/* Steps finish */
.el-step__head.is-finish {
  color: #A80026 !important;
  border-color: #A80026 !important;
}

.el-step__title.is-finish {
  color: #A80026 !important;
}

/* Progress bar */
.el-progress-bar__inner {
  background-color: #A80026 !important;
}

/* Cascader/Select dropdown active */
.el-select-dropdown__item.selected {
  color: #A80026 !important;
  font-weight: 600 !important;
}

.el-select-dropdown__item.hover,
.el-select-dropdown__item:hover {
  background-color: #F7DDE2 !important;
}

/* Transfer panel header checked */
.el-transfer-panel__item:hover {
  color: #A80026 !important;
}

/* Notification/Breadcrumb */
.el-breadcrumb__item:last-child .el-breadcrumb__inner {
  color: #A80026 !important;
}

/* Drawer close button hover */
.el-drawer__close-btn:hover {
  color: #A80026 !important;
}

/* Dialog header */
.el-dialog__title {
  color: #1A1A2E !important;
  font-weight: 600 !important;
}

/* Card shadow on hover */
.el-card {
  transition: box-shadow 0.3s ease !important;
}

.el-card:hover {
  box-shadow: 0 4px 16px rgba(168, 0, 38, 0.12) !important;
}

/* Table row hover */
.el-table__body tr:hover > td {
  background-color: #FDF2F4 !important;
}

/* Table current row */
.el-table__body tr.current-row > td {
  background-color: #F7DDE2 !important;
}

/* Link buttons */
.el-button--primary.is-link {
  --el-button-text-color: #A80026 !important;
  --el-button-hover-text-color: #C4334F !important;
}

.el-button--success.is-link {
  --el-button-text-color: #67C23A !important;
}

.el-button--danger.is-link {
  --el-button-text-color: #F56C6C !important;
}

/* Input focus */
.el-input__wrapper.is-focus {
  box-shadow: 0 0 0 1px #A80026 inset !important;
}

.el-textarea__inner:focus {
  border-color: #A80026 !important;
}

/* Number input */
.el-input-number .el-input__wrapper.is-focus {
  box-shadow: 0 0 0 1px #A80026 inset !important;
}

/* Loading spinner color */
.el-loading-spinner .circular {
  width: 36px !important;
}

.el-loading-spinner .path {
  stroke: #A80026 !important;
}

/* Skeleton theme */
.el-skeleton__item {
  background: linear-gradient(90deg, #f2f2f2 25%, #e6e6e6 37%, #f2f2f2 63%) !important;
}

/* Favicon/logo in login */
.login-header .logo-img {
  box-shadow: 0 4px 20px rgba(168, 0, 38, 0.3) !important;
}

/* Sidebar logo area */
.sidebar .logo {
  background: linear-gradient(135deg, #A80026 0%, #7A001C 100%) !important;
}

/* Collapse button */
.sidebar .collapse-btn,
.sidebar .toggle-btn {
  color: #8899AA !important;
}

.sidebar .collapse-btn:hover,
.sidebar .toggle-btn:hover {
  color: #A80026 !important;
}

/* Header user area */
.header .user-info:hover {
  color: #A80026 !important;
}

/* Dropdown menu */
.el-dropdown-menu__item:hover {
  color: #A80026 !important;
  background-color: #F7DDE2 !important;
}

/* Message box confirm button */
.el-message-box__headerbtn:hover .el-message-box__close {
  color: #A80026 !important;
}

/* Popover */
.el-popover {
  border-color: #E499A6 !important;
}

/* Tooltip */
.el-popper.is-dark {
  background: #1A1A2E !important;
}

/* Form label */
.el-form-item__label {
  font-weight: 500 !important;
}

/* Divider text */
.el-divider__text {
  background-color: #fff !important;
  color: #A80026 !important;
  font-weight: 600 !important;
}

/* Collapse item header */
.el-collapse-item__header:focus {
  color: #A80026 !important;
}

/* Watermark */
.watermark {
  color: rgba(168, 0, 38, 0.05) !important;
}

/* Login page styles (v2 - dark theme) */
.login-container[data-v-8bed6dd3]{
  min-height:100vh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(135deg,#0D0D1A 0%,#1A1A2E 40%,#2D1B2E 100%) !important;
  position:relative !important;
  overflow:hidden !important;
}
.login-box[data-v-8bed6dd3]{
  width:420px !important;
  padding:48px 40px 36px !important;
  background:rgba(255,255,255,0.98) !important;
  border-radius:20px !important;
  box-shadow:0 24px 80px rgba(0,0,0,0.5) !important;
  position:relative !important;
  z-index:10 !important;
}
.login-header h1[data-v-8bed6dd3]{
  color:#1A1A2E !important;
}
.login-header p[data-v-8bed6dd3]{
  color:#909399 !important;
}
.login-tabs[data-v-8bed6dd3] .el-tabs__item.is-active{
  color:#A80026 !important;
}
.login-tabs[data-v-8bed6dd3] .el-tabs__active-bar{
  background-color:#A80026 !important;
}
.login-form .login-btn[data-v-8bed6dd3]{
  background:linear-gradient(135deg,#A80026 0%,#C4334F 100%) !important;
  border:none !important;
}


/* === RANLAND Brand Visual Enhancements v5 === */

/* Cards - subtle shadow, no red borders */
.el-card {
  border-radius: 12px !important;
  border: 1px solid #EBEEF5 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important;
  transition: box-shadow 0.3s !important;
}
.el-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
}

/* Section titles with brand accent bar */
.section-title {
  position: relative;
  padding-left: 12px;
  font-weight: 600;
}
.section-title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 16px;
  background: linear-gradient(180deg, #A80026, #FF6B35);
  border-radius: 2px;
}

/* === Solid buttons (NOT link/text buttons) === */
.el-button--primary:not(.is-link):not(.is-text) {
  background: linear-gradient(135deg, #A80026 0%, #C4334F 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  color: #fff !important;
  transition: all 0.25s !important;
}
.el-button--primary:not(.is-link):not(.is-text):hover {
  background: linear-gradient(135deg, #86001E 0%, #A80026 100%) !important;
  box-shadow: 0 4px 12px rgba(168,0,38,0.3) !important;
  transform: translateY(-1px);
  color: #fff !important;
}

.el-button--success:not(.is-link):not(.is-text) {
  background: linear-gradient(135deg, #059669 0%, #10B981 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  color: #fff !important;
}
.el-button--success:not(.is-link):not(.is-text):hover {
  background: linear-gradient(135deg, #047857 0%, #059669 100%) !important;
  color: #fff !important;
}

.el-button--danger:not(.is-link):not(.is-text) {
  background: linear-gradient(135deg, #DC2626 0%, #EF4444 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  color: #fff !important;
}
.el-button--danger:not(.is-link):not(.is-text):hover {
  background: linear-gradient(135deg, #B91C1C 0%, #DC2626 100%) !important;
  color: #fff !important;
}

.el-button--warning:not(.is-link):not(.is-text) {
  background: linear-gradient(135deg, #D97706 0%, #F59E0B 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  color: #fff !important;
}
.el-button--warning:not(.is-link):not(.is-text):hover {
  background: linear-gradient(135deg, #B45309 0%, #D97706 100%) !important;
  color: #fff !important;
}

/* === Link / Text buttons - keep them as colored text, NO background === */
.el-button.is-link, .el-button.is-text {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px 8px !important;
  height: auto !important;
  font-weight: 500 !important;
}
.el-button--primary.is-link, .el-button--primary.is-text {
  color: #A80026 !important;
  background: transparent !important;
}
.el-button--primary.is-link:hover, .el-button--primary.is-text:hover {
  color: #86001E !important;
  background: rgba(168,0,38,0.06) !important;
  border-radius: 4px !important;
}
.el-button--success.is-link, .el-button--success.is-text {
  color: #059669 !important;
  background: transparent !important;
}
.el-button--success.is-link:hover, .el-button--success.is-text:hover {
  color: #047857 !important;
  background: rgba(5,150,105,0.06) !important;
  border-radius: 4px !important;
}
.el-button--danger.is-link, .el-button--danger.is-text {
  color: #DC2626 !important;
  background: transparent !important;
}
.el-button--danger.is-link:hover, .el-button--danger.is-text:hover {
  color: #B91C1C !important;
  background: rgba(220,38,38,0.06) !important;
  border-radius: 4px !important;
}
.el-button--warning.is-link, .el-button--warning.is-text {
  color: #D97706 !important;
  background: transparent !important;
}
.el-button--warning.is-link:hover, .el-button--warning.is-text:hover {
  color: #B45309 !important;
  background: rgba(217,119,6,0.06) !important;
  border-radius: 4px !important;
}
.el-button--info.is-link, .el-button--info.is-text {
  color: #606266 !important;
  background: transparent !important;
}

/* === Tables === */
.el-table thead th {
  background: #F8F9FA !important;
  color: #1A1A2E !important;
  font-weight: 600 !important;
}
.el-table tr:hover > td {
  background: rgba(168,0,38,0.02) !important;
}

/* === Tags === */
.el-tag--success {
  background: rgba(5,150,105,0.1) !important;
  color: #059669 !important;
  border-color: rgba(5,150,105,0.2) !important;
}
.el-tag--danger {
  background: rgba(220,38,38,0.1) !important;
  color: #DC2626 !important;
  border-color: rgba(220,38,38,0.2) !important;
}
.el-tag--warning {
  background: rgba(217,119,6,0.1) !important;
  color: #D97706 !important;
  border-color: rgba(217,119,6,0.2) !important;
}
.el-tag--primary {
  background: rgba(168,0,38,0.1) !important;
  color: #A80026 !important;
  border-color: rgba(168,0,38,0.2) !important;
}
.el-tag--info {
  background: rgba(96,98,102,0.1) !important;
  color: #606266 !important;
  border-color: rgba(96,98,102,0.2) !important;
}

/* === Pagination === */
.el-pagination.is-background .el-pager li.is-active {
  background: linear-gradient(135deg, #A80026, #C4334F) !important;
  border-radius: 6px !important;
  color: #fff !important;
}

/* === Menu active item === */
.el-menu-item.is-active {
  color: #FF6B35 !important;
  font-weight: 600 !important;
}

/* === Switch === */
.el-switch.is-checked .el-switch__core {
  background: linear-gradient(135deg, #A80026, #C4334F) !important;
  border-color: #A80026 !important;
}

/* === Input focus === */
.el-input__wrapper.is-focus {
  box-shadow: 0 0 0 1px #A80026 inset, 0 0 0 3px rgba(168,0,38,0.1) !important;
}

/* === Tabs === */
.el-tabs__active-bar {
  background: linear-gradient(90deg, #A80026, #FF6B35) !important;
  height: 3px !important;
  border-radius: 2px !important;
}
.el-tabs__item.is-active {
  color: #A80026 !important;
  font-weight: 600 !important;
}

/* === Stat cards - remove red borders, fix icon contrast === */
.stat-card {
  border-radius: 12px !important;
  transition: transform 0.3s, box-shadow 0.3s !important;
  border: 1px solid #EBEEF5 !important;
}
.stat-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
}
.stat-card .stat-header .stat-icon {
  border-radius: 10px !important;
}
.stat-card .stat-header .stat-icon .el-icon {
  color: #fff !important;
}

/* === Dialog - keep white header with brand accent === */
.el-dialog {
  border-radius: 16px !important;
  overflow: hidden !important;
}
.el-dialog__header {
  background: #fff !important;
  border-bottom: 2px solid #A80026 !important;
  padding: 16px 20px !important;
}
.el-dialog__title {
  color: #1A1A2E !important;
  font-weight: 600 !important;
  font-size: 16px !important;
}
.el-dialog__headerbtn .el-dialog__close {
  color: #909399 !important;
}
.el-dialog__headerbtn:hover .el-dialog__close {
  color: #A80026 !important;
}

/* === Filter card === */
.filter-card {
  border-radius: 12px !important;
}

/* === Radio buttons active === */
.el-radio-button__original-radio:checked + .el-radio-button__inner {
  background: linear-gradient(135deg, #A80026, #C4334F) !important;
  border-color: #A80026 !important;
  box-shadow: -1px 0 0 0 #A80026 !important;
}

/* === Checkbox === */
.el-checkbox__input.is-checked .el-checkbox__inner {
  background: #A80026 !important;
  border-color: #A80026 !important;
}
.el-checkbox__input.is-checked + .el-checkbox__label {
  color: #A80026 !important;
}

/* === Select dropdown active === */
.el-select-dropdown__item.selected {
  color: #A80026 !important;
  font-weight: 600 !important;
}

/* === Date picker active === */
.el-date-table td.current:not(.disabled) span {
  background: linear-gradient(135deg, #A80026, #C4334F) !important;
  color: #fff !important;
}

/* === Progress bar === */
.el-progress-bar__inner {
  background: linear-gradient(90deg, #A80026, #FF6B35) !important;
}

/* === Stat card icons - force brand colors === */
.stat-card .stat-header .stat-icon,
.stat-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 22px !important;
  color: #fff !important;
}
.stat-card .stat-header .stat-icon.blue,
.stat-icon.blue {
  background: linear-gradient(135deg, #A80026, #C4334F) !important;
}
.stat-card .stat-header .stat-icon.green,
.stat-icon.green {
  background: linear-gradient(135deg, #059669, #10B981) !important;
}
.stat-card .stat-header .stat-icon.orange,
.stat-icon.orange {
  background: linear-gradient(135deg, #D97706, #F59E0B) !important;
}
.stat-card .stat-header .stat-icon.red,
.stat-icon.red {
  background: linear-gradient(135deg, #DC2626, #EF4444) !important;
}
.stat-card .stat-header .stat-icon.purple,
.stat-icon.purple {
  background: linear-gradient(135deg, #7C3AED, #A78BFA) !important;
}
.stat-card .stat-header .stat-icon .el-icon,
.stat-icon .el-icon {
  color: #fff !important;
  font-size: 22px !important;
}
