.catalog-tools {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  gap: 10px;
  align-items:end;
}
.category-browser { position:relative; margin-bottom:8px; padding:8px 12px 9px; overflow:visible; }
.catalog-filter-stage { margin:0 0 12px; }
.catalog-segments,.private-subfilters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.private-subfilters { margin-top:12px; animation:subfilters-rise .42s cubic-bezier(.2,.8,.2,1) both; }
.private-subfilters[hidden] { display:none; }
.catalog-segment { position:relative; min-height:148px; display:flex; align-items:flex-end; justify-content:space-between; gap:18px; overflow:hidden; padding:18px; border:1px solid rgba(255,255,255,.18); border-radius:16px; background:#15231c; color:#fff; text-align:left; isolation:isolate; box-shadow:0 8px 24px rgba(15,45,30,.13); cursor:pointer; transition:transform .25s,box-shadow .25s,border-color .25s; }
.catalog-segment::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(5,15,10,.88) 0%,rgba(5,15,10,.53) 57%,rgba(5,15,10,.12) 100%); transition:background .35s; }
.segment-photo,.segment-light { position:absolute; z-index:-2; inset:0; pointer-events:none; }
.segment-photo { background:center/cover no-repeat; filter:grayscale(1) brightness(.72); transform:scale(1.01); transition:filter .55s ease,transform .7s cubic-bezier(.2,.7,.2,1); }
.segment-light { z-index:-1; inset:-20%; opacity:0; background:radial-gradient(circle at 72% 58%,rgba(255,232,158,.9) 0,rgba(255,202,72,.32) 24%,transparent 58%); mix-blend-mode:screen; transform:scale(.85); transition:opacity .45s ease,transform .65s ease; }
.commercial .segment-photo { background-image:url('/assets/segments/commercial-lighting.webp'); }
.private .segment-photo { background-image:url('/assets/segments/private-lighting.webp'); }
.indoor .segment-photo { background-image:url('/assets/segments/indoor-lighting.webp'); }
.outdoor .segment-photo { background-image:url('/assets/segments/outdoor-lighting.webp'); }
.catalog-segment:hover { transform:translateY(-2px); border-color:rgba(255,223,143,.72); box-shadow:0 12px 30px rgba(15,45,30,.18),0 0 22px rgba(255,208,88,.2); }
.catalog-segment:hover .segment-photo { filter:grayscale(.35) brightness(.86); transform:scale(1.055); }
.catalog-segment:hover .segment-light,.catalog-segment[aria-pressed="true"] .segment-light { opacity:1; transform:scale(1); }
.catalog-segment[aria-pressed="true"] { border-color:#ffd978; box-shadow:0 12px 32px rgba(15,45,30,.2),0 0 0 2px rgba(255,216,113,.35),0 0 32px rgba(255,203,65,.35); }
.catalog-segment[aria-pressed="true"] .segment-photo { filter:grayscale(0) brightness(1); transform:scale(1.045); }
.catalog-segment[aria-pressed="true"]::before { background:linear-gradient(90deg,rgba(5,15,10,.72),rgba(5,15,10,.28) 62%,rgba(5,15,10,.06)); }
.segment-copy { min-width:0; display:grid; gap:5px; }
.catalog-segment small { opacity:.72; font-size:8px; font-weight:800; letter-spacing:.1em; }
.catalog-segment strong { font-size:18px; line-height:1.05; letter-spacing:-.02em; text-transform:uppercase; text-shadow:0 2px 12px rgba(0,0,0,.25); }
.segment-action { flex:0 0 auto; padding:9px 13px; border:1px solid rgba(255,255,255,.28); border-radius:999px; background:rgba(23,137,77,.94); color:#fff; font:800 9px/1 inherit; letter-spacing:.035em; text-transform:uppercase; box-shadow:0 4px 12px rgba(0,0,0,.16); }
.catalog-segment[aria-pressed="true"] .segment-action { background:#ffd56a; color:#183525; box-shadow:0 0 18px rgba(255,216,112,.65); }
.category-compact-head { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:4px; }
.category-compact-head h2 { margin:0; font-size:16px; line-height:1.1; }
.category-compact-head .eyebrow { margin:0 0 1px; font-size:8px; }
.category-status { margin:1px 0 0; color:var(--muted); font-size:9px; }
.category-status[data-filtered="true"] { color:var(--green); font-weight:800; }
.category-head-actions { min-width:0; display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.category-compact-head .category-search { width:min(360px,100%); height:36px; }
.clear-all-filters { flex:0 0 auto; min-height:36px; display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:0 12px; border:1px solid #d9685e; border-radius:10px; background:linear-gradient(135deg,#b83e35,#d75a4f); color:#fff; font-size:9px; font-weight:900; letter-spacing:.02em; text-decoration:none; box-shadow:0 5px 14px rgba(172,52,42,.18); transition:transform .17s,box-shadow .17s,filter .17s; }
.clear-all-filters span { font-size:16px; font-weight:500; line-height:1; }
.clear-all-filters:hover { transform:translateY(-1px); box-shadow:0 8px 20px rgba(172,52,42,.25); filter:saturate(1.08); }
.flat-category-list { max-height:185px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-top:7px; overflow-y:auto; overscroll-behavior:contain; padding:2px 7px 4px 2px; scrollbar-width:thin; scrollbar-color:var(--green) #edf3ef; }
.flat-category { width:100%; min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:9px; padding:7px 10px; border:1px solid var(--line); border-radius:9px; background:#fff; color:var(--ink); font:inherit; text-align:left; text-decoration:none; cursor:pointer; transition:border-color .16s,background .16s,transform .16s; }
.flat-category:hover { border-color:#9dbdab; background:#f4faf6; transform:translateY(-1px); }
.flat-category.active { border-color:var(--green); background:#edf7f1; color:var(--green); box-shadow:inset 3px 0 var(--green); }
.flat-category[hidden] { display:none; }
.flat-category span { min-width:0; display:grid; gap:3px; }
.flat-category strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.flat-category small { overflow:hidden; color:var(--muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.flat-category > b { flex:0 0 auto; min-width:29px; padding:4px 7px; border-radius:999px; background:#edf3ef; color:var(--green); text-align:center; font-size:10px; }
.flat-category.all-products { grid-column:1/-1; }
.category-empty { grid-column:1/-1; margin:0; padding:28px; color:var(--muted); text-align:center; }
.selected-categories { display:flex; align-items:center; gap:10px; margin-top:8px; padding:8px 9px; border:1px solid #cfe2d6; border-radius:11px; background:linear-gradient(145deg,#fbfefc,#f1f9f4); }
.selected-categories[hidden] { display:none; }
.selected-categories-head { flex:0 0 auto; display:flex; align-items:center; gap:7px; margin:0; white-space:nowrap; }
.selected-categories-head > div { display:contents; }
.selected-categories-head .eyebrow { margin:0; font-size:11px; }
.selected-categories-head h3 { display:none; }
.selected-categories-head > span { min-width:30px; padding:5px 9px; border-radius:999px; background:var(--green); color:#fff; font-size:10px; font-weight:800; text-align:center; box-shadow:0 0 16px rgba(30,121,78,.28); }
.selected-category-grid { min-width:0; flex:1; display:flex; gap:7px; overflow-x:auto; padding:2px; }
.selected-category-card { position:relative; flex:0 1 360px; min-width:210px; min-height:48px; display:flex; align-items:center; padding:8px 36px 8px 11px; overflow:hidden; border:1px solid #32a768; border-radius:9px; background:linear-gradient(135deg,rgba(236,249,241,.98),rgba(249,254,251,.98)); color:#17653e; box-shadow:0 0 0 1px rgba(69,190,119,.12),0 5px 14px rgba(24,130,74,.1),0 0 18px rgba(69,210,126,.14); }
.selected-category-card::before { content:""; position:absolute; inset:-35%; pointer-events:none; background:radial-gradient(circle at 18% 48%,rgba(124,244,171,.3),transparent 52%); }
.selected-category-card > span { position:relative; min-width:0; display:grid; gap:4px; }
.selected-category-card strong { overflow:hidden; font-size:11px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
.selected-category-card small { overflow:hidden; color:#698779; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.selected-category-card button { position:absolute; z-index:1; top:8px; right:8px; width:25px; height:25px; display:grid; place-items:center; padding:0; border:1px solid rgba(30,121,78,.2); border-radius:7px; background:rgba(255,255,255,.86); color:var(--green); font:500 18px/1 sans-serif; cursor:pointer; transition:background .16s,color .16s,box-shadow .16s,transform .16s; }
.selected-category-card button:hover { background:var(--green); color:#fff; box-shadow:0 0 15px rgba(30,121,78,.4); transform:scale(1.06); }
@keyframes subfilters-rise { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } }
.category-action-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.category-search { min-width:0; width:100%; height:46px; display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:8px; padding:0 11px; border:1px solid #cbd8d0; border-radius:10px; background:#fff; box-shadow:0 3px 14px rgba(19,53,36,.05); }
.category-search:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(30,121,78,.11); }
.category-search > span { color:var(--green); font-size:23px; line-height:1; transform:rotate(-18deg); }
.category-search input { width:100%; height:34px; padding:0; border:0; outline:0; background:transparent; font:inherit; font-size:11px; color:var(--ink); }
.category-search kbd { padding:3px 6px; border:1px solid var(--line); border-bottom-width:2px; border-radius:5px; background:#f5f7f6; color:var(--muted); font:700 8px/1 sans-serif; }
.category-quick-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) minmax(180px,.72fr); gap:9px; }
.category-quick,.category-open { min-width:0; min-height:64px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); text-align:left; text-decoration:none; cursor:pointer; transition:border-color .15s,background .15s,transform .15s; }
.category-quick:hover,.category-open:hover { border-color:#9dbdab; background:#f5faf7; transform:translateY(-1px); }
.category-quick.active { border-color:var(--green); background:#edf7f1; color:var(--green); box-shadow:inset 3px 0 var(--green); }
.category-quick span,.category-open span { min-width:0; display:grid; gap:3px; }
.category-quick small,.category-open small { color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.category-quick strong,.category-open strong { overflow:hidden; font-size:11px; line-height:1.22; text-overflow:ellipsis; }
.category-quick > b,.category-open > b { flex:0 0 auto; min-width:29px; padding:4px 7px; border-radius:999px; background:#edf3ef; color:var(--green); text-align:center; font-size:10px; }
.category-action-row .category-open { width:100%; min-height:46px; padding:6px 10px; border-color:#b8cec2; background:#f7faf8; }
.category-open i { flex:0 0 auto; width:27px; height:27px; display:grid; place-items:center; border-radius:8px; background:var(--green); color:#fff; font:400 21px/1 sans-serif; }
.all-products { min-width:150px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; color:var(--ink); text-decoration:none; font-size:12px; font-weight:800; }
.all-products b,.category-node b { min-width:28px; padding:3px 7px; border-radius:999px; background:#edf3ef; color:var(--green); text-align:center; font-size:10px; }
.all-products.active,.category-node.active { border-color:var(--green); background:#edf7f1; color:var(--green); }
.category-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin:12px 0 0; padding:8px 10px; border-radius:8px; background:#f5f8f6; font-size:10px; }
.category-breadcrumb a { color:var(--green); text-decoration:none; font-weight:700; }
.category-breadcrumb span { color:#a2afa7; }
.category-search-results { width:calc(50% - 5px); max-height:min(310px,calc(100vh - 170px)); display:grid; grid-template-rows:auto minmax(0,1fr); margin:10px 0 0 auto; overflow:hidden; border:1px solid #c9d8d0; border-radius:12px; background:#fff; box-shadow:0 12px 32px rgba(15,45,30,.13); animation:search-panel-in .18s ease-out both; }
.category-results-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 11px; border-bottom:1px solid var(--line); background:#f6faf7; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.category-results-head button { width:27px; height:27px; display:grid; place-items:center; padding:0; border-radius:7px; background:#e7efea; color:var(--ink); font-size:18px; line-height:1; }
.category-results-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:6px; scrollbar-width:thin; scrollbar-color:var(--green) #edf3ef; scrollbar-gutter:stable; }
.category-results-scroll::-webkit-scrollbar,.category-dialog-results::-webkit-scrollbar,.category-tree::-webkit-scrollbar { width:8px; }
.category-results-scroll::-webkit-scrollbar-track,.category-dialog-results::-webkit-scrollbar-track,.category-tree::-webkit-scrollbar-track { margin:5px 0; border-radius:999px; background:#edf3ef; }
.category-results-scroll::-webkit-scrollbar-thumb,.category-dialog-results::-webkit-scrollbar-thumb,.category-tree::-webkit-scrollbar-thumb { border:2px solid #edf3ef; border-radius:999px; background:var(--green); }
@keyframes search-panel-in { from { opacity:0; transform:translateY(-7px) scale(.99); } to { opacity:1; transform:none; } }
.category-results-scroll > a,.category-dialog-results > a { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:9px 10px; border-radius:7px; color:var(--ink); text-decoration:none; }
.category-results-scroll > a:hover,.category-dialog-results > a:hover { background:#edf7f1; color:var(--green); }
.category-results-scroll span,.category-dialog-results span { min-width:0; display:grid; gap:2px; }
.category-results-scroll small,.category-dialog-results small { overflow:hidden; color:var(--muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.category-results-scroll em,.category-dialog-results em { min-width:30px; padding:4px 7px; border-radius:999px; background:#edf3ef; color:var(--green); font-size:10px; font-style:normal; font-weight:800; text-align:center; }
.category-results-scroll > p,.category-dialog-results > p { margin:0; padding:20px; color:var(--muted); text-align:center; font-size:12px; }
.category-search-results > p { margin:0; padding:18px; color:var(--muted); text-align:center; font-size:12px; }
.category-overlay { display:none !important; }
.category-overlay[hidden],.category-search-results[hidden],.category-dialog-results[hidden],.category-tree[hidden] { display:none; }
.category-backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; border-radius:0; background:rgba(9,28,19,.64); backdrop-filter:blur(4px); }
.category-dialog { position:relative; width:min(1180px,100%); max-height:calc(100vh - 60px); display:grid; grid-template-rows:auto auto minmax(0,1fr); overflow:hidden; padding:22px; border-radius:16px; background:#f7faf8; box-shadow:0 25px 80px rgba(0,0,0,.28); }
.category-dialog > header { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; margin:0 0 14px; }
.category-dialog > header h2 { margin:2px 0 4px; font-size:24px; }
.category-dialog > header p:last-child { margin:0; color:var(--muted); font-size:11px; }
.category-dialog > header > button { width:38px; height:38px; padding:0; border-radius:9px; background:#e9efeb; color:var(--ink); font-size:25px; line-height:1; }
.dialog-search { width:100%; min-width:0; max-width:none; margin-bottom:14px; }
.category-dialog-results { min-height:180px; max-height:calc(100vh - 220px); overflow:auto; padding:7px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.category-tree { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; align-items:start; overflow:auto; padding:1px 5px 8px 1px; }
.category-tree > .all-products { grid-column:1/-1; min-height:46px; background:#fff; }
.category-modal-open { overflow:hidden; }
.category-group { border:1px solid var(--line); border-radius:10px; background:#fff; overflow:hidden; }
.category-group summary { display:grid; grid-template-columns:minmax(0,1fr) 20px; align-items:center; list-style:none; cursor:pointer; }
.category-group summary::-webkit-details-marker { display:none; }
.category-group summary > .category-node { border:0; }
.category-group summary > i { color:var(--muted); font-style:normal; transition:transform .18s; }
.category-group[open] > summary > i { transform:rotate(180deg); }
.category-node { min-height:39px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border:1px solid var(--line); border-radius:8px; color:var(--ink); text-decoration:none; font-size:11px; font-weight:700; line-height:1.2; }
.category-node:hover { background:#f3f8f5; color:var(--green); }
.category-children { display:grid; gap:5px; padding:0 8px 8px; }
.category-children .category-group { border-radius:7px; background:#fafcfb; }
.category-children .category-node { min-height:34px; border-color:#e4ebe7; font-size:10px; }
.category-children .category-children { padding-left:14px; }
.filter-panel { padding:14px 16px; margin-bottom:10px; }
.ai-search-card { position:relative; overflow:hidden; padding:18px 20px 14px; border-color:#c8ddd1; background:
  radial-gradient(circle at 7% 0%,rgba(85,197,132,.14),transparent 29%),
  radial-gradient(circle at 94% 8%,rgba(255,205,91,.13),transparent 25%),
  linear-gradient(145deg,#fff 0%,#f8fcfa 55%,#f1f8f4 100%); }
.ai-search-card::before { content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 1px rgba(255,255,255,.9); }
.ai-search-heading { position:relative; display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:6px; }
.ai-search-brand { display:flex; align-items:center; gap:11px; }
.ai-mark-wrap { width:43px; height:43px; display:grid; place-items:center; border-radius:13px; background:linear-gradient(145deg,#163b2b,#2f7654); color:#fff; box-shadow:0 7px 18px rgba(31,111,75,.23),inset 0 1px rgba(255,255,255,.2); }
.openai-mark { width:29px; height:29px; }
.ai-search-brand p { margin:0 0 1px; color:var(--green); font-size:8px; font-weight:900; letter-spacing:.17em; }
.ai-search-brand h2 { margin:0; font-size:20px; line-height:1.1; }
.ai-language-switch { display:flex; align-items:center; gap:3px; padding:3px; border:1px solid #d6e3db; border-radius:9px; background:rgba(255,255,255,.72); }
.ai-language-switch button { min-width:31px; min-height:28px; padding:4px 6px; border-radius:6px; background:transparent; color:#819087; font-size:8px; font-weight:900; box-shadow:none; }
.ai-language-switch button[aria-pressed="true"] { background:#183b2c; color:#fff; box-shadow:0 3px 9px rgba(20,62,44,.2); }
.ai-search-copy { position:relative; margin:8px 0 11px 54px; color:#66786e; font-size:11px; }
.ai-search-form { position:relative; align-items:stretch; }
.ai-input-shell { position:relative; display:block!important; }
.ai-input-shell input { min-height:54px; padding:13px 18px 13px 44px; border:1px solid #b9d1c3; border-radius:12px; background:rgba(255,255,255,.92); color:#17221d; font-size:14px; box-shadow:inset 0 1px 2px rgba(15,45,30,.03),0 4px 14px rgba(15,45,30,.05); transition:border-color .2s,box-shadow .2s,transform .2s; }
.ai-input-shell input:focus { outline:0; border-color:#2f8f62; box-shadow:0 0 0 4px rgba(47,143,98,.11),0 7px 22px rgba(15,75,45,.09); }
.ai-input-spark { position:absolute; z-index:2; top:50%; left:17px; color:#2f8f62!important; font-size:19px!important; transform:translateY(-50%); }
.ai-search-button { position:relative; min-width:176px; min-height:54px!important; display:flex; align-items:center; justify-content:center; gap:9px; overflow:visible; border-radius:12px; background:linear-gradient(135deg,#173f2d,#2f8158 60%,#3fa96f); box-shadow:0 8px 22px rgba(31,114,76,.23); transition:transform .18s,box-shadow .18s,filter .18s; }
.ai-search-button:hover { transform:translateY(-1px); box-shadow:0 11px 28px rgba(31,114,76,.3); filter:saturate(1.08); }
.ai-search-button:disabled { cursor:wait; opacity:1; }
.ai-button-logo { width:28px; height:28px; display:grid; place-items:center; border-radius:8px; background:rgba(255,255,255,.13); }
.openai-button-mark { width:20px; height:20px; }
.ai-button-spark { position:absolute; opacity:0; color:#ffe089; font-style:normal; pointer-events:none; text-shadow:0 0 10px #ffd668; }
.ai-button-spark.one { top:-9px; right:13px; font-size:16px; }
.ai-button-spark.two { right:-8px; bottom:4px; font-size:11px; }
.ai-bulb-track { position:relative; height:29px; display:grid; grid-template-columns:repeat(24,1fr); align-items:start; gap:0; margin:4px 4px -2px; padding-top:8px; }
.ai-bulb-track > span { position:absolute; top:8px; right:1.5%; left:1.5%; height:2px; border-radius:999px; background:#d8e1dc; }
.ai-bulb-track i { position:relative; z-index:1; justify-self:center; width:8px; height:11px; margin-top:3px; border:1px solid #a8b5ae; border-radius:5px 5px 7px 7px; background:#d6ded9; box-shadow:inset 0 1px rgba(255,255,255,.7); transform-origin:50% -4px; }
.ai-bulb-track i::before { content:""; position:absolute; top:-4px; left:1px; width:4px; height:4px; border-radius:1px; background:#87968e; }
.ai-search-status { min-height:17px; display:flex; align-items:center; justify-content:center; gap:7px; margin:-2px 0 0; color:#7b8a82; font-size:9px; font-weight:700; letter-spacing:.02em; }
.ai-status-dot { width:6px; height:6px; border-radius:50%; background:#84aa94; box-shadow:0 0 0 3px rgba(92,151,117,.1); }
.ai-result-insight { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:10px 0 2px; padding:11px 13px; border:1px solid #c7ded1; border-radius:12px; background:linear-gradient(135deg,rgba(235,249,241,.94),rgba(255,252,238,.9)); box-shadow:inset 3px 0 #3b9968,0 5px 16px rgba(24,90,56,.06); animation:ai-result-rise .35s cubic-bezier(.2,.8,.2,1) both; }
.ai-result-copy { min-width:0; display:flex; align-items:center; gap:11px; }
.ai-result-icon { flex:0 0 auto; width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#1c5339; color:#fff0a8; font-size:17px; box-shadow:0 0 18px rgba(66,174,111,.22); }
.ai-result-copy > div { min-width:0; }
.ai-result-copy small { display:block; margin-bottom:2px; color:#43805f; font-size:7px; font-weight:900; letter-spacing:.13em; }
.ai-result-copy p { margin:0; color:#1d3228; font-size:11px; font-weight:700; line-height:1.35; }
.ai-feedback { flex:0 0 auto; display:flex; align-items:center; gap:5px; }
.ai-feedback > span { margin-right:3px; color:#708078; font-size:9px; font-weight:700; }
.ai-feedback button { min-height:30px; display:flex; align-items:center; gap:5px; padding:5px 9px; border:1px solid #cddbd3; border-radius:8px; background:rgba(255,255,255,.86); color:#52645a; font-size:11px; box-shadow:none; transition:transform .15s,border-color .15s,background .15s,color .15s; }
.ai-feedback button b { font-size:8px; }
.ai-feedback button:hover { transform:translateY(-1px); border-color:#68a984; }
.ai-feedback button.active { border-color:#2f8d5e; background:#e4f6eb; color:#1f7048; box-shadow:0 0 0 2px rgba(47,141,94,.08); }
.ai-feedback button.active.dislike { border-color:#b86458; background:#fff0ed; color:#9b3e35; box-shadow:0 0 0 2px rgba(184,100,88,.08); }
.ai-feedback button:disabled { cursor:wait; opacity:.65; }
.ai-feedback em { min-width:118px; color:#528069; font-size:8px; font-style:normal; }
.ai-search-history { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:9px; margin:8px 0 2px; }
.ai-search-history > span { color:#708078; font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.ai-search-history > div { min-width:0; display:flex; gap:5px; overflow-x:auto; padding:2px 1px 4px; scrollbar-width:thin; }
.ai-search-history a { flex:0 0 auto; max-width:280px; display:flex; align-items:center; gap:6px; padding:6px 8px; overflow:hidden; border:1px solid #dae4de; border-radius:8px; background:rgba(255,255,255,.76); color:#56675e; text-decoration:none; font-size:8px; font-weight:700; white-space:nowrap; }
.ai-search-history a:hover { border-color:#87b69d; color:#236a47; }
.ai-search-history a i { width:17px; height:17px; display:grid; place-items:center; border-radius:5px; background:#edf4f0; color:#37825a; font-style:normal; }
.ai-search-history a b { min-width:22px; padding:2px 5px; border-radius:999px; background:#e9f1ec; color:#397255; text-align:center; }
@keyframes ai-result-rise { from { opacity:0; transform:translateY(9px); } to { opacity:1; transform:none; } }
.ai-search-card.is-searching { border-color:#66ad86; box-shadow:0 8px 34px rgba(33,126,80,.14),0 0 0 1px rgba(58,175,108,.08); }
.ai-search-card.is-searching .ai-mark-wrap,.ai-search-card.is-searching .ai-button-logo { animation:ai-logo-pulse 1.25s ease-in-out infinite; }
.ai-search-card.is-searching .ai-input-spark { animation:ai-input-spark 1.1s ease-in-out infinite; }
.ai-search-card.is-searching .ai-button-spark { animation:ai-spark-pop 1.25s ease-in-out infinite; }
.ai-search-card.is-searching .ai-button-spark.two { animation-delay:.35s; }
.ai-search-card.is-searching .ai-bulb-track i { animation:ai-bulb-on 1.85s ease-in-out infinite; animation-delay:calc(var(--bulb) * 65ms); }
.ai-search-card.is-searching .ai-status-dot { background:#ffc94c; box-shadow:0 0 12px #ffd76d; animation:ai-status-pulse .85s ease-in-out infinite; }
.ai-search-card.is-complete .ai-bulb-track i { background:#ffe283; border-color:#e8b83f; box-shadow:0 0 11px #ffd66a,0 0 22px rgba(255,204,69,.62); }
.ai-search-card.is-complete .ai-status-dot { background:#34a46b; box-shadow:0 0 0 4px rgba(52,164,107,.15); }
.ai-search-card.needs-query .ai-input-shell input { animation:ai-query-shake .4s ease; border-color:#c86758; }
@keyframes ai-logo-pulse { 0%,100% { transform:scale(1); box-shadow:0 7px 18px rgba(31,111,75,.23); } 50% { transform:scale(1.07) rotate(3deg); box-shadow:0 0 25px rgba(65,195,124,.48); } }
@keyframes ai-input-spark { 0%,100% { opacity:.5; transform:translateY(-50%) scale(.8) rotate(0); } 50% { opacity:1; transform:translateY(-50%) scale(1.3) rotate(90deg); text-shadow:0 0 12px #6cd99d; } }
@keyframes ai-spark-pop { 0%,100% { opacity:0; transform:scale(.4) rotate(0); } 45% { opacity:1; transform:scale(1.25) rotate(80deg); } }
@keyframes ai-bulb-on { 0%,20%,100% { background:#d6ded9; border-color:#a8b5ae; box-shadow:none; transform:rotate(-2deg); } 42%,68% { background:#ffe37b; border-color:#e5b637; box-shadow:0 0 9px #ffd456,0 0 18px rgba(255,202,53,.65); transform:rotate(2deg) scale(1.12); } }
@keyframes ai-status-pulse { 50% { transform:scale(1.35); opacity:.72; } }
@keyframes ai-query-shake { 25% { transform:translateX(-5px); } 50% { transform:translateX(5px); } 75% { transform:translateX(-3px); } }
.catalog-tools label { display:grid; gap:5px; }
.catalog-tools label > span { color:var(--muted); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.catalog-tools button { min-height:44px; }
.catalog-tools select { border: 1px solid #ccd8d1; border-radius: 8px; background: #fff; padding: 0 12px; font: inherit; color: var(--ink); }
.sort-bar { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top:12px; padding-top:12px; border-top:1px solid var(--line); }
.sort-bar > b { font-size: 12px; color: var(--muted); margin-right: 3px; }
.sort-button { display: flex; gap: 8px; align-items: center; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); text-decoration: none; font-size: 12px; font-weight: 700; }
.sort-button.active { border-color: var(--green); color: var(--green); background: #f0f7f3; }
.movement-note { margin: 0 0 14px; color: var(--muted); font-size: 11px; }
.product-list { display: grid; gap: 8px; }
.product-list-head, .product-row { display: grid; grid-template-columns: minmax(360px, 1fr) 82px 82px 110px repeat(4, 65px); gap: 10px; align-items: center; }
.product-list-head { padding: 0 16px; color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.product-row { min-height: 92px; padding: 10px 16px; }
.product-identity { display: grid; grid-template-columns: 72px minmax(0, 1fr); align-items: center; gap: 13px; }
.product-row .pic { height: 70px; }
.product-row h3 { font-size: 13px; line-height: 1.25; margin: 3px 0; max-width: 680px; }
.product-row p, .product-row small { margin: 0; color: var(--muted); font-size: 10px; }
.product-row .product-identity small { color: var(--green); font-weight: 700; }
.row-price { font-size: 15px; }
.product-row .stock { display: grid; }
.product-row .stock b { font-size: 16px; }
.age { display: grid; color: var(--muted); }
.age b { font-size: 15px; color: var(--ink); }
.age small { font-size: 9px; }
.age.stock-change b { font-size:11px; color:#9b3027; }
.age.stock-change small { margin-top:3px; }
.movement { display: grid; text-align: center; color: #805f35; }
.movement b { font-size: 15px; }
.movement small { font-size: 9px; }
.movement.total { color: var(--green); }
.pager { align-items:center; }
.pager > span { color:var(--muted); font-size:12px; font-weight:800; }
.pager a { min-width:42px; min-height:42px; display:grid; place-items:center; border:1px solid #c9d9d0; border-radius:10px; background:#fff; color:var(--green); text-decoration:none; font-size:22px; }
.pager-disabled { min-width:42px; min-height:42px; display:grid; place-items:center; border-radius:10px; background:#edf2ef; color:#aab5af; font-size:22px; }
@media (max-width: 1100px) {
  .selected-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-list { overflow-x: auto; }
  .product-list-head, .product-row { min-width: 920px; }
}
@media (max-width: 720px) {
  .catalog-segments { grid-template-columns:1fr; }
  .private-subfilters { grid-template-columns:1fr; gap:9px; margin-top:9px; }
  .catalog-segment { min-height:132px; padding:15px; }
  .catalog-segment strong { font-size:18px; }
  .segment-action { padding:8px 10px; font-size:8px; }
  .category-browser { padding:12px; }
  .selected-categories { padding:12px; }
  .selected-category-grid { grid-template-columns:1fr; }
  .category-action-row { grid-template-columns:1fr; gap:8px; }
  .category-search { height:48px; }
  .category-search-results { width:100%; max-height:min(52dvh,420px); margin:8px 0 0; border-radius:14px; box-shadow:0 10px 28px rgba(7,28,18,.13); animation:mobile-search-in .24s cubic-bezier(.2,.8,.2,1) both; }
  .category-results-head { min-height:45px; padding:9px 12px; }
  .category-results-scroll { padding:6px 4px 8px 6px; }
  .category-results-scroll > a { min-height:58px; padding:10px 9px; }
  .category-results-scroll small { max-width:calc(100vw - 110px); }
  .xml-update { align-items:flex-start; flex-direction:column; }
  .xml-changes { flex-wrap:wrap; }
  .catalog-tools { grid-template-columns: 1fr; }
  .ai-search-card { padding:15px 13px 12px; }
  .ai-search-heading { align-items:flex-start; flex-direction:column; gap:10px; }
  .ai-language-switch { width:100%; justify-content:space-between; }
  .ai-language-switch button { flex:1; }
  .ai-search-copy { min-height:34px; margin:8px 1px 10px; }
  .ai-search-button { width:100%; min-width:0; }
  .ai-bulb-track { grid-template-columns:repeat(12,1fr); height:45px; overflow:hidden; }
  .ai-bulb-track i:nth-of-type(n+13) { margin-top:22px; }
  .ai-bulb-track > span { top:8px; }
  .ai-result-insight { align-items:stretch; flex-direction:column; gap:10px; }
  .ai-feedback { flex-wrap:wrap; }
  .ai-feedback > span { width:100%; }
  .ai-feedback em { min-width:0; }
  .ai-search-history { grid-template-columns:1fr; }
  .catalog-tools select { min-height: 44px; }
  .category-compact-head { align-items:stretch; flex-direction:column; }
  .category-head-actions { width:100%; align-items:stretch; flex-direction:column; }
  .category-compact-head .category-search { width:100%; }
  .clear-all-filters { width:100%; min-height:42px; }
  .flat-category-list { max-height:52dvh; grid-template-columns:1fr; padding-right:5px; }
  .flat-category.all-products { grid-column:auto; }
  .flat-category { min-height:58px; }
  .category-quick-row { grid-template-columns:1fr; }
  .category-overlay { padding:10px; }
  .category-dialog { max-height:calc(100vh - 20px); padding:14px; }
  .category-tree { grid-template-columns:1fr; }
  .product-list { overflow:visible; gap:10px; }
  .product-list-head { display:none; }
  .product-row { min-width:0; min-height:0; grid-template-columns:minmax(0,1fr) auto auto; gap:10px 12px; padding:12px; }
  .product-identity { grid-column:1/-1; grid-template-columns:78px minmax(0,1fr); gap:12px; }
  .product-row .pic { height:78px; }
  .product-row h3 { font-size:13px; }
  .row-price { grid-column:1; align-self:center; font-size:17px; }
  .product-row .stock { grid-column:2; align-self:center; min-width:54px; }
  .product-row .age { grid-column:3; align-self:center; min-width:50px; text-align:right; }
  .product-row .movement { display:none; }
  .pager { position:sticky; z-index:20; bottom:max(8px,env(safe-area-inset-bottom)); display:grid; grid-template-columns:52px minmax(0,1fr) 52px; align-items:center; gap:8px; margin:18px 0 4px; padding:7px; border:1px solid #cfddd5; border-radius:16px; background:rgba(255,255,255,.94); box-shadow:0 12px 35px rgba(15,45,30,.16); backdrop-filter:blur(12px); }
  .pager > span { text-align:center; font-size:11px; font-weight:800; color:var(--muted); }
  .pager a,.pager .pager-disabled { width:52px; height:48px; display:grid; place-items:center; padding:0; border-radius:11px; background:var(--green); color:#fff; text-decoration:none; font-size:26px; line-height:1; box-shadow:0 5px 14px rgba(47,118,84,.22); transition:transform .16s,box-shadow .16s; }
  .pager a:active { transform:scale(.9); box-shadow:none; }
  .pager .pager-disabled { background:#edf2ef; color:#aab5af; box-shadow:none; }
  .product-list.page-slide-next { animation:page-next-in .32s cubic-bezier(.2,.75,.2,1) both; }
  .product-list.page-slide-prev { animation:page-prev-in .32s cubic-bezier(.2,.75,.2,1) both; }
}
@keyframes mobile-search-in { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } }
@keyframes page-next-in { from { opacity:.15; transform:translateX(34px); } to { opacity:1; transform:none; } }
@keyframes page-prev-in { from { opacity:.15; transform:translateX(-34px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce) { .category-search-results,.private-subfilters,.product-list.page-slide-next,.product-list.page-slide-prev { animation:none; } }
@media (min-width:721px) and (max-width:1200px) {
  .category-quick-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .category-tree { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .flat-category-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.xml-update { min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:4px 10px; margin:-5px 0 6px; }
.xml-update small { display:inline; color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.06em; }
.xml-update strong { display:inline; margin-left:8px; font-size:12px; }
.xml-changes { display:flex; gap:10px; align-items:center; }
.xml-changes span,.xml-changes a { padding:5px 8px; border-radius:7px; background:#f1f7f3; color:var(--green); text-decoration:none; font-size:10px; }
.xml-changes a { background:#fff1ef; color:#9b3027; }
.catalog-tabs { display:flex; gap:6px; margin-bottom:9px; }
.catalog-tabs a { padding:8px 12px; border-radius:8px; color:var(--muted); text-decoration:none; font-weight:700; }
.catalog-tabs a.active { background:var(--nav); color:#fff; }
.catalog-news-shortcut { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 0 12px; padding:8px; border:1px solid #cfddd5; border-radius:12px; background:#fff; }
.catalog-news-shortcut a { display:inline-flex; align-items:center; gap:8px; padding:8px 11px; border-radius:9px; color:var(--green); font-size:10px; font-weight:800; text-decoration:none; }
.catalog-news-shortcut [data-news-shortcut] { border:1px solid #bcd6c7; background:#f2f9f5; }
.catalog-news-shortcut [data-news-shortcut].active { border-color:var(--green); background:var(--green); color:#fff; box-shadow:0 5px 14px rgba(30,121,78,.2); }
@media (max-width:720px) {
  .catalog-news-shortcut { align-items:stretch; flex-direction:column; }
  .catalog-news-shortcut a { justify-content:center; }
}
.catalog-header { margin-bottom:11px; }
.news-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:16px; }
.news-header h1 { margin:4px 0 6px; }
.news-header p:last-child { margin:0; color:var(--muted); }
.news-header > strong { min-width:76px; padding:14px; border-radius:16px; background:var(--nav); color:#fff; font-size:26px; text-align:center; }
.news-filter { display:grid; grid-template-columns:auto auto minmax(420px,1fr); gap:12px 18px; align-items:end; margin-bottom:14px; padding:15px; }
.news-stock-toggle { min-height:44px; display:flex; align-items:center; justify-content:center; padding:8px 15px; border:1px solid var(--line); border-radius:10px; color:var(--muted); font-size:11px; font-weight:800; text-decoration:none; }
.news-stock-toggle.active { border-color:var(--green); background:#edf7f1; color:var(--green); }
.news-period-filter { display:grid; gap:6px; }
.news-last30 { min-height:44px; display:flex; align-items:center; justify-content:center; padding:8px 15px; border-radius:10px; background:var(--green); color:#fff; font-size:12px; font-weight:800; text-decoration:none; }
.news-periods { display:flex; justify-content:center; gap:4px; }
.news-periods a { padding:5px 8px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:9px; font-weight:800; text-decoration:none; white-space:nowrap; }
.news-periods a[aria-pressed="true"] { border-color:var(--green); background:#edf7f1; color:var(--green); }
.news-filter form { display:grid; grid-template-columns:repeat(2,minmax(145px,1fr)) auto; gap:10px; align-items:end; }
.news-filter label { display:grid; gap:5px; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.news-filter input[type=date] { min-height:44px; padding:0 11px; border:1px solid #cad8d0; border-radius:9px; background:#fff; color:var(--ink); font:inherit; }
.news-filter button { min-height:44px; }
.news-tabs { grid-column:1/-1; display:flex; gap:6px; padding-top:12px; border-top:1px solid var(--line); }
.news-tabs a { padding:8px 12px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:10px; font-weight:800; text-decoration:none; }
.news-tabs a.active { border-color:var(--green); background:#edf7f1; color:var(--green); }
.news-list { display:grid; gap:9px; }
.news-product { display:grid; grid-template-columns:86px minmax(280px,1fr) 150px 160px 92px 120px; gap:14px; align-items:center; min-height:112px; padding:12px 15px; }
.news-product-image { height:84px; overflow:hidden; border-radius:10px; background:#f2f5f3; }
.news-product-image img { width:100%; height:100%; object-fit:contain; }
.news-product-copy { min-width:0; }
.news-product-copy > small { color:var(--green); font-size:9px; font-weight:700; }
.news-product-copy h3 { margin:5px 0; font-size:14px; line-height:1.3; }
.news-product-copy p { margin:0; color:var(--muted); font-size:10px; }
.news-product-meta { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-bottom:5px; color:var(--muted); font-size:9px; }
.news-badge { padding:5px 8px; border-radius:999px; font-weight:900; }
.news-badge.new { background:#e4f5eb; color:#177146; }
.news-badge.returned { background:#fff1d9; color:#966311; }
.news-product-appearance { display:grid; gap:3px; }
.news-product-appearance small { color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.news-product-appearance strong { font-size:12px; }
.news-product-appearance span { color:var(--muted); font-size:9px; }
.news-product-stock { display:grid; gap:3px; }
.news-product-stock small { color:var(--muted); font-size:8px; }
.news-product-stock strong { font-size:15px; }
.news-product-stock span { color:#a23e35; font-size:9px; font-weight:800; }
.news-product-price { font-size:15px; text-align:right; }
.news-product .offer-add { justify-self:end; }
.news-empty { padding:38px; color:var(--muted); text-align:center; }
.news-empty p { margin:0; }
@media (max-width:1100px) {
  .news-product { grid-template-columns:80px minmax(240px,1fr) 140px 145px 88px; }
  .news-product .offer-add { grid-column:2/-1; }
}
@media (max-width:720px) {
  .news-header { align-items:flex-start; }
  .news-header > strong { min-width:58px; padding:10px; font-size:20px; }
  .news-filter { grid-template-columns:1fr; }
  .news-periods { justify-content:flex-start; overflow-x:auto; }
  .news-filter form { grid-template-columns:1fr 1fr; }
  .news-filter form button { grid-column:1/-1; }
  .news-tabs { grid-column:auto; overflow-x:auto; }
  .news-tabs a { flex:0 0 auto; }
  .news-product { grid-template-columns:74px minmax(0,1fr); gap:10px; padding:12px; }
  .news-product-image { height:74px; }
  .news-product-copy { align-self:start; }
  .news-product-appearance,.news-product-stock,.news-product-price,.news-product .offer-add { grid-column:auto; justify-self:stretch; text-align:left; }
  .news-product-appearance { grid-column:1/-1; }
  .news-product-stock { grid-column:1; }
  .news-product-price { grid-column:2; align-self:center; text-align:right; }
  .news-product .offer-add { grid-column:1/-1; }
}
