import{r as l,j as e,L as d}from"./vendor-react-BwKDLVNL.js";import{aD as j,v as f,w as y,A as b,z as x,aM as N,Z as v,x as p,F as C,I as L}from"./index-C1zazBuA.js";import"./vendor-dayjs-5tvLiZdS.js";import{M as w,a as S}from"./MarketingShell-DP3ytjtt.js";import{E as h}from"./en-glossary-data-Bg1JqSw6.js";import{A}from"./arrow-up-r2kIgEmT.js";import"./vendor-query-D-sr233n.js";import"./vendor-i18n-C6wqqoou.js";import"./vendor-sentry-B44l4p48.js";import"./vendor-antd-core-4y2ghozH.js";import"./zap-Cq5-IVE7.js";import"./globe-B_dZW_TR.js";import"./shield-check-DwC_B1cV.js";import"./users-pWHlcsOD.js";import"./file-text-BS22KvCb.js";import"./SiteFooter-BHUyJLr_.js";import"./send-Dg98yAAB.js";import"./building-2-DC8zHA3M.js";const o="https://avalog.ru/en/glossary",E="/og-image.jpg";function F(r){const a=r[0].toUpperCase();return/[A-Z]/.test(a)?a:"#"}function z(){const[r,a]=l.useState(""),n=l.useMemo(()=>{const t=r.trim().toLowerCase();return t?h.filter(s=>s.term.toLowerCase().includes(t)||s.shortDefinition.toLowerCase().includes(t)||(s.fullDefinition??"").toLowerCase().includes(t)):h},[r]),m=l.useMemo(()=>{const t=new Map;n.forEach(s=>{const i=F(s.term);t.has(i)||t.set(i,[]),t.get(i).push(s)});for(const s of t.values())s.sort((i,g)=>i.term.localeCompare(g.term,"en"));return t},[n]),c=l.useMemo(()=>"ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").filter(t=>m.has(t)),[m]),u={"@context":"https://schema.org","@type":"DefinedTermSet",name:"Avalog Logistics Glossary — International Freight & Customs Terms",description:"30 essential terms in international freight forwarding, customs clearance, and Incoterms — explained in plain English.",url:o,hasDefinedTerm:h.map(t=>({"@type":"DefinedTerm",name:t.term,description:t.shortDefinition,url:`${o}/${t.slug}`}))};return e.jsxs(w,{children:[e.jsxs(j,{htmlAttributes:{lang:"en"},children:[e.jsx("title",{children:"Freight & Customs Glossary — 30 Key Terms Explained | Avalog"}),e.jsx("meta",{name:"description",content:"FCL, LCL, B/L, Incoterms FOB/CIF/DAP, HS Code, customs value, demurrage — 30 essential freight and customs terms explained in plain English."}),e.jsx("link",{rel:"canonical",href:o}),e.jsx("link",{rel:"alternate",hrefLang:"en",href:"https://avalog.ru/en/glossary"}),e.jsx("link",{rel:"alternate",hrefLang:"ru",href:"https://avalog.ru/glossary"}),e.jsx("link",{rel:"alternate",hrefLang:"x-default",href:"https://avalog.ru/glossary"}),e.jsx("meta",{property:"og:title",content:"Logistics Glossary — Avalog"}),e.jsx("meta",{property:"og:description",content:"30 freight and customs terms: FCL/LCL, Incoterms, HS code, demurrage, B/L and more."}),e.jsx("meta",{property:"og:image",content:E}),e.jsx("meta",{property:"og:url",content:o}),e.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),e.jsx("script",{type:"application/ld+json",children:JSON.stringify(u)})]}),e.jsx("main",{id:"main-content",children:e.jsx(f,{padding:"lg",className:"bg-gradient-to-b from-bg-surface to-bg",children:e.jsxs(y,{size:"md",children:[e.jsx("nav",{"aria-label":"breadcrumb",className:"mb-6",children:e.jsxs("ol",{className:"flex items-center gap-2 text-sm text-text-muted",children:[e.jsx("li",{children:e.jsx(d,{to:"/",className:"hover:text-primary",children:"Home"})}),e.jsx("li",{"aria-hidden":"true",className:"text-border",children:"›"}),e.jsx("li",{className:"text-text","aria-current":"page",children:"Glossary"})]})}),e.jsxs("header",{className:"mb-8 text-center",children:[e.jsx(b,{variant:"outline",className:"mb-4",children:"30 terms"}),e.jsx("h1",{className:"text-4xl font-bold text-text mb-3",children:"Freight & Customs Glossary"}),e.jsx(x,{variant:"body",className:"text-text-muted max-w-xl mx-auto",children:"Incoterms, HS codes, FCL/LCL, B/L, demurrage and other key terms — explained in plain English with practical examples."})]}),e.jsxs("div",{className:"relative max-w-lg mx-auto mb-8",children:[e.jsx(N,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-text-muted pointer-events-none","aria-hidden":"true"}),e.jsx(v,{value:r,onChange:t=>a(t.target.value),placeholder:"Search: demurrage, FOB, LCL...",className:"pl-9","aria-label":"Search glossary"})]}),c.length>0&&e.jsx("div",{className:"flex flex-wrap gap-1.5 justify-center mb-10",children:c.map(t=>e.jsx("a",{href:`#letter-${t}`,className:"h-8 min-w-8 px-2 rounded-md border border-border hover:border-primary hover:text-primary text-sm font-semibold inline-flex items-center justify-center transition-colors text-text-muted","aria-label":`Jump to letter ${t}`,children:t},t))}),e.jsx("div",{"aria-live":"polite","aria-atomic":"true",className:"sr-only",children:r?n.length===0?`No results for "${r}"`:`Found ${n.length} terms`:null}),n.length===0?e.jsxs("div",{className:"text-center py-16",children:[e.jsxs(x,{className:"text-text-muted",children:['No results for "',r,'"']}),e.jsx("button",{type:"button",onClick:()=>a(""),className:"mt-3 text-sm text-primary hover:underline",children:"Clear search"})]}):e.jsx("section",{"aria-label":"Glossary terms",children:e.jsx(p,{gap:10,children:c.map(t=>e.jsxs("div",{id:`letter-${t}`,className:"scroll-mt-20",children:[e.jsxs("div",{className:"flex items-end justify-between mb-4",children:[e.jsx("h2",{className:"text-3xl font-bold text-primary",children:t}),e.jsxs("a",{href:"#main-content",className:"text-xs text-text-muted hover:text-text flex items-center gap-1","aria-label":"Back to top",children:[e.jsx(A,{className:"h-3 w-3","aria-hidden":"true"}),"Top"]})]}),e.jsx(p,{gap:3,children:m.get(t).map(s=>e.jsx(C,{className:"hover:border-primary/40 hover:shadow-sm transition-all",children:e.jsx(L,{className:"p-5",children:e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx(d,{to:`/en/glossary/${s.slug}`,children:e.jsx("h3",{className:"text-base font-bold text-text hover:text-primary transition-colors mb-1",children:s.term})}),e.jsx(x,{variant:"caption",className:"text-text-muted",children:s.shortDefinition})]}),e.jsx(d,{to:`/en/glossary/${s.slug}`,className:"shrink-0 text-xs text-primary hover:underline whitespace-nowrap","aria-label":`Read more about ${s.term}`,children:"Read more →"})]})})},s.slug))})]},t))})})]})})}),e.jsx(S,{})]})}export{z as default};