/* MW Menü-Widgets: Schnelllinks (Karten) & Seitenleiste Kategorien
 * !important nur dort, wo Theme/Elementor Links, Listen oder Buttons sonst überschreiben.
 */

.mw-menu-empty{padding:20px;border:1px dashed #ccc;border-radius:8px;text-align:center;font-size:14px;color:#777}

/* ==================================================================
   Schnelllinks
   ================================================================== */
.mw-mtiles{
  --mw-mt-cols:4;--mw-mt-gap:14px;--mw-mt-pad:10px;--mw-mt-radius:10px;--mw-mt-img:80px;--mw-mt-fit:cover;
  --mw-mt-bg:#fff;--mw-mt-line:#e3e8ef;--mw-mt-accent:#0b4a8f;--mw-mt-active-bg:#eaf2fb;--mw-mt-img-bg:#f4f6f9;
  --mw-mt-text:#0b4a8f;--mw-mt-more:#0b4a8f;
}
.mw-mtiles,.mw-mtiles *{box-sizing:border-box}
.mw-mtiles .mw-mtiles__list{
  display:grid!important;grid-template-columns:repeat(var(--mw-mt-cols),minmax(0,1fr));gap:var(--mw-mt-gap);
  margin:0!important;padding:0!important;list-style:none!important;
}
.mw-mtiles .mw-mtiles__item{margin:0!important;padding:0!important;list-style:none!important;min-width:0}
.mw-mtiles .mw-mtiles__item::before,.mw-mtiles .mw-mtiles__item::marker{content:none!important}

.mw-mtiles a.mw-mtiles__card{
  display:flex!important;align-items:center;gap:14px;height:100%;
  padding:var(--mw-mt-pad)!important;
  border:1px solid var(--mw-mt-line)!important;border-radius:var(--mw-mt-radius)!important;
  background:var(--mw-mt-bg)!important;color:var(--mw-mt-text)!important;text-decoration:none!important;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
  transition:border-color .15s ease,box-shadow .2s ease,transform .2s ease,background-color .15s ease;
}
.mw-mtiles a.mw-mtiles__card:hover{border-color:var(--mw-mt-accent)!important;box-shadow:0 6px 16px rgba(16,24,40,.08);transform:translateY(-1px)}
.mw-mtiles a.mw-mtiles__card:focus-visible{outline:2px solid var(--mw-mt-accent)!important;outline-offset:2px}
.mw-mtiles a.mw-mtiles__card.is-active{border-color:var(--mw-mt-accent)!important;background:var(--mw-mt-active-bg)!important}

.mw-mtiles .mw-mtiles__media{
  flex:0 0 var(--mw-mt-img);width:var(--mw-mt-img);height:var(--mw-mt-img);
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  border-radius:calc(var(--mw-mt-radius) * .7);background:var(--mw-mt-img-bg);
}
.mw-mtiles .mw-mtiles__media img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:var(--mw-mt-fit);border-radius:0!important}
.mw-mtiles .mw-mtiles__media--icon{background:transparent;color:var(--mw-mt-text)}
.mw-mtiles .mw-mtiles__media--icon svg{width:60%;height:60%}
.mw-mtiles .mw-mtiles__media--icon i{font-size:calc(var(--mw-mt-img) * .5)}

.mw-mtiles .mw-mtiles__body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.mw-mtiles .mw-mtiles__title{font-size:15px;font-weight:600;line-height:1.3;color:var(--mw-mt-text);overflow-wrap:anywhere}
.mw-mtiles .mw-mtiles__arrow{display:inline-flex;color:var(--mw-mt-text);transition:transform .2s ease}
.mw-mtiles .mw-mtiles__arrow svg,.mw-mtiles .mw-mtiles__more-arrow svg{width:16px;height:16px;display:block}
.mw-mtiles a.mw-mtiles__card:hover .mw-mtiles__arrow{transform:translateX(3px)}

.mw-mtiles a.mw-mtiles__more{
  display:inline-flex!important;align-items:center;gap:6px;margin-top:12px;
  color:var(--mw-mt-more)!important;font-size:13px;font-weight:500;text-decoration:none!important;
}
.mw-mtiles a.mw-mtiles__more:hover{text-decoration:underline!important}
.mw-mtiles .mw-mtiles__more-arrow{display:inline-flex;transition:transform .2s ease}
.mw-mtiles a.mw-mtiles__more:hover .mw-mtiles__more-arrow{transform:translateX(3px)}

/* Handy: wischbare Reihe */
@media (max-width:767px){
  .mw-mtiles.mw-mtiles--scroll .mw-mtiles__list{
    display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;margin:0 -16px!important;padding:2px 16px 6px!important;scroll-padding:0 16px;
  }
  .mw-mtiles.mw-mtiles--scroll .mw-mtiles__list::-webkit-scrollbar{display:none}
  .mw-mtiles.mw-mtiles--scroll .mw-mtiles__item{flex:0 0 min(72%,240px);scroll-snap-align:start}
  .mw-mtiles a.mw-mtiles__card:hover{transform:none}
}

/* ==================================================================
   Seitenleiste
   ================================================================== */
.mw-msb{
  --mw-sb-bg:#fff;--mw-sb-line:#e3e8ef;--mw-sb-radius:12px;--mw-sb-pad:18px;
  --mw-sb-accent:#0b4a8f;--mw-sb-text:#2a3443;
  background:var(--mw-sb-bg);border:1px solid var(--mw-sb-line);border-radius:var(--mw-sb-radius);
  color:var(--mw-sb-text);
}
.mw-msb,.mw-msb *{box-sizing:border-box}

/* Überschrift (am Desktop nur Titel, am Handy Button) */
.mw-msb button.mw-msb__heading,
.mw-msb button.mw-msb__heading:hover,
.mw-msb button.mw-msb__heading:focus,
.mw-msb button.mw-msb__heading:active{
  -webkit-appearance:none!important;appearance:none!important;
  display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:0!important;
  margin:0!important;padding:var(--mw-sb-pad) var(--mw-sb-pad) 14px!important;
  border:0!important;border-bottom:1px solid var(--mw-sb-line)!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;color:var(--mw-sb-accent)!important;
  text-align:left!important;text-transform:none!important;letter-spacing:0!important;cursor:default!important;
}
.mw-msb .mw-msb__heading-icon{display:inline-flex}
.mw-msb .mw-msb__heading-icon svg{width:20px;height:20px;display:block}
.mw-msb .mw-msb__heading-text{font-size:17px;font-weight:600;line-height:1.3;color:var(--mw-sb-accent)}
.mw-msb .mw-msb__heading-chevron{display:none;margin-left:auto}
.mw-msb .mw-msb__heading-chevron svg,.mw-msb .mw-msb__section-chevron svg{width:14px;height:14px;display:block;transition:transform .2s ease}

.mw-msb .mw-msb__panel{padding:16px var(--mw-sb-pad) var(--mw-sb-pad)}
.mw-msb .mw-msb__section-title{
  display:flex;align-items:center;justify-content:space-between;
  margin:0 0 10px!important;padding:0!important;font-size:14px;font-weight:600;color:var(--mw-sb-text);list-style:none;
}
.mw-msb summary.mw-msb__section-title{cursor:pointer}
.mw-msb summary.mw-msb__section-title::-webkit-details-marker{display:none}
.mw-msb summary.mw-msb__section-title::marker{content:none}
.mw-msb details[open] > summary .mw-msb__section-chevron svg{transform:rotate(180deg)}

.mw-msb ul.mw-msb__list,.mw-msb ul.mw-msb__sublist{margin:0!important;padding:0!important;list-style:none!important}
.mw-msb li.mw-msb__item,.mw-msb li.mw-msb__subitem{margin:0!important;padding:0!important;list-style:none!important}
.mw-msb li.mw-msb__item::before,.mw-msb li.mw-msb__subitem::before{content:none!important}

/* Hauptpunkte mit Radio */
.mw-msb a.mw-msb__link{
  display:flex!important;align-items:center;gap:10px;padding:6px 0!important;
  color:var(--mw-sb-text)!important;text-decoration:none!important;font-size:14px;line-height:1.35;
  background:none!important;border:0!important;
}
.mw-msb a.mw-msb__link:hover .mw-msb__label{color:var(--mw-sb-accent)}
.mw-msb a.mw-msb__link:focus-visible{outline:2px solid var(--mw-sb-accent);outline-offset:2px;border-radius:4px}
.mw-msb .mw-msb__radio{
  position:relative;flex:0 0 16px;width:16px;height:16px;border:1.5px solid #9aa4b2;border-radius:50%;background:#fff;
  transition:border-color .15s ease;
}
.mw-msb a.mw-msb__link:hover .mw-msb__radio{border-color:var(--mw-sb-accent)}
.mw-msb a.mw-msb__link.is-active .mw-msb__radio{border-color:var(--mw-sb-accent);border-width:5px}
.mw-msb a.mw-msb__link.is-active .mw-msb__label{font-weight:600;color:var(--mw-sb-text)}

/* Unterpunkte mit Punkt */
.mw-msb ul.mw-msb__sublist{padding:2px 0 4px 26px!important}
.mw-msb a.mw-msb__sublink{
  display:flex!important;align-items:center;gap:9px;padding:4px 0!important;
  color:var(--mw-sb-text)!important;text-decoration:none!important;font-size:13px;line-height:1.35;background:none!important;
}
.mw-msb a.mw-msb__sublink::before{content:"";flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:var(--mw-sb-accent);opacity:.55}
.mw-msb a.mw-msb__sublink:hover{color:var(--mw-sb-accent)!important}
.mw-msb a.mw-msb__sublink.is-active{font-weight:600;color:var(--mw-sb-accent)!important}
.mw-msb a.mw-msb__sublink.is-active::before{opacity:1}

/* Handy: zuklappbar */
@media (max-width:767px){
  .mw-msb.mw-msb--toggle button.mw-msb__heading{cursor:pointer!important;padding:14px var(--mw-sb-pad)!important;border-bottom-color:transparent!important}
  .mw-msb.mw-msb--toggle .mw-msb__heading-chevron{display:inline-flex}
  .mw-msb.mw-msb--toggle .mw-msb__panel{display:none}
  .mw-msb.mw-msb--toggle.is-open .mw-msb__panel{display:block}
  .mw-msb.mw-msb--toggle.is-open button.mw-msb__heading{border-bottom-color:var(--mw-sb-line)!important}
  .mw-msb.mw-msb--toggle.is-open .mw-msb__heading-chevron svg{transform:rotate(180deg)}
  .mw-msb a.mw-msb__link{padding:9px 0!important}
  .mw-msb a.mw-msb__sublink{padding:7px 0!important}
}
