/* ===== Topnav uplift (mantem 40px de altura, so moderniza visual) ===== */
.topnav {
  background: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(248,250,252,0.88) 100%);
  backdrop-filter: saturate(160%) blur(10px);
  -webkit-backdrop-filter: saturate(160%) blur(10px);
  border-bottom: 1px solid rgba(15,31,55,0.08);
  box-shadow: 0 1px 0 rgba(15,31,55,0.04), 0 6px 18px -10px rgba(15,31,55,0.15);
  padding: 0 14px;
  gap: 10px;
}
[data-theme="dark"] .topnav {
  background: linear-gradient(180deg, rgba(20,30,48,0.82) 0%, rgba(15,23,42,0.76) 100%);
  border-bottom-color: rgba(148,163,184,0.14);
  box-shadow: 0 1px 0 rgba(0,0,0,0.25), 0 6px 18px -10px rgba(0,0,0,0.5);
}

.topnav-brand img { filter: drop-shadow(0 1px 1px rgba(15,31,55,0.18)); transition: transform .2s ease; }
.topnav-brand:hover img { transform: translateY(-1px); }

.topnav-search .global-search-input {
  border-radius: 999px;
  border-color: rgba(15,31,55,0.12);
  background: rgba(255,255,255,0.75);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);
  font-family: 'Inter', system-ui, sans-serif;
  transition: box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
[data-theme="dark"] .topnav-search .global-search-input {
  background: rgba(30,41,59,0.6);
  border-color: rgba(148,163,184,0.2);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}
.topnav-search .global-search-input:focus {
  border-color: #2c5f9f;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(44,95,159,0.15);
}
[data-theme="dark"] .topnav-search .global-search-input:focus {
  background: rgba(30,41,59,0.92);
  box-shadow: 0 0 0 4px rgba(44,95,159,0.28);
}
.topnav-search .global-search-hint {
  border-radius: 6px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-weight: 600;
}

.topnav-icon-btn {
  color: rgba(15,31,55,0.62);
  transition: background .18s ease, color .18s ease, transform .15s ease;
}
.topnav-icon-btn:hover {
  background: rgba(44,95,159,0.08);
  color: #1a365d;
  transform: translateY(-1px);
}
[data-theme="dark"] .topnav-icon-btn { color: rgba(226,232,240,0.78); }
[data-theme="dark"] .topnav-icon-btn:hover {
  background: rgba(148,163,184,0.12);
  color: #fff;
}

.zoom-controls {
  background: rgba(15,31,55,0.04);
  border: 1px solid rgba(15,31,55,0.06);
  border-radius: 999px;
}
[data-theme="dark"] .zoom-controls {
  background: rgba(148,163,184,0.08);
  border-color: rgba(148,163,184,0.14);
}

.topnav-badge {
  box-shadow: 0 0 0 2px var(--bg-card, #fff), 0 2px 6px rgba(231,76,60,0.4);
  font-family: 'Inter', system-ui, sans-serif;
}

.topnav-user {
  border-radius: 999px;
  padding: 3px 10px 3px 3px;
  transition: background .18s ease, box-shadow .18s ease;
}
.topnav-user:hover {
  background: rgba(44,95,159,0.07);
  box-shadow: inset 0 0 0 1px rgba(44,95,159,0.12);
}
[data-theme="dark"] .topnav-user:hover {
  background: rgba(148,163,184,0.1);
  box-shadow: inset 0 0 0 1px rgba(148,163,184,0.18);
}
.topnav-user .user-avatar {
  background: linear-gradient(135deg, #2c5f9f 0%, #1a365d 60%, #0f1f37 100%);
  color: #fff;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.9), 0 2px 8px rgba(15,31,55,0.25);
  font-weight: 700;
}
[data-theme="dark"] .topnav-user .user-avatar {
  box-shadow: 0 0 0 2px rgba(30,41,59,0.95), 0 2px 10px rgba(0,0,0,0.4);
}
.topnav-user-name { font-weight: 600; letter-spacing: 0.1px; }

.topnav-user-dd,
.topnav-dd-content {
  border-radius: 14px;
  border: 1px solid rgba(15,31,55,0.08);
  box-shadow: 0 20px 40px -12px rgba(15,31,55,0.28), 0 4px 12px rgba(15,31,55,0.06);
  padding: 6px;
  animation: uplift-dropdown .18s cubic-bezier(.2,.8,.2,1);
}
[data-theme="dark"] .topnav-user-dd,
[data-theme="dark"] .topnav-dd-content {
  border-color: rgba(148,163,184,0.14);
  box-shadow: 0 24px 44px -12px rgba(0,0,0,0.55), 0 4px 14px rgba(0,0,0,0.3);
}
@keyframes uplift-dropdown {
  from { opacity: 0; transform: translateY(-6px) scale(0.97); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
.topnav-user-dd button,
.topnav-dd-content a {
  border-radius: 8px;
  font-weight: 500;
  transition: background .14s ease, color .14s ease, transform .14s ease;
}
.topnav-user-dd button:hover,
.topnav-dd-content a:hover {
  background: rgba(44,95,159,0.08);
  color: #1a365d;
  transform: translateX(2px);
}
[data-theme="dark"] .topnav-user-dd button:hover,
[data-theme="dark"] .topnav-dd-content a:hover {
  background: rgba(148,163,184,0.12);
  color: #fff;
}
.topnav-user-dd-info strong { font-weight: 700; }
.topnav-user-dd-info small { letter-spacing: 0.12em; }

.topnav-hamburger {
  border-color: rgba(15,31,55,0.1);
  background: rgba(255,255,255,0.7);
  transition: background .18s ease, border-color .18s ease;
}
.topnav-hamburger:hover {
  background: rgba(44,95,159,0.08);
  border-color: rgba(44,95,159,0.25);
}
[data-theme="dark"] .topnav-hamburger {
  background: rgba(30,41,59,0.6);
  border-color: rgba(148,163,184,0.2);
}
