/* Hallmark · existing playful varsity tokens · shopping workbench, no new palette */
.gear-page { max-width: 78rem; margin-inline: auto; padding: var(--space-xl) var(--page-gutter); }
.gear-crumbs { display: flex; flex-wrap: wrap; gap: var(--space-sm); font-size: var(--text-sm); }
.gear-crumbs a { white-space: nowrap; }
.gear-head { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.8fr); align-items: center; gap: var(--space-2xl); padding-block: var(--space-2xl); }
.gear-kicker { font-family: var(--font-outlier); font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; margin: 0 0 var(--space-sm); }
.gear-head h1 { font-family: var(--font-display); font-weight: 400; font-size: clamp(3rem, 6vw, 5.5rem); line-height: 1.05; margin: 0; letter-spacing: -.03em; }
.gear-head h1 span { color: var(--color-splash-deep); }
.gear-lede { max-width: 44ch; font-size: var(--text-md); }
.gear-jump { font-weight: 700; white-space: nowrap; }
.gear-first { background: var(--color-sun); border: 3px solid var(--color-ink); border-radius: var(--radius-lg); padding: var(--space-xl); box-shadow: var(--shadow-pop); transform: rotate(2deg); }
.gear-first h2 { font-family: var(--font-display); font-size: var(--text-xl); font-weight: 400; line-height: 1.2; margin: 0; }
.gear-first a { font-weight: 700; }
.gear-disclosure { font-size: var(--text-sm); border-top: 1px solid var(--color-rule); border-bottom: 1px solid var(--color-rule); margin: 0; padding-block: var(--space-md); }
.gear-chooser { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-xl); margin-block: var(--space-2xl); align-items: center; }
.gear-page h2 { font-size: var(--text-2xl); line-height: 1.2; font-family: var(--font-display); font-weight: 400; margin: 0 0 var(--space-md); }
.gear-page h3 { font-size: var(--text-lg); line-height: 1.3; margin: 0 0 var(--space-sm); }
.gear-chooser label { display: block; margin-bottom: var(--space-xs); font-weight: 700; }
.gear-chooser select { width: 100%; min-height: 3.25rem; color: var(--color-ink); background: var(--color-card); border: 2px solid var(--color-ink); border-radius: var(--radius-md); padding: var(--space-sm); font: inherit; font-size: var(--text-sm); }
#gear-result { margin-bottom: 0; font-size: var(--text-sm); }
.gear-section-head { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-lg); border-bottom: 3px solid var(--color-ink); }
.gear-section-head p { font-size: var(--text-xs); }
.gear-product { display: grid; grid-template-columns: 3rem minmax(0, 1fr) 13rem; gap: var(--space-lg); padding-block: var(--space-xl); border-bottom: 1px solid var(--color-rule); }
.gear-product__number { font-family: var(--font-display); font-size: var(--text-2xl); color: var(--color-splash-deep); line-height: 1; }
.gear-product__body > p { margin-block: 0 var(--space-md); }
.gear-product__body > .gear-kicker { margin-bottom: var(--space-xs); }
.gear-product__buy { align-self: center; }
.gear-product__buy p, .gear-source, .gear-note, .gear-small { font-size: var(--text-sm); color: var(--color-muted); }
.gear-product__buy .btn { width: 100%; padding-inline: var(--space-sm); }
.gear-page .btn { white-space: nowrap; min-height: 2.75rem; font-size: var(--text-sm); }
.gear-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-md); margin-block: var(--space-lg); }
.gear-glance { overflow-x: auto; margin-block: var(--space-lg) var(--space-md); border: 2px solid var(--color-ink); border-radius: var(--radius-md); background: var(--color-card); }
.gear-glance:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 2px; }
.gear-glance table { width: 100%; min-width: 46rem; border-collapse: collapse; font-size: var(--text-sm); }
.gear-glance caption { caption-side: top; text-align: left; padding: var(--space-sm) var(--space-md); font-size: var(--text-xs); color: var(--color-muted); }
.gear-glance th, .gear-glance td { text-align: left; vertical-align: top; padding: var(--space-xs) var(--space-md); border-top: 1px solid var(--color-rule); }
.gear-glance thead th { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .06em; background: var(--color-paper-2); }
.gear-glance tbody th a { font-weight: 700; }
.gear-glance tr[hidden] { display: none; }
.gear-specs dt { font-size: var(--text-xs); color: var(--color-muted); }
.gear-specs dd { margin: var(--space-2xs) 0 0; font-size: var(--text-sm); font-weight: 700; }
.gear-tradeoff { border-left: 3px solid var(--color-accent); padding-left: var(--space-sm); }
.gear-checklist { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: var(--space-xl); background: var(--color-paper-2); border-radius: var(--radius-lg); padding: var(--space-xl); margin-block: var(--space-2xl); }
.gear-checklist fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.gear-checklist legend { font-weight: 700; padding: 0 0 var(--space-sm); }
.gear-checklist label { display: flex; align-items: baseline; gap: var(--space-sm); padding: var(--space-sm) 0; cursor: pointer; border-bottom: 1px solid var(--color-rule); }
.gear-checklist input { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; accent-color: var(--color-splash-deep); }
.gear-checklist label:has(input:checked) { text-decoration: line-through; color: var(--color-muted); }
.gear-actions { display: flex; flex-wrap: wrap; gap: var(--space-sm); }
#gear-feedback { min-height: 3em; font-size: var(--text-sm); }
#gear-copy-fallback { overflow-wrap: anywhere; }
.gear-ground-rules, .gear-method { max-width: 68ch; margin-block: var(--space-xl); }
.gear-method { border-top: 1px solid var(--color-rule); padding-top: var(--space-xl); }
.gear-method h2 { font-size: var(--text-xl); }
.gear-banner { margin: var(--space-xl) var(--page-gutter); padding: var(--space-xl); border: 3px solid var(--color-ink); border-radius: var(--radius-lg); background: var(--color-sun); display: flex; justify-content: space-between; align-items: center; gap: var(--space-xl); }
.gear-banner h2 { margin: 0 0 var(--space-xs); font-family: var(--font-display); font-weight: 400; font-size: var(--text-xl); }
.gear-banner p { margin: 0; max-width: 58ch; }
.gear-banner .btn { white-space: nowrap; flex-shrink: 0; }
@media (max-width: 55rem) {
  .gear-head { gap: var(--space-xl); }
  .gear-product { grid-template-columns: 2.5rem minmax(0, 1fr); }
  .gear-product__buy { grid-column: 2; }
  .gear-product__buy .btn { width: auto; }
  .gear-banner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 40rem) {
  .gear-head, .gear-chooser, .gear-checklist { grid-template-columns: minmax(0, 1fr); }
  .gear-head { padding-block: var(--space-xl); }
  .gear-first { transform: none; padding: var(--space-lg); }
  .gear-page h2 { font-size: var(--text-xl); }
  .gear-section-head { display: block; }
  .gear-product { grid-template-columns: minmax(0, 1fr); gap: var(--space-sm); }
  .gear-product__buy { grid-column: 1; }
  .gear-specs { grid-template-columns: minmax(0, 1fr); gap: var(--space-xs); }
  .gear-specs > div { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: var(--space-xs); }
  .gear-specs dd { margin: 0; }
  .gear-checklist { padding: var(--space-lg); }
  .gear-page { padding-top: var(--space-lg); }
  .gear-banner { padding: var(--space-lg); }
}
@media print {
  .nav-slab, .foot-marquee, .foot-links, .gear-page > :not(.gear-checklist), .gear-actions, .gear-small, #gear-feedback, #gear-copy-fallback { display: none !important; }
  .gear-page, .gear-checklist { margin: 0; padding: 0; display: block; background: var(--color-print-paper); color: var(--color-print-ink); }
  .gear-checklist h2 { font-size: 22pt; }
  .gear-checklist fieldset { margin-top: 1.5rem; }
  .gear-checklist label { break-inside: avoid; }
}
