/* QWERTZ Vertical Category Filter — v2.2.0 (Classic Flex + observer hard-lock) */
.qwertz-vfilter, .qwertz-vfilter * { box-sizing:border-box }
.qwertz-vfilter{font-family:inherit;color:var(--text, #e5eefc);display:block;width:100%;max-width:100%}
.qwertz-vfilter__sidebar{position:relative;width:100%;max-width:100%}
.qwertz-vfilter__tree{width:100%;background:var(--card, #0f172a);border:1px solid var(--border, rgba(255,255,255,.09));border-radius:14px;padding:.7rem .7rem;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.qwertz-vfilter__ul{list-style:none;margin:0;padding:.12rem}
.qwertz-vfilter__ul .qwertz-vfilter__ul{margin-top:.12rem}
.qwertz-vfilter__li{margin:.14rem 0;border:1px solid transparent;border-radius:10px}

/* Row = pure flex (chevron | name [flex] | count) */
.qwertz-vfilter__row{display:flex;align-items:center;gap:.75rem;padding:.52rem .7rem;cursor:pointer;position:relative;z-index:1;width:100%}
.qwertz-vfilter__toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid transparent;background:transparent;color:inherit;border-radius:8px;flex:0 0 auto;cursor:pointer}
.qwertz-vfilter__toggle--spacer{pointer-events:none}
.qwertz-vfilter__chev{display:inline-block;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .16s ease}
.qwertz-vfilter__li[data-expanded="true"] > .qwertz-vfilter__row .qwertz-vfilter__chev{transform:rotate(45deg)}

.qwertz-vfilter .qwertz-vfilter__name{
  display:block; flex:1 1 auto; min-width:0; max-width:100%;
  white-space:normal; word-break:normal; overflow-wrap:break-word; hyphens:auto; writing-mode:horizontal-tb;
  line-height:1.4; font-weight:600; text-decoration:none;
}
.qwertz-vfilter .qwertz-vfilter__name:hover{ text-decoration:underline; text-underline-offset:3px }
.qwertz-vfilter .qwertz-vfilter__li.is-active > .qwertz-vfilter__row .qwertz-vfilter__name{ text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px }

.qwertz-vfilter__count{display:inline-flex;align-items:center;justify-content:center;height:22px;min-width:26px;padding:0 .45rem;border-radius:999px;border:1px solid var(--border, rgba(255,255,255,.09));background:rgba(255,255,255,.06);color:var(--muted, #9aa3b2);font-size:12px;line-height:1;white-space:nowrap;flex:0 0 auto}

/* Subcategory container: indent and spacing */
.qwertz-vfilter__children{display:none;padding-left:1rem;margin:.12rem 0 .08rem .5rem;border-left:1px dashed var(--border, rgba(255,255,255,.09));background:transparent}
.qwertz-vfilter__children.is-open{display:block}

/* Smaller chevron for subs */
.qwertz-vfilter .qwertz-vfilter__children .qwertz-vfilter__toggle{width:18px;height:18px;border:none;background:transparent}
.qwertz-vfilter .qwertz-vfilter__children .qwertz-vfilter__chev{width:6px;height:6px}
.qwertz-vfilter .qwertz-vfilter__children .qwertz-vfilter__toggle--spacer{display:none}

/* Mobile “Categories” button */
.qwertz-vfilter__jump{position:fixed;left:16px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:9999;display:none;align-items:center;gap:.5rem;background:var(--panel, #121a2b);color:var(--text,#e5eefc);border:1px solid var(--border, rgba(255,255,255,.09));padding:.6rem .85rem;border-radius:999px;box-shadow:0 10px 24px rgba(0,0,0,.35);cursor:pointer}
.qwertz-vfilter__jump span{font-weight:600}
@media (max-width:1024px){ .qwertz-vfilter__jump{display:flex} }
@media (min-width:1025px){ .qwertz-vfilter__jump{display:none !important} }
