/* Minimal desktop mega menu — isolated from the legacy menu stylesheet. */
.danilo-mega-grid.megamenu{
  width:min(1040px,calc(100vw - 48px));
  height:min(420px,calc(100dvh - 170px));
  min-height:300px;
  max-height:420px;
  gap:12px;
  padding:12px;
  overflow:hidden;
  border:1px solid rgb(148 163 184/.18);
  border-radius:18px;
  background:#fff;
  box-shadow:0 24px 70px rgb(15 23 42/.18);
}
.dark .danilo-mega-grid.megamenu{background:#172234;border-color:rgb(148 163 184/.16);box-shadow:0 28px 80px rgb(0 0 0/.38)}
.danilo-mega-grid .megamenu_category{
  width:188px;
  flex:0 0 188px;
  margin:0;
  padding:8px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  border:0;
  border-radius:14px;
  background:#f5f7fb;
}
.dark .danilo-mega-grid .megamenu_category{background:#0f1929}
.danilo-mega-grid .megamenu_category-item{margin:0;padding:0;border-radius:10px}
.danilo-mega-grid .megamenu_category-item a{display:block;padding:10px 12px;border-radius:10px;font-size:14px;line-height:1.6}
.danilo-mega-grid .megamenu_category-item.active{padding:0;background:#3b82f6;color:#fff;box-shadow:0 8px 20px rgb(59 130 246/.2)}
.danilo-mega-grid .megamenu_left{position:relative;flex:1;min-width:0;width:auto;margin:0;overflow:hidden}
.danilo-mega-grid .megamenu_left-item{display:none;position:static;width:100%;height:100%;padding:10px 14px 12px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgb(100 116 139/.35) transparent}
.danilo-mega-grid .megamenu_left-item.active{display:block;visibility:visible;opacity:1}
.danilo-mega-grid .mega-panel-heading{display:flex;align-items:center;min-height:36px;margin:0 0 14px;padding:0 2px 12px;border-bottom:1px solid rgb(148 163 184/.18);font-size:13px;font-weight:700;color:#3b82f6}
.danilo-mega-grid .mega-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.danilo-mega-grid .mega-group{min-width:0;padding:0 6px}
.danilo-mega-grid .mega-group h2{margin:0 0 8px;padding-inline-start:10px;font-size:14px;line-height:1.9}
.danilo-mega-grid .mega-group h2::before{width:2px;height:18px;top:4px}
.danilo-mega-grid .mega-group ul{margin:0;padding:0;list-style:none}
.danilo-mega-grid .mega-group li{margin:0;break-inside:avoid;font-size:13px;line-height:1.6}
.danilo-mega-grid .mega-group li>a{display:block;padding:6px 10px;border-radius:8px;color:#64748b;white-space:normal;overflow-wrap:anywhere;transition:background .16s,color .16s,transform .16s}
.dark .danilo-mega-grid .mega-group li>a{color:#c0cad9}
.danilo-mega-grid .mega-group li>a:hover,.danilo-mega-grid .mega-group a:focus-visible{background:rgb(59 130 246/.09);color:#3b82f6;transform:translateX(-2px)}
.danilo-mega-grid .mega-columns:has(>.mega-group:only-child){grid-template-columns:1fr}
.danilo-mega-grid .mega-columns>.mega-group:only-child>ul{columns:3;column-gap:24px}
.danilo-mega-grid .mega-columns>.mega-group:only-child>ul>li{display:inline-block;width:100%}
@media(max-width:1100px){
  .danilo-mega-grid.megamenu{width:calc(100vw - 32px)}
  .danilo-mega-grid .megamenu_category{width:170px;flex-basis:170px}
  .danilo-mega-grid .mega-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .danilo-mega-grid .mega-columns>.mega-group:only-child>ul{columns:2}
}
@media(max-height:640px){.danilo-mega-grid.megamenu{height:calc(100dvh - 150px);min-height:250px;max-height:none}}
/* Balanced content flow: keeps every group visible without a clipped second row. */
@media(min-width:1101px){
  .danilo-mega-grid .megamenu_left-item{overflow:hidden;padding-bottom:8px}
  .danilo-mega-grid .mega-columns:not(:has(>.mega-group:only-child)){display:block;columns:4;column-gap:20px}
  .danilo-mega-grid .mega-columns:not(:has(>.mega-group:only-child))>.mega-group{display:inline-block;width:100%;margin:0 0 14px;padding:0 6px;break-inside:avoid;vertical-align:top}
  .danilo-mega-grid .mega-group h2{margin-bottom:5px}
  .danilo-mega-grid .mega-group li>a{padding-block:4px}
}
@media(min-width:1101px){.danilo-mega-grid .mega-columns:not(:has(>.mega-group:only-child)){height:calc(100% - 50px);column-fill:balance}}
@media(min-width:1101px){
  .danilo-mega-grid.megamenu{
    height:min(440px,calc(100dvh - 160px));
    max-height:440px;
  }

  .danilo-mega-grid .mega-group li{
    font-size:12px;
    line-height:1.35;
  }

  .danilo-mega-grid .mega-group li>a{
    padding-block:2px;
  }

  .danilo-mega-grid .mega-group h2{
    margin-bottom:4px;
  }
}
