html { scroll-behavior: smooth; }
.topbar { min-height: 110px; }
.topbar-inner { min-height: 110px; padding: 18px 70px !important; }
.topbar .brand-logo { width: 250px !important; max-width: 250px; height: auto !important; }
.topbar + main, .topbar ~ .page, .page { padding-top: 42px; }
@media (max-width: 760px) { .topbar, .topbar-inner { min-height: 88px; } .topbar-inner { padding: 12px 18px !important; } .topbar .brand-logo { width: 190px !important; max-width: 48vw; } .topbar + main, .topbar ~ .page, .page { padding-top: 26px; } }
button, a, input, select, textarea { transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease, background-color .2s ease; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(186,165,144,.55); outline-offset: 2px; }
button:hover:not(:disabled), a:hover { transform: translateY(-1px); }
@media (max-width: 700px) { .panel, .card, .auth-card { border-radius: 18px; } table { font-size: .88rem; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; } }
