/* B3 + B2 (user 2026-10-09): one top bar and one short footer for every public page (index, report, complaint, v).
   Markup is written into each page by east-cf/tools/public-chrome.mjs; labels in EN/HI/MR by topbar.js. */
header.top { position: sticky; top: 0; z-index: 30; display: block; padding: 0; gap: 0; color: #fff; background: rgba(9,40,66,.94); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); box-shadow: 0 6px 24px rgba(4,16,32,.28); font-family: Inter, "Noto Sans Devanagari", Arial, sans-serif }
header.top .hrow { max-width: 1240px; margin: 0 auto; display: flex; align-items: center; gap: 14px; padding: 10px 20px }
header.top .brand { display: flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; min-width: 0; flex: none }
header.top .brand img { width: 40px; height: 40px; border-radius: 50%; background: #fff; padding: 3px }
header.top .brand .t { flex: none } header.top .brand .t b { display: block; font-size: 1rem; letter-spacing: -.01em; color: #fff } header.top .brand .t small { display: block; opacity: .75; font-size: .78rem }
header.top .tnav { flex: 1; display: flex; justify-content: center; gap: 6px; min-width: 0 }
header.top .tnav a { display: inline-flex; align-items: center; gap: 7px; color: #e7eef7; text-decoration: none; font-weight: 600; font-size: .9rem; padding: 9px 13px; border-radius: 11px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.06); white-space: nowrap; transition: background .2s, border-color .2s, transform .1s }
header.top .tnav a:hover { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.3) } header.top .tnav a:active { transform: scale(.97) }
header.top .tnav a.pri { background: #fff; color: #0b3f64; border-color: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.18) } header.top .tnav a.pri:hover { background: #eaf2fb }
header.top .tnav a.on:not(.pri) { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.55); box-shadow: inset 0 -3px 0 #d4a017 }
header.top .tnav i { font-style: normal; font-size: 1.05rem; line-height: 1 }
header.top .hend { display: flex; align-items: center; gap: 8px; flex: none }
header.top .lang { display: flex; gap: 4px } header.top .lang button { border: 1px solid rgba(255,255,255,.4); background: transparent; color: #fff; border-radius: 8px; padding: 5px 8px; font: inherit; font-size: .8rem; cursor: pointer }
header.top .lang button.on { background: #fff; color: #0b3f64 }
header.top .team { background: #d4a017; color: #1d1d1d; font-weight: 700; text-decoration: none; padding: 9px 14px; border-radius: 11px; white-space: nowrap; font-size: .9rem }
header.top .strip { height: 3px; background: linear-gradient(90deg, #ff9933 0 33.3%, #fff 33.3% 66.6%, #138808 66.6%) }
@media (max-width: 1080px) { header.top .tnav a span { font-size: .84rem } header.top .tnav a { padding: 8px 10px } header.top .brand .t small { display: none } }
@media (max-width: 900px) {
  header.top .hrow { flex-wrap: wrap; gap: 8px 10px; padding: 8px 12px } header.top .brand { flex: 1 } header.top .brand img { width: 34px; height: 34px }
  header.top .tnav { order: 3; flex-basis: 100%; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px }
  header.top .tnav a { flex-direction: column; gap: 3px; padding: 7px 4px; font-size: .74rem; text-align: center; white-space: normal; line-height: 1.15 } header.top .tnav a span { font-size: .74rem } header.top .tnav i { font-size: 1.2rem }
}
@media (max-width: 440px) { header.top .brand .t b { font-size: .88rem } header.top .lang button { padding: 4px 6px; font-size: .74rem } header.top .team { font-size: .8rem; padding: 7px 9px } }

/* B2: compact footer — the logos carry the names (no name written twice), one short line of text */
footer.foot { max-width: 1120px; margin: 24px auto 0; padding: 18px 16px 26px; border-top: 1px solid #e4e7ec; text-align: center; color: #667085; font-size: .8rem; font-family: Inter, "Noto Sans Devanagari", Arial, sans-serif }
footer.foot .flogos { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: center; gap: 14px 28px; margin-bottom: 10px }
footer.foot figure { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 4px }
footer.foot figure small { font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; color: #98a2b3 }
footer.foot .flogos img { height: 30px; width: auto; display: block } footer.foot .flogos .seal img { height: 34px; object-fit: contain }
footer.foot p { margin: 0; line-height: 1.6 } footer.foot a { color: #1a4f8f; text-decoration: none } footer.foot a:hover { text-decoration: underline }
@media (max-width: 560px) { footer.foot .flogos { gap: 12px 18px } footer.foot .flogos img { height: 24px } footer.foot .flogos .seal img { height: 28px } }
