/* One category language across desktop navigation, the directory and mobile tabs. */
:root{--menu-news:#f0c16b;--menu-market:#83b3ff;--menu-analysis:#69cdbb;--menu-learn:#bca2ef;--menu-alerts:#e6a1ad;--menu-benefits:#f3bb57}
:root[data-theme=light]{--menu-news:#865908;--menu-market:#245caa;--menu-analysis:#157160;--menu-learn:#7151a0;--menu-alerts:#a1475a;--menu-benefits:#875606}
[data-menu-tone],.nav>a,.tabbar>a{--menu-tone:var(--menu-market)}
[data-menu-tone=news],.nav>a[href$="/news"],.tabbar>a[href$="/news"]{--menu-tone:var(--menu-news)}
[data-menu-tone=market]{--menu-tone:var(--menu-market)}
[data-menu-tone=analysis],.nav>a[href$="/calculator"],.tabbar>a[href$="/calculator"]{--menu-tone:var(--menu-analysis)}
[data-menu-tone=learn]{--menu-tone:var(--menu-learn)}
[data-menu-tone=alerts]{--menu-tone:var(--menu-alerts)}
[data-menu-tone=benefits],.nav>a[href$="/benefits"],.tabbar>a[href$="/benefits"]{--menu-tone:var(--menu-benefits)}

/* Compact, distinctly labelled groups; text and icons keep colour from being the only cue. */
.nav .dropdown-tools{width:488px;max-width:calc(100vw - 40px);padding:16px;gap:16px 18px;border-color:color-mix(in srgb,var(--text) 16%,var(--line));border-radius:10px;overscroll-behavior:contain;scrollbar-width:thin}
.dropdown-tools .dropdown-group{gap:2px;align-self:start}
.dropdown-tools [data-menu-tone=analysis]{grid-column:1;grid-row:2 / span 2}
.dropdown-tools [data-menu-tone=learn]{grid-column:2;grid-row:2}
.dropdown-tools [data-menu-tone=alerts]{grid-column:2;grid-row:3}
.menu-group-heading{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 10px;margin-bottom:4px;background:color-mix(in srgb,var(--menu-tone) 9%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--menu-tone) 32%,var(--line));border-radius:4px 4px 0 0}
.menu-group-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;color:var(--menu-tone)}
.nav .dropdown-label,.drawer .panel .menu-group-heading h4{margin:0;padding:0;color:var(--menu-tone);font-size:12px;font-weight:750;line-height:1.5;letter-spacing:-.01em}
.nav .dropdown-tools a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;height:auto;padding:9px 10px 9px 12px;border:0;border-radius:4px;color:var(--text-2);font-size:13px;font-weight:550;line-height:1.5;white-space:normal;overflow-wrap:anywhere;box-shadow:none;transition:background-color .15s,color .15s}
.nav .dropdown-tools a:after{content:"›";flex:none;font-size:17px;line-height:1;color:var(--muted);opacity:.6}
.nav .dropdown-tools a:hover,.nav .dropdown-tools a:focus-visible{color:var(--text);background:color-mix(in srgb,var(--menu-tone) 10%,var(--surface))}
.nav .dropdown-tools a[aria-current=page]{color:var(--menu-tone);background:color-mix(in srgb,var(--menu-tone) 13%,var(--surface));box-shadow:inset 3px 0 0 var(--menu-tone);border-radius:4px;font-weight:700}
.nav .dropdown-tools a[aria-current=page]:after{content:"✓";font-size:12px;color:var(--menu-tone);opacity:1}
.nav .dropdown-tools a:focus-visible{outline:2px solid var(--menu-tone);outline-offset:1px}

/* Primary destinations retain a restrained category colour even before selection. */
.nav>a{color:var(--menu-tone);border-radius:5px;font-weight:650}
.nav>.nav-benefits{color:var(--menu-tone)}
.nav>a:hover{color:var(--menu-tone);background:color-mix(in srgb,var(--menu-tone) 9%,transparent)}
.nav>a[aria-current=page]{color:var(--menu-tone);background:color-mix(in srgb,var(--menu-tone) 11%,transparent);box-shadow:inset 0 -2px 0 var(--menu-tone);border-radius:5px 5px 0 0}
.nav-more>summary{border:1px solid var(--line);border-radius:5px;margin-left:8px;font-size:13px;color:var(--text-2)}
.nav-more[open]>summary,.nav-more>summary.on{color:var(--menu-market);background:color-mix(in srgb,var(--menu-market) 10%,transparent);border-color:color-mix(in srgb,var(--menu-market) 35%,var(--line))}
.nav-more[open]>summary:after{transform:rotate(225deg);margin-top:4px}

/* The same headings and selected state carry into the full menu sheet. */
.drawer .panel.sheet{padding-inline:18px}
.drawer .panel .fm-group{margin:17px 0 0;min-width:0}
.drawer .panel .fm-primary .fm-group{margin-top:3px}
.drawer .panel .menu-group-heading{padding:9px 11px;margin-bottom:8px}
.drawer .panel .menu-group-heading h4{font-size:13px}
.drawer .panel .fm-grid{gap:7px}
.drawer .panel .fm-btn,.drawer .panel .fm-primary .fm-btn{position:relative;min-width:0;min-height:66px;padding:10px 24px 10px 12px;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:5px;color:var(--text);transition:background-color .15s,border-color .15s}
.drawer .panel .fm-primary .fm-btn{background:color-mix(in srgb,var(--menu-tone) 7%,var(--surface));border-top:2px solid color-mix(in srgb,var(--menu-tone) 65%,var(--line))}
.drawer .panel .fm-primary .fm-btn b{color:var(--menu-tone)}
.drawer .panel .fm-btn b{font-size:13px;line-height:1.5;font-weight:650;word-break:keep-all;overflow-wrap:anywhere}
.drawer .panel .fm-btn small{font-size:10.5px;line-height:1.5;font-weight:400}
.drawer .panel .fm-btn:after{content:"›";position:absolute;right:10px;top:13px;color:var(--muted);font-size:16px;opacity:.65}
.drawer .panel .fm-btn:hover{background:color-mix(in srgb,var(--menu-tone) 9%,var(--surface));border-color:color-mix(in srgb,var(--menu-tone) 45%,var(--line))}
.drawer .panel .fm-btn[aria-current=page]{background:color-mix(in srgb,var(--menu-tone) 13%,var(--surface));border-color:color-mix(in srgb,var(--menu-tone) 45%,var(--line));box-shadow:inset 3px 0 0 var(--menu-tone)}
.drawer .panel .fm-btn[aria-current=page] b{color:var(--menu-tone)}
.drawer .panel .fm-btn[aria-current=page]:after{content:"✓";font-size:11px;color:var(--menu-tone);opacity:1}
.drawer .panel .fm-btn:focus-visible{outline:2px solid var(--menu-tone);outline-offset:2px}
.drawer .panel .fm-group[data-menu-tone=benefits]>.fm-grid{grid-template-columns:1fr}
.drawer .panel .fm-group[data-menu-tone=benefits] .fm-btn{min-height:44px;color:var(--menu-tone);background:color-mix(in srgb,var(--menu-tone) 7%,var(--surface))}
.drawer .panel .fm-head{padding:2px 0 10px;border-bottom:1px solid var(--line)}
.drawer .panel .fm-head b{font-size:17px;font-weight:750}
@media(max-width:500px){.drawer .panel .fm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer .panel.sheet{padding-inline:14px}}
@media(max-width:1023px){
  .tabbar>a{position:relative;color:var(--muted)}
  .tabbar>a>svg{color:var(--menu-tone);opacity:.8}
  .tabbar>a[aria-current=page],.tabbar>a.on{color:var(--menu-tone);background:color-mix(in srgb,var(--menu-tone) 7%,transparent)}
  .tabbar>a[aria-current=page]>svg,.tabbar>a.on>svg{color:var(--menu-tone);opacity:1}
  .tabbar>a[aria-current=page]:before,.tabbar>a.on:before{content:"";position:absolute;top:0;left:28%;right:28%;height:2px;background:var(--menu-tone)}
}
@media(prefers-reduced-motion:reduce){.nav .dropdown-tools a,.drawer .panel .fm-btn{transition:none}.drawer .panel .fm-btn:active{transform:none}}

/* Consistent navigation scale with readable descriptions in either theme. */
.nav>a{min-height:40px;padding-inline:14px}
.nav .dropdown-tools{border-color:var(--control-line);box-shadow:var(--shadow);gap:18px}
.nav .dropdown-tools a{min-height:44px;font-size:14px}
.nav .dropdown-label{font-size:13px}
.menu-group-heading{border-radius:6px 6px 0 0}
.drawer .panel .fm-btn,.drawer .panel .fm-primary .fm-btn{border-radius:8px;min-height:76px;padding:12px 26px 12px 12px}
.drawer .panel .fm-btn b{font-size:14px}
.drawer .panel .fm-btn small{font-size:12px;white-space:normal;overflow:visible;line-height:1.55}
.drawer .panel .fm-head{padding-block:8px 14px}
.drawer .panel .fm-head .icon-btn{width:44px;height:44px}
.drawer .panel .fm-foot a{min-height:44px}
@media(max-width:380px){
  .drawer .panel.sheet{padding-inline:12px}
  .drawer .panel .fm-grid{gap:8px}
  .drawer .panel .fm-btn{padding-left:10px}
}
