/* Existing navigation remains visible until the shared panel has mounted. */
body.mnav-mounted { padding-left: var(--mnav-space, 0px) !important; box-sizing: border-box; }
body.mnav-mounted.wiki-player-body { padding-left: var(--mnav-space, 0px) !important; }
/* Bono sizes its positioned footer to the viewport, even after #page moves
   beside the rail. Bound that concrete overflow without clipping the page. */
body.theme-bono.mnav-mounted .site-footer-container { max-width:calc(100vw - var(--mnav-space, 0px)) !important; }
body.theme-bono.mnav-mounted .site-footer-container .site-footer-inner.fixed { max-width:100% !important; }
body.mnav-mounted.mnav-account .woocommerce-MyAccount-navigation { display: none !important; }
body.mnav-mounted.mnav-account .woocommerce-MyAccount-content { float: none !important; width: 100% !important; max-width: none; }
.mnav { --mnav-space:272px; --mnav-expanded:272px; --mnav-font:14px; --mnav-top:0px; --mnav-duration:140ms; --mnav-row:42px; --mnav-ink:#23323e; --mnav-muted:#677683; --mnav-accent:#176b75; --mnav-fill:#e0eef0; color:var(--mnav-ink); font:400 var(--mnav-font)/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; text-align:left; }
.mnav *, .mnav *::before, .mnav *::after { box-sizing:border-box; }
.mnav [hidden] { display:none !important; }
.mnav button, .mnav input, .mnav select, .mnav a { font:inherit; letter-spacing:normal; text-transform:none; }
.mnav button, .mnav a { box-shadow:none; text-decoration:none; color:inherit; }
.mnav button { cursor:pointer; margin:0; border-radius:8px; min-height:0; background:transparent; border:0; padding:0; }
.mnav a:hover { text-decoration:none; color:inherit; }
.mnav button:disabled { opacity:.38; cursor:default; }
.mnav :focus-visible { outline:2px solid var(--mnav-accent) !important; outline-offset:2px; }
.mnav svg { display:block; flex:none; width:calc(var(--mnav-font) + 7px); height:calc(var(--mnav-font) + 7px); }
.mnav[data-density="compact"] { --mnav-row:36px; }
.mnav[data-density="roomy"] { --mnav-row:48px; }
.mnav-rail { position:fixed; top:var(--mnav-top); bottom:0; left:0; z-index:9000; width:var(--mnav-space); display:flex; flex-direction:column; background:#f3f5f5; border-right:1px solid #e1e7e8; padding:10px 10px 8px; transition:width var(--mnav-duration); }
/* Keep the native Wiki dropdown above the rail on shop/profile pages too,
   where Wiki's article stylesheet may not be loaded. Do not reposition it. */
@media (min-width:1021px) {
  body.mnav-mounted :is(.site-header,.header,#header,.site-navigation,.main-navigation,#main-navigation,.navigation):has(.wiki-docs-menu) { z-index:10000 !important; }
  /* Bono clips the dropdown at #page's left edge after the body is padded for
     the rail. A higher z-index cannot escape overflow:hidden. Release only
     this wrapper, only while the native desktop dropdown is actually open. */
  body.mnav-mounted #page.site:has(#menu-item-963:is(:hover,:focus-within) > .wiki-docs-menu) { overflow:visible; }
}
.mnav-brand { display:flex; align-items:center; justify-content:space-between; gap:4px; min-height:50px; margin-bottom:8px; }
.mnav-brand a { display:flex; align-items:center; gap:10px; min-width:0; white-space:nowrap; font-size:19px; font-weight:700; }
.mnav-mark { display:grid; flex:none; place-items:center; width:34px; height:34px; background:var(--mnav-accent); color:white; font-size:28px; line-height:1; border-radius:10px; padding-bottom:4px; }
.mnav-brand small { font-size:9px; letter-spacing:.07em; font-weight:600; margin-left:3px; vertical-align:middle; color:var(--mnav-muted); }
.mnav-scroll { display:contents; }
.mnav-account-shell .mnav-scroll { display:block; flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-width:thin; }
.mnav-account-shell .mnav-top { max-height:none; overflow:visible; padding-bottom:8px; }
.mnav-account-shell .mnav-context { overflow:visible; min-height:0; padding:10px 0; border-top:1px solid #dce3e5; }
.mnav-account-group { padding:10px 0 6px; margin:0; border:0; }
.mnav .mnav-group-title { margin:0; padding:2px 11px 5px; font:600 11px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; letter-spacing:.025em; text-transform:uppercase; color:var(--mnav-muted); }
.mnav .mnav-group-title::before, .mnav .mnav-group-title::after { display:none; }
.mnav-account-shell[data-collapsed="true"] .mnav-group-title { display:none; }
.mnav-account-shell[data-collapsed="true"] .mnav-account-group + .mnav-account-group { border-top:1px solid #dce3e5; }
.mnav-account-shell .mnav-bottom { flex-shrink:0; }
.mnav .mnav-toggle { padding:8px; flex:none; color:var(--mnav-muted); }
.mnav-top { padding-bottom:10px; border-bottom:1px solid #dce3e5; flex:none; max-height:40vh; overflow:auto; scrollbar-width:thin; }
.mnav-row { width:100%; display:flex; gap:12px; align-items:center; min-height:var(--mnav-row); padding:8px 11px !important; border-radius:7px !important; text-align:left; background:transparent; position:relative; }
.mnav-row .mnav-label { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mnav-row svg { color:#667d87; }
.mnav-row:hover:not(:disabled), .mnav-toggle:hover, .mnav-icon:hover { background:#e6eced; }
.mnav .mnav-row.is-current { background:var(--mnav-fill); color:#135864; font-weight:600; }
.mnav-row.is-current svg { color:var(--mnav-accent); }
.mnav-row.is-current::before { position:absolute; left:0; top:11px; bottom:11px; width:3px; background:var(--mnav-accent); border-radius:3px; content:""; }
.mnav-event-list { display:grid; gap:12px; }
.mnav-event { padding:16px; border:1px solid #dce3e5; border-radius:10px; min-width:0; }
.mnav-event h3 { margin:6px 0 10px; font-size:16px; line-height:1.4; color:var(--mnav-ink); }
.mnav-event p { margin:8px 0; line-height:1.5; overflow-wrap:anywhere; white-space:pre-wrap; }
.mnav-event .mnav-event-date { color:var(--mnav-muted); font-size:12px; }
.mnav-event-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:12px; }
.mnav .mnav-event-actions .mnav-btn, .mnav [data-events-more] { padding:8px 12px; border:1px solid #dce3e5; border-radius:7px; }
.mnav-external { margin-left:auto; opacity:.5; font-size:13px; }
.mnav-context { overflow-y:auto; overflow-x:hidden; flex:1; padding:14px 0; min-height:80px; scrollbar-width:thin; overscroll-behavior:contain; }
.mnav-context-title { padding:0 11px 10px; font-size:12px; font-weight:600; color:var(--mnav-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mnav-empty-label { color:var(--mnav-muted); padding:12px; display:block; }
.mnav-bottom { border-top:1px solid #dce3e5; padding-top:8px; flex:none; margin-top:auto; }
.mnav-resize { position:absolute; right:-3px; top:0; bottom:0; width:7px; cursor:col-resize; z-index:3; touch-action:none; }
.mnav-resize:hover, .mnav-resize:focus-visible { background:#176b7530; }
.mnav[data-collapsed="true"] .mnav-rail { padding:8px 9px; }
.mnav[data-collapsed="true"] .mnav-rail .mnav-label, .mnav[data-collapsed="true"] .mnav-context-title, .mnav[data-collapsed="true"] .mnav-empty-label, .mnav[data-collapsed="true"] .mnav-resize { display:none; }
.mnav[data-collapsed="true"] .mnav-brand { flex-direction:column; min-height:82px; gap:4px; }
.mnav[data-collapsed="true"] .mnav-rail .mnav-row { justify-content:center; padding:10px 7px !important; }
.mnav[data-collapsed="true"] .mnav-context { padding:12px 0; }
.mnav-flyout { position:fixed; z-index:9002; left:64px; top:var(--mnav-top); width:0; height:calc(100dvh - var(--mnav-top)); pointer-events:none; overflow:visible; }
.mnav-badge { flex:none; margin-left:auto; min-width:20px; padding:2px 6px; border-radius:12px; background:#cf3546; color:#fff; font:700 11px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; text-align:center; }
.mnav[data-collapsed="true"] .mnav-rail .mnav-badge { position:absolute; top:0; right:-4px; min-width:16px; padding:2px 4px; font-size:10px; margin:0; box-shadow:0 0 0 2px #f3f5f5; }
/* Wiki's header stays above the desktop rail; the open-state rule above also
   releases Bono's clipping, without repositioning or moving the dropdown. */
.mnav .mnav-hint { position:absolute; left:8px; transform:translateY(-50%); display:block; width:max-content; max-width:min(390px,calc(100vw - 88px)); padding:7px 11px; min-height:28px; border:0; border-radius:5px; background:#62686d; color:#fff; font-size:12px; line-height:1.2; font-weight:500; text-align:left; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; pointer-events:auto; box-shadow:0 2px 6px #152d3b1c; }
.mnav .mnav-hint:hover, .mnav .mnav-hint.is-current { background:#344750; color:#fff; }
.mnav-mobile, .mnav-mobile-shade { display:none; }
.mnav-dialog { position:fixed; inset:var(--mnav-top) auto 0 var(--mnav-space); margin:0; width:min(930px, calc(100vw - var(--mnav-space))); max-width:none; height:calc(100dvh - var(--mnav-top)); max-height:none; padding:0; border:0; border-radius:0 16px 16px 0; color:var(--mnav-ink); background:#fff; box-shadow:12px 0 40px #172b3420; font:inherit; overflow:hidden; }
.mnav-dialog[open] { display:flex; flex-direction:column; }
.mnav-dialog::backdrop { background:#132c394a; }
.mnav-dialog-head { display:flex; justify-content:space-between; align-items:center; gap:16px; flex:none; padding:24px 28px 20px; border-bottom:1px solid #e7edef; }
.mnav-eyebrow { display:block; font-size:12px; color:var(--mnav-muted); margin-bottom:4px; }
.mnav-dialog h2 { padding:0; margin:0; font:600 23px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; color:var(--mnav-ink); }
.mnav-dialog h2::before, .mnav-dialog h2::after { display:none; }
.mnav-icon { padding:10px !important; flex:none; }
.mnav-dialog-body { flex:1; min-height:0; overflow:auto; padding:24px 28px; overscroll-behavior:contain; }
.mnav-dialog-foot { flex:none; display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:16px 28px; background:#fff; border-top:1px solid #e7edef; }
.mnav-dialog-foot:empty { display:none; }
.mnav .mnav-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:10px 17px; min-height:40px; border:1px solid #d7e1e5; border-radius:8px; color:var(--mnav-ink); background:#fff; font-weight:500; }
.mnav .mnav-btn:hover { background:#eef3f4; }
.mnav .mnav-primary { background:var(--mnav-accent); color:#fff; border-color:var(--mnav-accent); }
.mnav .mnav-primary:hover { background:#11545f; }
.mnav-spacer { flex:1; }
.mnav-note { font-size:13px; line-height:1.65; color:var(--mnav-muted); margin:0 0 18px; }
.mnav-error, .mnav-save-error { color:#923a35; padding:16px; background:#fff0ed; border-radius:8px; }
.mnav-search { display:flex; align-items:center; gap:10px; border:1px solid #ccd9dc; border-radius:9px; padding:0 12px; margin-bottom:20px; }
.mnav-search svg { color:var(--mnav-muted); }
.mnav .mnav-search input { margin:0; padding:12px 0; width:100%; min-width:0; background:#fff; color:var(--mnav-ink); border:0; box-shadow:none; outline:none; }
.mnav-list-row { min-height:48px; }
.mnav-list-row .mnav-label { white-space:normal; }
.mnav-choice { display:flex; align-items:center; width:100%; padding:18px 12px !important; gap:16px; text-align:left; border-radius:10px; }
.mnav-choice:hover { background:#f0f5f5; }
.mnav-choice strong, .mnav-choice small { display:block; }
.mnav-choice small { margin-top:4px; color:var(--mnav-muted); }
.mnav-recent-row { display:flex; align-items:center; gap:8px; }
.mnav-recent-row .mnav-row { min-width:0; flex:1; }
.mnav-chevron { margin-left:auto; }
.mnav-back { margin-bottom:18px !important; }
.mnav-settings-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); gap:28px; }
.mnav fieldset { margin:0 0 26px; padding:0; border:0; min-width:0; }
.mnav legend { margin:0 0 12px; padding:0; font-weight:600; font-size:16px; }
.mnav-sort-row { display:flex; align-items:center; gap:7px; border-bottom:1px solid #edf1f2; padding:5px 0; min-height:44px; }
.mnav-grip { color:#a2b0b5; cursor:grab; font-size:19px; }
.mnav-sort-row label { display:flex; gap:9px; align-items:center; flex:1; min-width:0; margin:0; }
.mnav-sort-row span { overflow-wrap:anywhere; }
.mnav-sort-row button { width:28px; height:32px; background:#f0f4f5; flex:none; }
.mnav input[type="checkbox"] { appearance:auto; width:16px; height:16px; flex:none; margin:0; accent-color:var(--mnav-accent); }
.mnav input[type="checkbox"]::before, .mnav input[type="checkbox"]::after { display:none; }
.mnav-field { display:block; margin:0 0 18px; color:var(--mnav-ink); }
.mnav-field output { float:right; font-size:12px; color:var(--mnav-muted); }
.mnav-field select { display:block; margin-top:8px; width:100%; padding:9px 10px; min-height:40px; color:var(--mnav-ink); background:#fff; border:1px solid #ccd9dc; border-radius:7px; }
.mnav input[type="range"] { display:block; width:100%; padding:0; margin:14px 0 4px; accent-color:var(--mnav-accent); }
.mnav-check { display:flex; gap:10px; align-items:center; margin:0 0 14px; }
.mnav-toast { position:fixed; z-index:100005; bottom:20px; right:20px; max-width:min(420px,calc(100vw - 32px)); padding:14px 20px; border-radius:10px; box-shadow:0 4px 18px #17363c20; background:#173d45; color:white; font-size:14px; }
@media (max-width:1050px) { .mnav-settings-grid { grid-template-columns:1fr; gap:0; } }
@media (max-width:1020px) {
  body.mnav-mounted, body.mnav-mounted.wiki-player-body { padding-left:0 !important; }
  .mnav-rail { z-index:100102; width:min(var(--mnav-expanded),calc(100vw - 40px)); transform:translateX(-105%); visibility:hidden; transition:transform var(--mnav-duration),visibility var(--mnav-duration); padding-bottom:max(10px,env(safe-area-inset-bottom)); }
  .mnav-mobile-open .mnav-rail { transform:translateX(0); visibility:visible; }
  .mnav .mnav-mobile { position:fixed; display:flex; align-items:center; gap:7px; left:12px; bottom:calc(12px + env(safe-area-inset-bottom)); z-index:100100; padding:11px 14px; border:1px solid #d2dfe0; background:#f8fbfb; box-shadow:0 2px 12px #17363c20; color:var(--mnav-ink); border-radius:24px; font-size:14px; }
  .mnav[data-native-dialog="true"] .mnav-mobile { visibility:hidden; }
  body.mwp-mobile-feed-open .mnav-mobile { bottom:calc(80px + env(safe-area-inset-bottom)); }
  .mnav-mobile-open .mnav-mobile { visibility:hidden; }
  .mnav-mobile-shade { position:fixed; inset:0; background:#122c3b59; z-index:100101; display:block; }
  .mnav-dialog { inset:0; width:100%; height:100dvh; border-radius:0; }
  .mnav-dialog-head { padding:20px 18px 16px; }
  .mnav-dialog h2 { font-size:21px; }
  .mnav-dialog-body { padding:20px 18px; }
  .mnav-dialog-foot { padding:12px 18px max(12px,env(safe-area-inset-bottom)); }
  .mnav-dialog-foot .mnav-btn { padding:10px 12px; font-size:13px; }
  .mnav-settings-grid { display:block; }
  .mnav-resize { display:none; }
  .mnav-toast { bottom:76px; }
}
@media (prefers-reduced-motion:reduce) { .mnav *, .mnav *::before, .mnav *::after { transition:none !important; animation:none !important; scroll-behavior:auto !important; } }
@media print { .mnav { display:none !important; } body.mnav-mounted { padding-left:0 !important; } }
