/* Seeds category refinement. All presentation stays inside category content. */
.sd-category { --category-border: color-mix(in srgb, var(--border) 72%, var(--card)); --category-tint: color-mix(in srgb, var(--soft) 72%, var(--card)); --category-secondary: color-mix(in srgb, var(--text) 78%, var(--muted)); --category-shadow: 0 4px 16px color-mix(in srgb, var(--text) 6%, transparent); max-inline-size: 1280px; margin-inline: auto; padding-inline: 16px; }
.sd-category [hidden] { display: none !important; }
.sd-category-intro { padding-block-start: 22px; }
.sd-category .sd-category-hero { display: grid; min-inline-size: 0; position: relative; isolation: isolate; overflow: hidden; border: 1px solid var(--category-border); border-radius: 16px; background: radial-gradient(ellipse at 18% 100%, color-mix(in srgb, var(--primary) 8%, transparent), transparent 60%), var(--category-tint); }
.sd-category .sd-category-hero::before { content: ""; position: absolute; z-index: -1; inset-inline-start: 35%; inset-block-end: 22px; inline-size: 32px; block-size: 17px; border: 1px solid var(--primary); border-radius: 90% 0 90% 0; transform: rotate(-28deg); opacity: .18; pointer-events: none; }
.sd-category .sd-category-hero__content { min-inline-size: 0; padding: 30px 34px; align-self: center; }
.sd-category .sd-category-hero nav { margin-block-end: 20px; }
.sd-category .sd-category-hero nav ol { margin: 0; gap: 6px; font-size: .8125rem; }
.sd-category .sd-category-hero h1 { font-family: var(--font-display); font-size: clamp(2rem, 3.4vw, 3rem); line-height: 1.1; font-weight: 800; letter-spacing: -.03em; overflow-wrap: anywhere; }
.sd-category .sd-category-hero__text { margin-block-start: 14px; max-inline-size: 32rem; font-size: 1rem; line-height: 1.55; color: var(--category-secondary); }
.sd-category .sd-category-hero--image { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.sd-category .sd-category-hero__visual { min-inline-size: 0; block-size: 260px; position: relative; overflow: hidden; background: var(--category-tint); }
.sd-category .sd-category-hero__visual::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, var(--category-tint), transparent 24%); }
.sd-category .sd-category-hero__visual img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: center; }
.sd-category .sd-category-discovery { margin-block-start: 16px; }
.sd-category .sd-category-discovery__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sd-category .sd-category-discovery__chips li { min-inline-size: 0; max-inline-size: 100%; }
.sd-category .sd-category-discovery__chips a { display: inline-flex; align-items: center; justify-content: center; min-block-size: 44px; padding: 8px 18px; border: 1px solid var(--category-border); border-radius: 999px; background: var(--card); color: var(--category-secondary); font-size: .875rem; font-weight: 600; line-height: 1.4; transition: border-color 180ms, background-color 180ms; }
.sd-category .sd-category-discovery__chips a.is-current { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.sd-category .sd-category-discovery__cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)); gap: 16px; margin-block-start: 12px; }
.sd-category .sd-category-discovery__cards:not(:has(> a)) { display: none; }
.sd-category .sd-category-discovery__card { min-inline-size: 0; overflow: hidden; border: 1px solid var(--category-border); border-radius: 12px; background: var(--card); box-shadow: 0 2px 7px color-mix(in srgb, var(--text) 4%, transparent); transition: border-color 180ms, box-shadow 180ms, transform 180ms; }
.sd-category .sd-category-discovery__card img { inline-size: 100%; block-size: 124px; object-fit: cover; transition: transform 180ms; }
.sd-category .sd-category-discovery__caption { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; }
.sd-category .sd-category-discovery__caption strong { display: block; font-family: var(--font-display); font-size: 1.0625rem; line-height: 1.3; font-weight: 750; }
.sd-category .sd-category-discovery__caption small { display: block; margin-block-start: 3px; color: var(--category-secondary); font-size: .8125rem; }
.sd-category .sd-category-discovery__caption svg { inline-size: 32px; block-size: 32px; padding: 7px; flex: none; border-radius: 50%; color: var(--on-primary); background: var(--primary); }
.sd-catalog.sd-category { padding-block-start: 20px; }
.sd-category .sd-category-layout { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 24px; }
.sd-category .sd-category-results { min-inline-size: 0; }
.sd-category .sd-category-toolbar { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px 14px; margin-block-end: 16px; }
.sd-category .sd-category-toolbar__count { font-size: .9375rem; font-weight: 650; line-height: 1.4; white-space: nowrap; }
.sd-category .sd-category-toolbar__controls { grid-column: 3; display: flex; align-items: center; gap: 10px; min-inline-size: 0; }
.sd-category .sd-category-filter-trigger { display: none; }
.sd-category .sd-category-sort { display: flex; align-items: center; gap: 10px; min-inline-size: 0; }
.sd-category .sd-category-sort__label { font-size: .8125rem; color: var(--category-secondary); white-space: nowrap; }
.sd-category .sd-category-sort select { inline-size: 220px; max-inline-size: 100%; min-inline-size: 0; block-size: 44px; padding-inline: 12px 30px; border: 1px solid color-mix(in srgb, var(--primary) 22%, var(--category-border)); border-radius: 9px; background-color: var(--card); font-size: .875rem; }
.sd-category .sd-category-sort__apply { min-block-size: 44px; font-size: .8125rem; }
.sd-category .sd-category-sort[data-category-sort-ready] .sd-category-sort__apply { display: none; }
.sd-category .sd-category-toolbar__chips { grid-column: 2; grid-row: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-inline-size: 0; }
.sd-category .sd-category-toolbar__chips:not(:has(.sd-chip)) { display: none; }
.sd-category .sd-category-toolbar__chips .chip { min-block-size: 36px; padding: 6px 10px; border: 1px solid color-mix(in srgb, var(--primary) 30%, var(--category-border)); border-radius: 999px; background: var(--category-tint); font-size: .8125rem; gap: 8px; }
.sd-category .sd-category-toolbar__chips svg { inline-size: 13px; block-size: 13px; flex: none; }
.sd-category .sd-category-clear { min-block-size: 36px; padding: 6px 8px; font-size: .8125rem; color: var(--category-secondary); text-decoration: underline; text-underline-offset: 3px; }
.sd-category .sd-category-filters-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-block-end: 14px; }
.sd-category .sd-category-filters-heading h2 { font-family: var(--font-display); font-size: 1rem; font-weight: 750; }
.sd-category .sd-category-filters-heading a { min-block-size: 36px; display: inline-flex; align-items: center; color: var(--category-secondary); font-size: .75rem; text-decoration: underline; text-underline-offset: 3px; }
.sd-category .sd-facets__body nav { padding-block: 0 12px; }
.sd-category .sd-facets__body nav > p { font-size: .875rem; letter-spacing: 0; text-transform: none; }
.sd-category .sd-shelf__link { min-block-size: 40px; gap: 8px; font-size: .8125rem; line-height: 1.4; }
.sd-category .sd-shelf__link span:last-child:not(:first-child) { padding: 2px 6px; border-radius: 6px; background: var(--surface-2); font-size: .6875rem; }
.sd-category .sd-facet { padding-block: 12px; }
.sd-category .sd-facet > summary { min-block-size: 36px; font-size: .875rem; text-transform: none; letter-spacing: 0; font-weight: 700; }
.sd-category .sd-facet label { min-block-size: 44px; gap: 8px; font-size: .875rem; line-height: 1.4; }
.sd-category .sd-facet__box { inline-size: 16px; block-size: 16px; accent-color: var(--primary); }
.sd-category .sd-facets__actions { gap: 8px; background: var(--card); }
.market .sd-category .sd-facets__actions .btn { min-block-size: 44px; block-size: auto; padding-inline: 10px; font-size: .8125rem; }
.market .sd-category .sd-facets__actions .btn-accent { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.sd-catalog.sd-category [data-sellanto-grid] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; align-items: stretch; }
.sd-category [data-sellanto-grid] > li { min-inline-size: 0; }
.sd-category [data-sellanto-grid] > li > article { min-inline-size: 0; border: 1px solid var(--category-border); border-radius: 12px; background: var(--card); box-shadow: 0 1px 3px color-mix(in srgb, var(--text) 3%, transparent); transition: border-color 180ms, box-shadow 180ms, transform 180ms; }
.sd-category [data-sellanto-grid] article > div:first-child { margin: 6px 6px 0; }
.sd-category [data-sellanto-grid] article > div:first-child > a { aspect-ratio: 1; border-radius: 8px; background: var(--surface-2); }
.sd-category [data-sellanto-grid] article > div:first-child img { object-fit: contain; }
.sd-category [data-sellanto-grid] article > div:last-child { padding: 12px; gap: 0; }
.sd-category [data-sellanto-grid] article > div:last-child > :is(h2,h3) { margin-block: 0 4px; min-block-size: 2.7em; font-size: .875rem; font-weight: 700; line-height: 1.35; }
.sd-category [data-sellanto-grid] article > div:last-child > :is(h2,h3) a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; overflow-wrap: anywhere; }
.sd-category [data-sellanto-grid] [data-category-card-description] { display: none; }
.sd-category [data-sellanto-grid] article > div:last-child > p { font-size: .75rem; line-height: 1.45; margin-block: 0 8px; color: var(--category-secondary); }
.sd-category [data-sellanto-grid] article > div:last-child > div.flex-1 { display: none; }
.sd-category [data-sellanto-grid] article > div:last-child > div.flex-wrap { margin-block-start: auto; padding-block-start: 8px; gap: 4px 7px; }
.sd-category [data-sellanto-grid] article .font-extrabold { font-size: 1.3125rem; line-height: 1.25; font-weight: 800; color: var(--text); font-variant-numeric: tabular-nums; }
.market .sd-category [data-sellanto-item-id] .btn { block-size: auto; min-block-size: 44px; padding-inline: 8px; font-size: .8125rem; font-weight: 700; line-height: 1.3; letter-spacing: 0; text-transform: none; border-radius: 8px; transition: background-color 180ms, border-color 180ms; }
.market .sd-category [data-sellanto-item-id] .btn-ink { background: var(--primary); color: var(--on-primary); border: 1px solid var(--primary); }
.sd-category [data-sellanto-grid] article > div:last-child > form { margin-block-start: 12px; }
.sd-category [data-sellanto-grid] article .list-btn { inline-size: 44px; block-size: 44px; background: transparent; border: 0; box-shadow: none; color: var(--category-secondary); }
.sd-category [data-sellanto-grid] article .list-btn::before { content: ""; position: absolute; inset: 6px; border: 1px solid var(--category-border); border-radius: 50%; background: var(--card); box-shadow: 0 1px 3px color-mix(in srgb, var(--text) 5%, transparent); transition: border-color 180ms, background-color 180ms; }
.sd-category [data-sellanto-grid] article .list-btn svg { position: relative; inline-size: 15px; block-size: 15px; }
.sd-category [data-sellanto-grid] article .list-btn[aria-pressed="true"] { color: var(--primary); }
.sd-category [data-sellanto-grid] article .list-btn[aria-pressed="true"]::before { border-color: var(--primary); background: var(--category-tint); }
.sd-category .sd-category-empty { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 36px 24px; border: 1px dashed var(--category-border); border-radius: 12px; text-align: center; background: var(--category-tint); }
.sd-category .sd-category-empty > svg { inline-size: 40px; block-size: 40px; color: var(--primary); }
.sd-category .sd-category-empty > p { font-size: .9375rem; line-height: 1.5; }
.sd-category .sd-category-pagination { margin-block-start: 28px; }
.sd-category .sd-pager__bar { inline-size: min(100%, 280px); block-size: 4px; overflow: hidden; background: var(--surface-2); border-radius: 999px; }
.sd-category .sd-pager__bar > div { block-size: 100%; background: var(--primary); border-radius: inherit; }
.sd-category .sd-category-about { margin-block-start: 32px; padding-block: 24px; border-block-start: 1px solid var(--category-border); }
.sd-category .sd-category-about h2 { margin-block-end: 12px; font-family: var(--font-display); font-size: 1.125rem; font-weight: 750; }
.sd-category .sd-category-about .sd-rte { font-size: .9375rem; line-height: 1.75; color: var(--category-secondary); }
.sd-category .sd-category-about .sd-rte p + p { margin-block-start: 16px; }
.sd-category :is(a,button,select,input,summary):focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.sd-category [data-sellanto-grid] article :is(a,button):focus-visible { outline-offset: -3px; }
@media (min-width: 768px) {
  .sd-catalog.sd-category [data-sellanto-grid] { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 18px; }
  .sd-category [data-sellanto-grid] article > div:last-child > :is(h2,h3) { font-size: .9375rem; }
  .sd-category [data-sellanto-grid] article > div:last-child > p { font-size: .8125rem; }
}
@media (min-width: 1024px) {
  .sd-category .sd-category-layout--filters { grid-template-columns: 216px minmax(0, 1fr); }
  .sd-category .sd-facets { inline-size: 216px; padding: 0; border: 1px solid var(--category-border); border-radius: 12px; background: var(--card); box-shadow: 0 1px 4px color-mix(in srgb, var(--text) 3%, transparent); }
  .sd-category .sd-facets__body { padding: 12px 14px 0; }
  .sd-category .sd-facets__actions { padding: 12px 14px; border-block-start: 1px solid var(--category-border); }
}
@media (min-width: 1280px) { .sd-catalog.sd-category [data-sellanto-grid] { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 1023px) {
  .sd-category .sd-category-layout { display: block; }
  .sd-category .sd-category-hero__content { padding: 24px; }
  .sd-category .sd-category-hero nav { margin-block-end: 14px; }
  .sd-category .sd-category-hero__text { margin-block-start: 12px; }
  .sd-category .sd-category-hero__visual { block-size: 230px; }
  .sd-category .sd-category-discovery__cards, .sd-category .sd-category-filters-heading { display: none; }
  .sd-category .sd-category-sort__label { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .sd-category .sd-category-filter-trigger { display: inline-flex; min-block-size: 44px; gap: 8px; font-size: .875rem; }
  .sd-category .sd-category-filter-trigger svg { inline-size: 16px; block-size: 16px; }
  .sd-category .sd-facets__scrim { z-index: 80; }
  .sd-category .sd-facets[open] > .sd-facets__panel { z-index: 81; max-block-size: 85dvh; border-color: var(--category-border); border-start-start-radius: 16px; border-start-end-radius: 16px; }
  .sd-category .sd-facets__head { background: var(--card); border-color: var(--category-border); }
  .sd-category .sd-facets__head h2 { text-transform: none; letter-spacing: 0; font-size: 1rem; }
  .sd-category .sd-facets__head button { min-inline-size: 44px; min-block-size: 44px; }
  .sd-category .sd-facets__body { padding-block-start: 16px; }
  .sd-category .sd-category-toolbar { grid-template-columns: auto minmax(0, 1fr); }
  .sd-category .sd-category-toolbar__controls { grid-column: 1 / -1; grid-row: 1; justify-content: space-between; }
  .sd-category .sd-category-toolbar__count { grid-row: 2; }
  .sd-category .sd-category-toolbar__chips { grid-column: 2; grid-row: 2; }
}
@media (max-width: 767px) {
  .sd-category-intro { padding-block-start: 12px; }
  .sd-category .sd-category-hero { padding: 16px; grid-template-columns: minmax(0, 1fr); gap: 10px 12px; border-radius: 12px; }
  .sd-category .sd-category-hero--image { grid-template-columns: minmax(0, 1fr) 96px; }
  .sd-category .sd-category-hero__content { display: contents; }
  .sd-category .sd-category-hero nav { grid-column: 1 / -1; grid-row: 1; margin: 0; }
  .sd-category .sd-category-hero nav ol { font-size: .75rem; }
  .sd-category .sd-category-hero h1 { grid-column: 1 / -1; grid-row: 2; margin: 0; font-size: 1.875rem; letter-spacing: -.025em; }
  .sd-category .sd-category-hero__text { grid-column: 1; grid-row: 3; align-self: center; margin: 0; font-size: .875rem; line-height: 1.5; }
  .sd-category .sd-category-hero__visual { grid-column: 2; grid-row: 3; inline-size: 96px; block-size: 96px; border-radius: 10px; }
  .sd-category .sd-category-hero__visual::after { background: linear-gradient(90deg, color-mix(in srgb, var(--category-tint) 35%, transparent), transparent 36%); }
  .sd-category .sd-category-hero::before { inset-inline-start: 35%; inset-block-end: 16px; opacity: .1; }
  .sd-category .sd-category-discovery { margin-block-start: 12px; }
  .sd-category .sd-category-discovery__chips { flex-wrap: wrap; gap: 8px; padding: 0; overflow: visible; }
  .sd-category .sd-category-discovery__chips li { flex: 0 1 auto; }
  .sd-category .sd-category-discovery__chips a { padding-inline: 12px; max-inline-size: 100%; white-space: normal; overflow-wrap: anywhere; font-size: .8125rem; }
  .sd-catalog.sd-category { padding-block-start: 16px; }
  .sd-category .sd-category-toolbar { gap: 10px 8px; margin-block-end: 14px; }
  .sd-category .sd-category-toolbar__controls { gap: 8px; }
  .sd-category .sd-category-filter-trigger { flex: 1; justify-content: center; background: var(--primary); color: var(--on-primary); border-color: var(--primary); }
  .sd-category .sd-category-sort { flex: 1.15; min-inline-size: 0; }
  .sd-category .sd-category-sort select { inline-size: 100%; font-size: .8125rem; }
  .sd-category .sd-category-sort__apply { padding-inline: 6px; font-size: .75rem; }
  .sd-category .sd-category-toolbar__count { font-size: .8125rem; }
  .sd-category .sd-category-toolbar__chips .chip { min-block-size: 44px; font-size: .75rem; }
  .sd-category .sd-category-toolbar__chips { gap: 6px; }
  .sd-category .sd-category-clear { min-block-size: 44px; font-size: .75rem; }
}
@media (max-width: 339px) { .sd-catalog.sd-category [data-sellanto-grid] { grid-template-columns: minmax(0, 1fr); } .sd-category .sd-category-hero h1 { font-size: 1.625rem; } }
@media (hover: hover) and (pointer: fine) {
  .sd-category .sd-category-discovery__chips a:hover { border-color: var(--primary); background: var(--category-tint); color: var(--text); }
  .sd-category .sd-category-discovery__chips a.is-current:hover { background: var(--primary); color: var(--on-primary); }
  .sd-category .sd-category-discovery__card:hover { transform: translateY(-2px); border-color: var(--primary); box-shadow: var(--category-shadow); }
  .sd-category .sd-category-discovery__card:hover img, .sd-category [data-sellanto-grid] article:hover img { transform: scale(1.025); }
  .sd-category [data-sellanto-grid] > li > article:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--primary) 40%, var(--border)); box-shadow: var(--category-shadow); }
  .market .sd-category [data-sellanto-item-id] .btn-ink:hover { background: color-mix(in srgb, var(--primary) 85%, var(--text)); border-color: color-mix(in srgb, var(--primary) 85%, var(--text)); }
}
@media (prefers-reduced-motion: reduce) {
  .sd-category *, .sd-category *::before, .sd-category *::after { scroll-behavior: auto; transition: none !important; animation: none !important; }
  .sd-category .sd-category-discovery__card:hover, .sd-category .sd-category-discovery__card:hover img, .sd-category [data-sellanto-grid] > li > article:hover, .sd-category [data-sellanto-grid] article:hover img { transform: none; }
}
/* Without enhancement, the original details control expands in document flow. */
.sd-category:not([data-category-enhanced]) .sd-facets[open] > .sd-facets__panel { position: static; max-block-size: none; overflow: visible; border-radius: 12px; }
.sd-category:not([data-category-enhanced]) .sd-facets__scrim, .sd-category:not([data-category-enhanced]) .sd-facets__head button { display: none; }
