/* v23: scalable category hierarchy + horizontal similar-listing carousel */
.catalog-picker{display:grid;gap:9px;min-width:0;width:100%;max-width:100%}
.catalog-picker select{width:100%;max-width:100%;min-width:0;background:#fff;border:1px solid #dce4ef;border-radius:10px;min-height:42px;padding:9px 12px;color:#16253d;font-size:13px}
.catalog-levels{display:grid;gap:8px;min-width:0}
.catalog-level{min-width:0}
.catalog-level label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#64748b}
.catalog-level select{width:100%;min-width:0;min-height:40px}
.catalog-page-search{max-width:660px;position:relative;z-index:8;margin:18px 0 25px}
.catalog-page-search label{display:block;margin-bottom:8px;font-size:13px;font-weight:800;color:#475569}
.catalog-page-search input{border:1px solid #dbe4f0;border-radius:13px;min-height:48px;padding:13px 17px;background:#fff;width:100%;outline:0}
.catalog-page-search input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb18}
.catalog-search-results{position:absolute;left:0;right:0;top:100%;z-index:20;max-height:320px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 12px 26px #0f172a1c;padding:6px;margin-top:5px}
.catalog-search-results[hidden]{display:none}
.catalog-search-results a{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:8px;text-decoration:none;color:#253756;font-size:13px;font-weight:650}
.catalog-search-results a:hover{background:#eff6ff}
.catalog-search-results a span:first-child{font-size:19px}
.catalog-search-results p{padding:8px 12px;color:#64748b}
.catalog-subcats{margin:20px 0 23px;max-width:100%;min-width:0}
.catalog-subcats-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.catalog-subcats-head h2{font-size:19px;margin:0;color:#0f172a;letter-spacing:-.4px}
.catalog-subcats-more{font-size:12px;font-weight:800;color:#2563eb;border:1px solid #dbeafe;background:#eff6ff;border-radius:10px;padding:8px 12px;cursor:pointer}
.catalog-subcat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.catalog-subcat{min-height:64px;display:flex;align-items:center;gap:9px;padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#334155;text-decoration:none;font-size:12px;font-weight:700;min-width:0;transition:border-color .2s,transform .2s}
.catalog-subcat:hover{border-color:#93c5fd;transform:translateY(-2px)}
.catalog-subcat>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}
.catalog-subcat .catalog-icon{font-size:22px;flex:0 0 28px}
.catalog-subcat>svg{width:14px;height:14px;flex:0 0 14px;color:#94a3b8}
.catalog-subcat-extra{display:none}
.catalog-subcats.expanded .catalog-subcat-extra{display:flex}
/* IMPORTANT: supersedes the older six-column listing-grid and cards. */
.similar.similar-carousel{max-width:100%!important;overflow:hidden!important;margin:32px 0 44px!important;min-width:0}
.similar-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.similar-carousel-head h2{font-size:clamp(18px,2vw,23px);margin:0;color:#14213b;letter-spacing:-.4px}
.similar-carousel-head p{font-size:12px;color:#64748b;margin:5px 0 0}
.similar-carousel-controls{display:flex;align-items:center;gap:7px;flex-shrink:0}
.similar-carousel-controls[hidden]{display:none!important}
.similar-carousel-controls button{width:38px;height:38px;border-radius:11px;border:1px solid #dbe4f0;background:#fff;color:#1e3a8a;font-size:25px;font-weight:500;cursor:pointer;display:grid;place-items:center;line-height:1}
.similar-carousel-controls button:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}
.similar-carousel-controls button:disabled{opacity:.32;cursor:default}
.similar-carousel .similar-track{
 display:grid!important;grid-auto-flow:column!important;
 grid-auto-columns:calc((100% - 5 * 12px)/6)!important;
 grid-template-columns:none!important;
 gap:12px!important;overflow-x:auto!important;overflow-y:hidden!important;
 overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;
 scroll-behavior:smooth;scroll-padding-inline:2px;
 scrollbar-width:none;padding:3px 2px 15px;margin:0;max-width:100%;min-width:0;
}
.similar-carousel .similar-track::-webkit-scrollbar{display:none}
.similar-carousel .similar-track .listing-card{scroll-snap-align:start;min-width:0!important;width:100%!important;max-width:none!important;margin:0!important;grid-column:auto!important;flex:initial!important}
.similar-carousel .similar-track .listing-card .card-media{overflow:hidden}
.catalog-admin-search form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:15px 0}
.catalog-admin-search input{flex:1 1 190px;min-height:40px}
.catalog-admin-search p{color:#64748b;font-size:12px;line-height:1.5}
@media(max-width:1200px){
 .catalog-subcat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .similar-carousel .similar-track{grid-auto-columns:calc((100% - 3 * 12px)/4)!important}
}
@media(max-width:840px){
 .catalog-subcat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .similar-carousel .similar-track{grid-auto-columns:calc((100% - 2 * 11px)/3)!important;gap:11px!important}
}
@media(max-width:680px){
 .catalog-subcat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .catalog-subcat{padding:9px 8px;min-height:61px;font-size:11px}
 .catalog-subcat .catalog-icon{font-size:20px;flex-basis:24px}
 .catalog-subcats-head h2{font-size:16px}
 .catalog-subcats-more{font-size:10px;white-space:nowrap;padding:8px}
 .similar-carousel .similar-track{grid-auto-columns:calc((100% - 13px)/2.12)!important;gap:10px!important;padding-bottom:10px}
 .similar-carousel-controls button{width:34px;height:34px;border-radius:10px}
 .similar-carousel-head{gap:8px}
 .similar-carousel-head h2{font-size:18px}
}
.catalog-label{display:grid;gap:6px;min-width:0}.catalog-label>strong{font-size:13px;font-weight:750;color:#344257}
