.accordion {
  border: 1px solid var(--glass-border);
  border-radius: var(--radius-md);
  margin: 12px 0;
  overflow: hidden;
  background: var(--bg-elevated);
  transition: border-color var(--transition-normal), background var(--transition-normal);
}
.accordion:hover {
  border-color: rgba(255, 255, 255, 0.08);
  background: var(--bg-hover);
}
.accordion-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  cursor: pointer;
}
.accordion-icon {
  font-size: 14px;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-dark);
  border-radius: var(--radius-sm);
}
.accordion-title {
  flex: 1;
  font-weight: 500;
  font-size: 13px;
  color: var(--text-primary);
}
.accordion-arrow,
.accordion-chevron {
  color: var(--text-muted);
  transition: transform var(--transition-normal);
  font-size: 10px;
  flex-shrink: 0;
}
.accordion.open > .accordion-arrow,
.accordion.open > .accordion-header > .accordion-arrow,
.accordion.open > .accordion-chevron,
.accordion.open > .accordion-header > .accordion-chevron {
  transform: rotate(180deg);
}
.accordion-body,
.accordion-content {
  max-height: 0;
  overflow: hidden;
  padding: 0 16px;
  opacity: 0;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.3s ease,
              padding 0.3s ease;
}
.accordion.open > .accordion-body,
.accordion.open > .accordion-content {
  max-height: 2000px;
  opacity: 1;
  padding: 0 16px 16px;
}
.accordion-body .video-frame,
.accordion-content .video-frame {
  margin: 10px 0;
}
.accordion-body p,
.accordion-content p {
  margin-bottom: 8px;
}
.accordion.brand-asus {
  border-color: rgba(0, 135, 220, 0.3);
  background: linear-gradient(135deg, rgba(0, 135, 220, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-asus .accordion-icon {
  background: rgba(0, 135, 220, 0.15);
  color: #0087dc;
}
.accordion.brand-asus:hover {
  border-color: rgba(0, 135, 220, 0.5);
  box-shadow: 0 0 20px rgba(0, 135, 220, 0.1);
}

.accordion.brand-hp {
  border-color: rgba(0, 135, 220, 0.3);
  background: linear-gradient(135deg, rgba(0, 135, 220, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-hp .accordion-icon {
  background: rgba(0, 135, 220, 0.15);
  color: #0087dc;
}
.accordion.brand-hp:hover {
  border-color: rgba(0, 135, 220, 0.5);
  box-shadow: 0 0 20px rgba(0, 135, 220, 0.1);
}

.accordion.brand-msi {
  border-color: rgba(255, 0, 0, 0.3);
  background: linear-gradient(135deg, rgba(255, 0, 0, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-msi .accordion-icon {
  background: rgba(255, 0, 0, 0.15);
  color: #ff0000;
}
.accordion.brand-msi:hover {
  border-color: rgba(255, 0, 0, 0.5);
  box-shadow: 0 0 20px rgba(255, 0, 0, 0.1);
}

.accordion.brand-gigabyte {
  border-color: rgba(255, 136, 0, 0.3);
  background: linear-gradient(135deg, rgba(255, 136, 0, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-gigabyte .accordion-icon {
  background: rgba(255, 136, 0, 0.15);
  color: #ff8800;
}
.accordion.brand-gigabyte:hover {
  border-color: rgba(255, 136, 0, 0.5);
  box-shadow: 0 0 20px rgba(255, 136, 0, 0.1);
}

.accordion.brand-asrock {
  border-color: rgba(0, 166, 81, 0.3);
  background: linear-gradient(135deg, rgba(0, 166, 81, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-asrock .accordion-icon {
  background: rgba(0, 166, 81, 0.15);
  color: #00a651;
}
.accordion.brand-asrock:hover {
  border-color: rgba(0, 166, 81, 0.5);
  box-shadow: 0 0 20px rgba(0, 166, 81, 0.1);
}

.accordion.brand-other {
  border-color: rgba(255, 255, 255, 0.15);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-other .accordion-icon {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.accordion.brand-other:hover {
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.05);
}

.accordion.brand-lenovo {
  border-color: rgba(147, 51, 234, 0.3);
  background: linear-gradient(135deg, rgba(147, 51, 234, 0.08) 0%, var(--bg-elevated) 50%);
}
.accordion.brand-lenovo .accordion-icon {
  background: rgba(147, 51, 234, 0.15);
  color: #9333ea;
}
.accordion.brand-lenovo:hover {
  border-color: rgba(147, 51, 234, 0.5);
  box-shadow: 0 0 20px rgba(147, 51, 234, 0.1);
}

.accordion.border-blue {
  border-left: 3px solid var(--info);
}
.accordion.border-green {
  border-left: 3px solid var(--success);
}
.accordion.border-orange {
  border-left: 3px solid #fb923c;
}
.accordion.border-yellow {
  border-left: 3px solid var(--warning);
}