/* =====================================================
   VOYAGER — nav.css
   하단 네비게이션 + 햄버거 드로어 전용 스타일
   dashboard.html에서 shared.css와 함께 사용
   ===================================================== */

/* ── NOTIFICATION BADGE ── */
.badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--accent);font-size:9px;font-weight:700;color:var(--ink);position:absolute;top:4px;right:calc(50% - 18px);}

/* ── TOAST ── */
.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%) translateY(-80px);background:var(--card2);border:1px solid var(--border);border-radius:100px;padding:10px 20px;font-size:13px;z-index:500;transition:transform .35s cubic-bezier(.32,.72,0,1);white-space:nowrap;}
.toast.show{transform:translateX(-50%) translateY(0);}

/* ── BOTTOM NAVIGATION BAR ── */
.bottom-nav{
  position:fixed;bottom:0;left:0;right:0;
  z-index:100;
  height:var(--nav-h);
  background:rgba(10,13,20,.9);
  backdrop-filter:blur(24px) saturate(180%);
  border-top:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-around;
  padding:0 8px;
  padding-bottom:env(safe-area-inset-bottom,0);
}

/* NAV ITEM */
.nav-item{
  flex:1;display:flex;flex-direction:column;align-items:center;
  gap:3px;padding:7px 2px;cursor:pointer;
  transition:all .25s;border-radius:12px;
  background:none;border:none;color:var(--muted);position:relative;
}
.nav-item.active{color:var(--text);}
.nav-icon{font-size:18px;transition:transform .25s;}
.nav-item.active .nav-icon{transform:scale(1.1);}
.nav-label{font-size:8px;letter-spacing:.3px;font-weight:500;text-transform:uppercase;}
.nav-indicator{
  position:absolute;top:6px;width:24px;height:3px;
  border-radius:2px;background:var(--accent);opacity:0;transition:opacity .25s;
}
.nav-item.active .nav-indicator{opacity:1;}

/* ── HAMBURGER BUTTON ── */
.ham-btn{
  flex:1;display:flex;flex-direction:column;align-items:center;
  gap:4px;padding:8px 4px;cursor:pointer;
  transition:all .25s;border-radius:14px;
  background:none;border:none;color:var(--muted);position:relative;
}
.ham-icon{display:flex;flex-direction:column;gap:4px;width:20px;}
.ham-line{height:2px;border-radius:1px;background:currentColor;transition:all .3s ease;transform-origin:center;}
.ham-line.l1{width:20px;}
.ham-line.l2{width:14px;}
.ham-line.l3{width:17px;}
.ham-btn.open .ham-line.l1{transform:translateY(6px) rotate(45deg);width:20px;}
.ham-btn.open .ham-line.l2{opacity:0;transform:scaleX(0);}
.ham-btn.open .ham-line.l3{transform:translateY(-6px) rotate(-45deg);width:20px;}
.ham-btn.open{color:var(--text);}
.ham-label{font-size:9px;letter-spacing:.5px;font-weight:500;text-transform:uppercase;}

/* ── DRAWER (슬라이드업 메뉴) ── */
.drawer-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.6);
  z-index:90;opacity:0;pointer-events:none;
  transition:opacity .3s;
  backdrop-filter:blur(4px);
}
.drawer-overlay.open{opacity:1;pointer-events:all;}

.drawer{
  position:fixed;bottom:var(--nav-h);left:0;right:0;
  z-index:91;
  background:var(--surface);
  border-top-left-radius:28px;border-top-right-radius:28px;
  border:1px solid var(--border);border-bottom:none;
  transform:translateY(100%);
  transition:transform .35s cubic-bezier(.32,.72,0,1);
  padding:24px 20px 20px;
}
.drawer.open{transform:translateY(0);}
.drawer-pill{width:36px;height:4px;border-radius:2px;background:var(--border);margin:0 auto 24px;}
.drawer-title{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:20px;}
.drawer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.drawer-item{
  display:flex;flex-direction:column;align-items:center;
  gap:8px;padding:14px 8px;
  border-radius:var(--radius-sm);
  background:var(--card);border:1px solid var(--border);
  cursor:pointer;transition:all .2s;
}
.drawer-item:hover{border-color:var(--accent);background:rgba(0,212,170,.05);}
.drawer-item-icon{font-size:24px;}
.drawer-item-label{font-size:10px;color:var(--muted);text-align:center;line-height:1.3;}
