/* Weapons Page Styles — built on base.css, minimal overrides */

.hero-weapons {
  padding-top: var(--space-16);
  padding-bottom: var(--space-12);
}
.hero-weapons .hero-inner {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: var(--space-8);
  align-items: center;
}
.hero-weapons .hero-copy h1 {
  margin-bottom: var(--space-4);
}
.hero-weapons .hero-copy .hero-ctas {
  display: flex;
  gap: var(--space-4);
  margin-top: var(--space-6);
}
.hero-weapons .hero-media img {
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-xl);
}

@media (max-width: 960px) {
  .hero-weapons .hero-inner { grid-template-columns: 1fr; }
}

.section-header { margin-bottom: var(--space-6); }

/* Filters */
.weapons-filter {
  display: grid;
  grid-template-columns: 1fr 240px auto;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
.weapons-filter .filter-actions { display: flex; align-items: center; }

@media (max-width: 800px) {
  .weapons-filter { grid-template-columns: 1fr; }
}

.weapon-card .weapon-media img {
  border-radius: var(--radius-xl);
  width: 100%;
  height: auto;
  object-fit: cover;
}
.weapon-card .weapon-body { margin-top: var(--space-4); }
.weapon-card .weapon-head { 
  display: flex; 
  align-items: center; 
  justify-content: space-between; 
  gap: var(--space-3); 
}
.weapon-card .weapon-desc { margin-top: var(--space-2); }
.weapon-card .weapon-meta { 
  margin-top: var(--space-3); 
  color: var(--color-text-secondary); 
  font-size: 0.875rem;
}
.weapon-card .weapon-meta li { margin-bottom: var(--space-1); }
.weapon-card details { margin-top: var(--space-3); }
.weapon-card details ul { margin-top: var(--space-2); padding-left: var(--space-4); }
.weapon-card details li { margin-bottom: var(--space-2); }

/* Tier List */
.tier-wrapper .tier-col h3 { margin-bottom: var(--space-3); }
.tier-list-items { display: grid; gap: var(--space-2); }

/* Spray Patterns */
.spray-visual img {
  border-radius: var(--radius-xl);
  width: 100%;
  height: auto;
}
.spray-guide ul {
  color: var(--color-text-secondary);
}

/* Economy Guide */
.card h3 {
  font-family: var(--font-heading);
}
.card ul {
  list-style: none;
  padding: 0;
}
.card ul li {
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--color-gray-800);
}
.card ul li:last-child {
  border-bottom: none;
}

/* Comparison */
.compare-form {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
@media (max-width: 800px) { 
  .compare-form { grid-template-columns: 1fr; } 
}

.comparison-output { display: none; }
.comparison-output.active { display: block; }
.comparison-table { width: 100%; border-collapse: collapse; }
.comparison-table th, .comparison-table td { 
  padding: var(--space-3); 
  border-bottom: 1px solid var(--color-gray-800); 
  text-align: left; 
  vertical-align: top; 
}
.comparison-table th { 
  width: 20%; 
  color: var(--color-text-secondary); 
}

/* CTA */
.cta-bottom { 
  margin-top: var(--space-12); 
  margin-bottom: var(--space-16); 
}
.cta-bottom .card { 
  display: grid; 
  gap: var(--space-4); 
  align-items: start; 
  text-align: center;
}

/* Breadcrumbs */
.breadcrumbs { margin-bottom: var(--space-6); }

/* Accessibility tweaks */
summary { cursor: pointer; }
summary:focus-visible { 
  outline: 2px solid var(--color-secondary); 
  outline-offset: 4px; 
  border-radius: var(--radius-sm); 
}

/* Utility classes alignment */
.list-disc {
  list-style-type: disc;
}
.space-y-2 > * + * {
  margin-top: var(--space-2);
}
.pl-6 {
  padding-left: var(--space-6);
}
