/* =========================================================================
   BatechY — 23_mantine inspired docs theme (rose / pink primary #BE185D)
   独立 CSS：参考 Mantine 视觉调性（清爽白底 / 大圆角 / 卡片网格 / 现代 sans 字体），
   配色与 Mantine 蓝完全独立，主色为玫红 #BE185D。
   ========================================================================= */

/* ----- 1. design tokens ----- */
:root{
  /* primary scale (rose / pink) */
  --mn-pink-50:#FDF2F8;
  --mn-pink-100:#FCE7F3;
  --mn-pink-200:#FBCFE8;
  --mn-pink-300:#F9A8D4;
  --mn-pink-400:#F472B6;
  --mn-pink-500:#EC4899;
  --mn-pink-600:#DB2777;
  --mn-pink-700:#BE185D;
  --mn-pink-800:#9D174D;
  --mn-pink-900:#831843;
  --mn-primary:#BE185D;
  --mn-primary-hover:#9D174D;
  --mn-primary-soft:#FCE7F3;
  --mn-primary-soft-2:#FDF2F8;

  /* neutrals */
  --mn-gray-0:#FFFFFF;
  --mn-gray-50:#FAFAF9;
  --mn-gray-100:#F4F4F5;
  --mn-gray-150:#ECECEE;
  --mn-gray-200:#E4E4E7;
  --mn-gray-300:#D4D4D8;
  --mn-gray-400:#A1A1AA;
  --mn-gray-500:#71717A;
  --mn-gray-600:#52525B;
  --mn-gray-700:#3F3F46;
  --mn-gray-800:#27272A;
  --mn-gray-900:#18181B;
  --mn-gray-950:#09090B;

  /* surfaces */
  --mn-bg:#FFFFFF;
  --mn-bg-soft:#FAFAFA;
  --mn-bg-soft-2:#F7F7F8;
  --mn-bg-sidebar:#FFFFFF;
  --mn-bg-card:#FFFFFF;
  --mn-bg-code:#F4F4F5;
  --mn-bg-code-block:#FAFAF9;
  --mn-bg-callout:#FCE7F3;

  /* text */
  --mn-fg:#18181B;
  --mn-fg-strong:#0A0A0B;
  --mn-fg-muted:#52525B;
  --mn-fg-soft:#71717A;
  --mn-fg-fade:#A1A1AA;
  --mn-fg-invert:#FFFFFF;
  --mn-link:#BE185D;
  --mn-link-hover:#9D174D;

  /* borders */
  --mn-border:#E4E4E7;
  --mn-border-strong:#D4D4D8;
  --mn-border-faint:#F4F4F5;

  /* radii (Mantine style — fairly large) */
  --mn-r-1:4px;
  --mn-r-2:6px;
  --mn-r-3:8px;
  --mn-r-4:10px;
  --mn-r-5:12px;
  --mn-r-6:14px;
  --mn-r-7:18px;
  --mn-r-full:999px;

  /* spacing */
  --mn-s-1:4px;
  --mn-s-2:8px;
  --mn-s-3:12px;
  --mn-s-4:16px;
  --mn-s-5:20px;
  --mn-s-6:24px;
  --mn-s-7:32px;
  --mn-s-8:40px;
  --mn-s-9:56px;
  --mn-s-10:72px;

  /* shadows — Mantine soft shadow style */
  --mn-sh-1:0 1px 2px rgba(15,23,42,.04), 0 0 0 1px rgba(15,23,42,.04);
  --mn-sh-2:0 2px 6px rgba(15,23,42,.05), 0 0 0 1px rgba(15,23,42,.05);
  --mn-sh-3:0 6px 16px rgba(15,23,42,.06), 0 0 0 1px rgba(15,23,42,.06);
  --mn-sh-4:0 12px 32px rgba(15,23,42,.08), 0 0 0 1px rgba(15,23,42,.05);
  --mn-sh-pink:0 6px 16px rgba(190,24,93,.18);

  /* layout sizes */
  --mn-header-h:62px;
  --mn-sidebar-w:264px;
  --mn-toc-w:228px;
  --mn-content-max:780px;
  --mn-shell-max:1480px;

  /* type */
  --mn-font-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue','PingFang SC','Hiragino Sans GB','Microsoft YaHei',Arial,sans-serif;
  --mn-font-mono:ui-monospace,'SFMono-Regular',Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;
  --mn-fz-xs:12px;
  --mn-fz-sm:13px;
  --mn-fz-base:15px;
  --mn-fz-md:16px;
  --mn-fz-lg:18px;
  --mn-fz-xl:22px;
  --mn-fz-2xl:28px;
  --mn-fz-3xl:36px;
  --mn-fz-4xl:48px;
  --mn-lh-tight:1.25;
  --mn-lh-snug:1.45;
  --mn-lh-base:1.7;
  --mn-fw-r:400;
  --mn-fw-m:500;
  --mn-fw-sb:600;
  --mn-fw-b:700;
}

[data-theme='dark']{
  --mn-bg:#0E0F12;
  --mn-bg-soft:#16171B;
  --mn-bg-soft-2:#1B1C20;
  --mn-bg-sidebar:#0E0F12;
  --mn-bg-card:#16171B;
  --mn-bg-code:#1F1F23;
  --mn-bg-code-block:#15161A;
  --mn-bg-callout:#3A0F26;

  --mn-fg:#F4F4F5;
  --mn-fg-strong:#FAFAFA;
  --mn-fg-muted:#A1A1AA;
  --mn-fg-soft:#8A8A93;
  --mn-fg-fade:#5C5C66;

  --mn-link:#F472B6;
  --mn-link-hover:#FBCFE8;
  --mn-primary-soft:rgba(190,24,93,.22);
  --mn-primary-soft-2:rgba(190,24,93,.12);

  --mn-border:#26272B;
  --mn-border-strong:#34353A;
  --mn-border-faint:#1B1C20;

  --mn-sh-1:0 1px 2px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.04);
  --mn-sh-2:0 2px 6px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.05);
  --mn-sh-3:0 6px 16px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.05);
  --mn-sh-4:0 12px 32px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.04);
}

/* ----- 2. base reset ----- */
*,*::before,*::after{box-sizing:border-box;}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--mn-font-sans);
  font-size:var(--mn-fz-base);
  line-height:var(--mn-lh-base);
  color:var(--mn-fg);
  background:var(--mn-bg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
a{color:var(--mn-link);text-decoration:none;transition:color .15s ease;}
a:hover{color:var(--mn-link-hover);text-decoration:underline;text-underline-offset:3px;}
img,svg{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit;padding:0;}
input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;}
ul,ol{padding-left:1.4em;}
hr{border:0;border-top:1px solid var(--mn-border);margin:var(--mn-s-7) 0;}
::selection{background:var(--mn-primary-soft);color:var(--mn-fg-strong);}

/* ----- 3. theme toggle visibility ----- */
.mn-theme--light,.mn-theme--dark{display:inline-flex;}
[data-theme='dark'] .mn-theme--light{display:none;}
[data-theme='light'] .mn-theme--dark{display:none;}
html:not([data-theme='dark']) .mn-theme--dark{display:none;}

/* ----- 4. layout shell ----- */
.mn-body{min-height:100vh;display:flex;flex-direction:column;}
.mn-shell{
  display:grid;
  grid-template-columns:var(--mn-sidebar-w) 1fr;
  max-width:var(--mn-shell-max);
  margin:0 auto;
  padding:0 var(--mn-s-6);
  gap:var(--mn-s-7);
  flex:1;
  width:100%;
}
.mn-shell--has-sidebar{align-items:flex-start;}
.mn-main{
  min-width:0;
  padding:var(--mn-s-7) 0 var(--mn-s-9);
}
.mn-main--full{
  max-width:var(--mn-shell-max);
  margin:0 auto;
  padding:0 var(--mn-s-6) var(--mn-s-9);
  width:100%;
}

/* ----- 5. header ----- */
.mn-header{
  position:sticky;
  top:0;
  z-index:60;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(12px);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--mn-border);
}
[data-theme='dark'] .mn-header{background:rgba(14,15,18,.88);}
.mn-header__bar{
  display:flex;
  align-items:center;
  gap:var(--mn-s-4);
  height:var(--mn-header-h);
  max-width:var(--mn-shell-max);
  margin:0 auto;
  padding:0 var(--mn-s-6);
}
.mn-header__left{display:flex;align-items:center;gap:var(--mn-s-3);}
.mn-brand{display:flex;align-items:center;gap:10px;color:var(--mn-fg-strong);font-weight:var(--mn-fw-sb);}
.mn-brand:hover{text-decoration:none;color:var(--mn-fg-strong);}
.mn-brand__mark{display:inline-flex;}
.mn-brand__mark svg{display:block;}
.mn-brand__text{display:flex;flex-direction:column;line-height:1.1;}
.mn-brand__name{font-size:15.5px;letter-spacing:.2px;}
.mn-brand__tag{font-size:10.5px;color:var(--mn-fg-soft);text-transform:uppercase;letter-spacing:1px;font-weight:var(--mn-fw-r);}
.mn-version{
  display:inline-flex;align-items:center;
  font-size:11.5px;color:var(--mn-fg-soft);
  background:var(--mn-gray-100);
  padding:3px 8px;border-radius:var(--mn-r-full);
  margin-left:6px;letter-spacing:.5px;
}
[data-theme='dark'] .mn-version{background:var(--mn-bg-soft);}
.mn-topnav{display:flex;align-items:center;gap:2px;margin-left:8px;}
.mn-topnav__item{
  font-size:13.5px;
  color:var(--mn-fg-muted);
  padding:6px 12px;
  border-radius:var(--mn-r-3);
  font-weight:var(--mn-fw-m);
  transition:background .15s,color .15s;
}
.mn-topnav__item:hover{color:var(--mn-fg-strong);background:var(--mn-gray-100);text-decoration:none;}
[data-theme='dark'] .mn-topnav__item:hover{background:var(--mn-bg-soft);}
.mn-topnav__item.is-active{color:var(--mn-primary);background:var(--mn-primary-soft);}
.mn-search{
  display:flex;align-items:center;gap:8px;
  flex:1;max-width:340px;margin-left:auto;
  background:var(--mn-gray-100);
  border:1px solid transparent;
  padding:6px 10px;
  border-radius:var(--mn-r-4);
  transition:background .15s,border-color .15s;
}
[data-theme='dark'] .mn-search{background:var(--mn-bg-soft);}
.mn-search:focus-within{background:var(--mn-bg);border-color:var(--mn-primary);box-shadow:0 0 0 3px var(--mn-primary-soft);}
.mn-search__icon{color:var(--mn-fg-soft);display:inline-flex;}
.mn-search__input{flex:1;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--mn-fg);}
.mn-search__input::placeholder{color:var(--mn-fg-soft);}
.mn-search__kbd{
  font-family:var(--mn-font-sans);font-size:11px;
  background:var(--mn-bg);border:1px solid var(--mn-border);
  padding:1px 6px;border-radius:var(--mn-r-2);color:var(--mn-fg-soft);
}
.mn-header__right{display:flex;align-items:center;gap:6px;}
.mn-iconbtn{
  width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:var(--mn-r-3);
  color:var(--mn-fg-muted);
  transition:background .15s,color .15s;
}
.mn-iconbtn:hover{background:var(--mn-gray-100);color:var(--mn-fg-strong);}
[data-theme='dark'] .mn-iconbtn:hover{background:var(--mn-bg-soft);}
.mn-themetoggle .mn-theme--light,.mn-themetoggle .mn-theme--dark{display:inline-flex;}
.mn-mobile-only{display:none;}

/* language menu */
.mn-lang{position:relative;}
.mn-lang__btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:var(--mn-r-3);
  color:var(--mn-fg-muted);font-size:12.5px;font-weight:var(--mn-fw-m);
}
.mn-lang__btn:hover{background:var(--mn-gray-100);color:var(--mn-fg-strong);}
[data-theme='dark'] .mn-lang__btn:hover{background:var(--mn-bg-soft);}
.mn-lang__cur{display:inline-flex;}
.mn-lang__menu{
  position:absolute;right:0;top:calc(100% + 6px);
  background:var(--mn-bg-card);
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-4);
  box-shadow:var(--mn-sh-3);
  padding:6px;
  min-width:160px;
  list-style:none;margin:0;
  display:none;
  z-index:80;
}
.mn-lang:hover .mn-lang__menu,.mn-lang:focus-within .mn-lang__menu{display:block;}
.mn-lang__menu li{padding:0;}
.mn-lang__menu a{
  display:block;padding:7px 10px;
  border-radius:var(--mn-r-2);font-size:13px;
  color:var(--mn-fg);
}
.mn-lang__menu a:hover{background:var(--mn-gray-100);text-decoration:none;}
[data-theme='dark'] .mn-lang__menu a:hover{background:var(--mn-bg-soft);}
.mn-lang__menu a.is-current{color:var(--mn-primary);font-weight:var(--mn-fw-sb);}

/* ----- 6. sidebar ----- */
.mn-sidebar{
  position:sticky;
  top:var(--mn-header-h);
  align-self:start;
  width:var(--mn-sidebar-w);
  max-height:calc(100vh - var(--mn-header-h));
  overflow-y:auto;
  padding:var(--mn-s-5) var(--mn-s-3) var(--mn-s-7) 0;
  border-right:1px solid var(--mn-border);
  background:var(--mn-bg-sidebar);
  scrollbar-width:thin;
  scrollbar-color:var(--mn-gray-300) transparent;
}
.mn-sidebar::-webkit-scrollbar{width:6px;}
.mn-sidebar::-webkit-scrollbar-thumb{background:var(--mn-gray-300);border-radius:6px;}
.mn-sidebar__filter{
  position:sticky;top:0;z-index:5;
  display:flex;align-items:center;gap:8px;
  background:var(--mn-bg-sidebar);
  padding:0 4px var(--mn-s-3) 4px;
  margin-bottom:var(--mn-s-3);
  border-bottom:1px solid var(--mn-border-faint);
}
.mn-sidebar__filter-icon{color:var(--mn-fg-soft);display:inline-flex;padding-left:8px;}
.mn-sidebar__filter-input{
  flex:1;background:var(--mn-gray-100);border:1px solid transparent;
  padding:7px 10px;border-radius:var(--mn-r-3);font-size:13px;outline:0;
}
[data-theme='dark'] .mn-sidebar__filter-input{background:var(--mn-bg-soft);}
.mn-sidebar__filter-input:focus{background:var(--mn-bg);border-color:var(--mn-primary);}
.mn-sidebar__inner{display:flex;flex-direction:column;gap:var(--mn-s-2);}
.mn-sidebar__group{padding:6px 0;border-radius:var(--mn-r-4);}
.mn-sidebar__heading{
  display:flex;align-items:center;gap:8px;
  width:100%;
  padding:6px 8px;
  font-size:13px;font-weight:var(--mn-fw-sb);
  color:var(--mn-fg-strong);
  text-align:left;
  border-radius:var(--mn-r-3);
  cursor:default;
}
.mn-sidebar__heading--clickable{cursor:pointer;}
.mn-sidebar__heading--clickable:hover{background:var(--mn-gray-100);}
[data-theme='dark'] .mn-sidebar__heading--clickable:hover{background:var(--mn-bg-soft);}
.mn-sidebar__heading--root{color:var(--mn-fg-soft);font-size:11.5px;text-transform:uppercase;letter-spacing:1.2px;font-weight:var(--mn-fw-sb);padding-left:8px;}
.mn-sidebar__heading-text{flex:1;}
.mn-sidebar__count{
  font-size:11px;color:var(--mn-fg-soft);
  background:var(--mn-gray-100);
  padding:1px 7px;border-radius:var(--mn-r-full);font-weight:var(--mn-fw-r);
}
[data-theme='dark'] .mn-sidebar__count{background:var(--mn-bg-soft);}
.mn-sidebar__chev{display:inline-flex;color:var(--mn-fg-soft);transition:transform .18s ease;}
.mn-sidebar__group:not(.is-collapsed) .mn-sidebar__chev{transform:rotate(90deg);}
.mn-sidebar__list{list-style:none;margin:4px 0 4px 8px;padding:0 0 0 var(--mn-s-3);border-left:1px solid var(--mn-border-faint);}
.mn-sidebar__list li{margin:0;}
.mn-sidebar__group.is-collapsed .mn-sidebar__list--inner{display:none;}
.mn-sidebar__group--meta .mn-sidebar__list{margin-left:0;border-left:0;padding-left:0;}
.mn-sidebar__link{
  display:block;
  padding:5px 10px;
  font-size:13px;line-height:1.5;
  color:var(--mn-fg-muted);
  border-radius:var(--mn-r-3);
  border-left:2px solid transparent;
  margin-left:-2px;
  transition:background .12s,color .12s,border-color .12s;
  white-space:nowrap;text-overflow:ellipsis;overflow:hidden;
}
.mn-sidebar__link:hover{color:var(--mn-fg-strong);background:var(--mn-gray-100);text-decoration:none;}
[data-theme='dark'] .mn-sidebar__link:hover{background:var(--mn-bg-soft);}
.mn-sidebar__link.is-active{
  color:var(--mn-primary);
  background:var(--mn-primary-soft);
  border-left-color:var(--mn-primary);
  font-weight:var(--mn-fw-sb);
}
.mn-sidebar__link--cat{font-weight:var(--mn-fw-m);color:var(--mn-fg);}

/* ----- 7. article shell ----- */
.mn-article{
  display:flex;flex-direction:column;
  max-width:100%;
}
.mn-article__head{
  padding:var(--mn-s-5) 0 var(--mn-s-6);
  border-bottom:1px solid var(--mn-border);
  margin-bottom:var(--mn-s-7);
  max-width:var(--mn-content-max);
}
.mn-article__head--hero{
  border-bottom:0;
  padding:var(--mn-s-7) 0 var(--mn-s-7);
  max-width:920px;
}
.mn-article__kicker{
  display:inline-block;
  font-size:11px;color:var(--mn-primary);
  background:var(--mn-primary-soft);
  padding:3px 10px;border-radius:var(--mn-r-full);
  text-transform:uppercase;letter-spacing:1.4px;
  font-weight:var(--mn-fw-sb);
  margin-bottom:var(--mn-s-3);
}
.mn-article__h1{
  font-size:var(--mn-fz-3xl);
  line-height:1.2;
  font-weight:var(--mn-fw-b);
  letter-spacing:-.02em;
  color:var(--mn-fg-strong);
  margin:0 0 var(--mn-s-3);
}
.mn-article__head--hero .mn-article__h1{font-size:42px;line-height:1.15;}
.mn-article__lede{
  font-size:var(--mn-fz-lg);
  color:var(--mn-fg-muted);
  margin:0 0 var(--mn-s-4);
  line-height:1.55;
  max-width:680px;
}
.mn-article__meta{
  display:flex;align-items:center;flex-wrap:wrap;gap:var(--mn-s-2);
  font-size:13px;color:var(--mn-fg-soft);
}
.mn-article__meta-sep{color:var(--mn-fg-fade);}
.mn-chip{
  display:inline-block;
  padding:2px 10px;
  background:var(--mn-primary-soft);
  color:var(--mn-primary);
  border-radius:var(--mn-r-full);
  font-size:12px;font-weight:var(--mn-fw-sb);
}
.mn-chip:hover{background:var(--mn-pink-200);text-decoration:none;}
[data-theme='dark'] .mn-chip:hover{background:rgba(190,24,93,.35);}

/* article body grid: prose + toc */
.mn-article__body{
  display:grid;
  grid-template-columns:minmax(0,1fr) var(--mn-toc-w);
  gap:var(--mn-s-8);
  align-items:flex-start;
}
.is-page .mn-article__body,
.mn-article--page .mn-article__body{
  display:block;
}

/* ----- 8. crumb ----- */
.mn-crumb{
  display:flex;align-items:center;flex-wrap:wrap;gap:6px;
  font-size:13px;color:var(--mn-fg-soft);
  padding:var(--mn-s-5) 0 var(--mn-s-2);
}
.mn-crumb a{color:var(--mn-fg-muted);}
.mn-crumb a:hover{color:var(--mn-primary);}
.mn-crumb__sep{color:var(--mn-fg-fade);}
.mn-crumb__current{color:var(--mn-fg);font-weight:var(--mn-fw-m);}

/* ----- 9. hero search ----- */
.mn-hero-search{
  display:flex;align-items:center;gap:var(--mn-s-3);
  background:var(--mn-bg);
  border:1px solid var(--mn-border);
  padding:10px 14px;
  border-radius:var(--mn-r-5);
  box-shadow:var(--mn-sh-2);
  max-width:560px;
  margin:var(--mn-s-4) 0 var(--mn-s-5);
  transition:border-color .15s,box-shadow .15s;
}
.mn-hero-search:focus-within{border-color:var(--mn-primary);box-shadow:0 0 0 4px var(--mn-primary-soft);}
.mn-hero-search__icon{color:var(--mn-fg-soft);display:inline-flex;}
.mn-hero-search__input{
  flex:1;border:0;outline:0;background:transparent;
  font-size:15px;color:var(--mn-fg);padding:4px 0;
}
.mn-hero-search__input::placeholder{color:var(--mn-fg-soft);}
.mn-hero-search__kbd{
  font-family:var(--mn-font-sans);font-size:11px;
  background:var(--mn-gray-100);border:1px solid var(--mn-border);
  padding:2px 8px;border-radius:var(--mn-r-2);color:var(--mn-fg-soft);
}
[data-theme='dark'] .mn-hero-search__kbd{background:var(--mn-bg-soft);}

.mn-hero-actions{
  display:flex;flex-wrap:wrap;gap:var(--mn-s-3);
  margin-top:var(--mn-s-3);
}

/* ----- 10. buttons ----- */
.mn-btn{
  display:inline-flex;align-items:center;gap:6px;
  font-size:14px;font-weight:var(--mn-fw-sb);
  padding:9px 18px;
  border-radius:var(--mn-r-4);
  border:1px solid transparent;
  transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .12s;
  cursor:pointer;
}
.mn-btn:hover{text-decoration:none;}
.mn-btn--primary{
  background:var(--mn-primary);color:#fff;
  box-shadow:var(--mn-sh-pink);
}
.mn-btn--primary:hover{background:var(--mn-primary-hover);color:#fff;transform:translateY(-1px);}
.mn-btn--ghost{
  background:var(--mn-gray-100);
  color:var(--mn-fg);
}
[data-theme='dark'] .mn-btn--ghost{background:var(--mn-bg-soft);}
.mn-btn--ghost:hover{background:var(--mn-gray-200);color:var(--mn-fg);}
[data-theme='dark'] .mn-btn--ghost:hover{background:var(--mn-bg-soft-2);}
.mn-btn--outline{
  border-color:var(--mn-border-strong);
  color:var(--mn-fg);
}
.mn-btn--outline:hover{border-color:var(--mn-primary);color:var(--mn-primary);}

/* ----- 11. card grid ----- */
.mn-cardgrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--mn-s-4);
  margin:var(--mn-s-5) 0 var(--mn-s-7);
}
.mn-card{
  display:flex;flex-direction:column;
  padding:var(--mn-s-5);
  background:var(--mn-bg-card);
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-5);
  color:var(--mn-fg);
  text-decoration:none;
  transition:border-color .15s,box-shadow .15s,transform .15s;
  position:relative;
  overflow:hidden;
}
.mn-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--mn-pink-500),var(--mn-pink-700));
  opacity:0;transition:opacity .2s;
}
.mn-card:hover{
  border-color:var(--mn-pink-200);
  box-shadow:var(--mn-sh-3);
  transform:translateY(-2px);
  text-decoration:none;
  color:var(--mn-fg);
}
.mn-card:hover::before{opacity:1;}
.mn-card__icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:var(--mn-r-4);
  background:var(--mn-primary-soft);
  color:var(--mn-primary);
  margin-bottom:var(--mn-s-3);
}
.mn-card__title{
  font-size:16px;font-weight:var(--mn-fw-sb);
  color:var(--mn-fg-strong);
  margin-bottom:6px;
}
.mn-card__desc{
  font-size:13.5px;line-height:1.55;color:var(--mn-fg-muted);
  margin:0 0 var(--mn-s-3);flex:1;
}
.mn-card__list{
  list-style:none;padding:0;margin:0 0 var(--mn-s-3);
  display:flex;flex-direction:column;gap:4px;
}
.mn-card__list li{
  font-size:12.5px;color:var(--mn-fg-soft);
  padding-left:14px;position:relative;
  white-space:nowrap;text-overflow:ellipsis;overflow:hidden;
}
.mn-card__list li::before{
  content:'›';position:absolute;left:2px;top:0;color:var(--mn-fg-fade);
}
.mn-card__cta{
  font-size:12.5px;color:var(--mn-primary);font-weight:var(--mn-fw-sb);
  margin-top:auto;
}
.mn-card__count{
  font-size:11.5px;color:var(--mn-fg-soft);
  background:var(--mn-gray-100);
  padding:3px 10px;border-radius:var(--mn-r-full);
  align-self:flex-start;margin-top:var(--mn-s-2);
}
[data-theme='dark'] .mn-card__count{background:var(--mn-bg-soft);}

/* reflist (more categories) */
.mn-reflist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--mn-s-3);
  margin:var(--mn-s-4) 0 var(--mn-s-7);
}
.mn-reflist__item{
  display:flex;flex-direction:column;
  padding:var(--mn-s-4) var(--mn-s-5);
  background:var(--mn-bg-soft);
  border:1px solid var(--mn-border-faint);
  border-radius:var(--mn-r-4);
  color:var(--mn-fg);
  transition:border-color .15s,background .15s;
}
.mn-reflist__item:hover{
  border-color:var(--mn-pink-300);
  background:var(--mn-bg);
  text-decoration:none;
  color:var(--mn-fg);
}
.mn-reflist__title{font-size:14.5px;font-weight:var(--mn-fw-sb);color:var(--mn-fg-strong);}
.mn-reflist__desc{font-size:12.5px;color:var(--mn-fg-soft);margin-top:4px;line-height:1.55;}

/* ----- 12. post list ----- */
.mn-postlist{list-style:none;padding:0;margin:var(--mn-s-3) 0 var(--mn-s-5);display:flex;flex-direction:column;gap:0;}
.mn-postlist__item{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:var(--mn-s-4);
  padding:var(--mn-s-4) 0;
  border-bottom:1px solid var(--mn-border-faint);
  align-items:flex-start;
}
.mn-postlist__item:last-child{border-bottom:0;}
.mn-postlist__num{
  font-family:var(--mn-font-mono);
  font-size:13px;color:var(--mn-fg-fade);
  padding-top:2px;
}
.mn-postlist__body{display:flex;flex-direction:column;gap:6px;min-width:0;}
.mn-postlist__title{
  font-size:16px;font-weight:var(--mn-fw-sb);
  color:var(--mn-fg-strong);
  line-height:1.45;
}
.mn-postlist__title:hover{color:var(--mn-primary);text-decoration:none;}
.mn-postlist__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--mn-fg-soft);}
.mn-postlist__chip{
  display:inline-block;padding:1px 9px;
  background:var(--mn-gray-100);color:var(--mn-fg-muted);
  border-radius:var(--mn-r-full);font-size:11.5px;font-weight:var(--mn-fw-m);
}
[data-theme='dark'] .mn-postlist__chip{background:var(--mn-bg-soft);}
.mn-postlist__desc{font-size:13.5px;color:var(--mn-fg-soft);margin:0;line-height:1.55;}
.mn-viewall{margin-top:var(--mn-s-4);}
.mn-viewall a{font-weight:var(--mn-fw-sb);color:var(--mn-primary);}

/* ----- 13. faq ----- */
.mn-faq{display:flex;flex-direction:column;gap:var(--mn-s-2);margin:var(--mn-s-4) 0;}
.mn-faq__item{
  background:var(--mn-bg-card);
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-4);
  padding:0;
  transition:border-color .15s,box-shadow .15s;
}
.mn-faq__item:hover{border-color:var(--mn-pink-300);}
.mn-faq__item[open]{border-color:var(--mn-pink-300);box-shadow:var(--mn-sh-2);}
.mn-faq__q{
  display:flex;align-items:center;gap:var(--mn-s-3);
  list-style:none;cursor:pointer;
  padding:var(--mn-s-4) var(--mn-s-5);
  font-weight:var(--mn-fw-sb);
  font-size:14.5px;
  color:var(--mn-fg-strong);
  position:relative;
}
.mn-faq__q::-webkit-details-marker{display:none;}
.mn-faq__q::after{
  content:'+';position:absolute;right:var(--mn-s-5);top:50%;transform:translateY(-50%);
  font-size:20px;color:var(--mn-fg-soft);font-weight:var(--mn-fw-r);
  width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:var(--mn-r-3);
}
.mn-faq__item[open] .mn-faq__q::after{content:'−';color:var(--mn-primary);}
.mn-faq__q-num{
  font-family:var(--mn-font-mono);
  font-size:12px;color:var(--mn-primary);
  background:var(--mn-primary-soft);
  padding:2px 8px;border-radius:var(--mn-r-full);
  flex-shrink:0;
}
.mn-faq__q-text{flex:1;}
.mn-faq__a{
  padding:0 var(--mn-s-5) var(--mn-s-4) var(--mn-s-5);
  font-size:14px;color:var(--mn-fg-muted);line-height:1.7;
}
.mn-faq__a p{margin:0 0 8px;}
.mn-faq__a p:last-child{margin-bottom:0;}

/* ----- 14. table of contents ----- */
.mn-toc{
  position:sticky;
  top:calc(var(--mn-header-h) + var(--mn-s-5));
  align-self:flex-start;
  font-size:13px;
}
.mn-toc__inner{display:flex;flex-direction:column;gap:var(--mn-s-4);}
.mn-toc__head{
  font-size:11.5px;
  text-transform:uppercase;letter-spacing:1.2px;
  color:var(--mn-fg-soft);
  font-weight:var(--mn-fw-sb);
  margin-bottom:8px;
}
.mn-toc__head--alt{margin-top:var(--mn-s-4);}
.mn-toc__list{
  list-style:none;padding:0;margin:0;
  border-left:1px solid var(--mn-border);
}
.mn-toc__list--plain{border-left:0;}
.mn-toc__item{padding:0;}
.mn-toc__item a{
  display:block;
  padding:5px 12px;
  font-size:12.5px;line-height:1.55;
  color:var(--mn-fg-soft);
  border-left:2px solid transparent;
  margin-left:-1px;
  transition:color .12s,border-color .12s,background .12s;
}
.mn-toc__item a:hover{color:var(--mn-fg-strong);text-decoration:none;}
.mn-toc__item a.is-active{
  color:var(--mn-primary);
  border-left-color:var(--mn-primary);
  background:var(--mn-primary-soft-2);
  font-weight:var(--mn-fw-sb);
}
.mn-toc__item--lv3 a{padding-left:24px;}
.mn-toc__more{padding-top:var(--mn-s-3);border-top:1px solid var(--mn-border-faint);}
.mn-toc__edit{margin-top:var(--mn-s-3);}
.mn-toc__edit-link{font-size:12px;color:var(--mn-fg-soft);}

/* ----- 15. prev/next ----- */
.mn-prevnext{
  display:grid;grid-template-columns:1fr 1fr;gap:var(--mn-s-4);
  margin-top:var(--mn-s-8);
  padding-top:var(--mn-s-6);
  border-top:1px solid var(--mn-border);
}
.mn-prevnext__item{
  display:flex;flex-direction:column;gap:6px;
  padding:var(--mn-s-4);
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-4);
  background:var(--mn-bg-card);
  color:var(--mn-fg);
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.mn-prevnext__item:hover{
  border-color:var(--mn-primary);
  box-shadow:var(--mn-sh-2);
  text-decoration:none;
  color:var(--mn-fg);
}
.mn-prevnext__next{text-align:right;align-items:flex-end;}
.mn-prevnext__lab{
  display:inline-flex;align-items:center;gap:4px;
  font-size:11.5px;color:var(--mn-fg-soft);
  text-transform:uppercase;letter-spacing:1.2px;font-weight:var(--mn-fw-sb);
}
.mn-prevnext__t{font-size:14px;font-weight:var(--mn-fw-sb);color:var(--mn-fg-strong);line-height:1.45;}

/* ----- 16. pager ----- */
.mn-pager{
  display:flex;align-items:center;flex-wrap:wrap;gap:6px;
  justify-content:center;
  margin:var(--mn-s-7) 0 var(--mn-s-3);
}
.mn-pager__btn,.mn-pager__num{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:36px;height:36px;
  padding:0 12px;
  border-radius:var(--mn-r-3);
  font-size:13px;color:var(--mn-fg);
  background:var(--mn-bg-card);
  border:1px solid var(--mn-border);
  font-weight:var(--mn-fw-m);
  transition:background .15s,color .15s,border-color .15s;
}
.mn-pager__btn:hover,.mn-pager__num:hover{border-color:var(--mn-primary);color:var(--mn-primary);text-decoration:none;}
.mn-pager__num.is-current{
  background:var(--mn-primary);color:#fff;border-color:var(--mn-primary);
}
.mn-pager__btn.is-disabled,.mn-pager__num.is-disabled{
  opacity:.4;pointer-events:none;
}

/* ----- 17. prose (article body) ----- */
.mn-prose{
  font-size:15.5px;
  line-height:1.78;
  color:var(--mn-fg);
  max-width:var(--mn-content-max);
}
.mn-prose > * + *{margin-top:var(--mn-s-4);}
.mn-prose p{margin:0 0 var(--mn-s-4);}
.mn-prose h2{
  font-size:24px;font-weight:var(--mn-fw-b);
  letter-spacing:-.01em;
  color:var(--mn-fg-strong);
  margin:var(--mn-s-7) 0 var(--mn-s-3);
  scroll-margin-top:calc(var(--mn-header-h) + 16px);
  padding-bottom:6px;
  border-bottom:1px solid var(--mn-border-faint);
}
.mn-prose h3{
  font-size:18.5px;font-weight:var(--mn-fw-sb);
  color:var(--mn-fg-strong);
  margin:var(--mn-s-6) 0 var(--mn-s-3);
  scroll-margin-top:calc(var(--mn-header-h) + 16px);
}
.mn-prose h4{font-size:16px;font-weight:var(--mn-fw-sb);margin:var(--mn-s-5) 0 var(--mn-s-2);color:var(--mn-fg-strong);}
.mn-prose ul,.mn-prose ol{padding-left:1.5em;margin:0 0 var(--mn-s-4);}
.mn-prose li{margin:0 0 6px;}
.mn-prose li::marker{color:var(--mn-fg-soft);}
.mn-prose strong{color:var(--mn-fg-strong);font-weight:var(--mn-fw-sb);}
.mn-prose em{color:var(--mn-fg);}
.mn-prose blockquote{
  margin:var(--mn-s-5) 0;
  padding:var(--mn-s-3) var(--mn-s-5);
  border-left:3px solid var(--mn-primary);
  background:var(--mn-primary-soft-2);
  border-radius:0 var(--mn-r-3) var(--mn-r-3) 0;
  color:var(--mn-fg-muted);
  font-style:normal;
}
.mn-prose blockquote p{margin:0;}

/* inline code */
.mn-prose code{
  font-family:var(--mn-font-mono);
  font-size:.88em;
  padding:2px 6px;
  border-radius:var(--mn-r-2);
  background:var(--mn-bg-code);
  color:var(--mn-pink-700);
  border:1px solid var(--mn-border-faint);
}
[data-theme='dark'] .mn-prose code{color:var(--mn-pink-300);}
.mn-prose pre code{padding:0;background:transparent;border:0;color:inherit;font-size:13.5px;}

/* code block (pre) */
.mn-prose pre,.mn-codeblock pre{
  font-family:var(--mn-font-mono);
  background:var(--mn-bg-code-block);
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-4);
  padding:var(--mn-s-4) var(--mn-s-5);
  overflow-x:auto;
  font-size:13.5px;line-height:1.7;
  color:var(--mn-fg);
  margin:0;
}
.mn-codeblock{position:relative;margin:var(--mn-s-4) 0;}
.mn-codeblock__copy{
  position:absolute;top:8px;right:8px;
  font-size:11.5px;color:var(--mn-fg-soft);
  background:var(--mn-bg);
  border:1px solid var(--mn-border);
  padding:3px 9px;border-radius:var(--mn-r-2);
  cursor:pointer;
  font-family:var(--mn-font-sans);
  transition:color .15s,border-color .15s;
}
.mn-codeblock__copy:hover{color:var(--mn-primary);border-color:var(--mn-primary);}

/* ----- 18. tables ----- */
.mn-prose table{
  width:100%;
  border-collapse:collapse;
  margin:var(--mn-s-5) 0;
  font-size:13.5px;
  border:1px solid var(--mn-border);
  border-radius:var(--mn-r-4);
  overflow:hidden;
}
.mn-prose thead th{
  background:var(--mn-bg-soft);
  text-align:left;
  font-weight:var(--mn-fw-sb);
  color:var(--mn-fg-strong);
  padding:10px 14px;
  border-bottom:1px solid var(--mn-border);
}
.mn-prose tbody td{
  padding:10px 14px;
  border-top:1px solid var(--mn-border-faint);
  color:var(--mn-fg);
  vertical-align:top;
}
.mn-prose tbody tr:hover td{background:var(--mn-bg-soft);}

/* ----- 19. callouts (blockquote variants) ----- */
.mn-callout{
  display:flex;gap:12px;
  padding:var(--mn-s-4) var(--mn-s-5);
  border:1px solid var(--mn-pink-200);
  background:var(--mn-pink-50);
  border-radius:var(--mn-r-4);
  margin:var(--mn-s-4) 0;
  color:var(--mn-fg);
}
[data-theme='dark'] .mn-callout{background:rgba(190,24,93,.1);border-color:rgba(190,24,93,.35);}
.mn-callout__icon{color:var(--mn-primary);flex-shrink:0;font-size:18px;line-height:1.4;}
.mn-callout__body{flex:1;font-size:14px;}

/* ----- 20. footer ----- */
.mn-footer{
  margin-top:auto;
  background:var(--mn-bg-soft);
  border-top:1px solid var(--mn-border);
  padding:var(--mn-s-9) 0 var(--mn-s-5);
}
.mn-footer__inner{
  display:grid;
  grid-template-columns:1.4fr 3fr;
  gap:var(--mn-s-8);
  max-width:var(--mn-shell-max);
  margin:0 auto;
  padding:0 var(--mn-s-6);
}
.mn-footer__brand{display:flex;flex-direction:column;gap:var(--mn-s-3);}
.mn-footer__logo{display:flex;align-items:center;gap:10px;}
.mn-footer__mark{display:inline-flex;}
.mn-footer__name{font-size:16px;font-weight:var(--mn-fw-sb);color:var(--mn-fg-strong);}
.mn-footer__tag{font-size:13.5px;color:var(--mn-fg-muted);margin:0;line-height:1.6;max-width:340px;}
.mn-footer__motto{font-size:12.5px;color:var(--mn-fg-soft);font-family:var(--mn-font-mono);margin:0;}
.mn-footer__cols{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--mn-s-6);
}
.mn-footer__col h-,.mn-footer__h{
  font-size:12px;
  text-transform:uppercase;letter-spacing:1.2px;
  color:var(--mn-fg-soft);
  font-weight:var(--mn-fw-sb);
  margin-bottom:var(--mn-s-3);
}
.mn-footer__col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.mn-footer__col a{font-size:13px;color:var(--mn-fg-muted);}
.mn-footer__col a:hover{color:var(--mn-primary);}
.mn-footer__lang{display:flex;flex-wrap:wrap;gap:6px 12px;flex-direction:row !important;}
.mn-footer__lang a{font-size:12px;color:var(--mn-fg-muted);padding:1px 0;}
.mn-footer__lang a.is-current{color:var(--mn-primary);font-weight:var(--mn-fw-sb);}
.mn-footer__strip{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--mn-s-3);
  margin-top:var(--mn-s-7);
  padding:var(--mn-s-4) var(--mn-s-6) 0;
  border-top:1px solid var(--mn-border);
  max-width:var(--mn-shell-max);
  margin-left:auto;margin-right:auto;
  font-size:12px;color:var(--mn-fg-soft);
}
.mn-footer__rights{flex-shrink:0;}
.mn-footer__risk{flex:1;line-height:1.6;text-align:right;max-width:760px;}

/* ----- 21. 404 ----- */
.mn-404{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:60vh;
  text-align:center;
  padding:var(--mn-s-9) var(--mn-s-5);
}
.mn-404__code{
  font-size:96px;font-weight:var(--mn-fw-b);
  background:linear-gradient(135deg,var(--mn-pink-500),var(--mn-pink-800));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  letter-spacing:-.04em;
  line-height:1;
  margin-bottom:var(--mn-s-4);
}
.mn-404__title{font-size:26px;font-weight:var(--mn-fw-sb);margin:0 0 var(--mn-s-3);}
.mn-404__body{font-size:14.5px;color:var(--mn-fg-muted);margin:0 0 var(--mn-s-5);max-width:480px;}

/* ----- 22. responsive ----- */
@media (max-width:1180px){
  :root{--mn-toc-w:200px;}
  .mn-article__body{grid-template-columns:minmax(0,1fr) var(--mn-toc-w);gap:var(--mn-s-6);}
  .mn-cardgrid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .mn-footer__inner{grid-template-columns:1fr;}
  .mn-footer__cols{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width:980px){
  .mn-shell{grid-template-columns:1fr;padding:0 var(--mn-s-5);}
  .mn-sidebar{
    position:fixed;left:0;top:var(--mn-header-h);
    width:280px;
    height:calc(100vh - var(--mn-header-h));
    border-right:1px solid var(--mn-border);
    background:var(--mn-bg);
    padding:var(--mn-s-4) var(--mn-s-3);
    transform:translateX(-100%);
    transition:transform .25s ease;
    z-index:50;
    box-shadow:var(--mn-sh-3);
  }
  .mn-sidebar.is-open{transform:translateX(0);}
  .mn-mobile-only{display:inline-flex;}
  .mn-topnav{display:none;}
  .mn-search{display:none;}
  .mn-version{display:none;}
  .mn-article__body{grid-template-columns:1fr;}
  .mn-toc{display:none;}
  .mn-prevnext{grid-template-columns:1fr;}
  .mn-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:680px){
  :root{
    --mn-fz-3xl:30px;
    --mn-fz-2xl:24px;
  }
  .mn-cardgrid{grid-template-columns:1fr;}
  .mn-reflist{grid-template-columns:1fr;}
  .mn-article__head--hero .mn-article__h1{font-size:32px;}
  .mn-article__h1{font-size:26px;}
  .mn-article__lede{font-size:15.5px;}
  .mn-postlist__item{grid-template-columns:32px 1fr;gap:var(--mn-s-3);}
  .mn-prose h2{font-size:21px;}
  .mn-prose h3{font-size:17px;}
  .mn-footer__strip{flex-direction:column;align-items:flex-start;}
  .mn-footer__risk{text-align:left;}
  .mn-header__bar{padding:0 var(--mn-s-4);gap:8px;}
  .mn-brand__tag{display:none;}
  .mn-lang__btn{padding:6px;}
  .mn-lang__cur{display:none;}
}

/* ----- 23. nav-open backdrop ----- */
body.mn-nav-open::before{
  content:'';position:fixed;inset:var(--mn-header-h) 0 0 0;
  background:rgba(15,23,42,.4);z-index:40;
}

/* ----- 24. focus-visible ----- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,details:focus-visible{
  outline:2px solid var(--mn-primary);outline-offset:2px;border-radius:4px;
}

/* ----- 25. heading anchors ----- */
.mn-prose h2 .anchor,
.mn-prose h3 .anchor{
  opacity:0;
  margin-left:8px;
  font-size:.7em;color:var(--mn-fg-fade);
  text-decoration:none;
  transition:opacity .15s;
}
.mn-prose h2:hover .anchor,
.mn-prose h3:hover .anchor{opacity:1;}

/* ----- 26. utility / misc ----- */
.mn-hidden{display:none !important;}
.mn-mt-4{margin-top:var(--mn-s-4);}
.mn-mt-6{margin-top:var(--mn-s-6);}

/* ----- 27. scrollbar global ----- */
*::-webkit-scrollbar{width:10px;height:10px;}
*::-webkit-scrollbar-thumb{background:var(--mn-gray-300);border-radius:6px;border:2px solid transparent;background-clip:padding-box;}
*::-webkit-scrollbar-thumb:hover{background:var(--mn-gray-400);background-clip:padding-box;}
[data-theme='dark'] *::-webkit-scrollbar-thumb{background:var(--mn-gray-700);background-clip:padding-box;}

/* ----- 28. promo / inline links ----- */
.mn-prose a{color:var(--mn-link);font-weight:var(--mn-fw-m);text-decoration:underline;text-decoration-color:var(--mn-pink-200);text-underline-offset:3px;text-decoration-thickness:1.5px;}
.mn-prose a:hover{color:var(--mn-link-hover);text-decoration-color:var(--mn-pink-500);}

/* ----- 29. badges (in prose) ----- */
.mn-badge{
  display:inline-block;
  font-size:11px;font-weight:var(--mn-fw-sb);
  padding:2px 8px;
  border-radius:var(--mn-r-full);
  text-transform:uppercase;letter-spacing:.6px;
  background:var(--mn-primary-soft);color:var(--mn-primary);
}

/* ----- 30. announcement bar (optional) ----- */
.mn-announce{
  background:linear-gradient(90deg,var(--mn-pink-700),var(--mn-pink-500));
  color:#fff;
  padding:8px 14px;text-align:center;font-size:13px;
}
.mn-announce a{color:#fff;text-decoration:underline;}

/* ----- 31. prose lists for steps ----- */
.mn-prose ol{counter-reset:mn-step;list-style:none;padding-left:0;}
.mn-prose ol > li{counter-increment:mn-step;position:relative;padding-left:36px;margin-bottom:var(--mn-s-2);}
.mn-prose ol > li::before{
  content:counter(mn-step);
  position:absolute;left:0;top:1px;
  width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--mn-primary-soft);color:var(--mn-primary);
  border-radius:var(--mn-r-full);font-size:12px;font-weight:var(--mn-fw-sb);
  font-family:var(--mn-font-mono);
}
.mn-prose ul{list-style:none;padding-left:0;}
.mn-prose ul > li{position:relative;padding-left:20px;}
.mn-prose ul > li::before{
  content:'';position:absolute;left:6px;top:11px;
  width:5px;height:5px;border-radius:50%;
  background:var(--mn-primary);
}

/* nested list overrides */
.mn-prose ul ul,.mn-prose ol ol,.mn-prose ul ol,.mn-prose ol ul{margin-top:6px;margin-bottom:6px;}
.mn-prose ul ul > li::before{background:var(--mn-fg-fade);}

/* ----- 32. dark theme tweaks ----- */
[data-theme='dark'] .mn-prose pre,[data-theme='dark'] .mn-codeblock pre{background:#0B0B0E;}
[data-theme='dark'] .mn-prose thead th{background:var(--mn-bg-soft-2);}
[data-theme='dark'] .mn-prose tbody tr:hover td{background:var(--mn-bg-soft-2);}
[data-theme='dark'] .mn-prose blockquote{background:rgba(190,24,93,.12);}
[data-theme='dark'] .mn-card{background:var(--mn-bg-card);}
[data-theme='dark'] .mn-card:hover{border-color:rgba(244,114,182,.4);}
[data-theme='dark'] .mn-faq__item:hover{border-color:rgba(244,114,182,.3);}
[data-theme='dark'] .mn-pager__num.is-current{background:var(--mn-primary);color:#fff;}

/* ----- 33. print ----- */
@media print{
  .mn-header,.mn-sidebar,.mn-toc,.mn-footer,.mn-prevnext,.mn-pager{display:none !important;}
  .mn-shell{grid-template-columns:1fr;padding:0;}
  .mn-prose{font-size:12pt;line-height:1.65;}
  .mn-prose a{color:var(--mn-fg);text-decoration:underline;}
  .mn-prose a[href]::after{content:" (" attr(href) ")";font-size:10pt;color:#666;}
}
