/* LookCat - Component Styles */

/* === BOTTOM NAV === */
.bottom-nav {
  position: fixed; bottom: 0; left: 0; right: 0;
  padding: 10px 0 calc(var(--safe-bottom) + 4px);
  background: var(--card); border-top: 1px solid #F0EDE8;
  display: flex; z-index: 100; box-shadow: 0 -4px 20px rgba(0,0,0,.04);
}
.bottom-nav.hidden { display: none; }
.nav-btn {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3px; font-family: 'Nunito', sans-serif; font-size: 11px; font-weight: 700;
  color: #888; cursor: pointer; border: none; background: none;
  transition: color .2s, transform .15s; position: relative; padding: 2px 0;
}
.nav-btn.active { color: var(--orange); }
.nav-btn.active::before {
  content: ''; position: absolute; top: -6px; left: 30%; right: 30%;
  height: 3px; border-radius: 0 0 3px 3px; background: var(--orange);
}
.nav-btn .nav-icon { font-size: 26px; line-height: 1; transition: transform .2s; }
.nav-btn:active .nav-icon { transform: scale(0.85); }

/* === BUTTONS === */
.btn-primary {
  width: 100%; padding: 15px 28px; border-radius: 50px; border: none;
  background: linear-gradient(135deg, var(--orange), #FF8C00);
  color: #fff; font-family: 'Nunito', sans-serif; font-size: 17px; font-weight: 800;
  cursor: pointer; letter-spacing: .3px;
  box-shadow: 0 6px 24px rgba(245,166,35,.35), inset 0 1px 0 rgba(255,255,255,.2);
  transition: transform .15s, box-shadow .15s;
}
.btn-primary:active { transform: scale(0.97); box-shadow: 0 3px 12px rgba(245,166,35,.25); }
.btn-green {
  width: 100%; padding: 15px 28px; border-radius: 50px; border: none;
  background: linear-gradient(135deg, var(--green), var(--green-light));
  color: #fff; font-family: 'Nunito', sans-serif; font-size: 17px; font-weight: 800;
  cursor: pointer; box-shadow: 0 6px 24px var(--green-glow);
  transition: transform .15s;
}
.btn-green:active { transform: scale(0.97); }

/* === TOAST === */
.toast {
  position: fixed; top: 24px; left: 50%; transform: translateX(-50%) translateY(-120px);
  background: var(--text); color: #fff; padding: 14px 28px; border-radius: 50px;
  font-family: 'Nunito', sans-serif; font-size: 14px; font-weight: 700;
  z-index: 1000; transition: transform .35s cubic-bezier(.22,1,.36,1);
  box-shadow: 0 8px 32px rgba(0,0,0,.2);
}
.toast.show { transform: translateX(-50%) translateY(0); }

#cameraInput { display: none; }
audio { display: none; }
.svg-defs { position: absolute; width: 0; height: 0; }
