.ecos-bmenu { width:100%; min-width:0; }
.ecos-bmenu .ecos-bmenu__variant { display:none; min-width:0; background:var(--ecos-bmenu-background-color,transparent); color:var(--ecos-bmenu-link-color,inherit); font-size:var(--ecos-bmenu-font-size-px,16px); line-height:1.5; }
.ecos-bmenu .ecos-bmenu__variant[data-device="desktop"] { display:block; }
.ecos-bmenu .ecos-bmenu__list { display:flex; flex-direction:column; gap:var(--ecos-bmenu-gap-px,6px); list-style:none; padding:0; margin:0; min-width:0; }
.ecos-bmenu .ecos-bmenu__item { position:relative; min-width:0; max-width:100%; margin:0; padding:0; }
.ecos-bmenu .ecos-bmenu__link { display:block; color:var(--ecos-bmenu-link-color,inherit); background:transparent; padding:var(--ecos-bmenu-link-padding-y-px,6px) var(--ecos-bmenu-link-padding-x-px,0px); border-radius:var(--ecos-bmenu-radius-px,0px); text-align:var(--ecos-bmenu-text-align,left); text-decoration:none; font:inherit; overflow-wrap:anywhere; }
.ecos-bmenu .ecos-bmenu__branch > .ecos-bmenu__list { padding-inline-start:var(--ecos-bmenu-submenu-indent-px,16px); margin-top:var(--ecos-bmenu-gap-px,6px); background:var(--ecos-bmenu-submenu-background-color,transparent); border-radius:var(--ecos-bmenu-radius-px,0px); }
.ecos-bmenu .ecos-bmenu__branch .ecos-bmenu__link { color:var(--ecos-bmenu-submenu-link-color,var(--ecos-bmenu-link-color,inherit)); }
.ecos-bmenu .ecos-bmenu__link[aria-current="page"] { color:var(--ecos-bmenu-active-color,#2563eb); }
.ecos-bmenu .ecos-bmenu__link:hover,.ecos-bmenu .ecos-bmenu__link:focus-visible { color:var(--ecos-bmenu-hover-color,#2563eb); background:var(--ecos-bmenu-hover-background-color,transparent); }
.ecos-bmenu .ecos-bmenu__link:focus-visible,.ecos-bmenu summary:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.ecos-bmenu .ecos-bmenu__toggle,.ecos-bmenu .ecos-bmenu__branch-toggle { display:flex; align-items:center; justify-content:space-between; cursor:pointer; list-style:none; color:inherit; }
.ecos-bmenu summary::-webkit-details-marker { display:none; }
.ecos-bmenu .ecos-bmenu__toggle { gap:12px; padding:var(--ecos-bmenu-link-padding-y-px,6px) var(--ecos-bmenu-link-padding-x-px,0px); border:1px solid var(--ecos-bmenu-border-color,transparent); border-radius:var(--ecos-bmenu-radius-px,0px); }
.ecos-bmenu .ecos-bmenu__branch-toggle { position:absolute; inset-inline-end:0; top:0; justify-content:center; width:36px; min-height:calc(1.5em + 2 * var(--ecos-bmenu-link-padding-y-px,6px)); border-radius:var(--ecos-bmenu-radius-px,0px); }
.ecos-bmenu [data-submenus]:not([data-submenus="expanded"]) .has-children > .ecos-bmenu__link { padding-inline-end:calc(36px + var(--ecos-bmenu-link-padding-x-px,0px)); }
.ecos-bmenu .ecos-bmenu__branch[open] > summary svg,.ecos-bmenu .ecos-bmenu__root[open] > .ecos-bmenu__toggle svg { transform:rotate(180deg); }
.ecos-bmenu .ecos-bmenu__variant[data-layout="horizontal"] > .ecos-bmenu__root > .ecos-bmenu__list { flex-direction:row; flex-wrap:wrap; justify-content:var(--ecos-bmenu-align,flex-start); align-items:flex-start; }
.ecos-bmenu [data-submenus="dropdown"] .ecos-bmenu__branch > .ecos-bmenu__list { position:absolute; z-index:40; inset-inline-start:0; top:100%; min-width:min(220px,calc(100vw - 32px)); width:max-content; max-width:min(320px,calc(100vw - 32px)); padding:8px; margin:0; border:1px solid var(--ecos-bmenu-border-color,transparent); box-shadow:0 8px 24px #0f172a18; transform:translateX(var(--ecos-bmenu-shift-x,0px)); }
.ecos-bmenu .ecos-bmenu__empty { padding:16px; border:1px dashed currentColor; border-radius:8px; font:inherit; opacity:.7; }
.ecos-bmenu [hidden] { display:none !important; }
@media (min-width:768px) and (max-width:1023px) { .ecos-bmenu .ecos-bmenu__variant[data-device] { display:none; } .ecos-bmenu .ecos-bmenu__variant[data-device="tablet"] { display:block; } }
@media (max-width:767px) { .ecos-bmenu .ecos-bmenu__variant[data-device] { display:none; } .ecos-bmenu .ecos-bmenu__variant[data-device="mobile"] { display:block; } }
