/* Scoped shared navigation/help; product pages retain their existing layout. */
.ag-shell { width: 100%; color: var(--ag-text); text-align: left; }
.ag-shell .site-header-inner { flex-direction: row; align-items: center; padding: 4px 0 8px; border: 0; }
.ag-shell .site-brand { min-width: 0; flex-shrink: 1; background: transparent; margin: 0; padding: 0; }
.ag-header-actions { display: flex; align-items: center; gap: 4px; }
.ag-shell .main-nav { display: block; padding-bottom: 12px; border-bottom: 1px solid var(--ag-border); }
.ag-shell ul { list-style: none; padding: 0; margin: 0; }
.ag-nav-list { display: flex; flex-wrap: wrap; gap: 8px; }
.ag-nav-item { position: relative; }
.ag-nav-row { display: flex; align-items: stretch; border-radius: var(--ag-radius); }
.ag-product > .ag-nav-row { background: var(--ag-surface-soft); }
.ag-shell .main-nav a, .ag-shell button, .ag-info-button, .ag-info-panel button { min-height: 44px; }
.ag-shell .main-nav a { color: var(--ag-text); margin: 0; background: transparent; }
.ag-shell .main-nav a[aria-current] { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 6px; font-weight: 800; color: var(--ag-accent-strong); }
.ag-shell .ag-submenu-toggle { min-width: 44px; padding: 8px; color: var(--ag-text); }
.ag-shell .ag-submenu-toggle[aria-expanded=true] { background: var(--ag-surface); border-color: var(--ag-accent-strong); }
.ag-shell .ag-submenu { position: absolute; z-index: 40; top: calc(100% + 4px); left: 0; min-width: 200px; padding: 8px; border: 1px solid var(--ag-border); border-radius: var(--ag-radius); background: var(--ag-surface); box-shadow: var(--ag-shadow); }
.ag-shell .ag-submenu a { display: flex; justify-content: flex-start; }
.ag-shell :focus-visible, .ag-info-button:focus-visible, .ag-info-panel :focus-visible, .ag-info-panel:focus-visible { outline: 3px solid var(--ag-accent-strong); outline-offset: 2px; }
.ag-shell [hidden], .ag-info-panel[hidden] { display: none !important; }
.ag-shell .ag-menu-toggle, .ag-shell .ag-menu-close { display: none; }
.ag-info-button, .ag-info-panel { --help-surface: #fffbeb; --help-ink: #422006; --help-accent: #92400e; --help-border: #b45309; }
body.theme-dark .ag-info-button, body.theme-dark .ag-info-panel { --help-surface: #292117; --help-ink: #fef3c7; --help-accent: #fcd34d; --help-border: #fbbf24; }
button.ag-info-button { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 6px; vertical-align: middle; border: 1px solid var(--help-border); border-radius: 50%; color: var(--help-accent); background: var(--help-surface); font: 700 1.1rem system-ui, sans-serif; cursor: pointer; }
.ag-info-panel { position: fixed; z-index: 100; bottom: 16px; right: 16px; width: 360px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 32px); overflow: auto; padding: 20px; background: var(--help-surface); color: var(--help-ink); border: 2px solid var(--help-border); border-radius: var(--ag-radius); box-shadow: var(--ag-shadow); font: 1rem/1.5 system-ui, sans-serif; text-align: left; }
.ag-info-panel p { margin: 10px 0; max-width: none; color: var(--help-ink); }
.ag-info-panel a { color: var(--help-accent); background: transparent; padding: 0; margin: 0; }
.ag-info-panel button { display: block; margin-top: 12px; border-color: var(--help-border); color: var(--help-ink); cursor: pointer; }
.ag-next-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-block: 18px; }
.ag-next-actions a { min-height: 44px; display: inline-flex; align-items: center; }
.ag-freshness { color: var(--ag-muted); padding: 8px 0; margin: 0; }
body.ag-utility-page { display: block; height: auto; min-height: 100vh; background: var(--ag-bg); color: var(--ag-text); --bg: var(--ag-bg); --card: var(--ag-surface); --text: var(--ag-text); --muted: var(--ag-muted); --border: var(--ag-border); }
.ag-utility-page main { margin: 36px auto; }
.ag-utility-page .site-header p { max-width: none; }
@media (max-width: 820px) {
  .ag-shell .site-brand { font-size: .92rem; }
  .ag-shell .ag-menu-toggle, .ag-shell .ag-menu-close { display: inline-flex; }
  .ag-shell .ag-nav-panel { display: none; }
  .ag-shell .ag-nav-panel.is-open { display: block; position: fixed; z-index: 70; inset: 0 0 0 auto; width: min(360px, 92vw); overflow-y: auto; overscroll-behavior: contain; padding: 16px; background: var(--ag-surface); box-shadow: var(--ag-shadow); }
  .ag-shell .ag-menu-close { margin-bottom: 16px; color: var(--ag-text); }
  .ag-nav-list { flex-direction: column; gap: 8px; }
  .ag-nav-row > a { flex: 1; justify-content: flex-start; }
  .ag-shell .ag-submenu { position: static; min-width: 0; margin: 4px 0 0 14px; box-shadow: none; }
  .ag-nav-backdrop { position: fixed; z-index: 60; inset: 0; background: rgba(0,0,0,.45); }
  body.ag-navigation-open { overflow: hidden; }
}
@media print { .ag-shell, .ag-info-button, .ag-info-panel { display: none !important; } }
@media (prefers-reduced-motion: reduce) { .ag-shell *, .ag-info-panel { transition: none !important; animation: none !important; } }
