/* Download page styles — minimal, leveraging base.css variables and utilities */
:root {
  --dlx-gap: clamp(1rem, 2vw, 2rem);
}

.download-hero {
  padding: clamp(2rem, 4vw, 4rem) 0;
}
.download-hero .container {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  align-items: center;
  gap: var(--dlx-gap);
}
.hero-content h1 {
  margin-bottom: 0.5rem;
}
.hero-content .lead {
  opacity: 0.9;
  margin-bottom: 1rem;
}
.platform-chooser {
  display: inline-flex;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.platform-chooser .radio {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.5rem;
  border: 1px solid var(--border-color, rgba(255,255,255,0.15));
  border-radius: 6px;
}
.platform-chooser input[type="radio"] {
  accent-color: var(--accent, #7dd3fc);
}
.store-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  border: 1px solid transparent;
}
.btn-primary {
  background: var(--accent, #7dd3fc);
  color: #0b0f14;
}
.btn-secondary {
  background: transparent;
  border-color: var(--border-color, rgba(255,255,255,0.2));
}
.btn-outline {
  background: transparent;
  border-color: var(--border-color, rgba(255,255,255,0.2));
}
.meta-note, .note {
  font-size: 0.9rem;
  opacity: 0.8;
}
.hero-visual img, .exclusive-visual img, .updates-visual img {
  width: 100%;
  height: auto;
  border-radius: 12px;
}

.section {
  padding: clamp(2rem, 4vw, 4rem) 0;
}
.requirements-grid, .install-grid, .exclusive-grid, .updates-grid, .reviews-grid, .support-cards {
  display: grid;
  gap: var(--dlx-gap);
}
.requirements-grid { grid-template-columns: repeat(2, 1fr); }
.install-grid { grid-template-columns: repeat(2, 1fr); }
.exclusive-grid { grid-template-columns: 1.1fr 0.9fr; align-items: center; }
.updates-grid { grid-template-columns: 1fr 1fr; align-items: center; }
.reviews-grid { grid-template-columns: 1fr 1fr; }
.support-cards { grid-template-columns: repeat(3, 1fr); }

.card {
  padding: 1rem;
  border: 1px solid var(--border-color, rgba(255,255,255,0.12));
  border-radius: 12px;
  background: var(--panel, rgba(255,255,255,0.03));
}
.checklist, .bullets { margin-left: 1rem; }
.checklist li { margin: 0.25rem 0; }

.steps ol { margin-left: 1.25rem; }
.steps li { margin: 0.25rem 0; }

.coupon { display: flex; align-items: center; gap: 0.75rem; margin: 0.75rem 0; }
.coupon code {
  padding: 0.35rem 0.6rem;
  border-radius: 6px;
  background: var(--panel, rgba(255,255,255,0.06));
  border: 1px solid var(--border-color, rgba(255,255,255,0.15));
}

/* Reviews */
#review-form .form-row { display: grid; gap: 0.35rem; margin-bottom: 0.75rem; }
#review-form input, #review-form textarea {
  width: 100%;
  background: transparent;
  color: inherit;
  border: 1px solid var(--border-color, rgba(255,255,255,0.18));
  border-radius: 8px;
  padding: 0.6rem 0.75rem;
}
.rating { display: inline-flex; gap: 0.5rem; }
.form-actions { margin-top: 0.5rem; }
.review-list .reviews { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.75rem; }
.review-item { border: 1px solid var(--border-color, rgba(255,255,255,0.12)); border-radius: 10px; padding: 0.75rem; background: var(--panel, rgba(255,255,255,0.02)); }
.review-item .meta { font-size: 0.85rem; opacity: 0.85; margin-bottom: 0.25rem; display: flex; gap: 0.5rem; align-items: baseline; }
.review-item .stars { color: var(--accent, #7dd3fc); font-weight: 700; }

/* Support */
.support-cards .card h3 { margin-bottom: 0.25rem; }

/* Responsive */
@media (max-width: 1024px) {
  .download-hero .container,
  .exclusive-grid,
  .updates-grid { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .requirements-grid,
  .install-grid,
  .reviews-grid,
  .support-cards { grid-template-columns: 1fr; }
}
