/* ===== NAV — desktop ===== */
header.nav{ position:sticky; top:0; z-index:50; background:rgba(10,18,38,.78); backdrop-filter:blur(14px); border-bottom:1px solid var(--stroke); }
.nav-row{ display:flex; align-items:center; gap:32px; height:74px; }
.nav-logo{ display:flex; align-items:center; }
.nav-logo img{ height:50px; width:auto; display:block; }
.nav-links{ display:flex; gap:28px; margin-left:8px; }
.nav-links a{ font-size:15px; font-weight:600; color:rgba(234,240,250,.82); display:flex; align-items:center; gap:7px; transition:color .15s; }
.nav-links a:hover, .nav-links a.active{ color:#fff; }
.nav-right{ margin-left:auto; display:flex; align-items:center; gap:14px; }
.nav-drop{ position:relative; }
.nav-drop > a{ display:inline-flex; align-items:center; gap:5px; cursor:pointer; }
.nav-drop > a .ca{ transition:transform .2s; }
.nav-toggle{ display:none; background:none; border:none; color:#fff; cursor:pointer; padding:6px; }
.lang{ display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:var(--muted); padding:8px 12px; border:1px solid var(--stroke); border-radius:10px; cursor:pointer; }

/* Dropdown — desktop hover */
.nav-menu{
  position:absolute;
  top:calc(100% + 14px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:232px;
  background:#0e1f3a;
  border:1px solid var(--stroke);
  border-radius:14px;
  padding:8px;
  box-shadow:0 24px 60px rgba(0,0,0,.45);
  opacity:0;
  visibility:hidden;
  transition:opacity .16s, transform .16s;
  z-index:60;
}
.nav-menu::before{ content:""; position:absolute; left:0; right:0; top:-14px; height:14px; }
.nav-menu a{ display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:10px; color:#eaf0fa; font-size:14px; font-weight:600; }
.nav-menu a:hover{ background:rgba(255,255,255,.06); }
.nav-menu a .nm-ic{ width:34px; height:34px; border-radius:9px; display:grid; place-items:center; flex:0 0 auto; font-family:"Space Grotesk",sans-serif; font-weight:700; font-size:13px; color:#fff; }
.nav-menu a .nm-ic.g{ background:linear-gradient(135deg,#99d420,#7eb016); color:#0e1f3a; }
.nav-menu a .nm-ic.b{ background:linear-gradient(135deg,#2f8fff,#1f6fd6); }
.nav-menu a small{ display:block; font-weight:500; color:var(--muted); font-size:12px; margin-top:1px; }

/* Hover — ONLY desktop (overridden below on mobile) */
@media (hover: hover) and (pointer: fine) {
  .nav-drop:hover > a .ca{ transform:rotate(180deg); }
  .nav-drop:hover .nav-menu{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }
}

/* ===== NAV — mobile ===== */
@media (max-width: 980px){
  /* Panou principal */
  .nav-links{
    display:none;
    position:absolute;
    top:74px; left:0; right:0;
    flex-direction:column;
    background:#0a1226;
    border-bottom:1px solid rgba(255,255,255,.12);
    padding:16px 24px 24px;
    gap:0;
    z-index:49;
  }
  .nav-links.open{ display:flex; }

  .nav-links > a{
    padding:13px 4px;
    border-bottom:1px solid rgba(255,255,255,.06);
    font-size:16px;
  }
  .nav-links > a:last-child{ border-bottom:none; }

  .nav-toggle{ display:flex; align-items:center; justify-content:center; }

  .nav-drop{ width:100%; position:static; }
  .nav-drop > a{
    width:100%;
    padding:13px 4px;
    border-bottom:1px solid rgba(255,255,255,.06);
    font-size:16px;
    justify-content:space-between;
    display:flex;
  }

  /* Reset COMPLET nav-menu pe mobile — orice selector, orice stare */
  .nav-drop .nav-menu,
  .nav-drop:hover .nav-menu,
  .nav-drop.open .nav-menu {
    position:static !important;
    left:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    transition:none !important;
    opacity:1 !important;
    visibility:visible !important;
    z-index:auto !important;
    width:100% !important;
    min-width:0 !important;
    box-shadow:none !important;
    background:rgba(255,255,255,.04) !important;
    border:none !important;
    border-radius:10px !important;
    padding:4px 0 4px 14px !important;
    margin:4px 0 !important;
  }

  /* Ascuns implicit, vizibil doar cu .open */
  .nav-drop .nav-menu { display:none !important; }
  .nav-drop.open .nav-menu { display:block !important; }

  /* Chevron */
  .nav-drop > a .ca { transform:none !important; }
  .nav-drop.open > a .ca { transform:rotate(180deg) !important; }
  .nav-right .flag{ display:none; }
}

@media (max-width: 620px){
  .nav-logo img{ height:45px; }
  .nav-row{ gap:16px; }
}

@media (max-width: 480px){
  .nav-logo img{ height:45px; }
  .nav-row{ gap:16px; }
}
