/* Task #109 — ahobilam.com site navigation (replaces the React bundle's built-in
   menu bar; loaded from index.html together with /menu/nav.js).
   Colours arrive as CSS variables set by nav.js (with automatic contrast). */

/* Hide the old React menus only once the new menu has rendered
   (nav.js adds .svk-nav-on to <html>); if nav.js fails, the old menus stay.
   1) the old top menu bar (orange/green gradient nav);
   2) the old left "Navigation Menu" sidebar and its mobile ▶ toggle —
      the same links now live in the new menu, and pages get full width. */
html.svk-nav-on nav.sticky.top-0.z-50 { display: none !important; }
html.svk-nav-on aside.fixed.left-0.top-16.w-64 { display: none !important; }
html.svk-nav-on div.fixed.top-1\/2.z-50.sm\:hidden { display: none !important; }

#svk-nav {
  --svk-bar-bg: #1B4D1B;
  --svk-bar-fg: #FFFFFF;
  --svk-accent: #D4AF37;
  --svk-panel-bg: #FFFFFF;
  --svk-panel-fg: #222222;
  position: sticky;
  top: 0;
  z-index: 9990;
  font-family: 'Poppins', 'Mukta Malar', 'Noto Sans Tamil', -apple-system, 'Segoe UI', Roboto, sans-serif;
  font-size: 13px;
  line-height: 1.35;
  box-shadow: 0 1px 6px rgba(0,0,0,.25);
}
#svk-nav *, #svk-nav *::before, #svk-nav *::after { box-sizing: border-box; }
#svk-nav a { text-decoration: none; }
#svk-nav button { font: inherit; background: none; border: 0; cursor: pointer; }

/* ---------- the bar ---------- */
.svk-bar {
  background: var(--svk-bar-bg);
  color: var(--svk-bar-fg);
  display: flex;
  align-items: stretch;
  min-height: 40px;
  padding: 0 8px;
  gap: 2px;
}
.svk-bar-items {
  display: flex;
  align-items: stretch;
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.svk-bar-items::-webkit-scrollbar { display: none; }
.svk-top {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0 13px;
  color: var(--svk-bar-fg);
  font-weight: 600;
  letter-spacing: .015em;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  opacity: .92;
}
.svk-top .svk-caret { font-size: 9px; opacity: .7; transition: transform .15s; }
.svk-top:hover, .svk-top.svk-open, .svk-top.svk-current {
  opacity: 1;
  border-bottom-color: var(--svk-accent);
  background: rgba(255,255,255,.07);
}
.svk-top.svk-open .svk-caret { transform: rotate(180deg); }

.svk-bar-tools { display: flex; align-items: center; gap: 6px; padding-left: 6px; flex-shrink: 0; }
.svk-tool {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 11px;
  border-radius: 20px;
  color: var(--svk-bar-fg);
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.22);
  font-weight: 600;
  font-size: 12px;
  white-space: nowrap;
}
.svk-tool:hover { background: rgba(255,255,255,.24); }
.svk-burger { display: none; font-size: 18px; padding: 2px 12px; }

/* ---------- desktop mega panel ---------- */
.svk-panel {
  position: absolute;
  left: 0; right: 0;
  background: var(--svk-panel-bg);
  color: var(--svk-panel-fg);
  border-bottom: 3px solid var(--svk-accent);
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
  display: none;
  padding: 14px clamp(12px, 5vw, 60px) 18px;
}
.svk-panel.svk-show { display: block; }
.svk-panel-inner {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 6px 26px;
  max-width: 1180px;
  margin: 0 auto;
  max-height: min(68vh, 560px);
  overflow-y: auto;
}
.svk-col { min-width: 0; padding: 2px 0; }
.svk-col-h {
  display: block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--svk-panel-fg);
  opacity: .95;
  border-bottom: 2px solid var(--svk-accent);
  padding: 4px 2px 5px;
  margin-bottom: 5px;
}
a.svk-col-h:hover { opacity: 1; color: var(--svk-accent-dark, #8a6d1a); }
.svk-col-list { max-height: 320px; overflow-y: auto; overscroll-behavior: contain; }
.svk-link {
  display: block;
  padding: 4px 6px;
  border-radius: 5px;
  color: var(--svk-panel-fg);
  font-weight: 500;
  font-size: 12.5px;
}
.svk-link:hover { background: rgba(0,0,0,.06); color: inherit; }
.svk-link.svk-sub { padding-left: 18px; font-size: 12px; opacity: .9; }

/* ---------- mobile drawer ---------- */
.svk-drawer {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9995;
  background: rgba(10,20,10,.45);
}
.svk-drawer.svk-show { display: block; }
.svk-drawer-box {
  position: absolute;
  top: 0; bottom: 0; right: 0;
  width: min(86vw, 340px);
  background: var(--svk-panel-bg);
  color: var(--svk-panel-fg);
  overflow-y: auto;
  padding: 10px 12px 40px;
  box-shadow: -6px 0 24px rgba(0,0,0,.3);
}
.svk-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2px 2px 10px;
  border-bottom: 2px solid var(--svk-accent);
  margin-bottom: 8px;
  font-weight: 700;
}
.svk-drawer-close { font-size: 20px; padding: 2px 8px; color: inherit; }
.svk-drawer-tools { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 10px; }
.svk-drawer-tools .svk-tool {
  background: var(--svk-bar-bg);
  color: var(--svk-bar-fg);
  border: 0;
}
.svk-acc { border-bottom: 1px solid rgba(0,0,0,.09); }
.svk-acc-row { display: flex; align-items: stretch; }
.svk-acc-row > a {
  flex: 1;
  padding: 9px 6px;
  color: var(--svk-panel-fg);
  font-weight: 600;
  font-size: 13.5px;
}
.svk-acc-row > button {
  width: 42px;
  color: var(--svk-panel-fg);
  font-size: 13px;
  opacity: .65;
}
.svk-acc-kids { display: none; padding: 0 0 6px 12px; border-left: 2px solid var(--svk-accent); margin-left: 6px; }
.svk-acc.svk-open > .svk-acc-kids { display: block; }
.svk-acc.svk-open > .svk-acc-row > button { transform: rotate(180deg); opacity: 1; }
.svk-acc-kids .svk-acc-row > a { font-weight: 500; font-size: 12.5px; padding: 7px 6px; }
.svk-acc-kids .svk-acc-kids .svk-acc-row > a { font-size: 12px; opacity: .92; }

@media (max-width: 860px) {
  .svk-bar-items .svk-top { display: none; }        /* items live in the drawer */
  .svk-bar-items .svk-top.svk-home { display: flex; }
  .svk-burger { display: inline-flex; }
  .svk-bar-tools .svk-tool .svk-tool-label { display: none; }  /* icon-only in the bar on phones (drawer keeps labels) */
  .svk-panel { display: none !important; }
}
