/* 自动生成（site-v3/build.py），勿手改：前半 = v3.css 里外壳用到的规则（限定到外壳内），后半 = src/assets/v3-shell.css */
:is(header.nav,#nav-drawer,footer.foot,nav.tabbar){--bg:#FAF8F5; --bg2:#F2EEE8; --bg-foot:#EEE9E2;
  --surf-a:rgba(255,255,255,.92); --surf-b:rgba(255,255,255,.78); --surf-ha:#fff; --surf-hb:rgba(255,255,255,.95);
  --line:rgba(28,25,23,.11); --line-s:rgba(28,25,23,.20); --line-hi:rgba(255,255,255,.9);
  --text:#1C1917; --text2:#44403C; --muted:#78716C;
  --fill:rgba(28,25,23,.035); --fill2:rgba(28,25,23,.06); --fill3:rgba(28,25,23,.10); --step-bg:rgba(255,255,255,.72);
  --nav-bg:rgba(255,255,255,.78); --menu-bg:#fff; --tab-bg:rgba(255,255,255,.94);
  --mega-bg:linear-gradient(180deg,#FFFFFF,#FCF9F6); --drawer-bg:#FBF8F4;
  --shadow:0 10px 30px rgba(28,25,23,.07); --shadow-lg:0 24px 60px rgba(28,25,23,.12);
  --input-bg:#fff; --window-bg:#fff; --dot:rgba(28,25,23,.16); --grid-line:rgba(28,25,23,.05); --badge-bg:rgba(255,255,255,.9); --scrim:rgba(28,25,23,.35);
  --glow1:rgba(201,100,66,.20); --glow2:rgba(232,160,120,.16); --glow3:rgba(201,100,66,.09);
  --brand:#C96442; --brand-hi:#B95536; --brand-ink:#B04E2C; --brand-soft:rgba(201,100,66,.10);
  --ok:#16A34A; --wip:#D97706;
  --r:20px; --r-lg:24px; --r-sm:12px;
  --font:"Plus Jakarta Sans","Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --mono:"JetBrains Mono","Noto Sans SC","PingFang SC",monospace;
  --maxw:1200px;
  color-scheme:light;}
html[data-theme="dark"] :is(header.nav,#nav-drawer,footer.foot,nav.tabbar){--bg:#141417; --bg2:#1A1A1F; --bg-foot:#101013;
  --surf-a:rgba(255,255,255,.10); --surf-b:rgba(255,255,255,.065); --surf-ha:rgba(255,255,255,.14); --surf-hb:rgba(255,255,255,.10);
  --line:rgba(255,255,255,.13); --line-s:rgba(255,255,255,.22); --line-hi:rgba(255,255,255,.18);
  --text:#FAFAF9; --text2:#CFCFD6; --muted:#9C9CA6;
  --fill:rgba(255,255,255,.05); --fill2:rgba(255,255,255,.08); --fill3:rgba(255,255,255,.13); --step-bg:rgba(255,255,255,.05);
  --nav-bg:rgba(22,22,26,.75); --menu-bg:#202026; --tab-bg:rgba(20,20,24,.94);
  --mega-bg:linear-gradient(180deg,#232329,#1C1C21); --drawer-bg:#17171B;
  --shadow:0 20px 60px rgba(0,0,0,.30); --shadow-lg:0 30px 80px rgba(0,0,0,.45);
  --input-bg:rgba(0,0,0,.22); --window-bg:rgba(30,30,36,.88); --dot:rgba(255,255,255,.22); --grid-line:rgba(255,255,255,.04); --badge-bg:rgba(20,20,24,.8); --scrim:rgba(0,0,0,.6);
  --glow1:rgba(201,100,66,.30); --glow2:rgba(190,90,90,.16); --glow3:rgba(201,100,66,.14);
  --brand:#C96442; --brand-hi:#D9774F; --brand-ink:#E8865F; --brand-soft:rgba(201,100,66,.16);
  --ok:#4ADE80; --wip:#FBBF24;
  color-scheme:dark;}
*:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){box-sizing:border-box}
a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:inherit;text-decoration:none}
img:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){max-width:100%;height:auto;display:block}
h1:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),h2:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),h3:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),h4:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin:0;font-weight:600;line-height:1.2;letter-spacing:-.01em}
p:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin:0}
.wrap:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){max-width:var(--maxw);margin:0 auto;padding:0 32px}
.nav:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:sticky;top:16px;z-index:50;max-width:calc(var(--maxw) + 64px);margin:16px auto 0;padding:0 16px}
.nav-in:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:24px;height:60px;padding:0 16px 0 22px;border-radius:16px;
  background:var(--nav-bg);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%)}
.logo:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:10px;white-space:nowrap}
.logo b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-weight:600;font-size:18px;letter-spacing:.02em}
.logo i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:1px;height:14px;background:var(--line-s)}
.logo span:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-family:var(--mono);font-size:12px;letter-spacing:.24em;color:var(--text2)}
.nav-in:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:relative}
.nav-links:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:2px;margin:0 auto;align-self:stretch;align-items:center}
.nav-links > a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.dd-top:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font:500 14px var(--font);color:var(--text2);padding:8px 11px;border-radius:10px;display:inline-flex;align-items:center;gap:3px;white-space:nowrap;transition:color .12s,background .12s}
@media (max-width:1240px){.nav-links > a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.dd-top:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding:8px 8px}}
.nav-links > a:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.dd-top:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text)}
.dd:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;align-self:stretch}
.dd-chev:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px!important;height:14px!important;opacity:.65;transition:transform .15s}
.dd.open .dd-top:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--brand-ink);background:var(--brand-soft)}
.dd.open .dd-chev:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){transform:rotate(180deg);opacity:1}
.mega:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:absolute;top:calc(100% + 10px);left:50%;width:min(960px,calc(100vw - 48px));z-index:5;
  transform:translate(-50%,6px);opacity:0;visibility:hidden;transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s;
  background:var(--mega-bg);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-lg),inset 0 1px 0 var(--line-hi);text-align:left}
.mega-sm:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:min(780px,calc(100vw - 48px))}
.mega:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell)::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.dd.open .mega:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:0s}
.nav-links.has-open .dd:not(.open) .mega:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){transition:none}
.mg-cols:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;padding:26px 28px 20px}
.mg-col:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;flex-direction:column;min-width:0;padding:0 24px;border-left:1px solid var(--line)}
.mg-col:first-child:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding-left:0;border-left:0}
.mg-col:last-child:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding-right:0}
.mg-head:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:baseline;gap:8px;white-space:nowrap;padding:0 10px 12px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.mg-label:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font:600 11px var(--mono);letter-spacing:.14em;color:var(--brand-ink)}
.mg-sl:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--line-s);font-size:13px}
.mg-head b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-size:15px;font-weight:600;color:var(--text)}
.mg-badge:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin-left:auto;align-self:center;font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 9px;white-space:nowrap}
.mg-items:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;gap:2px}
.mg-grid:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:4px 10px}
.mg-item:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:12px;color:var(--text);transition:background .12s}
.mg-item:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-item:focus-visible:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-vid:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-vid:focus-visible:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-post:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-post:focus-visible:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--fill2);outline:none}
.mega .ic:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:36px;height:36px;border-radius:10px}
.mega .ic svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mega .ic svg.i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:18px;height:18px}
.mg-t:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){min-width:0;display:block}
.mg-t b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:14px;font-weight:600;line-height:1.4}
.mg-t b em:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font:500 10.5px var(--font);font-style:normal;color:var(--wip);border:1px solid currentColor;border-radius:999px;padding:0 7px;line-height:17px}
.mg-t small:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:block;font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:2px}
.mg-ext:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px!important;height:14px!important;margin:4px 0 0 auto;color:var(--muted);flex:none}
.mg-intro:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin:2px 10px 0;font-size:13px;line-height:1.6;color:var(--text2);padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--fill)}
.mg-chips:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;flex-wrap:wrap;gap:8px;margin:12px 10px 0}
.mg-chip:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:8px;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:12px;font-size:13px;font-weight:500;color:var(--text);background:var(--surf-b);white-space:nowrap}
.mg-chip i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){flex:none;width:6px;height:6px;border-radius:50%;background:var(--wip)}
.mg-chip:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-chip:focus-visible:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){border-color:var(--line-s);background:var(--fill2);outline:none}
.mg-vids:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;gap:6px}
.mg-vid:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:12px;align-items:center;padding:8px 10px;border-radius:12px;color:var(--text)}
.mg-thumb:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:relative;flex:none;width:60px;height:96px;border-radius:10px;overflow:hidden;background:#1C1917;border:1px solid var(--line)}
.mg-thumb img:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:100%;height:100%;object-fit:cover}
.mg-thumb .badge-ai:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){top:4px;right:4px;font-size:9px;padding:1px 4px;border-radius:4px}
.mg-play:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:absolute;left:50%;top:55%;width:22px!important;height:22px!important;transform:translate(-50%,-50%);color:#fff;filter:drop-shadow(0 1px 4px rgba(0,0,0,.6))}
.mg-vid .mg-t b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-weight:500;font-size:13.5px}
.mg-posts:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;gap:2px}
.mg-post:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:block;padding:9px 10px;border-radius:10px;color:var(--text)}
.mg-post b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-weight:500;font-size:13.5px;line-height:1.45}
.mg-foot:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin-top:auto;padding-top:12px;display:grid;gap:12px;justify-items:start}
.mg-foot:empty:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
.mg-more:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-barlink:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;color:var(--brand-ink);padding:4px 10px}
.mg-more svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-barlink svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px;height:14px;transition:transform .12s}
.mg-more:hover svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.mg-barlink:hover svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){transform:translateX(2px)}
.mg-note:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:8px;font-size:12px;color:var(--muted);line-height:1.55;padding:0 10px}
.mg-note svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px;height:14px;flex:none;margin-top:2px}
.mg-card:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){justify-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surf-b)}
.mg-card b:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:block;font-size:14px;font-weight:600}
.mg-card small:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:block;font-size:12px;color:var(--muted);margin-top:2px}
.mg-bar:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 28px;border-top:1px solid var(--line);background:var(--fill);border-radius:0 0 22px 22px}
.mg-barlink:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding:4px 0}
.mg-bar .mg-barlink:not(:last-child):is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text2);font-weight:400}
.mg-bar .mg-barlink:not(:last-child):hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text)}
.nav-right:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:14px;font-size:13px;color:var(--text2);white-space:nowrap}
.nav-right a:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text)}
.theme-btn:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--fill2);color:var(--text2);cursor:pointer}
.theme-btn:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text);border-color:var(--line-s)}
.theme-btn svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:17px;height:17px}
.theme-btn .t-sun:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
html[data-theme="dark"] .theme-btn .t-sun:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:block}
html[data-theme="dark"] .theme-btn .t-moon:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
.nav-burger:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none;background:none;border:0;color:var(--text);cursor:pointer;padding:6px}
.drawer:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;background:var(--drawer-bg);color:var(--text)}
.drawer[hidden]:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
.dr-head:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;justify-content:space-between;height:64px;flex:none;padding:0 12px 0 22px;border-bottom:1px solid var(--line)}
.dr-close:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:44px;height:44px;border:0;background:none;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:12px}
.dr-close svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:22px;height:22px}
.dr-body:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){flex:1;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px;display:grid;gap:4px;align-content:start}
.dr-item:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){border-radius:16px;border:1px solid transparent}
.dr-item > summary:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.dr-link:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:14px;padding:9px 10px;cursor:pointer;list-style:none;font-size:16px;font-weight:600;color:var(--text);border-radius:15px}
.dr-item > summary:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell)::-webkit-details-marker{display:none}
.dr-item .ic:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:40px;height:40px;border-radius:12px;background:var(--fill2);color:var(--text2)}
.dr-chev:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin-left:auto;width:18px!important;height:18px!important;color:var(--muted);transition:transform .15s}
.dr-item[open]:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--brand-soft);border-color:rgba(201,100,66,.28)}
.dr-item[open] > summary:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--brand-ink)}
.dr-item[open] .ic:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--brand-soft);color:var(--brand-ink);box-shadow:inset 0 0 0 1px rgba(201,100,66,.3)}
.dr-item[open] .dr-chev:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){transform:rotate(180deg);color:var(--brand-ink)}
.dr-sub:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;margin:0 12px 12px 29px;padding:2px 0 2px 22px;border-left:2px solid rgba(201,100,66,.35)}
.dr-sub a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding:8px 0;font-size:15px;color:var(--text2)}
.dr-sub small:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-size:12px;color:var(--muted);margin-top:10px}
.dr-sub small:first-child:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){margin-top:4px}
.dr-sub .dr-all:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;align-items:center;gap:6px;color:var(--brand-ink);font-weight:500}
.dr-sub .dr-all svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px;height:14px}
.dr-foot:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){flex:none;display:grid;gap:14px;padding:14px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surf-b)}
.dr-row:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dr-theme:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;padding:4px;border-radius:999px;border:1px solid var(--line);background:var(--fill2)}
.dr-theme button:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:42px;height:34px;border-radius:999px;border:0;background:none;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.dr-theme svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:18px;height:18px}
html:not([data-theme="dark"]) .dr-theme [data-theme-set="light"]:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),html[data-theme="dark"] .dr-theme [data-theme-set="dark"]:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--menu-bg);color:var(--brand-ink);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.dr-links:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;align-items:center;gap:16px;font-size:14px;color:var(--text2)}
.dr-pill:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--line-s);border-radius:999px;color:var(--text)}
.dr-pill i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:7px;height:7px;border-radius:50%;background:var(--ok)}
.dr-pill svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:14px;height:14px;color:var(--muted)}
.dr-cta:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:100%;height:50px;font-size:16px;border-radius:14px}
.dr-cta svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:18px;height:18px}
@media (min-width:1201px){.drawer:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none!important}}
@media (min-width:961px) and (max-width:1200px){html:not([lang="en"]) .drawer:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none!important}}
@media (max-width:1200px){html[lang="en"] .nav-links:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),html[lang="en"] .nav-right .hide-m:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}html[lang="en"] .nav-burger:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex}}
.btn:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 22px;border-radius:12px;font:500 15px var(--font);cursor:pointer;border:1px solid transparent;transition:transform .15s,background .15s,border-color .15s;white-space:nowrap}
.btn:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){transform:translateY(-1px)}
.btn-primary:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--brand);color:#fff;box-shadow:0 8px 24px rgba(201,100,66,.30)}
.btn-primary:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--brand-hi)}
.btn-sm:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){height:34px;padding:0 14px;font-size:13px;border-radius:10px}
.ic:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:40px;height:40px;border-radius:12px;background:var(--brand-soft);color:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;flex:none}
.ic svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:20px;height:20px}
svg.i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ic svg.i:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:20px;height:20px}
.badge-ai:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){position:absolute;top:10px;right:10px;font:500 11px var(--mono);padding:3px 8px;border-radius:6px;background:var(--badge-bg);border:1px solid var(--line);color:var(--text2)}
.foot:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){background:var(--bg-foot);border-top:1px solid var(--line);padding:48px 0 28px;margin-top:0;font-size:14px}
.foot-cols:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.foot h4:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){font-size:14px;font-weight:600;margin-bottom:16px}
.foot ul:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){list-style:none;margin:0;padding:0;display:grid;gap:10px}
.foot li a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--muted)}
.foot li a:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text)}
.foot .tagline:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--muted);font-size:13px;margin-bottom:16px}
.social:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:10px;flex-wrap:wrap}
.social a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--fill2);border:1px solid var(--line);color:var(--text2)}
.social a:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text);border-color:var(--line-s)}
.social svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:16px;height:16px}
.foot-bottom:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:32px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.foot-bottom nav:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;gap:16px;flex-wrap:wrap}
.foot-bottom a:hover:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){color:var(--text)}
.tabbar:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
@media (max-width:1080px){.foot-cols:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){grid-template-columns:repeat(3,1fr)}}
@media (max-width:960px){.nav-links:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),.nav-right .hide-m:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}.nav-burger:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline-flex}}
header.nav .nav-burger .nav-burger-t:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:none}
@media (max-width:960px){header.nav .nav-burger:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){align-items:center;gap:6px;padding:7px 14px 7px 11px;border:1px solid var(--line-s);border-radius:999px;background:var(--fill);font:inherit;font-size:14px;font-weight:600;line-height:1}header.nav .nav-burger svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:18px;height:18px}header.nav .nav-burger .nav-burger-t:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:inline}}
@keyframes zz-nudge{0%:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){box-shadow:0 0 0 0 rgba(201,100,66,.55)}70%:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell),100%:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){box-shadow:0 0 0 12px rgba(201,100,66,0)}}
@media (max-width:720px){.wrap:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding:0 20px}.foot:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){padding-top:36px}.foot-cols:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){grid-template-columns:repeat(2,1fr)}#azs-launcher:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){bottom:76px!important}.tabbar:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;height:60px;background:var(--tab-bg);backdrop-filter:blur(16px);border-top:1px solid var(--line)}.tabbar a:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;color:var(--text2)}.tabbar svg:is(header.nav,header.nav *,#nav-drawer,#nav-drawer *,footer.foot,footer.foot *,nav.tabbar,nav.tabbar *):not(#zz-shell){width:20px;height:20px}}
/* ===== 旧长文页套 v3 外壳：手写部分（2026-10-23，WS-06）=====
   build.py 生成 home/ 与 home-cn/ 的 assets/v3/v3-shell.css = 【v3.css 里导航 / 大面板 / 抽屉 / 页脚 / 手机底栏用到的规则，自动限定到外壳内】+【本文件】。
   隔离做法：外壳四个根 = header.nav、#nav-drawer、footer.foot、nav.tabbar。
   1) 先把外壳内元素被旧页样式（.nav / .logo / footer / a / p …）影响的属性全部还原（all:revert，特异度 1-0-1，压过旧页全部类选择器）；
   2) 再套 v3 原规则（每条加外壳限定 + :not(#zz-shell)，特异度 ≥2-0-0），外壳内效果与 v3 页面一致；
   3) 外壳外（文章正文、目录、面包屑）不受 v3 规则影响。SVG 图标不参与还原（path 的 d 属性会被 all 清掉）。 */
:is(header.nav, header.nav *, #nav-drawer, #nav-drawer *, footer.foot, footer.foot *, nav.tabbar, nav.tabbar *):not(svg, svg *) { all: revert; }

/* 外壳根：继承 v3 页面 body 的排版 */
:is(header.nav, #nav-drawer, footer.foot, nav.tabbar):not(#zz-shell) {
  font-family: var(--font); font-size: 16px; line-height: 1.7; color: var(--text);
  -webkit-font-smoothing: antialiased; text-align: left; letter-spacing: normal; word-break: normal;
}
footer.foot:not(#zz-shell):not(#zz-shell2) { margin-top: 64px; }  /* 旧页正文后没有 section 留白 */

/* 抽屉打开时锁滚动、藏客服挂件；手机端给底栏留位置、客服挂件上移（同 v3.css） */
body.dr-open { overflow: hidden; }
body.dr-open .azc-root, body.dr-open #azs-launcher { display: none !important; }
@media (max-width: 720px) {
  body { padding-bottom: 64px; }
  .azc-root { bottom: 76px !important; }
  #azs-launcher { bottom: 76px !important; }
}

/* ---- 文章阅读：悬浮胶囊导航（吸顶 top:16 + 高 60）下的偏移 ---- */
[id] { scroll-margin-top: 96px; }  /* 锚点跳转不被吸顶导航挡住 */
@media (min-width: 1021px) {
  aside.toc:not(#zz-shell) { top: 96px; max-height: calc(100vh - 112px); padding-top: 20px; }
}
/* 面包屑：去掉整宽底色与分隔线，跟在胶囊导航下面 */
.crumb-bar:not(#zz-shell) { background: transparent; border-bottom: 0; margin-top: 10px; }

/* ---- 手机 / 平板（≤1020px）文章目录按钮：原来在旧导航左侧，现在改为左下角悬浮「目录」 ---- */
.zz-toc:not(#zz-shell) { display: none; }
@media (max-width: 1020px) {
  .zz-toc:not(#zz-shell) {
    display: inline-flex; align-items: center; gap: 6px; position: fixed; left: 16px; bottom: 20px; z-index: 80;
    width: auto; height: 40px; padding: 0 14px; margin: 0; border-radius: 999px;
    border: 1px solid var(--border, rgba(28,25,23,.12)); background: var(--card, #fff); color: var(--text-2, #44403C);
    font: 500 13.5px/1 "Plus Jakarta Sans", "Noto Sans SC", "PingFang SC", sans-serif; cursor: pointer;
    box-shadow: 0 8px 24px rgba(28, 25, 23, .14);
  }
  .zz-toc:not(#zz-shell) svg { width: 16px; height: 16px; flex: none; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
  body.dr-open .zz-toc:not(#zz-shell), body.toc-open .zz-toc:not(#zz-shell) { display: none; }
}
@media (max-width: 720px) { .zz-toc:not(#zz-shell) { bottom: 76px; } }
/* 页面拉到底时，左下「目录」与右下客服挂件不压住页脚最后一行 */
@media (max-width: 1020px) {
  body:has(> .zz-toc) footer.foot:not(#zz-shell):not(#zz-shell2):not(#zz-shell3) { padding-bottom: 84px; }
}
