
/* ---------- site nav, search and polish (Oct 2026) ---------- */
.flat { color: var(--muted); }
.tmenu { position: relative; }
.tmenu-btn { font-weight: 600; font-size: 13px; white-space: nowrap; display: inline-flex; align-items: center; gap: 4px; }
.tm-ico { display: none; }
.tmenu-panel { position: absolute; right: 0; top: calc(100% + 8px); z-index: 30; display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: 14px; min-width: 540px; padding: 14px 16px; background: var(--panel); border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 12px 32px rgba(0,0,0,.25); }
.tmenu-panel[hidden] { display: none; }
.tmenu-panel b { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); margin-bottom: 6px; }
.tmenu-panel a { display: block; padding: 6px 8px; margin: 0 -8px; border-radius: 6px; color: var(--text); text-decoration: none; font-size: 13.5px; white-space: nowrap; }
.tmenu-panel a:hover, .tmenu-panel a[aria-current] { background: var(--hover); color: var(--accent); }
.hsearch { position: relative; width: 240px; }
.hsearch input { width: 100%; padding: 7px 10px; }
.hsearch ul { position: absolute; right: 0; top: calc(100% + 6px); z-index: 30; width: 300px; max-height: 360px; overflow-y: auto; margin: 0; padding: 4px; list-style: none; background: var(--panel); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 12px 32px rgba(0,0,0,.25); }
.hsearch li a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 8px; color: var(--text); text-decoration: none; }
.hsearch li img { width: 22px; height: 22px; border-radius: 50%; }
.hsearch li small { color: var(--muted); }
.hsearch li a:hover, .hsearch li[aria-selected=true] a { background: var(--hover); }
.hsearch li.none { padding: 8px 10px; color: var(--muted); }
.hs-btn { display: none; align-items: center; justify-content: center; }
.num-hint { font-size: 12px; color: var(--muted); text-align: right; margin: -3px 6px 0; font-variant-numeric: tabular-nums; }
.cp-alt { color: var(--muted); font-size: 16px; font-weight: 600; margin: 0 0 6px; font-variant-numeric: tabular-nums; }
.cp-ranges { margin: 10px 0 0; }
.foot-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 28px; max-width: 860px; margin: 0 auto 18px; text-align: left; }
.foot-cols h3 { font-size: 11.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--text); margin: 0 0 8px; }
.foot-cols a { display: block; padding: 4px 0; text-decoration: none; font-size: 13px; }
@media (max-width: 600px) {
  .topbar:has(.global) { position: static; }
  .global { flex-wrap: nowrap; overflow-x: auto; white-space: nowrap; scrollbar-width: none; gap: 14px; }
  .global::-webkit-scrollbar { display: none; }
  .intro p { display: none; }
  .intro h1 { font-size: 18px; }
  .quick { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-right: -16px; padding-right: 16px; padding-bottom: 2px; }
  .quick::-webkit-scrollbar { display: none; }
  .quick a { flex: none; }
  .hs-btn { display: inline-flex; }
  .tm-ico { display: block; }
  .tm-txt { display: none; }
  .tmenu-btn { padding: 6px 9px; }
  .hsearch { display: none; position: absolute; left: 0; right: 0; top: 100%; width: auto; padding: 10px 16px; background: var(--panel); border-bottom: 1px solid var(--line); z-index: 30; }
  .hsearch.open { display: block; }
  .hsearch ul { left: 16px; right: 16px; width: auto; }
  .tmenu-panel { position: fixed; left: 12px; right: 12px; top: 58px; min-width: 0; grid-template-columns: 1fr 1fr; }
  .foot-cols { grid-template-columns: 1fr 1fr; }
}
