/* Structure only. Existing colors and typography remain in theme.css. */
.search-result-list, .mobile-category-list { list-style: none; padding: 0; margin: 0; }
.search-result-list { display: grid; gap: 12px; }
.search-result-list a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px 20px; padding: 16px; border: 1px solid var(--line); border-radius: var(--radius); text-decoration: none; }
.search-result-list a strong, .search-result-list a span { grid-column: 1; }
.search-result-list a svg { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
.tray-compact { display: flex; gap: 12px; justify-content: space-between; align-items: center; padding-block: 10px; }
.tray-compact .btn { min-width: 0; }
.desktop-category-navigation { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 32px; grid-column: 1 / -1; }
.mobile-category-navigation { display: none; }
.proposal-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.proposal-card .btn, .thread-card > .btn { margin-top: 12px; }
.home-deal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.home-story-grid { grid-template-columns: minmax(0,1fr); max-width: 760px; }
.home-story-grid .story-images { max-width: 400px; }
.featured-reason { display: block; margin-block: 6px; }
.decision-guide { margin-bottom: 24px; }
.global-search-label { display: flex; flex: 1; min-width: 0; }
.discovery-filter > label { display: grid; gap: 8px; flex: 1; }
body.has-tray { padding-bottom: calc(var(--mobile-nav-height) + 112px); }
@media (min-width: 768px) {
  .mega-layout { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 767px) {
  .desktop-category-navigation { display: none; }
  .mobile-category-navigation { display: block; }
  .mobile-category-list { display: grid; gap: 8px; margin-top: 16px; }
  .mobile-category-list .btn, .mobile-category-list a { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 48px; padding: 12px; }
  .home-deal-grid, .proposal-grid { grid-template-columns: minmax(0,1fr); }
  .tray-compact { gap: 8px; }
  .tray-compact .btn { flex: 1 1 50%; padding-inline: 8px; }
  .compare-tray { max-height: 42dvh; overflow-y: auto; }
}
