.saved-link { color: var(--deep); font-weight: 650; white-space: nowrap; }
.industry-tile small { color: var(--muted); }
.catalog-search { margin-top: 26px; }
.catalog-search label { display: block; margin-bottom: 8px; font-size: .84rem; font-weight: 650; color: var(--deep); }
.catalog-search .searchbox { width: min(100%, 560px); }
.class-filter { position: sticky; top: 100px; background: var(--white); border: 1px solid var(--line); border-radius: 10px; padding: 18px; }
.class-filter .filter-head { margin-bottom: 12px; }
.class-filter h2 { margin: 0; font-size: 1rem; }
.class-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; max-height: 520px; overflow-y: auto; }
.class-list a { display: block; padding: 6px 8px; border-radius: 6px; font-size: .82rem; color: #536157; }
.class-list a:first-child { grid-column: 1 / -1; }
.class-list a:hover, .class-list a.selected { background: #e9f0e5; color: var(--deep); font-weight: 650; }
.formal-image { display: block; background: #f6f7f2; }
.formal-image img { width: 100%; height: 100%; object-fit: contain; padding: 24px; background: var(--white); }
.card-visual.formal-image img { padding: 28px; }
.detail-stage.formal-image img { padding: clamp(25px, 6vw, 80px); }
.hero-visual img { object-position: center; }
.product-card .card-title-row h3 { overflow-wrap: anywhere; }
.product-card .card-meta { min-height: 1.35em; }
.catalog-toolbar { min-height: 49px; }
.detail-loading { min-height: 55vh; padding-top: 40px; }
.goods-list { margin: 0; padding-left: 1.3em; columns: 2; column-gap: 40px; }
.goods-list li { margin-bottom: 8px; break-inside: avoid; }
.saved-content { min-height: 45vh; padding-bottom: 70px; }
.detail-section .empty-state { padding: 45px 20px; }
.detail-info dd { overflow-wrap: anywhere; }
.detail-tip { max-width: 60ch; }
.hero-visual .hero-caption { background: rgba(25, 48, 37, .6); padding: 4px 8px; border-radius: 4px; }
@media (max-width: 900px) {
  .catalog-layout { grid-template-columns: 1fr; }
  .class-filter { position: static; }
  .class-list { max-height: 170px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .class-list a:first-child { grid-column: auto; }
}
@media (max-width: 760px) {
  .site-header .nav { display: flex; }
  .filter-panel { display: block; margin-bottom: 22px; }
  .detail-actions .btn-primary { display: inline-flex; }
}
@media (max-width: 600px) {
  .header-inner { height: auto; min-height: 66px; flex-wrap: wrap; gap: 5px 12px; padding-block: 10px; }
  .site-header .nav { display: flex; order: 3; width: 100%; margin-left: 0; justify-content: space-between; gap: 8px; }
  .nav a { font-size: .82rem; }
  .header-actions { margin-left: auto; }
  .filter-panel { display: block; margin-bottom: 22px; }
  .class-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .card-body { padding: 11px; }
  .card-title-row h3 { font-size: 1rem; }
  .card-price { align-items: start; flex-direction: column; }
  .goods-list { columns: 1; }
  .detail-top { grid-template-columns: 1fr; }
  .detail-actions .btn-primary { display: inline-flex; }
}
