:root {
  --navy: #303030 !important;
  --navy-2: #3a3a3a !important;
  --ink: #303030 !important;
  --muted: #777775 !important;
  --line: #e2e2df !important;
  --panel: #ffffff !important;
  --bg: #f5f5f2 !important;
  --accent: #858585 !important;
  --accent-soft: #efefec !important;
  --shadow: 0 10px 30px rgba(35, 35, 35, 0.055) !important;
}
html { background: #f5f5f2; }
body { background: #f5f5f2 !important; color: #303030 !important; }
::selection { background: #303030; color: #fff; }
.sidebar { background: linear-gradient(180deg, #303030 0%, #222222 100%) !important; border-right: 1px solid rgba(255,255,255,.06); }
.brand { flex-direction: column !important; align-items: stretch !important; gap: 10px !important; padding: 0 4px 18px !important; }
.brand::before { content: ""; display: block; width: 100%; height: 92px; border-radius: 12px; background: #fff url('/brand/grupo-rei-mamute.svg') center / 94% auto no-repeat; box-shadow: 0 8px 24px rgba(0,0,0,.16); }
.brand-mark { display: none !important; }
.brand > div:last-child { padding: 0 7px; }
.brand strong { color: #f5f5f2 !important; font-size: 12px !important; letter-spacing: .08em; text-transform: uppercase; }
.brand span { color: #9c9c98 !important; }
.nav-label { color: #777773 !important; }
.nav-item { color: #b9b9b5 !important; }
.nav-item:hover { background: rgba(255,255,255,.06) !important; color: #fff !important; }
.nav-item.active { color: #fff !important; background: rgba(255,255,255,.10) !important; box-shadow: inset 3px 0 0 #a7a7a3 !important; }
.sidebar-footer { color: #9d9d99 !important; background: rgba(255,255,255,.035) !important; }
.sidebar-footer b { color: #d4d4d0 !important; }
.topbar { background: rgba(250,250,248,.94) !important; }
.topbar h1 { color: #2f2f2f !important; }
.cloud-status { border-color: #dededb !important; background: #f3f3f0 !important; color: #62625f !important; }
.user-chip { background: #fff !important; }
.btn.primary, .btn.dark { background: #303030 !important; color: #fff !important; }
.btn.primary:hover, .btn.dark:hover { background: #474747 !important; }
.btn.ghost { background: #fff !important; }
.icon-btn:hover { color: #202020 !important; background: #f1f1ee !important; }
.info-strip { background: #f4f4f1 !important; border-color: #deded9 !important; color: #5d5d5a !important; }
.info-strip svg { color: #777773 !important; }
.launch-type.active { border-color: #bdbdb8 !important; background: #fafaf8 !important; box-shadow: 0 0 0 3px rgba(48,48,48,.06), var(--shadow) !important; }
.launch-type.active .launch-type-icon, .launch-empty-icon, .recurring-kind-icon { background: #ecece8 !important; color: #555552 !important; }
.recurring-launch-head span { color: #777773 !important; }
.account-type.fixa { background: #ededeb !important; color: #4d4d4b !important; }
.account-type.variavel { background: #f3f3f0 !important; color: #70706c !important; }
.recurrence-badge.recorrente { background: #eceeea !important; color: #596157 !important; }
.filters-grid input:focus, .filters-grid select:focus, .registry-add input:focus, .form-grid input:focus, .form-grid textarea:focus, .dre-toolbar-fields input:focus { border-color: #9c9c97 !important; box-shadow: 0 0 0 3px rgba(48,48,48,.07) !important; }
.login-screen { background: radial-gradient(circle at 80% 18%, rgba(110,110,106,.10), transparent 34%), linear-gradient(145deg, #efefec 0%, #fafaf8 48%, #e8e8e4 100%) !important; }
.login-card { border-color: #deded9 !important; box-shadow: 0 28px 80px rgba(35,35,35,.12) !important; }
.login-card::before { content: "" !important; display: block !important; width: min(330px, 82%) !important; height: 145px !important; margin: 0 auto 16px !important; background: transparent url('/brand/grupo-rei-mamute.svg') center / contain no-repeat !important; border-radius: 0 !important; }
.login-card .brand-mark, .login-card [class*="logo-mark"] { display: none !important; }
.panel, .filter-panel, .stat-card, .fixed-summary, .cashflow-summary > div, .dre-summary-card { border-color: #e2e2df !important; }
@media (max-width: 900px) { .brand { padding-left: 0 !important; padding-right: 0 !important; } .brand::before { height: 52px; background-size: 96% auto; border-radius: 9px; } }
@media (max-width: 650px) { .brand { display: none !important; } .sidebar { background: rgba(35,35,35,.97) !important; padding-bottom: max(6px, env(safe-area-inset-bottom)) !important; } .nav-item.active { box-shadow: none !important; background: rgba(255,255,255,.13) !important; } .login-card::before { height: 112px !important; width: 88% !important; margin-bottom: 10px !important; } }
