/* BNI's existing Inter/red/white/charcoal identity, with keyboard/mobile parity. */
:root { --bni-focus: #CF2030; --bni-ink: #1a1a1a; }
html { scroll-padding-top: 5rem; }
body { min-width: 320px; }
:focus-visible { outline: 3px solid var(--bni-focus) !important; outline-offset: 3px; }
button:disabled { cursor: not-allowed; }
button, input, textarea, select { touch-action: manipulation; }
textarea { max-width: 100%; }
main, .page-pane { min-width: 0; }
#sidebar .nav-link.hidden, #sidebar .nav-group.hidden { display: none !important; }
[role="status"], [role="alert"] { overflow-wrap: anywhere; }
.bni-skip-link { position: fixed; left: 1rem; top: -10rem; z-index: 200; padding: .75rem 1rem; color: white; background: #1a1a1a; border-radius: .375rem; }
.bni-skip-link:focus { top: .5rem; }
.bni-local-notice { border-left: 3px solid #CF2030; padding: .75rem 1rem; background: #f3f4f6; color: #374151; line-height: 1.5; }
html.dark .bni-local-notice { background: #262626; color: #e5e7eb; }
.bni-follow-through { border-top: 1px solid #d1d5db; padding-top: 1rem; }
.bni-follow-through label { display: block; font-size: .875rem; font-weight: 600; margin-bottom: .35rem; }
.bni-follow-through select, .bni-follow-through textarea { width: 100%; border: 1px solid #9ca3af; border-radius: .375rem; padding: .5rem .75rem; color: inherit; background: transparent; }
.bni-follow-through button { padding: .5rem .75rem; border: 1px solid #CF2030; border-radius: .375rem; font-size: .875rem; }
.bni-follow-through .bni-primary { background: #CF2030; color: white; }
@media (max-width: 767px) {
    body { overflow-x: hidden; }
    [role="dialog"] { max-width: 100vw; }
    input, textarea, select { font-size: 16px; }
    .bni-follow-through button { min-height: 44px; }
    #header-user-name { max-width: 8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
