.featured-select { margin-top: 3rem; padding: 1.25rem; background: #fff; border: 1px solid var(--line); border-radius: .65rem; }
.featured-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(150px,1fr)); gap: .8rem; }
.featured-grid label { position: relative; margin: 0; border: 3px solid transparent; border-radius: .55rem; overflow: hidden; background: #102a20; color: #fff; cursor: pointer; }
.featured-grid input { position: absolute; z-index: 2; width: auto; top: .55rem; left: .55rem; margin: 0; accent-color: var(--green); }
.featured-grid img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .2s ease; }
.featured-grid span { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; display: block; padding: 2.25rem .7rem .65rem; background: linear-gradient(transparent,rgba(5,12,9,.9)); color: #fff; font-size: .88rem; font-weight: 750; line-height: 1.25; text-shadow: 0 1px 4px rgba(0,0,0,.8); }
.featured-grid label:hover img { transform: scale(1.035); }
.featured-grid label:has(input:checked) { border-color: #d3a72f; box-shadow: 0 0 0 1px rgba(211,167,47,.2); }
.featured-grid label:focus-within { outline: 3px solid rgba(33,95,69,.35); outline-offset: 2px; }

.deck-tiles { display: grid; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); gap: 1rem; }
.deck-tile { position: relative; min-height: 180px; border-radius: .65rem; overflow: hidden; background: #102a20; color: #fff; }
.deck-tile img { position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: .58; }
.deck-tile div { position: absolute; inset: auto 0 0; padding: 2.5rem 1rem 1rem; background: linear-gradient(transparent,rgba(0,0,0,.85)); }
.deck-tile strong,
.deck-tile span { display: block; }
.deck-tile strong { font: 700 1.35rem Georgia,serif; }
.deck-tile span { font-size: .86rem; }
.deck-hero { display: grid; grid-template-columns: minmax(220px,38%) 1fr; gap: 2rem; align-items: center; margin-bottom: 2rem; }
.deck-hero > img { width: 100%; max-height: 300px; object-fit: cover; border-radius: .7rem; }

.edit-changes { margin: 1.25rem 0; padding: 1rem 1.1rem; border: 1px solid var(--line); border-left: 4px solid var(--green); border-radius: .45rem; background: rgba(255,255,255,.62); }
.edit-changes h2 { margin: 0 0 .45rem; font-size: 1.05rem; }
.edit-changes ul { margin: 0; padding-left: 1.25rem; }
.edit-changes p { margin: 0; color: var(--muted); }

@media (prefers-reduced-motion: reduce) {
  .featured-grid img { transition: none; }
}
@media (max-width: 650px) {
  .deck-hero { grid-template-columns: 1fr; }
  .featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
